Common types used within ieee802-dot1q-cfm modules.
Version: 2020-06-04
module ieee802-dot1q-cfm-types { yang-version 1.1; namespace "urn:ieee:std:802.1Q:yang:ieee802-dot1q-cfm-types"; prefix cfm-types; organization "IEEE 802.1 Working Group"; contact "WG-URL: http://ieee802.org/1/ WG-EMail: stds-802-1-l@ieee.org Contact: IEEE 802.1 Working Group Chair Postal: C/O IEEE 802.1 Working Group IEEE Standards Association 445 Hoes Lane Piscataway, NJ 08854 USA E-mail: stds-802-1-chairs@ieee.org"; description "Common types used within ieee802-dot1q-cfm modules."; revision "2020-06-04" { description "Published as part of IEEE Std 802.1Qcx-2020. Initial version."; reference "IEEE Std 802.1Qcx-2020, Bridges and Bridged Networks - YANG Data Model for Connectivity Fault Management."; } typedef unicast-mac-address-type { type string { pattern "[0-9a-fA-F][02468aAcCeE](-[0-9a-fA-F]{2}){5}"; } description "A unicast destination MAC address. The I/G address bit is used to identify the destination MAC address as an individual MAC address or a group MAC address. If the I/G address bit is 0, it indicates that the MAC address field is an individual MAC address. If this bit is 1, the MAC address is a group MAC address that identifies one or more (or all) stations connected to the IEEE 802 network"; } typedef multicast-class1-mac-address-type { type string { pattern "(01-80-C2-00-00-3)[0-7]"; } description "The multicast class 1 MAC address must take the form of 01-80-C2-00-00-3x, where x represents the MEG level, with x being a value in the range of 0..7."; } typedef mp-type { type enumeration { enum "mhf" { value 1; description "Indicates a MHF."; } enum "mep" { value 2; description "Indicates a MEP."; } } description "Indicates the type of Maintenance Point."; } typedef mhf-creation-type { type enumeration { enum "mhf-none" { value 1; description "No MHFs can be created for designated VID(s) or ISID."; } enum "mhf-default" { value 2; description "MHFs can be created for designated VID(s) or ISID on any Bridge Port through which the VID(s) or ISID can pass, where: i) There are no lower active MD levels; or ii) There is a MEP at the next lower active MD level on the port."; } enum "mhf-explicit" { value 3; description "MHFs can be created for designated VID(s) or ISID only on Bridge Ports through which the VID(s) or ISID can pass, and only if there is a MEP at the next lower active MD level on the port."; } enum "mhf-defer" { value 4; description "In the Maintenance Association only, the control of MHF creation is deferred to the corresponding variable in the enclosing Maintenance Domain."; } } description "Indicates if the Management Entity can create MHFs."; } typedef mp-direction-type { type enumeration { enum "down" { value 1; description "Down maintenance point, where CFM protocol messages are dispatched away from the MAC Relay entity."; } enum "up" { value 2; description "Up maintenance point, where CFM protocol messages are dispatched towards the MAC Relay entity."; } } description "Indicates the direction in which the Maintenance Point (MEP or MIP) faces on the Bridge Port."; } typedef mep-id-type { type uint16 { range "1..8191"; } description "Maintenance association End Point Identifier, which is unique over a given Maintenance Association."; } typedef md-level-type { type uint8 { range "0..7"; } description "Integer identifying the Maintenance Domain Level (MD Level). Higher numbers correspond to higher Maintenance Domains, those with the greatest physical reach, with the highest values for customers' CFM PDUs. 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 port-status-tlv-value-type { type enumeration { enum "no-port-state-tlv" { value 0; description "Indicates either that no CCM has been received or that no port status TLV was present in the last CCM received."; } enum "blocked" { value 1; description "Ordinary data cannot pass freely through the port on which the remote MEP resides."; } enum "up" { value 2; description "Ordinary data can pass freely through the port on which the remote MEP resides."; } } 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."; } typedef interface-status-tlv-value-type { type enumeration { enum "no-interface-status-tlv" { value 0; description "Indicates either that no CCM has been received or that no interface status TLV was present in the last CCM received."; } enum "up" { value 1; description "The interface is ready to pass packets."; } enum "down" { value 2; description "The interface can not pass packets."; } enum "testing" { value 3; description "The interface is in some test mode."; } enum "unknown" { value 4; description "The interface status cannot be determined for some reason."; } enum "dormant" { value 5; description "The interface is not in a state to pass packets but is in a pending state, waiting for some external event."; } enum "not-present" { value 6; description "Some component of the interface is missing."; } enum "lower-layer-down" { value 7; description "The interface is down due to state of the lower layer interface."; } } 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."; } typedef highest-defect-priority-type { type enumeration { enum "none" { value 0; description "No defects since Fault Notification Generator state machine reset."; } enum "def-rdi-ccm" { value 1; description "The last CCM received by this MEP from some remote MEP contained the RDI bit set."; } enum "def-mac-status" { value 2; description "The last CCM received by this MEP from some remote MEP indicating that the transmitting MEP's associated MAC is reporting its status via the Port Status TLV or Interface Status TLV."; } enum "def-remote-ccm" { value 3; description "This MEP is not receiving CCMs from some other MEP in its configured list."; } enum "def-error-ccm" { value 4; description "This MEP is receiving invalid CCMs."; } enum "def-xcon-ccm" { value 5; description "This MEP is receiving CCMs that could be from some other MA."; } } description "An enumerated value, equal to the contents of the variable highestDefect (20.35.9 and Table 20-1), indicating the highest-priority defect that has been present since the MEP Fault Notification Generator State Machine was last in the FNG_RESET state. The integer value assigned to the enum value determines the priority. The higher value corresponds to the higher priority."; } typedef lowest-alarm-priority-type { type enumeration { enum "all-def" { value 1; description "Includes def-rdi-ccm, def-mac-status, def-remote-ccm, def-error-ccm, and def-xcon-ccm."; } enum "mac-remote-error-xcon" { value 2; description "Only includes def-mac-status, def-remote-ccm, def-error-ccm, and def-xcon-ccm."; } enum "remote-error-xcon" { value 3; description "Includes def-remote-ccm, def-error-ccm, and def-xcon-ccm."; } enum "error-xcon" { value 4; description "Includes def-error-ccm and def-xcon-ccm."; } enum "xcon" { value 5; description "Only def-xcon-ccm"; } enum "no-xcon" { value 6; description "No defects def-xcon or lower are to be reported."; } } description "Specifies the lowest priority defect that is allowed to generate a Fault Alarm (20.9.5). The to be reported defects are identified per enum value."; } typedef sender-id-permission-type { type enumeration { enum "send-id-none" { value 1; description "The Sender ID TLV is not to be sent."; } enum "send-id-chassis" { value 2; description "The Chassis ID Length, Chassis ID Subtype, and Chassis ID fields of the Sender ID TLV are to be sent."; } enum "send-id-manage" { value 3; description "The Management Address Length and Management Address of the Sender ID TLV are to be sent."; } enum "send-id-chassis-manage" { value 4; description "The Chassis ID Length, Chassis ID Subtype, Chassis ID, Management Address Length and Management Address fields are all to be sent."; } enum "send-id-defer" { value 5; description "The content of the Sender ID TLV are determined by the corresponding Maintenance Domain variable."; } } description "Indicates what, if anything, is to be included in the Sender ID TLV transmitted in CCMs, LBMs, LTMs, and LTRs."; } typedef ccm-interval-type { type enumeration { enum "300hz" { value 1; description "CCM PDUs are sent every 3 1/3 milliseconds (300Hz)."; } enum "10ms" { value 2; description "CCM PDUs are sent every 10 milliseconds."; } enum "100ms" { value 3; description "CCM PDUs are sent every 100 milliseconds."; } enum "1sec" { value 4; description "CCM PDUs are sent every second."; } enum "10sec" { value 5; description "CCM PDUs are sent every 10 seconds."; } enum "1min" { value 6; description "CCM PDUs are sent every minute."; } enum "10min" { value 7; description "CCM PDUs are sent every 10 minutes."; } } description "Indicates the interval at which CCM PDUs are sent by a MEP."; } typedef fng-state-type { type enumeration { enum "fng-reset" { value 1; description "No defect has been present since the MEP's fng-reset-time timer expired, or since the state machine was last reset."; } enum "fng-defect" { value 2; description "A defect is present, but not for a long enough time to be reported."; } enum "fng-report-defect" { value 3; description "A momentary state during which the defect is reported by sending a fault-alarm notification, if that action is enabled."; } enum "fng-defect-reported" { value 4; description "A defect is present, and some defect has been reported."; } enum "fng-defect-clearing" { value 5; description "No defect is present, but the MEP's fng-reset-time timer has not yet expired."; } } description "Indicates the different states of the MEP Fault Notification Generator State Machine."; } typedef relay-action-field-value-type { type enumeration { enum "relay-hit" { value 1; description "The LTM reached a Maintenance Point whose MAC address matches the target address."; } enum "relay-fdb" { value 2; description "The Egress Port was determined by consulting the Filtering Database."; } enum "relay-mpdb" { value 3; description "The Egress Port was determined by consulting the MIP CCM Database."; } } description "Possible values the Relay action field can take."; } typedef ingress-action-field-value-type { type enumeration { enum "ingress-ok" { value 1; description "The target data frame would be passed through to the MAC Relay Entity."; } enum "ingress-down" { value 2; description "The Bridge Ports MAC_Operational parameter is false."; } enum "ingress-blocked" { value 3; description "The target data frame would not be forwarded if received on this Port due to active topology enforcement."; } enum "ingress-vid" { value 4; description "The ingress port is not in the member set of the LTMs VID, and ingress filtering is enabled, so the target data frame would be filtered by ingress filtering."; } } description "Possible values returned in the ingress action field."; } typedef egress-action-field-value-type { type enumeration { enum "egress-okay" { value 1; description "The targeted data frame would be forwarded."; } enum "egress-down" { value 2; description "The Egress Port can be identified, but that Bridge Port MAC_Operational parameter is false."; } enum "egress-blocked" { value 3; description "The Egress Port can be identified, but the data frame would not pass through the Egress Port due to active topology management (i.e., the Bridge Port is not in the Forwarding state."; } enum "egress-vid" { value 4; description "The Egress Port can be identified, but the Bridge Port is not in the LTMs VIDs member set, so would be filtered by egress filtering."; } } description "Possible values returned in the egress action field."; } typedef remote-mep-state-type { type enumeration { enum "rmep-idle" { value 1; description "Momentary state during reset."; } enum "rmep-start" { value 2; description "The timer has not expired since the state machine was reset, and no valid CCM has yet been received."; } enum "rmep-failed" { value 3; description "The timer has expired, both since the state machine was reset, and since a valid CCM was received."; } enum "rmep-ok" { value 4; description "The timer has not expired since a valid CCM was received."; } } 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 MA's ccm-interval object."; } typedef mep-defects-type { type bits { bit def-rdi-ccm { position 0; description "A remote MEP reported that RDI bit in its last CCM."; } bit def-mac-status { position 1; description "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."; } bit def-remote-ccm { position 2; description "The MEP is not receiving valid CCMs from at least one of the remote MEPs."; } bit def-error-ccm { position 3; description "The MEP has received at least one invalid CCM whose CCM Interval has not yet timed out."; } bit def-xcon-ccm { position 4; description "The MEP has received at last one CCM from either another MAID or a lower MD level whose CCM Interval has not yet timed out."; } } description "A MEP can detect and report a number of defects, and multiple defects can be present at the same time."; } typedef config-error-type { type bits { bit cfm-leak { position 0; description "MA x is associated with a specific VID list, one or more of the VIDs in MA x can pass through the Bridge Port, no Down MEP is configured on any Bridge Port for MA x, and some other MA y, at a higher MD Level than MA x, and associated with at least one of the VID(s) also in MA x, does have a MEP configured on the Bridge Port."; } bit conflicting-vids { position 1; description "MA x is associated with a specific VID list, an Up MEP is configured on MA x on the Bridge Port, and some other MA y, associated with at least one of the VID(s) also in MA x, also has an Up MEP configured on some Bridge Port."; } bit excessive-levels { position 2; description "The number of different MD Levels at which MIPs are to be created on this port exceeds the Bridge's capabilities."; } bit overlapped-levels { position 3; description "A MEP is created for one VID at one MD Level, but a MEP is configured on another VID at that MD Level or higher, exceeding the Bridge's capabilities."; } } description "While making the MIP creation evaluation described in 22.2.3, the management entity can encounter errors in the configuration."; } typedef mep-tx-ltm-flags-type { type bits { bit use-fdb-only { position 1; description "Use FDB only"; } } description "The flags field for LTMs transmitted by the MEP."; } typedef fault-alarm-type { type enumeration { enum "address" { value 1; description "Indicates that a Network address to which Fault Alarms are to be transmitted should be used."; } enum "not-transmitted" { value 2; description "Indicates that Fault alarms are not to be transmitted."; } } description "The Fault Alarm indicators."; } typedef lbm-data-tlv-type { type binary { length "1..1480"; } description "The loopback message Data TLV type."; } typedef name-key-type { type string { length "1..255"; pattern '[0-9a-zA-Z\-_.]*'; } description "String type with at least 1 and up to 255 of the specified characters."; } typedef seq-number-type { type uint32 { range "0..4294967295"; } description "The transaction identifier or sequence number of the CFM PDU."; } typedef service-selector-type { type enumeration { enum "ieee-reserved-0" { value 0; description "Reserved for definition by IEEE 802.1."; } enum "vlan-id" { value 1; description "12-bit identifier found in a VLAN tag."; } enum "isid" { value 2; description "24-bit identifier found in an I-TAG."; } enum "tesid" { value 3; description "32-bit identifier"; } enum "segid" { value 4; description "32-bit identifier"; } enum "path-tesid" { value 5; description "32-bit identifier"; } enum "group-isid" { value 6; description "24 bit identifier"; } enum "ieee-reserved" { value 7; description "Reserved for definition by IEEE 802.1"; } } default "vlan-id"; description "A value that represents a type (and thereby the format) of a service-selector-value."; } typedef service-selector-value-type { type uint32 { range "1..4294967295"; } description "An integer that uniquely identifies a generic MAC Service, or none. Examples of service selectors are a VLAN-ID and an I-SID. A service-selector-value value is always interpreted within the context of a service-selector-type value. Every usage of the service-selector-value textual convention is required to specify the service-selector-type object that provides the context. The value of a service-selector-value object must always be consistent with the value of the associated service-selector-type object. Attempts to set a service-selector-value object to a value inconsistent with the associated service-selector-type must fail with an inconsistent-value error."; } } // module ieee802-dot1q-cfm-types
© 2023 YumaWorks, Inc. All rights reserved.