Overview
In the area of QoS, to provide the support for DiffServ as IP does, MPLS uses 3 bits analogous to IP precedence, called "EXP bits," to carry class-of-service information. With the EXP bits, MPLS QoS is achieved to identify different traffic flows and implement differentiated services, guaranteeing low delay and low packet loss ratio for voice and video traffic.
MPLS QoS supports Committed Access Rate (CAR), priority marking, and congestion management. MPLS QoS provides the following functions:
Classify traffic on the PE to apply differentiated QoS strategies for different traffic classes. For example, MPLS QoS can organize packets with EXP value 1 into a class and packets with EXP value 2 into another class, and then perform traffic policing and priority marking for each class of packets.
When a PE labels a packet, it maps the IP precedence to the EXP field of the label. In this way, the class information carried in the IP header is carried in the label.
Differentiated dispatching (such as PQ, WFQ, or CBQ) is performed between a P device and a PE according to the EXP field to provide differentiated QoS for labeled traffic on an LSP.
The EXP field in an MPLS label is processed following these rules:
Any QoS-capable device can reset the EXP field of the topmost label.
During label encapsulation, the ToS field of the IP packet is directly changed into the EXP field of the MPLS label.
The EXP field remains unchanged when label swapping is performed.
During a label push operation, the EXP field of the newly pushed outer label inherits the EXP field of the inner label.
After a label pop operation, if the packet is still an MPLS packet, the EXP field of the popped label is not copied to the inner label; if the packet is an IP packet, the EXP field of the popped label is not copied to the ToS field of the IP packet.