Ethernet OAM
To configure Ethernet OAM (EOAM), you should understand the following concepts:
Ethernet Link OAM
Feature Name |
Release |
Description |
---|---|---|
Ethernet Link OAM on Physical Interface— (802.3ah) Link Monitoring and Remote Loopback |
Release 7.5.2 |
Ethernet link OAM operates on a single, physical link and it can be configured to monitor either side or both sides of that link. Ethernet OAM supports: |
Ethernet as a Metro Area Network (MAN) or a Wide Area Network (WAN) technology benefits greatly from the implementation of Operations, Administration and Maintenance (OAM) features. Ethernet Link OAM (ELO) features allow you to monitor the quality of the connections on a MAN or a WAN. ELO operates on a single physical link, and it can be configured to monitor either side or both sides of that link.
ELO can be configured in the following ways:
-
Using an ELO profile: An ELO profile can be configured to set the parameters for multiple interfaces. This simplifies the process of configuring Ethernet Link OAM features on multiple interfaces. An ELO profile and its features can be referenced by other interfaces, allowing them to inherit those features. This is the preferred method of configuring custom ELO settings.
-
Configuring directly on an interface: Individual ELO features can be configured directly on an interface without being part of a profile. When an interface uses an ELO profile, specific parameters can still be overridden by configuring different values directly on the interface. In such cases, the individually configured features take precedence over the profile settings.
When an ELO packet is received on any one of the Attachment Circuit (AC) interfaces where ELO is not configured, the AC interface multicasts the received packets to other AC interfaces that are part of the Ethernet Virtual Private Network Broadcast Domain (EVPN-BD) to reach the peer. An ELO can be configured on any physical Ethernet interface, including bundle members.
These standard Ethernet Link OAM features are supported on the router:
Neighbor Discovery
Neighbor discovery enables each end of a link to learn the OAM capabilities of the other end and establish an OAM peer relationship. Each end also can require that the peer have certain capabilities before it will establish a session. You can configure certain actions to be taken if there is a capabilities conflict or if a discovery process times out, using the action capabilities-conflict or action discovery-timeout commands.
EFD
Ethernet Fault Detection (EFD) is a mechanism that allows Ethernet OAM protocols, such as CFM, to control the line protocol
state of an interface.
Unlike many other interface types, Ethernet interfaces do not have a line protocol, whose state is independent from that of the interface. For Ethernet interfaces, this role is handled by the physical-layer Ethernet protocol itself, and therefore if the interface is physically up, then it is available and traffic can flow.
EFD changes this to allow CFM to act as the line protocol for Ethernet interfaces. This allows CFM to control the interface state so that if a CFM defect (such as AIS or loss of continuity) is detected with an expected peer MEP, the interface can be shut down. This not only stops traffic flow, but also triggers actions in any higher-level protocols to route around the problem. For example, in the case of Layer 2 interfaces, the MAC table would be cleared and MSTP would reconverge. For Layer 3 interfaces, the ARP cache would be cleared and potentially the IGP would reconverge.
Note |
EFD can only be used for down MEPs. When EFD is used to shut down the interface, the CFM frames continue to flow. This allows CFM to detect when the problem has been resolved, and thus bring the interface backup automatically. |
This figure shows CFM detection of an error on one of its sessions EFD signaling an error to the corresponding MAC layer for the interface. This triggers the MAC to go to a down state, which further triggers all higher level protocols (Layer 2 pseudowires, IP protocols, and so on) to go down and also trigger a reconvergence where possible. As soon as CFM detects there is no longer any error, it can signal to EFD and all protocols will once again go active.
Link Monitoring
Link monitoring enables an OAM peer to monitor faults that cause the quality of a link to deteriorate over time. When link monitoring is enabled, an OAM peer can be configured to take action when the configured thresholds are exceeded.
MIB Retrieval
MIB retrieval enables an OAM peer on one side of an interface to get the MIB variables from the remote side of the link. The MIB variables that are retrieved from the remote OAM peer are READ ONLY.
Remote Loopback
Remote loopback enables one side of a link to put the remote side of the link into loopback mode for testing. When remote loopback is enabled, all packets initiated by the primary side of the link are looped back to the primary side, unaltered by the remote side. In remote loopback mode, the remote side is not allowed to inject any data into the packets.
SNMP Traps
SNMP traps can be enabled or disabled on an Ethernet OAM interface.
Unidirectional Link Detection Protocol
Unidirectional Link Detection (UDLD) is a single-hop physical link protocol for monitoring an ethernet link, including both point-to-point and shared media links. This is a Cisco-proprietary protocol to detect link problems, which are not detected at the physical link layer. This protocol is specifically targeted at possible wiring errors, when using unbundled fiber links, where there can be a mismatch between the transmitting and receiving connections of a port.
How to Configure Ethernet OAM
This section provides these configuration procedures:
Configuring Ethernet Link OAM
Custom Ethernet Link OAM (ELO) settings can be configured and shared on multiple interfaces by creating an ELO profile in Ethernet configuration mode and then attaching the profile to individual interfaces. The profile configuration does not take effect until the profile is attached to an interface. After an ELO profile is attached to an interface, individual Ethernet Link OAM features can be configured separately on the interface to override the profile settings when desired.
This section describes how to configure an ELO profile and attach it to an interface.
Configuring an Ethernet Link OAM Profile
Perform these steps to configure an Ethernet Link OAM (ELO) profile.
Note |
IOS-XR CLI refers to Ethernet Link OAM as ethernet oam in both profile and interface configurations. |
Procedure
Command or Action | Purpose | |||
---|---|---|---|---|
Step 1 |
configure Example:
|
Enters global configuration mode. |
||
Step 2 |
ethernet oam profile profile-name Example:
|
Creates a new Ethernet Link OAM (ELO) profile and enters Ethernet OAM configuration mode. |
||
Step 3 |
link-monitor Example:
|
Enters the Ethernet OAM link monitor configuration mode. |
||
Step 4 |
symbol-period window window Example:
|
(Optional) Configures the window size (in milliseconds) for an Ethernet OAM symbol-period error event. The IEEE 802.3 standard defines the window size as a number of symbols rather than a time duration. These two formats can be converted either way by using a knowledge of the interface speed and encoding. The range is 1000 to 60000. The default value is 1000. |
||
Step 5 |
symbol-period threshold low threshold high threshold symbol-period threshold { ppm [ low threshold ] [ high threshold ] | symbols [ low threshold [ thousand | million | billion ]] [ high threshold [ thousand | million | billion ]]} Example:
|
(Optional) Configures the thresholds (in symbols) that trigger an Ethernet OAM symbol-period error event. The high threshold is optional and is configurable only in conjunction with the low threshold. The range is 1 to 1000000. The default low threshold is 1. |
||
Step 6 |
frame window window Example:
|
(Optional) Configures the frame window size (in milliseconds) of an OAM frame error event. The range is from 1000 to 60000. The default value is 1000. |
||
Step 7 |
frame threshold low threshold high threshold Example:
|
(Optional) Configures the thresholds (in symbols) that triggers an Ethernet OAM frame error event. The high threshold is optional and is configurable only in conjunction with the low threshold. The range is from 0 to 60000000. The default low threshold is 1. |
||
Step 8 |
frame-period window window Example:
|
(Optional) Configures the window size (in milliseconds) for an Ethernet OAM frame-period error event. The IEEE 802.3 standard defines the window size as number of frames rather than a time duration. These two formats can be converted either way by using a knowledge of the interface speed. Note that the conversion assumes that all frames are of the minimum size. The range is from 1000 to 60000. The default value is 1000.
|
||
Step 9 |
frame-period threshold lowthreshold high threshold frame-period threshold { ppm [ low threshold ] [ high threshold ] | frames [ low threshold [ thousand | million | billion ]] [ high threshold [ thousand | million | billion ]]} Example:
|
(Optional) Configures the thresholds (in errors per million frames ) that trigger an Ethernet OAM frame-period error event. The frame period window is defined in the IEEE specification as a number of received frames, in our implementation it is x milliseconds. The high threshold is optional and is configurable only in conjunction with the low threshold. The range is from 1 to 1000000. The default low threshold is 1. To obtain the number of frames, the configured time interval is converted to a window size in frames using the interface speed. For example, for a 1Gbps interface, the IEEE defines minimum frame size as 512 bits. So, we get a maximum of approximately 1.5 million frames per second. If the window size is configured to be 8 seconds (8000ms) then this would give us a Window of 12 million frames in the specification's definition of Errored Frame Window. The thresholds for frame-period are measured in errors per million frames. Hence, if you configure a window of 8000ms (that is a window of 12 million frames) and a high threshold of 100, then the threshold would be crossed if there are 1200 errored frames in that period (that is, 100 per million for 12 million). |
||
Step 10 |
frame-seconds window window Example:
|
(Optional) Configures the window size (in milliseconds) for the OAM frame-seconds error event. The range is 10000 to 900000. The default value is 60000.
|
||
Step 11 |
frame-seconds threshold low threshold high threshold Example:
|
(Optional) Configures the thresholds (in seconds) that trigger a frame-seconds error event. The high threshold value can be configured only in conjunction with the low threshold value. The range is 1 to 900 The default value is 1. |
||
Step 12 |
exit Example:
|
Exits back to Ethernet OAM mode. |
||
Step 13 |
mib-retrieval Example:
|
Enables MIB retrieval in an Ethernet OAM profile or on an Ethernet OAM interface. |
||
Step 14 |
connection timeout <timeout> Example:
|
Configures the connection timeout period for an Ethernet OAM session. as a multiple of the hello interval. The range is 2 to 30. The default value is 5. |
||
Step 15 |
hello-interval {100ms|1s} Example:
|
Configures the time interval between hello packets for an Ethernet OAM session. The default is 1 second (1s ). |
||
Step 16 |
mode {active|passive} Example:
|
Configures the Ethernet OAM mode. The default is active. |
||
Step 17 |
require-remote mode {active|passive} Example:
|
Requires that active mode or passive mode is configured on the remote end before the OAM session comes up. |
||
Step 18 |
require-remote mib-retrieval Example:
|
Requires that MIB-retrieval is configured on the remote end before the OAM session comes up. |
||
Step 19 |
action capabilities-conflict {disable | efd | error-disable-interface} Example:
|
Specifies the action that is taken on an interface when a capabilities-conflict event occurs. The default action is to create a syslog entry.
|
||
Step 20 |
action critical-event {disable | error-disable-interface} Example:
|
Specifies the action that is taken on an interface when a critical-event notification is received from the remote Ethernet OAM peer. The default action is to create a syslog entry.
|
||
Step 21 |
action discovery-timeout {disable | efd | error-disable-interface} Example:
|
Specifies the action that is taken on an interface when a connection timeout occurs. The default action is to create a syslog entry.
|
||
Step 22 |
action dying-gasp {disable | error-disable-interface} Example:
|
Specifies the action that is taken on an interface when a dying-gasp notification is received from the remote Ethernet OAM peer. The default action is to create a syslog entry.
|
||
Step 23 |
action high-threshold {error-disable-interface | log} Example:
|
Specifies the action that is taken on an interface when a high threshold is exceeded. The default is to take no action when a high threshold is exceeded.
|
||
Step 24 |
action session-down {disable | efd | error-disable-interface} Example:
|
Specifies the action that is taken on an interface when an Ethernet OAM session goes down.
|
||
Step 25 |
action session-up disable Example:
|
Specifies that no action is taken on an interface when an Ethernet OAM session is established. The default action is to create a syslog entry.
|
||
Step 26 |
action uni-directional link-fault {disable | efd | error-disable-interface} |
Specifies the action that is taken on an interface when a link-fault notification is received from the remote Ethernet OAM peer. The default action is to create a syslog entry.
|
||
Step 27 |
action wiring-conflict {disable | efd | log} Example:
|
Specifies the action that is taken on an interface when a wiring-conflict event occurs. The default is to put the interface into error-disable state.
|
||
Step 28 |
uni-directional link-fault detection Example:
|
Enables detection of a local, unidirectional link fault and sends notification of that fault to an Ethernet OAM peer. |
||
Step 29 |
commit Example:
|
Saves the configuration changes to the running configuration file and remains within the configuration session. |
||
Step 30 |
end Example:
|
Ends the configuration session and exits to the EXEC mode. |
Attaching an Ethernet Link OAM Profile to an Interface
Perform these steps to attach an Ethernet Link OAM (ELO) profile to an interface.
Note |
IOS-XR CLI refers to Ethernet Link OAM as ethernet oam in both profile and interface configurations. |
Procedure
Command or Action | Purpose | |
---|---|---|
Step 1 |
configure Example:
|
Enters global configuration mode. |
Step 2 |
interface [ | HundredGigE| TenGigE] interface-path-id Example:
|
Enters interface configuration mode and specifies the Ethernet interface name and notation rack/slot/module/port. |
Step 3 |
ethernet oam Example:
|
Enables Ethernet OAM and enters interface Ethernet OAM configuration mode. |
Step 4 |
profile profile-name Example:
|
Attaches the specified Ethernet OAM profile (profile-name ), and all of its configuration, to the interface. |
Step 5 |
commit Example:
|
Saves the configuration changes to the running configuration file and remains within the configuration session. |
Step 6 |
end Example:
|
Ends the configuration session and exits to the EXEC mode. |
Configuring Ethernet Link OAM at an Interface and Overriding the Profile Configuration
Using an Ethernet Link OAM (ELO) profile is an efficient way of configuring multiple interfaces with a common ELO configuration. However, if you want to use a profile but also change the behavior of certain functions for a particular interface, then you can override the profile configuration. To override certain profile settings that are applied to an interface, you can configure that command in interface Ethernet OAM configuration mode to change the behavior for that interface.
In some cases, only certain keyword options are available in interface Ethernet OAM configuration due to the default settings for the command. For example, without any configuration of the action commands, several forms of the command have a default behavior of creating a syslog entry when a profile is created and applied to an interface. Therefore, the log keyword is not available in Ethernet OAM configuration for these commands in the profile because it is the default behavior. However, the log keyword is available in Interface Ethernet OAM configuration if the default is changed in the profile configuration so you can retain the action of creating a syslog entry for a particular interface.
To see all of the default ELO configuration settings, see the Verifying the Ethernet Link OAM Configuration section.
To configure ELO settings at an interface and override the profile configuration, perform these steps.
Note |
IOS-XR CLI refers to Ethernet Link OAM as ethernet oam in both profile and interface configurations. |
Procedure
Command or Action | Purpose | |||
---|---|---|---|---|
Step 1 |
configure Example:
|
Enters global configuration mode. |
||
Step 2 |
interface [ HundredGigE | TenGigE] interface-path-id Example:
|
Enters interface configuration mode and specifies the Ethernet interface name and notation rack/slot/module/port.
|
||
Step 3 |
ethernet oam Example:
|
Enables Ethernet OAM and enters interface Ethernet OAM configuration mode. |
||
Step 4 |
interface-Ethernet-OAM-command Example:
|
Configures a setting for an Ethernet OAM configuration command and overrides the setting for the profile configuration, where interface-Ethernet-OAM-command is one of the supported commands on the platform in interface Ethernet OAM configuration mode. |
||
Step 5 |
commit Example:
|
Saves the configuration changes to the running configuration file and remains within the configuration session. |
||
Step 6 |
end Example:
|
Ends the configuration session and exits to the EXEC mode. |
Verifying the Ethernet Link OAM Configuration
Use the show ethernet oam configuration command to display the values for the Ethernet Link OAM (ELO) configuration for a particular interface, or for all interfaces. The following example shows the default values for ELO settings:
RP/0/RP0/CPU0:router# show ethernet oam configuration
Thu Aug 5 22:07:06.870 DST
GigabitEthernet0/0/0/0:
Hello interval: 1s
Mib retrieval enabled: N
Uni-directional link-fault detection enabled: N
Configured mode: Active
Connection timeout: 5
Symbol period window: 0
Symbol period low threshold: 1
Symbol period high threshold: None
Frame window: 1000
Frame low threshold: 1
Frame high threshold: None
Frame period window: 1000
Frame period low threshold: 1
Frame period high threshold: None
Frame seconds window: 60000
Frame seconds low threshold: 1
Frame seconds high threshold: None
High threshold action: None
Link fault action: Log
Dying gasp action: Log
Critical event action: Log
Discovery timeout action: Log
Capabilities conflict action: Log
Wiring conflict action: Error-Disable
Session up action: Log
Session down action: Log
Require remote mode: Ignore
Require remote MIB retrieval: N
Configuration Examples for Ethernet OAM
This section provides the following configuration examples:
Configuration Examples for Ethernet Link OAM Interfaces
This section provides the following configuration examples:
Configuring an Ethernet Link OAM Profile Globally: Example
This example shows how to configure an Ethernet Link OAM (ELO) profile globally:
configure terminal
ethernet oam profile Profile_1
link-monitor
symbol-period window 60000
symbol-period threshold ppm low 10000000 high 60000000
frame window 60
frame threshold ppm low 10000000 high 60000000
frame-period window 60000
frame-period threshold ppm low 100 high 12000000
frame-seconds window 900000
frame-seconds threshold low 3 high 900
exit
mib-retrieval
connection timeout 30
require-remote mode active
require-remote mib-retrieval
action dying-gasp error-disable-interface
action critical-event error-disable-interface
action discovery-timeout error-disable-interface
action session-down error-disable-interface
action capabilities-conflict error-disable-interface
action wiring-conflict error-disable-interface
action remote-loopback error-disable-interface
commit
Configuring Ethernet Link OAM Features on an Individual Interface: Example
This example shows how to configure Ethernet Link OAM (ELO) features on an individual interface:
configure terminal
interface TenGigE 0/0/0/0
ethernet oam
link-monitor
symbol-period window 60000
symbol-period threshold ppm low 10000000 high 60000000
frame window 60
frame threshold ppm low 10000000 high 60000000
frame-period window 60000
frame-period threshold ppm low 100 high 12000000
frame-seconds window 900000
frame-seconds threshold low 3 high 900
exit
mib-retrieval
connection timeout 30
require-remote mode active
require-remote mib-retrieval
action link-fault error-disable-interface
action dying-gasp error-disable-interface
action critical-event error-disable-interface
action discovery-timeout error-disable-interface
action session-down error-disable-interface
action capabilities-conflict error-disable-interface
action wiring-conflict error-disable-interface
action remote-loopback error-disable-interface
commit
Configuring Ethernet Link OAM Features to Override the Profile on an Individual Interface: Example
This example shows the configuration of Ethernet Link OAM (ELO) features in a profile followed by an override of that configuration on an interface:
configure terminal
ethernet oam profile Profile_1
mode passive
action dying-gasp disable
action critical-event disable
action discovery-timeout disable
action session-up disable
action session-down disable
action capabilities-conflict disable
action wiring-conflict disable
action remote-loopback disable
action uni-directional link-fault error-disable-interface
commit
configure terminal
interface TenGigE 0/0/0/0
ethernet oam
profile Profile_1
mode active
action dying-gasp log
action critical-event log
action discovery-timeout log
action session-up log
action session-down log
action capabilities-conflict log
action wiring-conflict log
action remote-loopback log
action uni-directional link-fault log
uni-directional link-fault detection
commit
Clearing Ethernet Link OAM Statistics on an Interface: Example
This example shows how to clear Ethernet Link OAM (ELO) statistics on an interface:
RP/0/RP0/CPU0:router# clear ethernet oam statistics interface gigabitethernet 0/0/0/1
Enabling SNMP Server Traps on a Router: Example
This example shows how to enable SNMP server traps on a router:
configure terminal
snmp-server traps ethernet oam events