Real-time video distribution, with its high bandwidth requirement and low tolerance to jitter, has driven the development of point-to-multipoint Multiprotocol Label Switching (MPLS), but the technology can also benefit other types of data requiring highly scalable and reliable transport. Point-to-multipoint MPLS combines the efficiency of multipoint protocols such as PIM and DVMRP with the reliability and quality of service (QoS) capabilities of MPLS.
Video is typically distributed from a single source to a very large number of destinations. For example, the broadcast of a sporting event may require the same data stream to be sent simultaneously to cable system head-ends for every cable system in America. The data stream can consist of bandwidth up to 300 Mbps and require delivery without loss of data and without jitter. In the past, ATM or SONET has been used to meet these requirements. IP networks offer advantages of flexibility and relatively low cost compared to these older technologies but could not meet the requirements of video distribution prior to the development of point-to-multipoint MPLS.
MPLS improves the efficiency of traditional IP packet forwarding. With MPLS, each data stream is assigned a specific label switched path (LSP). A label identifies each packet making up the stream. Routers along the path use the label to identify the proper LSP and forward the packet along it. MPLS labels are short and can be used to index into a table of LSPs much more efficiently than using a full-destination IP address with a subnet mask to compute the next hop.
MPLS traffic engineering enables a network manager to specify the QoS characteristics for an LSP. For example, an LSP for video may be created by including only links and routers that meet the requirements for available bandwidth and predictable delay. Routers along the path reserve the bandwidth when the LSP is created. A fall-back path can be created at the same time as the LSP so traffic can be rerouted quickly if a link is cut or a router fails.
MPLS was originally developed to support only LSPs extending from a single network entry point to a single destination. Using MPLS for video distribution would require creation of a separate LSP from the entry point to each destination. The source of the data would have to transmit each packet separately to each destination, greatly increasing the load on the source of the data and on the router at the network entry point.
Multipoint protocols over a traditional IP network eliminate the need for sending to each destination separately, but cannot provide the QoS guarantees of MPLS. The next hop is computed for each packet as it arrives at a router. It is not possible to guarantee that there will be a next-hop router available at that time with the available bandwidth.
The addition of point-to-multipoint MPLS retains the advantages of traffic engineering while reducing the load on the data source and router at the network entry point. Individual LSPs are created one-by-one from the network entry to a destination using the same traffic engineering techniques to guarantee QoS as in a point-to-point LSP. Then, after the LSP is created, it is combined with previously created LSPs to create a point-to-multipoint LSP.
The resulting point-to-multipoint LSP follows a common path up to the point where it is necessary to diverge to different destinations. For example, the initial LSP created runs from network entry point router A to router B to router C and then to router D at the network exit point connected to the first data destination. The second LSP runs from A to B to C to router E at the exit point connected to the second destination. The point-to-multipoint LSP will diverge at router C. Routers A and B will carry each packet only once. Router C will be the only router that needs to transmit it twice. A third LSP might diverge at router B. In this case, B will have to transmit it twice, but no one router is required to do all the retransmissions. Retransmissions are held to the minimum possible by following the common path until it is necessary to diverge.
Point-to-multipoint LSPs are not static. Additional destinations can be added at any time by adding another LSP. Similarly, destinations can be removed at any time.
While point-to-multipoint MPLS was developed with video in mind, it can support a variety of applications. MPLS traffic engineering does not specify a fixed set of QoS parameters. A 32-bit set of affinity bits is assigned to each link. The network manager configuring the network defines the meaning of each bit, which may specify a bandwidth quantity or a delay value or a monetary cost. Each LSP is also configured with a 32 bit affinity bit field and is routed only over links with matching affinity bits. This provides the network manager with a completely free-form way to force LSPs to conform to any set of criteria required.
The combination of the efficiency of multicast protocols combined with the traffic engineering facilities in MPLS promises to enable applications that previously could not be supported by IP networks. Point-to-multipoint MPLS standards are nearing completion by the MPLS Working Group within the IETF.
David B. Jacobs has more than twenty years of networking industry experience. He has managed leading-edge software development projects and consulted to Fortune 500 companies as well as software startups.