CFM
This chapter covers some aspects related to the service cfm
tool, which allows you to configure the
Connectivity Fault Management (CFM) service in OSDx.
The first thing to do is to create the Maintenance Domain (MD), which consists of certain logically defined areas that set
boundaries for providers, operators and customers. To create a new MD from a given name, use the domain
field.
Once this is done, you can configure the MD parameters:
level
: configures the domain level. Accepted values range from 0 to 7 (default, 0).name-format
: configures the format for the domain reference included in sent CCM messages. If this command is not present, the current domain name string will be used as the default format.dns
: sets the domain name format to a domain name-based string.mac
: sets the domain name format to a valid MAC address (mac address
) and a two-bytes integer value (mac integer
).no-name
: deletes the domain reference from the CCM messages sent.
Apart from these parameters, you can configure the services that belong to a MD. These services are called
Maintenance Association (MA) and, using the service
field, new MAs can be created from a given name.
Next, for each MA you can configure the following parameters:
alarm
: configures the way the Fault Notification Generator works.delay
: when the device detects a defect on an MEP, it waits a certain amount of time before reporting the error. This field is used to set the time delay value. Valid values range from 2500 to 10000 milliseconds (default, 2500 milliseconds).min-notification-level
: the device can notify the system administrator when it detects a defect on an MEP. Since not all notifications are worthy of being monitored, this field allows an interval to be set (default, 1).1: All defects: Some-RDI, Some-MAC-Status, Some-RMEP-CCM, Error-CCM and Xcon-CCM.
2: Only Some-MAC-Status, Some-RMEP-CCM, Error-CCM and Xcon-CCM defects.
3: Only Some-RMEP-CCM, Error-CCM and Xcon-CCM defects.
4: Only Error-CCM and Xcon-CCM defects.
5: Only Xcon-CCM defects.
reset
: once the system has detected and reported an error, it will wait for normal operation. This field allows you to configure a wait time to ensure that the device is running properly again. Valid values range from 2500 to 10000 milliseconds (default, 10000 milliseconds).
continuity-check
: configures the Continuity Check Protocol parameters.interval
: sets the periodicity of packet transmission to other remote devices in the network. Valid values are 100ms, 1s, 10s, 1m, and 10m (by default 1m).loss-threshold
: each MEP can have a group of remote MEPs that expect to receive periodic messages. The local MEP will detect the absence of packet reception if a remote MEP stops transmitting or a connection error occurs. This field sets the number of non-received packets needed to activate the alarm (default, 1).
name-format
: configures the format used for the service reference included in sent CCM messages. If this command is not present, the current service name string will be used as the default format.int
: sets the service format name to a two-octets integer value.vid
: sets the service format name to the primary VLAN ID.vpn-id
: sets the service format name to a VPN ID as an integer value.vpn-id-ieee
: sets the service format name to a VPN ID, as described in RFC 2685.
sender-id
: includes the TLV Sender ID in the CCM messages sent. It is useful to help identify the device.chassis
: sets the TLV Sender ID value to the Chassis ID subtype. If the device has a host-name, this will be included in protocol messages. If not, the TLV Sender ID is attached to the list anyway (with a 0 value).
Apart from these parameters, you can create and configure the Maintenance service End Points (MEPs) that belong to a
MA. Using the mep
field, new MEPs can be created in the device and the following parameters can then be configured:
alarm
: configures thesystem alarm <txt>
so that it warns of errors detected by the MEP.interface
: configures the interface where the MEP is located.rmep
: configures the remote MEPs the local MEP must control and monitor.
Configuration
This is the syntax to create a service cfm
:
set service cfm [ ... ]
Examples
Multi-Service Port
Imagine you want to configure a device to monitor multiple services from different MEPs on the same port. And also, that all these services belong to the level 7 domain (named DOMAIN_7).
MEP 1 monitors the NO_VLAN_SERVICE service on interface eth0.
MEP 101 monitors the SERVICE_100 service on interface eth0.100.
MEP 201 monitors the SERVICE_200 service on interface eth0.200.
In OSDx, this can be achieved by entering the following commands:
set service cfm domain DOMAIN_7 level 7
set service cfm domain DOMAIN_7 service NO_VLAN_SERVICE continuity-check interval 10s
set service cfm domain DOMAIN_7 service NO_VLAN_SERVICE mep 1 interface eth0
set service cfm domain DOMAIN_7 service NO_VLAN_SERVICE mep 1 rmep 2
set service cfm domain DOMAIN_7 service NO_VLAN_SERVICE sender-id chassis
set service cfm domain DOMAIN_7 service SERVICE_100 continuity-check interval 10s
set service cfm domain DOMAIN_7 service SERVICE_100 mep 101 interface eth0.100
set service cfm domain DOMAIN_7 service SERVICE_100 mep 101 rmep 102
set service cfm domain DOMAIN_7 service SERVICE_100 sender-id chassis
set service cfm domain DOMAIN_7 service SERVICE_200 continuity-check interval 10s
set service cfm domain DOMAIN_7 service SERVICE_200 mep 201 interface eth0.200
set service cfm domain DOMAIN_7 service SERVICE_200 mep 201 rmep 202
set service cfm domain DOMAIN_7 service SERVICE_200 sender-id chassis
Here, you can find more examples related to service cfm
.
Monitoring
Operational commands service cfm mep show
or service cfm mep <value> show
can be used to display
information related to local and remote MEPs.
Example:
admin@DUT0$ service cfm mep 1 show
================
=== MEP Info ===
================
MEPID: 1
Type: down
Network: eth0
MAC address: 08:00:27:ce:5d:7c
Domain: DOMAIN_7 at level 7
Service: NO_VLAN_SERVICE with no vlan association
RDI bit: down
Port state: not available
Interface state: up
enableRMEPdefect: enabled
FNG state: reset
FNG current defect: DefNone
FNG last reported defect: DefNone
Last sent sequence number: 14
Out-of-sequence CCMs: 0
Remote MEPs: 1
-------------------------------------------------------------------------------------------------------------------
rMepID SenderID MAC-address Status LastSeqNum RDI Port Interface LastTime
-------------------------------------------------------------------------------------------------------------------
2 DUT1 08:00:27:ff:f6:f1 ok 14 down not available up 2024-01-02 15:18:53.191261
Command Summary
Configuration commands
service cfm domain <txt> service <txt> alarm min-notification-level <u32>
service cfm domain <txt> service <txt> continuity-check interval <txt>
service cfm domain <txt> service <txt> continuity-check loss-threshold <u32>
service cfm domain <txt> service <txt> mep <u32> alarm <txt>
service cfm domain <txt> service <txt> mep <u32> interface <ifc>
service cfm domain <txt> service <txt> name-format integer <u32>
service cfm domain <txt> service <txt> name-format vid <u32>
service cfm domain <txt> service <txt> name-format vpn-id <u32>
service cfm domain <txt> service <txt> name-format vpn-id-ieee <txt>