Common eth-cfm data types used in the SR OS management system. Copyright 2016 Nokia. All rights reserved. Reproduction of this ...
Version: 2023-08-30
module nokia-types-eth-cfm { yang-version 1.1; namespace "urn:nokia.com:sros:ns:yang:sr:types-eth-cfm"; prefix types-eth-cfm; import nokia-sros-yang-extensions { prefix sros-ext; } import nokia-types-sros { prefix types-sros; } organization "Nokia"; contact "Nokia SR OS Support Web: <http://www.nokia.com>"; description "Common eth-cfm data types used in the SR OS management system. Copyright 2016 Nokia. All rights reserved. Reproduction of this document is authorized on the condition that the foregoing copyright notice is included. This nokia-types-eth-cfm YANG module embodies Nokia's proprietary intellectual property. Nokia retains all title and ownership in the specification, including any revisions. Nokia grants all interested parties a non-exclusive license to use and distribute an unmodified copy of this specification in connection with management of Nokia products, and without fee, provided this copyright notice and license appear on all copies. This specification is supplied `as is', and Nokia makes no warranty, either express or implied, as to the use, operation, condition, or performance of the specification."; revision "2023-08-30"; sros-ext:sros-major-release "rel24"; typedef mhf-creation-type { type enumeration { enum "none" { value 1; } enum "default" { value 2; } enum "explicit" { value 3; } enum "defer" { value 4; } } description "Indicates whether the Management Entity can create default-domain MHFs. The valid values are: none(1) No MHFs can be created for this VID. default(2) MHFs can be created on this VID on any Bridge port through which this VID can pass. explicit(3) MHFs can be created for this VID only on Bridge ports through which this VID can pass, and only if a MEP is created at some lower MD Level. defer(4) The creation of MHFs is determined by the corresponding Default Domain system's mhf-creation value."; } typedef tmnx-mhf-creation-type { type enumeration { enum "none" { value 1; } enum "default" { value 2; } enum "explicit" { value 3; } enum "static" { value 32; } } description "Indicates whether the Management Entity can create MHFs used for primary-vlan MIPs. The valid values are: none(1) No MHFs can be created for this VID. default(2) MHFs can be created on this VID on any Bridge port through which this VID can pass. explicit(3) MHFs can be created for this VID only on Bridge ports through which this VID can pass, and only if a MEP is created at some lower MD Level. static(32) Multiple MHFs can be created on the primary VID on any bridge port through which this primary VID can pass."; } typedef mp-level { type int32 { range "0..7"; } description "The Management Point (MP) level. Higher numbers correspond to higher Maintenance Domains, those with the greatest physical reach, with the highest values for customers' CFM packets. Lower numbers correspond to lower Maintenance Domains, those with more limited physical reach, with the lowest values for CFM PDUs protecting single bridges or physical links."; } typedef mhf-creation-level-type { type union { type mp-level; type enumeration { enum "defer" { value -1; } } } default "defer"; description "The Maintenance Domain Level (MD Level). The value defer indicates that no MD Level has been assigned."; } typedef chassis-id-subtype { type enumeration { enum "system" { value 1; } enum "local" { value 7; } } default "system"; description "This typedef describes the source of a chassis identifier. The enumeration 'system(1)' represents a chassis identifier based on the value of entPhysicalAlias object (defined in IETF RFC 2737) for a chassis component (i.e., an entPhysicalClass value of 'chassis(3)'). The enumeration 'local(7)' represents a chassis identifier based on a locally defined value."; } typedef maintenance-domain-name-type { type enumeration { enum "none" { value 1; } enum "dns" { value 2; } enum "mac" { value 3; } enum "string" { value 4; } } description "A value that represents a type (and thereby the format) of an eth-cfm domain name. The value can be one of the following: none(1) No format specified, usually because there is not (yet) a Maintenance Domain Name. In this case, a zero length string for the Domain Name field is acceptable. dns(2) Domain Name like string, globally unique text string derived from a DNS name. mac(3) MAC address + 2-octet (unsigned) integer. string(4) RFC2579 DisplayString, except that the character codes 0-31 (decimal) are not used. Implementations must ensure that maintenance-domain-name-type MOs and any dependent MOs (e.g., domain name) are consistent. 'domain type' and 'domain name' pairs must be changed together if the 'domain type' changes."; } typedef maintenance-association-name-type { type enumeration { enum "primary-vid" { value 1; } enum "char-string" { value 2; } enum "unsigned-int16" { value 3; } enum "rfc2865-vpn-id" { value 4; } enum "icc-based" { value 32; } } default "unsigned-int16"; description "A value that represents a type (and thereby the format) of an eth-cfm domain association name. The value can be one of the following: vid(1) Primary VLAN ID. 12 bits represented in a 2-octet integer: - 4 least significant bits of the first byte contains the 4 most significant bits of the 12 bits primary VID - second byte contains the 8 least significant bits of the primary VID 0 1 2 3 4 5 6 7 8 +-+-+-+-+-+-+-+-+ |0 0 0 0| (MSB) | +-+-+-+-+-+-+-+-+ | VID LSB | +-+-+-+-+-+-+-+-+ string(2) RFC2579 DisplayString, except that the character codes 0-31 (decimal) are not used. (1..45) octets integer(3) 2-octet integer/big endian vpn-id(4) RFC 2685 VPN ID 3 octet VPN authority Organizationally Unique Identifier followed by 4 octet VPN index identifying VPN according to the OUI: 0 1 2 3 4 5 6 7 8 +-+-+-+-+-+-+-+-+ | VPN OUI (MSB) | +-+-+-+-+-+-+-+-+ | VPN OUI | +-+-+-+-+-+-+-+-+ | VPN OUI (LSB) | +-+-+-+-+-+-+-+-+ |VPN Index (MSB)| +-+-+-+-+-+-+-+-+ | VPN Index | +-+-+-+-+-+-+-+-+ | VPN Index | +-+-+-+-+-+-+-+-+ |VPN Index (LSB)| +-+-+-+-+-+-+-+-+ icc-based(32) raw ascii - between 8 and 13 characters To support future extensions, the Dot1agCfmMaintAssocNameType textual convention SHOULD NOT be sub-typed in object type definitions. It MAY be sub-typed in compliance statements in order to require only a subset of these address types for a compliant implementation. Implementations must ensure that Dot1agCfmMaintAssocNameType objects and any dependent objects (e.g., Dot1agCfmMaintAssocName objects) are consistent. An inconsistentValue error must be generated if an attempt to change an Dot1agCfmMaintAssocNameType object would, for example, lead to an undefined Dot1agCfmMaintAssocName value. In particular, Dot1agCfmMaintAssocNameType/Dot1agCfmMaintAssocName pairs must be changed together if the nameType changes. The Maintenance Domain name and Maintenance Association name, when put together into the CCM PDU, MUST total 48 octets or less. If the Dot1agCfmMaintDomainNameType object contains none(1), then the Dot1agCfmMaintAssocName object MUST be 45 octets or less in length. Otherwise, the length of the Dot1agCfmMaintDomainName object plus the length of the Dot1agCfmMaintAssocName object, added together, MUST total less than or equal to 44 octets."; } typedef permission-type { type enumeration { enum "none" { value 1; } enum "chassis" { value 2; } enum "manage" { value 3; } enum "chassis-manage" { value 4; } enum "defer" { value 5; } } description "Indicates what, if anything, is to be included in the Sender ID TLV transmitted in CCMs, LBMs, LTMs, and LTRs. The valid values are: none(1) The Sender ID TLV is not to be sent. chassis(2) The Chassis ID Length, Chassis ID Subtype, and Chassis ID fields of the Sender ID TLV are to be sent. manage(3) The Management Address Length and Management Address of the Sender ID TLV are to be sent. chassis-manage(4) The Chassis ID Length, Chassis ID Subtype, Chassis ID, Management Address Length and Management Address fields are all to be sent. defer(5) The contents of the Sender ID TLV are determined by the corresponding Maintenance Domain permission variable"; } typedef facility-id-permission-type { type enumeration { enum "none" { value 1; } enum "chassis" { value 2; } } description "Indicates what, if anything, is to be included in the Sender ID TLV transmitted in CCMs, LBMs, LTMs, and LTRs. This is a subset of permission-type. The valid values are: none(1) The Sender ID TLV is not to be sent. chassis(2) The Chassis ID Length, Chassis ID Subtype, and Chassis ID fields of the Sender ID TLV are to be sent."; } typedef admin-name { type types-sros:named-item-64; description "Used to define a name that can be used to uniquely identify an object. Historically, an arbitrary integer index would have been used for this purpose. A string provides greater flexibility and allows some amount of context to be included. The string has the following restrictions: - Leading underscore is not allowed; - Leading or trailing space is not allowed; - Leading plus sign followed by a fully numeric string is not allowed; - Leading digit is not allowed unless the full string is numeric and is within the range 1..4294967295"; } typedef mep-id-type { type uint16 { range "1..8191"; } description "The MEP Identifier which is an integer that uniquely identifies the MEP over a given Maintenance Association."; } typedef vlan-id-or-none { type union { type int32 { range "1..4094"; } type enumeration { enum "none" { value 0; } } } description "The VLAN ID that uniquely identifies a specific VLAN, or no VLAN. The special value of none is used to indicate that no VLAN ID is present or used. This can be used in any situation where an object or a table entry must refer either to a specific VLAN, or to no VLAN."; } typedef frame-priority { type uint8 { range "0..7"; } description "Used to define the priority of OAM frames."; } typedef port-status { type enumeration { enum "ps-no-port-state-tlv" { value 0; } enum "ps-blocked" { value 1; } enum "ps-up" { value 2; } } description "An enumerated value from the Port Status TLV from the last CCM received from the last MEP. It indicates the ability of the Bridge Port on which the transmitting MEP resides to pass ordinary data, regardless of the status of the MAC. ps-no-port-state-tlv(0) Indicates either that no CCM has been received or that no port status TLV was present in the last CCM received. ps-blocked(1) Ordinary data cannot pass freely through the port on which the remote MEP resides. Value of enableRmepDefect is equal to false. ps-up(2): Ordinary data can pass freely through the port on which the remote MEP resides. Value of enableRmepDefect is equal to true. NOTE: A 0 value is used for ps-no-port-state-tlv, so that additional code points can be added in a manner consistent with the Dot1agCfmInterfaceStatus textual convention."; } typedef interface-status { type enumeration { enum "is-no-interface-status-tlv" { value 0; } enum "is-up" { value 1; } enum "is-down" { value 2; } enum "is-testing" { value 3; } enum "is-unknown" { value 4; } enum "is-dormant" { value 5; } enum "is-not-present" { value 6; } enum "is-lower-layer-down" { value 7; } } description "An enumerated value from the Interface Status TLV from the last CCM received from the last MEP. It indicates the status of the Interface within which the MEP transmitting the CCM is configured, or the next lower Interface in the Interface Stack, if the MEP is not configured within an Interface. is-no-interface-status-tlv(0) Indicates either that no CCM has been received or that no interface status TLV was present in the last CCM received. is-up(1) The interface is ready to pass packets. is-down(2) The interface cannot pass packets is-testing(3) The interface is in some test mode. is-unknown(4) The interface status cannot be determined for some reason. is-dormant(5) The interface is not in a state to pass packets but is in a pending state, waiting for some external event. is-not-present(6) Some component of the interface is missing is-lower-layer-down(7) The interface is down due to state of the lower layer interfaces NOTE: A 0 value is used for isNoInterfaceStatusTLV, so that these code points can be kept consistent with new code points added to ifOperStatus in the IF-MIB."; } typedef statistics-opcode-name { type enumeration { enum "total" { value 0; } enum "other" { value 1; } enum "ccm" { value 2; } enum "lbr" { value 3; } enum "lbm" { value 4; } enum "ltr" { value 5; } enum "ltm" { value 6; } enum "ais" { value 7; } enum "lck" { value 8; } enum "tst" { value 9; } enum "laps" { value 10; } enum "raps" { value 11; } enum "mcc" { value 12; } enum "lmr" { value 13; } enum "lmm" { value 14; } enum "1dm" { value 15; } enum "dmr" { value 16; } enum "dmm" { value 17; } enum "exr" { value 18; } enum "exm" { value 19; } enum "csf" { value 20; } enum "vsr" { value 21; } enum "vsm" { value 22; } enum "1sl" { value 23; } enum "slr" { value 24; } enum "slm" { value 25; } enum "gnm" { value 26; } } description "An enumerated value indicating the CFM PDU Opcode to which a statistic may be associated. total(0) The total CFM PDUs of all types below. other(1) Indicates the CFM PDU type does not match any other type explicitly detailed below. ccm(2) Connectivity check messages. lbr(3) Loopback response messages. lbm(4) Loopback request messages. ltr(5) Linktrace response messages. ltm(6) Linktrace request messages. ais(7) Alarm indication signal messages. lck(8) Ethernet locked signal messages. tst(9) Ethernet test signal messages. laps(10) Linear automatic protection switching messages. raps(11) Ring automatic protection switching messages. mcc(12) Maintenance communications channel messages. lmr(13) Ethernet loss measurement response messages. lmm(14) Ethernet loss measurement messages. 1dm(15) One way delay measurement messages. dmr(16) Delay measurement response messages. dmm(17) Delay measurement message. exr(18) Ethernet experimental response messages. exm(19) Ethernet experimental messages. csf(20) Client signal fail messages. vsr(21) Vendor specific response messages. vsm(22) Vendor specific messages. 1sl(23) One way synthetic loss measurement messages. slr(24) Synthetic loss measurement response messages. slm(25) Synthetic loss measurement messages. gnm(26) Generic notification messages."; } typedef mp-direction { type enumeration { enum "down" { value 1; } enum "up" { value 2; } } default "down"; description "The direction the MEP faces on the Bridge port. If 'down' the Management Point (MP) sends CFM PDUs away from the MAC Relay Entity. If 'up' the MP sends CFM PDUs towards the MAC Relay Entity."; } typedef highest-priority-defect-type { type enumeration { enum "none" { value 0; } enum "rdi-ccm" { value 1; } enum "mac-status" { value 2; } enum "remote-ccm" { value 3; } enum "error-ccm" { value 4; } enum "xcon-ccm" { value 5; } } description "An enumerated value indicating the highest-priority defect that has been present since the MEP Fault Noffication Generator State Machine was last in the FNG_RESET state."; } typedef lowest-alarm-priority { type enumeration { enum "all-def" { value 1; } enum "mac-rem-err-xcon" { value 2; } enum "rem-err-xcon" { value 3; } enum "err-xcon" { value 4; } enum "xcon" { value 5; } enum "no-xcon" { value 6; } } description "An enumerated value indicating the lowest priority defect that is allowed to generate a fault alarm."; } typedef ccm-tlv-ignore-type { type enumeration { enum "interface-status" { value 0; } enum "port-status" { value 1; } } description "An enumerated value indicating whether to enable processing of received CCM TLVs"; } typedef fc-type { type enumeration { enum "be" { value 0; } enum "l2" { value 1; } enum "af" { value 2; } enum "l1" { value 3; } enum "h2" { value 4; } enum "ef" { value 5; } enum "h1" { value 6; } enum "nc" { value 7; } } description "This data type describes a set of Forwarding Classes."; } typedef fng-state-type { type enumeration { enum "reset" { value 1; } enum "defect" { value 2; } enum "report-defect" { value 3; } enum "defect-reported" { value 4; } enum "defect-clearing" { value 5; } } description "Indicates the diferent states of the MEP Fault Notification Generator State Machine. reset(1) No defect has been present since the fng-reset-time timer expired, or since the state machine was last reset. defect(2) A defect is present, but not for a long enough time to be reported. report-defect(3) A momentary state during which the defect is reported by sending a dot1agCfmFaultAlarm notification, if that action is enabled. defect-reported(4) A defect is present, and some defect has been reported. defect-clearing(5) No defect is present, but the fng-reset-time timer has not yet expired."; } typedef mep-defect-flags { type bits { bit rdi-ccm { position 0; } bit mac-status { position 1; } bit remote-ccm { position 2; } bit error-ccm { position 3; } bit xcon-ccm { position 4; } } description "A MEP can detect and report a number of defects, and multiple defects can be present at the same time. These defects are: rdi-ccm A remote MEP is reported the RDI bit in its last CCM. mac-status Either some remote MEP is reporting its Interface Status TLV as not isUp, or all remote MEPs are reporting a Port Status TLV that contains some value other than psUp. remote-ccm The MEP is not receiving valid CCMs from at least one of the remote MEPs. error-ccm The MEP has received at least one invalid CCM whose CCM Interval has not yet timed out. xcon-cmm The MEP has received at least one CCM from either another MAID or a lower MD Level whose CCM Interval has not yet timed out."; } typedef remote-mep-state-type { type enumeration { enum "mep-idle" { value 1; } enum "mep-start" { value 2; } enum "mep-failed" { value 3; } enum "mep-ok" { value 4; } } description "Operational state of the remote MEP state machine. This state machine monitors the reception of valid CCMs from a remote MEP with a specific MEPID. It uses a timer that expires in 3.5 times the length of time indicated by the ccm-interval leaf mep-idle(1) Momentary state during reset. mep-start(2) The timer has not expired since the state machine was reset, and no valid CCM has yet been received. mep-failed(3) The timer has expired, both since the state machine was reset, and since a valid CCM was received. mep-ok(4) The timer has not expired since a valid CCM was received."; } typedef ccm-interval-type { type enumeration { enum "300hz" { value 1; } enum "10ms" { value 2; } enum "100ms" { value 3; } enum "1s" { value 4; } enum "10s" { value 5; } enum "60s" { value 6; } enum "600s" { value 7; } } default "10s"; description "The possible intervals between CCM transmissions."; } typedef fault-propagation-type { type enumeration { enum "use-if-status-tlv" { value 1; } enum "suspend-ccm" { value 2; } } description "The Fault Propagation type for a MEP When not set, no additional fault propagation will occur. use-if-status-tlv(1) The MEP will send an interface status TLV in the next CCM indicating fault when fault is detected, even if the MEP itself has not detected a fault. suspend-ccm(2) Faults will be propagated by stopping the regular CCM transmissions entirely. Once the fault is cleared, the regular CCM transmissions will resume. Additionally, when the value of this leaf is set, a defect detected by the MEP will be propagated into the service."; } typedef mip-authority { type enumeration { enum "system" { value 1; } enum "default" { value 2; } enum "association" { value 3; } } description "Types of authorities to apply attributes to instantiated MIPs. system(1) System settings. default(2) Default domain. association(3) Maintenance Association (MA)."; } typedef bandwidth-notif-rate { type union { type uint32; type enumeration { enum "not-available" { value -1; } } } description "Types for rate from the ETH-BN PDU."; } } // module nokia-types-eth-cfm
© 2023 YumaWorks, Inc. All rights reserved.