Static Point-to-Point LSPs
This chapter provides information about static point-to-point label switched paths (LSPs).
Topics in this chapter include:
Applicability
This chapter is applicable to SR OS and was originally written for SR OS Release 7.0.R5. The CLI in the current edition corresponds to SR OS Release 21.2.R1. There are no prerequisites or conditions on the hardware for this configuration.
Overview
Due to the connectionless nature of the network layer protocol IP, packets travel through the network on a hop-by-hop basis with routing decisions made at each node. As a result, hyperaggregation of data on certain links may occur and it may impact the provider's ability to provide guaranteed service levels across the network end-to-end. To address these shortcomings, multiprotocol label switching (MPLS) was developed. MPLS provides the capability to establish connection- oriented paths, called label switched paths (LSPs), over a connectionless (IP) network.
The LSP offers a mechanism to engineer network traffic independently from the underlying network routing protocol (mostly IP) to improve the network resiliency and recovery options and to permit delivery of new services that are not readily supported by conventional IP routing techniques, such as Layer 2 IP Virtual Private Networks (VPNs). These benefits are essential for today's communication network explaining the wide deployment base of the MPLS technology.
RFC 3031, Multiprotocol Label Switching Architecture, specifies the MPLS architecture while this document describes the configuration and troubleshooting of static point-to-point LSPs on SR OS. Point-to-point LSPs can also be dynamically established using a label signaling protocol, such as label distribution protocol (LDP)—as described in chapter LDP Point-to-Point LSPs—or resource reservation protocol (RSVP)—as described in chapter RSVP Point-to-Point LSPs.
Packet forwarding
As a packet of a connectionless network layer protocol travels from one router to the next, each router in the network makes an independent forwarding decision by performing the following basic tasks: first analyzing the packet header, then referencing the local routing table to find the longest match based on the destination address in the IP header, and finally sending out the packet on the selected interface.
In other terms, the first function partitions the entire set of possible packets into a set of forwarding equivalence classes (FECs). All packets associated to a particular FEC will be forwarded along the same logical path to the same destination. The second function maps each FEC to a next hop destination router. Each router along the path performs these actions.
In MPLS, the assignment of a particular packet to a particular FEC is done just once, as the packet enters the network. In turn, the FEC is mapped to an LSP, which is established prior to any data flowing.
An MPLS label, representing the FEC to which the packet is assigned, is attached to the packet (push operation) and once labeled, the packet is forwarded to the next hop router along that LSP path.
At subsequent hops, there is no further analysis of the network layer header of the packet. Instead, the label is used as an index into a table which specifies the next hop and a new label. The old label is replaced with the new label (swap operation), and the packet is forwarded to its next hop.
At the MPLS network egress, the label is removed from the packet (pop operation). If this router is the final destination (based on the remaining packet), the packet is handed to the receiving application, such as a virtual private LAN service (VPLS). If this router is not the final destination of the packet, the packet will be sent into a new MPLS tunnel or forwarded by conventional IP forwarding toward the layer 3 destination.
Terminology
Generic MPLS network, MPLS label operations shows a general network topology clarifying the MPLS-related terms. A Label Edge Router (LER) is a device at the edge of an MPLS network, with at least one interface outside the MPLS domain. A router is usually defined as an LER based on its position relative to a particular LSP. The MPLS router at the head-end of an LSP is called the ingress label edge router (iLER). The MPLS router at the tail-end of an LSP is called the egress label edge router (eLER).
The iLER receives unlabeled packets from outside the MPLS domain, then applies MPLS labels to the packets, and forwards the labeled packets into the MPLS domain. The eLER receives labeled packets from the MPLS domain, then removes the labels, and forwards unlabeled packets outside the MPLS domain.
The last LSR before the eLER can be configured with an implicit-null label (numeric value 3). This LSR will pop the outer label and send MPLS packets without an outer label to the eLER. This is known as Penultimate Hop Popping (PHP). A Label Switching Router (LSR) is a device internal to an MPLS network, with all interfaces inside the MPLS domain. These devices switch labeled packets inside the MPLS domain. In the core of the network, LSRs ignore the network layer (IP) header of the packet and simply forward the packet using the MPLS label swapping mechanism.
A single LSP is unidirectional. In common practice, because the bidirectional nature of most traffic flows is implied, the term LSP often is used to define the pair of LSPs that enable the bidirectional flow. For ease of terminology and discussion however, the LSP in this chapter is referred to as a single entity.
LSP establishment
Prior to packet forwarding, the LSP must be established. In order to do so, labels need to be distributed for the path. For static LSPs, the label distribution is done manually by the network administrator. Although a high control level of the labels in use is achieved, the LSP cannot enjoy the resilience and recovery functionality the dynamic label signaling protocols can offer.
Example topology
MPLS example topology shows the example topology consisting of six SR OS nodes located in a single autonomous system.
Configuration
For static LPSs, there is no need for an IGP.
For LSPs that are set up manually, the first step is to enable MPLS on all network interfaces that will be used to carry LSPs. MPLS is automatically enabled on the system IP addresses.
For manually configured LSPs, any interface used by the static LSP must be added into the MPLS protocol instance, even though RSVP is not actually used to signal labels. For PE-1, this results in the following configuration:
# on PE-1:
configure
router Base
mpls
interface "int-PE-1-PE-2"
exit
interface "int-PE-1-PE-4"
exit
no shutdown
As an example, a static LSP will be created starting from PE-1, running over PE-2 and PE-5, then terminating on PE-6 as shown in Static LSP running over PE-1, PE-2, PE-5, PE-6.
Verify the acceptable label range for use with static configurations for each node; as follows:
*A:PE-1# show router mpls-labels label-range
============================================================================
Label Ranges
============================================================================
Label Type Start Label End Label Aging Available Total
----------------------------------------------------------------------------
Static 32 18431 - 18400 18400
Dynamic 18432 524287 0 505856 505856
Seg-Route 0 0 - 0 0
============================================================================
The label range for static LSPs extends from the value 32 to 18431. To ensure the labels have not yet been allocated to another configuration, use the command:
*A:PE-2# show router mpls-labels label 32 18431 in-use
=================================================================
MPLS Labels from 32 to 18431 (In-use)
=================================================================
Label Label Type Label Owner
-----------------------------------------------------------------
-----------------------------------------------------------------
In-use labels (Owner: All) in specified range : 0
In-use labels in entire range : 0
=================================================================
This command shows the number of incoming labels in use. At the iLER, the number of labels in use will remain 0 even after the static LSP has been configured where the iLER has a push operation for a label. The reason is that the labels shown are relevant to the labels that the router is generating, as for label swap or pop operations. There is no information shown about labels that other routers are advertising. For the push operation, any label can be used, even if it is not within the label range of the router pushing the label. For the originating router PE-1, the label 100 will be used for the push operation on the interface toward PE-2.
Static LSPs are configured within the mpls context, but do not rely on dynamic label signaling.
The configuration of the MPLS static LSP head-end PE-1 contains:
The system IP address of the destination router PE-6 (to).
A push operation of the label 100.
The interface address facing the current node of the next hop along the static path, which is PE-2 (nexthop).
# on PE-1:
configure
router Base
mpls
static-lsp "LSP-PE-1-PE-6-static"
to 192.0.2.6
push 100 nexthop 192.168.12.2
no shutdown
exit
The transit LSRs PE-2 and PE-5 perform swap operations and forward the packet to the manually defined next-hop. On the LSR under the context of the interface on which the incoming LSP arrives, the correct label is selected (label-map) and in this context a swap operation with a new label and the new next hop (nexthop) is entered.
# on PE-2:
configure
router Base
mpls
interface "int-PE-2-PE-1"
label-map 100
swap 150 nexthop 192.168.25.2
no shutdown
exit
no shutdown
exit
# on PE-5:
configure
router Base
mpls
interface "int-PE-5-PE-2"
label-map 150
swap 200 nexthop 192.168.56.2
no shutdown
exit
The terminating router PE-6 performs a pop operation and forwards the now unlabeled packets external to the MPLS domain.
# on PE-6:
configure
router Base
mpls
interface "int-PE-6-PE-5"
label-map 200
pop
no shutdown
exit
To verify the operational status of the static LSP configuration, the show router mpls static-lsp command is used on the iLER. A static LSP is considered to be operationally up when its next-hop is reachable. Because there is no check whether the end-to-end LSP path is up (the LSP connectivity to the eLER is never verified), it can be that the static LSP path is broken while the iLER displays an operational enabled LSP.
*A:PE-1# show router mpls static-lsp
===============================================================================
MPLS Static LSPs (Originating)
===============================================================================
LSP Name To Next Hop Out Label Up/Down Time Adm Opr
ID Metric Oper Metric Out Port
-------------------------------------------------------------------------------
LSP-PE-1-PE-6-static
192.0.2.6 192.168.12.2 100 0d 00:04:31 Up Up
1 N/A N/A 1/1/1
-------------------------------------------------------------------------------
LSPs : 1
===============================================================================
On the LSRs, the keyword transit is added to the command.
On LSR PE-2:
*A:PE-2# show router mpls static-lsp transit
===============================================================================
MPLS Static LSPs (Transit)
===============================================================================
In Label In Port Out Label Out Port Next Hop Adm Opr
-------------------------------------------------------------------------------
100 1/1/2 150 1/1/3 192.168.25.2 Up Up
-------------------------------------------------------------------------------
LSPs : 1
===============================================================================
On LSR PE-5:
*A:PE-5# show router mpls static-lsp transit
===============================================================================
MPLS Static LSPs (Transit)
===============================================================================
In Label In Port Out Label Out Port Next Hop Adm Opr
-------------------------------------------------------------------------------
150 1/1/3 200 1/1/2 192.168.56.2 Up Up
-------------------------------------------------------------------------------
LSPs : 1
===============================================================================
On the terminating router (eLER), the keyword terminate is added, as follows:
*A:PE-6# show router mpls static-lsp terminate
===============================================================================
MPLS Static LSPs (Terminate)
===============================================================================
In Label In Port Out Label Out Port Next Hop Adm Opr
-------------------------------------------------------------------------------
200 1/1/1 n/a n/a n/a Up Up
-------------------------------------------------------------------------------
LSPs : 1
===============================================================================
To track the label action associated with the static LSP configuration, the show router mpls interface label-map command can be used on all LSRs and eLERs, but not on the iLER.
*A:PE-2# show router mpls interface label-map
===============================================================================
MPLS Interfaces (Label-Map)
===============================================================================
In Label In I/F Out Label Out I/F Next Hop Type Adm Opr
-------------------------------------------------------------------------------
100 1/1/2 150 1/1/3 192.168.25.2 Static Up Up
-------------------------------------------------------------------------------
Interfaces : 1
===============================================================================
*A:PE-6# show router mpls interface label-map
===============================================================================
MPLS Interfaces (Label-Map)
===============================================================================
In Label In I/F Out Label Out I/F Next Hop Type Adm Opr
-------------------------------------------------------------------------------
200 1/1/1 n/a n/a n/a Static Up Up
-------------------------------------------------------------------------------
Interfaces : 1
===============================================================================
The show router mpls status command is used to verify each of the LSP types, the number of configured LSPs and whether they originate on, transit through or terminate on the router.
*A:PE-1# show router mpls status
===============================================================================
MPLS Status
===============================================================================
Admin Status : Up
Oper(V4) State : Up Oper(V6) State : Down
IPv4 Oper Down Reason : n/a
IPv6 Oper Down Reason : ipv6TeRtrDown
FRR Object : Enabled Resignal Timer : Disabled
Hold Timer : 1 seconds Next Resignal : N/A
Srlg Frr : Disabled Srlg Frr Strict : Disabled
Admin Group Frr : Disabled
Dynamic Bypass : Enabled User Srlg Database : Disabled
BypassResignalTimer : Disabled BypassNextResignal : N/A
LeastFill Min Thd : 5 percent LeastFill Reopti Thd : 10 percent
Local TTL Prop : Enabled Transit TTL Prop : Enabled
AB Sample Multiplier : 1 AB Adjust Multiplier : 288
Exp Backoff Retry : Disabled CSPF On Loose Hop : Disabled
Lsp Init RetryTimeout : 30 seconds MBB Pref Current Hops : Disabled
Logger Event Bundling : Disabled
Retry on IGP Overload : Disabled Resignal on IGP Overload : Disabled
P2mp Resignal Timer : Disabled P2mp Next Resignal : N/A
Sec FastRetryTimer : Disabled Static LSP FR Timer : 30 seconds
P2P Max Bypass Association: 1000
Max Bypass PLR Association: 16
P2PActPathFastRetry : Disabled P2MP S2L Fast Retry : Disabled
In Maintenance Mode : No
MplsTp : Disabled
Next Available Lsp Index : 2
Entropy Label RSVP-TE : Enabled Entropy Label SR-TE : Enabled
PCE Report RSVP-TE : Disabled PCE Report SR-TE : Disabled
PCE Init LSP : Disabled
SR-TE Resignal Timer : Disabled SR-TE Next Resignal : N/A
SR-TE Resig on IGP Event : Disabled
LSP Self Ping Timeout : 300 seconds LSP Self Ping Interval : 1 seconds
RSVP-TE LSP Self Ping : Disabled Self Ping Timeout Action : retry
===============================================================================
MPLS LSP Count
===============================================================================
Originate Transit Terminate
-------------------------------------------------------------------------------
Static LSPs 1 0 0
Dynamic LSPs 0 0 0
P2P LSPs 0 N/A N/A
Detour LSPs 0 0 0
P2MP S2Ls 0 0 0
MPLS-TP LSPs 0 0 0
Mesh-P2P LSPs 0 N/A N/A
One Hop-P2P LSPs 0 N/A N/A
SR-TE LSPs 0 N/A N/A
Mesh-P2P SR-TE LSPs 0 N/A N/A
One Hop-P2P SR-TE LSPs 0 N/A N/A
PCE Init SR-TE LSPs 0 N/A N/A
===============================================================================
Penultimate Hop Popping (PHP) can be used with static LSPs. This is achieved by configuring the last LSR PE-5 before the eLER PE-6 to swap the incoming label to implicit-null instead of a specific label value (the label-map must be shut down to add the swap command).
# on PE-5:
configure
router Base
mpls
interface "int-PE-5-PE-2"
label-map 150
shutdown
swap implicit-null-label nexthop 192.168.56.2
no shutdown
exit
The previous configuration will cause PE-5 to pop the top label from the incoming labeled frame received from PE-2 and send it to PE-6 without adding another outer label. The following command shows out label 3, but label 3 is never actually pushed onto a frame.
*A:PE-5# show router mpls static-lsp transit
===============================================================================
MPLS Static LSPs (Transit)
===============================================================================
In Label In Port Out Label Out Port Next Hop Adm Opr
-------------------------------------------------------------------------------
150 1/1/3 3 1/1/2 192.168.56.2 Up Up
-------------------------------------------------------------------------------
LSPs : 1
===============================================================================
If the traffic arriving at PE-5 was IP with a single label, then it would arrive at PE-6 as unlabeled IP traffic.
If the static LSP spans a single hop, for example, from PE-1 to PE-2, the ingress LER PE-1 pushes the implicit-null instead of a label. The configuration on PE-1 is as follows:
# on PE-1:
configure
router Base
mpls
static-lsp "LSP-PE-1-PE-2-static"
to 192.0.2.2
push implicit-null-label nexthop 192.168.12.2
no shutdown
exit
In this case, no MPLS action (swap or pop) is required for this LSP on PE-2.
Conclusion
MPLS provides the capability to establish connection-oriented paths over a connectionless network. The static LSP offers a mechanism to engineer network traffic. In this chapter, the configuration of static LSPs is given together with the associated show output which can be used to verify and troubleshoot.