OAM is Operations, Administration, and Maintenance and has been used for many years in connection oriented (e.g. TDM) and connectionless (e.g. IP) networks for connectivity verification, path discovery, fault detection, and performance monitoring. There are a variety OAM tools used in IP, MPLS, MPLS-TP, pseudowires, and Ethernet which are defined in the IETF, ITU and IEEE. In some cases a common OAM protocol is used across multiple network technologies (e.g. BFD).
Metaswitch OAM Support
OAM protocols span the dividing line between the control and data plane. Some parts of OAM must be handled rapidly and without any control plane intervention. Other parts are just too complex for a hardware implementation. So Metaswitch has developed a software OAM solution that can run either on the control plane CPU or on CPUs that are close to the data plane. It also offers the option of hardware-assist for the most time-critical functions. Metaswitch’s DC-OAM product supports the following:
- BFD (for Connectivity Check, Connectivity Verification and Remote Defect Indication)
- LSP Ping (for Traceroute function and on-demand Connectivity Verification)
As standards develop, further function will be added.
Metaswitch’s portable source code DC-OAM BFD solution is a library of functions for BFD control packet handling and BFD session monitoring. It is designed explicitly to support the scalability, availability and functional requirements of OEMs building devices for next generation networks.
DC-OAM BFD may be used in conjunction with Metaswitch’s MPLS and/or IP Routing product suites, 3rd party control plane solutions or without a control plane at all.
DC-OAM BFD provides the following functions.
- Creation, configuration and destruction of BFD sessions.
- Timer negotiation and encoding/transmission of BFD control packets.
- Decoding of received BFD control packets and matching to the relevant BFD session.
- Detecting and reporting all BFD session state changes.
- Maintaining and providing statistics for BFD sessions and overall operation.
Distribution = Scalability
BFD sessions are usually configured as close as possible (in distributed system terms) to the links that they are monitoring. In a distributed system with multiple line cards, users of DC-OAM BFD may choose to provide at least one instance of the DC BFD Library on each line card that has BFD-monitored links. The library architecture and ability to multi-instance naturally support this.
Common BFD Application: MPLS-TP
MPLS-TP has highlighted the importance of OAM to operators. In this application, BFD is used to monitor MPLS-TP LSPs and/or pseudowires (PWs).
A typical MPLS-TP service is illustrated below, showing a three segment PW. In this example, the access networks LSPs are statically configured, and the backbone uses signaling although other combinations are possible.
In the example above BFD runs at two layers for fault detection and localization. It works as follows.
- The MPLS-TP LSP BFD runs separately in each network (access, backbone etc.). Each end of each LSP sends BFD packets over the LSP, typically with very short intervals (10ms being common). If BFD detects a failure, it could be used to trigger very rapid switch over to some backup LSP, thereby achieving 50ms restoration.
- Similarly each end of each PW send BFD packets. If this is being used for service assurance, a lower packet rate may be appropriate. In either case alarms would be raised.
DC-OAM LSP Ping
Metaswitch’s LSP Ping solution is a library of functions that build and parse LSP Ping messages and manage the LSP Ping transactions. It is integrated with DC-MPLS to provide an end-to-end solution.
DC-OAM LSP Ping provides the following function.
- Enables the library user to initiate LSP Ping transactions
- Retries LSP Ping requests if a response is not received
- Integrates with DC-MPLS to process LSP Ping requests
- Creates and encodes LSP Ping packets and passes them to the library user for transmission
- Accepts and decodes LSP Ping packets from the library user and correlates responses to an existing LSP Ping transaction or passes requests to DC-MPLS for processing
- Maintains statistics about LSP Ping transactions and overall operation
- Manages a traceroute request and reports the discovered path to the library user.
Distribution = Scalability
As for DC-OAM BFD, multiple DC-OAM LSP Ping instances can be instantiated and the library can be distributed to line cards if required.