Description

This article describes the default behavior of loose EROs (Explicit Route Objects) when used to form RSVP signaled LSPs.

Symptoms

Topology:

192.168.0.1     192.168.0.2        192.168.0.3          192.168.0.4        192.168.0.6

 R1--------------R2-------------------R3--------------------R4--------------R6
     10.10.10.0/30     10.20.20.0/30     |  10.30.30.0/30  |         10.60.60.0/30       
                                         |                 |
                                         |                 |  
                                         |                 |
                                         |---------R5------|
                                             192.168.0.5


Loosely defined ERO's will not be shown as the loose type under Computed ERO object, when the output of show mpls lsp extensive is checked. Instead, each physical hop that was traversed will be shown as strict (with CSPF enabled LSP).

Even though ERO's are configured as loose to form RSVP signaled MPLS-LSPs, the behavior of the traffic-engineered LSP will be as follows:
 
  • If the loop-back IP address is given as a loose ERO, the computed ERO will show only the physical path that it traversed.
  • Additionally, each physical hop that is traversed will be shown as a strict ERO under computed ERO. This behaviour is expected with CSPF enabled LSPs.
    [edit protocols mpls]
    lab:R1# show
    label-switched-path LSP-1 {
        from 192.168.0.1;
        to 192.168.0.6;
        primary LSP-1-P;
    }
    path LSP-1-P {
        192.168.0.3 loose;
        192.168.0.5 loose;
    }
    interface all;
    

Solution

Only ERO's that  are defined as strict, that too every physical hop that was traversed when forming a traffic-engineered LSP, will be shown as strict under computed ERO in the output of show mpls lsp extensive .

The same is not true with loosely defined ERO's; even though a provision has been made to show loosely defined ERO's, as per the following output:

Computed ERO (S [L] denotes strict [loose] hops): (CSPF metric: 5)

[edit]

lab:R1# run show mpls lsp extensive
Ingress LSP: 1 sessions

192.168.0.6
From: 192.168.0.1, State: Up, ActiveRoute: 0, LSPname: LSP-1
ActivePath: LSP-1-P (primary)
LSPtype: Static Configured
LoadBalance: Random
Encoding type: Packet, Switching type: Packet, GPID: IPv4
*Primary LSP-1-P State: Up
Priorities: 7 0
SmartOptimizeTimer: 180
Computed ERO (S [L] denotes strict [loose] hops): (CSPF metric: 5)
10.10.10.2 S 10.20.20.2 S 10.40.40.2 S 10.50.50.2 S 10.60.60.2 S
Received RRO (ProtectionFlag 1=Available 2=InUse 4=B/W 8=Node 10=SoftPreempt 20=Node-ID):
10.10.10.2 10.20.20.2 10.40.40.2 10.50.50.2 10.60.60.230 Jun 16 19:01:39.596 Selected as active path
29 Jun 16 19:01:39.596 Record Route: 10.10.10.2 10.20.20.2 10.40.40.2 10.50.50.2 10.60.60.2
28 Jun 16 19:01:39.594 Up
27 Jun 16 19:01:39.478 Originate Call

This is expected behavior; irrespective of the Junos version being used. This is strictly with respect to the traffic-engineered LSP's.

Computed ERO (S [L] denotes strict [loose] hops): (CSPF metric: 5)
10.10.10.2 S 10.20.20.2 S 10.40.40.2 S 10.50.50.2 S 10.60.60.2 S
Received RRO (ProtectionFlag 1=Available 2=InUse 4=B/W 8=Node 10=SoftPreempt 20=Node-ID):
10.10.10.2 10.20.20.2 10.40.40.2 10.50.50.2 10.60.60.2


lab:R1# run traceroute mpls rsvp LSP-1
Probe options: retries 3, exp 7

ttl Label Protocol Address Previous Hop Probe Status
1 299824 RSVP-TE 10.10.10.2 (null) Success
2 299824 RSVP-TE 10.20.20.2 10.10.10.2 Success
3 299776 RSVP-TE 10.40.40.2 10.20.20.2 Success
4 299824 RSVP-TE 10.50.50.2 10.40.40.2 Success
5 3 RSVP-TE 10.60.60.2 10.50.50.2 Egress

Path 1 via xe-1/2/0.10 destination 127.0.0.64

Modification History

2022-11-17: Updated non-compliant IP addresses to RFC standards