By Thierno Diallo, Product Specialist—Protocol Business Unit
The continuing expansion and popularity of the Internet is forcing routers in the core network to support the interconnection of more and more networks. These essential devices are established on the layer 3 (IP) parameters and route information from one logical network to another, based on the destination IP address. However, as the number of interconnected networks grows, so does the strain on the processing power of these devices. Advances in hardware logic have enabled routers to keep up with the increased IP address ranges; yet the routing decisions could still affect the traffic flow of the interconnected network.
Multiprotocol label switching (MPLS) is a traffic-directing technology that promises a more efficient routing scheme based on the assignments of labels to routed packets. This allows for a more efficient routing process as well as the ability to control the flow of traffic within the network, a process commonly known as “traffic engineering”. This application note will examine the basic technical aspects of MPLS and the testing needs associated with deploying and maintaining such a network.
Label Switching vs. Traditional Routing
Routing is defined as, “the transfer of information across interconnected networks—between an origin and a destination network— through at least one network component called a router”. Routing occurs mainly based on the destination IP address found in layer 3 of the open-system interconnection (OSI) model or the network layer.
Traditional routers exchange information and build routing tables, determining the lowest cost next hop that a frame should take in order to attain the destination indicated in the destination IP address. This is accomplished using routing algorithms, such as BGP and OSPF. The traditional routing process is a straightforward but strenuous process: Once a packet is received by a router, it is inspected in order to obtain the destination IP address. This address is compared to an internal database of IP address ranges, and the next best hop in order to attain this destination is calculated. This process can be further complicated by the possibility of having multiple next best hop destinations. In such a case, a router must perform additional analysis to identify a more specific route.
As stated above, routing algorithms are only concerned with the lowest cost route and do not take into consideration quality-affecting parameters such as latency or links with lower utilization. MPLS, on the other hand, is a frame-forwarding mechanism based on the application, treatment and exchange of labels that provide efficient forwarding of traffic within an MPLS-enabled network. These labels are inserted as the packet enters the MPLS network and are removed as they exit the network by label edge routers (LER).
MPLS Basics
Network Architecture
The MPLS network is typically composed of two main devices, the LER and the label switch router (LSR). The LER is, as the name implies, located at the edge of the MPLS network and is responsible for the insertion of labels before transmission in the MPLS network. The LSR is a core device that performs label operation and packet forwarding through the MPLS-enabled network.
Packets travel across the MPLS-enabled network via a specific route referred to as the “label switched path (LSP)”. This path is unidirectional and is defined between ingress edge routers to an egress edge router. In bidirectional communication, return traffic does not necessarily take the same path as the original traffic; therefore, independent LSP assignment is necessary for each direction.
The Label
The MPLS label is inserted between the layer 2 and layer 3 and is 32 bits long.
The MPLS label contains the following parts:
Label: The label itself is 20 bits long, which allows 2x20-1combinations (about 1 million different labels)
Class of service (COS): These 3 bits enable to classify the traffic according to seven levels of priority, which have the same function as the IP TOS class of service bits
Stack bit: This bit is used to indicate if the MPLS label is the last label—as labels can be stacked on top of other labels Time to live (TTL): This value determines through how many MPLS routers a packet can traverse before it is discarded
Since MPLS enables label stacking, an Ethernet frame can contain more than one label. In label-stacking operations, a label is pushed onto an existing label, creating an inner and an outer label. As the stacked label is forwarded within the MPLS cloud, label switch routers are only aware of the outermost label. This in turn creates a form of security as the inner label is only treated when it becomes the last label. This method is typically used in a virtual private network (VPN) application.
56!/&
Customer
Edge
Customer
Edge
LSP MPLS Cloud Label Edge Router LER Label Edge Router LER Label Switch Routers LSR Site A Site BFigure 1. Basic MPLS network architecture
Layer 5-7
Higher layer applications
Layer 4
TCP - UDP
Layer 3
PIv4 - IPv6 - Raw data
Layer 2.5
MPLS label
Layer 2
PPP - Ethernet - HDLC - ATM - frame relay
Layer 1
Optical - electrical
Destination
MAC
Source MAC
Ethertype
0x8847
0x8848
MPLS Label
IP Packet
Ethernet FCS
MPLS label
COS
Stack Bit
TTL
LDP, LIB and FEC
Label distribution protocol (LDP) is an MPLS protocol designed to distribute labels between the label edge and the label switch routers. Label switch routers use LDP in order to build routing and forwarding databases called the “label information base (LIB)”. Label-edge routers use LDP in order to establish forward equivalency class (FEC) tables, which label incoming packets as they enter the MPLS cloud via the label-edge routers.
Once LIB and FEC tables are built, MPLS routing and forwarding is a straightforward process:
1. At the LER, incoming packets are inspected and are labeled using the information found in the FEC tables; the packet is then forwarded to the next hop.
2. When the next hop receives the packet, it inspects the label and compares it to its internal LIB; it then performs the label operation and then forwards the packet to the next hop, according to the LIB entry.
3. The process is repeated until the packet reaches the far end LER; the labels are then removed and the packet is forwarded to its final destination.
The MPLS Advantage
The forwarding process clearly shows one of the major strengths of MPLS — the forwarding mechanism. In MPLS, the routing decision is
performed at the edge as packets enter the core, while efficient packet switching occurs in the core. The routing decision is only performed one time. Once it is inserted, the packet is simply forwarded according to the label, and its fixed length ensures that it is quickly analyzed and processed.
Customer
Edge
Customer
Edge
1. Packet is received at LER. It is inspected and based on the FEC a label is applie
3. At the edge router, the label is removed and the packet is forwarded toward its final destination 2. Labeled packet is forwarded
in network. At each LSR, the label is swapped
Site A
Site B
Figure 3. Basic MPLS forwarding process
Testing Needs
Testing MPLS networks usually involves ensuring connectivity and resiliency and measuring performance. The following scenarios represent typical MPLS edge to MPLS edge, MPLS core to customer edge and VPN/stacking tests.
Customer Edge to Customer Edge
This basic test scenario involves sending untagged packets from the customer edge to ensure that they are properly tagged and serviced through the MPLS network. This test can be used to measure end-to-end performance or to ensure that the network is properly configured via a network-loading test.
MPLS Edge to MPLS Edge Testing
In this test scenario, traffic is sent from the originating MPLS edge router to the destination MPLS edge router to measure performance and ensure that traffic can flow within the MPLS network. It ensures that the label information base is properly provisioned and LSP can be established.
Customer
Edge
Customer
Edge
Site B Site AFigure 4. Customer edge-to-edge testing scenario
Customer
Edge
Customer
Edge
Site B Site ACustomer Edge to MPLS Core
In this test scenario, traffic is sent from the customer standpoint to the MPLS core to test the FEC found at the entrance edge router and to ensure that all packets are properly labeled and forwarded to the MPLS core. This test scenario can also be performed from MPLS core to customer edge, confirming that the destination MPLS edge router properly strips labels and forwards packets to the proper customer edge.
VPN Emulation/Label Stacking Scenario
In this scenario, traffic that is already tagged is sent through an MPLS edge or core to verify that edge and switch routers properly service these tagged frames by stacking a supplementary label and properly forwarding them.
Test Tools
The Packet Blazer FTB-8510B Ethernet Test Module and FTB-8510G 10 Gigabit Ethernet Test Module provide comprehensive test solutions for the analysis and qualification of MPLS networks.
Multiple Streams Generation
Up to 10 streams can be generated with independent parameters at the MAC, MPLS, IP and UDP layer. At the MPLS layer, streams can be generated with up to two layers with all fields of the MPLS label available for configuration.
Streams can be provisioned with either Ethernet/MPLS encapsulation or with Ethernet/MPLS/IP/UDP encapsulation Frame size up to 16 000 can be configured for jumbo frame testing with or without MPLS enabled
Customer
Edge
Customer
Edge
Site B Site AFigure 6. Customer edge-to-MPLS core testing scenario
Customer
Edge
Customer
Edge
Site B Site AAdds Label Adds Label
Figure 8. MPLS related configuration in the Packet Blazer test frame configuration
Full MPLS layer configuration:
Label, COS/EXP and TTL
MPLS Configuration
Stacked Header configuration:
Up to two MPLS labels available
Stream Selector: up to 10
independent streams available
Per-stream
encapsulation selection
Traffic Analysis
Analysis is performed on incoming traffic with specific statistics on MPLS tagged traffic:
Advanced Traffic Filters
The advanced traffic filters are powerful tools used to separate incoming traffic according to specific values. Up to 10 filters are available and each filter can be configured with up to four trigger values with ‘and’, ‘or’ and ‘not’ operand.
Filters can be configured with MPLS fields such as MPLS label and MPLS COS for up to two layers.
Figure 9. MPLS related results in Packet Blazer Traffic Analyzer page
Figure 10. Packet Blazer advanced traffic filter configuration
TX and RX frame
counters of MPLS traffic
Analysis on these filters include:
Bandwidth measurement per filter: How much bandwidth is used by the traffic that is described by the filter Error analysis per filter: Ethernet error analysis on all traffic that fits the profile
Conclusion
MPLS efficiently increases the traffic forwarding process while still implementing essential routing processes across the core. However, the deployment of MPLS requires unique testing scenarios to assess the performance and reliability of the network and to guarantee service levels. EXFO offers compact, portable, comprehensive MPLS test solutions to efficiently qualify Ethernet services from end-to-end, validating metro and core tunneling technologies.
Figure 11. Advanced traffic filter with MPLS triggers