Transport networks have traditionally been built using Time Division Multiplexed (TDM) SONET/SDH devices. These are becoming ineffective and costly in today’s packet-oriented world, which is driving service providers to deploy more packet-based equipment in their transport networks.
However, packet technology has not until now offered the resilience and manageability of SONET/SDH that carriers demand. This includes
- OAM functions to detect and isolate faults
- fast (sub-50ms) protection and restoration, to minimize traffic loss due to faults
- end-to-end QoS.
MPLS-TP (MPLS-Transport Profile) addresses these deficiencies, providing the same QoS, protection and restoration, and OAM inherent in SONET/SDH, in a way that has a familiar look and feel for network operators.
Work on the technology began in the ITU under the name T-MPLS. Responsibility now rests with the IETF, and the name has changed to MPLS-TP.
How Does MPLS-TP Work?
As the name implies, MPLS-TP is a variant of the traditional MPLS services that have been in use for many years in IP networks.
- MPLS-TP uses Generalized MPLS (GMPLS) to provide deterministic and connection oriented behavior using LSPs (Label Switched Paths), making it a dependable transport protocol.
- MPLS-TP also uses Targeted LDP (T-LDP) to set up pseudowires (PWs) over GMPLS LSPs, to provide VPWS (Virtual Private Wire Service) and VPLS (Virtual Private LAN Service).
- MPLS-TP mandates running protocols such as BFD (Bidirection Forwarding Detection) over GMPLS LSPs and PWs, to provide OAM functionality.
- MPLS-TP does not assume IP connectivity between devices, and explicitly rules out related features of normal MPLS, such as PHP (Penultimate Hop Popping, ECMP (Equal Cost Multipath), and LSP Merge.
- MPLS-TP specifies how very fast protection and restoration will be achieved using switchover to backup paths.
- MPLS-TP allows LSPs and PWs to be signaled using a control plane (using RSVP-based GMPLS signaling and Targeted LDP signaling), or to be statically configured.
A typical MPLS-TP service is depicted below, showing three PWs that have been stitched together. In this example, the access networks LSPs are statically configured, and the backbone uses signaling. However, all combinations are possible – the backbone could use statically configured LSPs, and the access networks could use signaling.
For fault detection and localization, each device in the diagram would run BFD over each PW and each underlying LSP. This works as follows.
- Both ends of each LSP send BFD packets over the LSP, typically with very short intervals (10ms being common).
- If either end sees an interval between received BFD packets above a certain threshold, it will raise an alarm for the specific service, and report the problem in the content of the BFD packets it transmits.
- If either end sees such a problem reported in received BFD packets, it will also raise an alarm for that LSP.
To distinguish BFD packets from other labeled data flowing over the LSP, the BFD packets are pre-pended with a special well-known MPLS label, the “GAL” (GAch Label), which sits at the bottom of the MPLS label stack, and a GAch (Generic Associated Channel) header. The terminating device will use the GAL label to determine that the packet is not part of the normal data stream, and the GAch header to determine what sort of OAM traffic it is.
When BFD is used over the PW rather than over the underlying LSP, it does not use the GAL label. Instead, all data traversing the PW contains an initial header (the “GAch header”, or “Control Word”) which the terminating device can use to detect whether a packet is normal data or a BFD packet.
As well as raising alarms, BFD is also used to detect when traffic should be switched to pre-provisioned backup LSPs.