How to Configure an Explicit Route Using Junos

By Walter J. Goralski, Cathy Gadecki, Michael Bushong

When you use RSVP, the basic configuration uses the underlying IGP to calculate the LSP route. That is, the LSP travels whatever route the IGP selects. In some cases, however, you may want traffic to pass through a particular node.

ERO scenario topology.

ERO scenario topology.

This particular topology has a single ingress point and a single egress point in the MPLS core. Traffic that comes from the corporate headquarters is passed to branch sites. The site in New York has more latency-sensitive traffic than Boston. You want to make sure that the New York traffic takes the faster route while the Boston traffic takes the road less traveled.

To make sure that traffic is separated in a particular way, you want to set up static routes that basically say, “If the traffic is destined for New York, then use an explicit route.”

Configure the static route

Static routes are configured under the routing-options hierarchy. From the gateway router, do the following:

[edit routing-options]
static {
   route 192.168.24.1 {
      next-hop 192.168.14.1;
   }
}

This configuration defines a static route for all traffic destined for New York, and it sets the next-hop address to route through router 2.

Configure the explicit route

You can set up an LSP for traffic that includes router 3 so that traffic destined for New York uses the faster path. To do so, you must explicitly specify that the LSP is to use router 3. This constraint is called an explicit route object (ERO).

To configure an ERO that forces the LSP to use router 3, do the following on the gateway router:

[edit protocols mpls]
label-switched-path ny-traffic {
   to 192.168.20.1;
}

You must first enable MPLS and RSVP on the appropriate interfaces. After you’ve set up the LSP, you have to associate it with a particular path. To configure the explicit route through router 3, use the path statement:

[edit protocols mpls]
path to-router3 {
   10.0.18.1 loose;
}
label-switched-path ny-traffic {
   to 192.168.20.1;
   primary to-router3;
}

This configuration does two things: defines a path and applies that path. The path (called to-router3) specifies a particular IP address through which the LSP must traverse toward its destination.

Because the path is loosely constrained (configured with the loose statement), the only requirement is that the LSP pass through that address. It doesn’t matter which interface is used, what path is used to get to that point, or what path is used from that point to the destination.

When RSVP sets up this LSP, it uses the underlying IGP to route from the ingress point to the ERO (router 3, in this case) before continuing to its final destination over the established LSP. RSVP uses the IGP to route from the ERO to the LSP egress point.

In this example, the address used for the path constraint is a specific interface address for router 3. By specifying the interface address, you can dictate how the traffic will flow through the network. That is to say that traffic will be routed to that interface en route to the final destination.

If you use the loopback address of router 3 instead of a particular interface address, you have less control over the path the inbound traffic will take. Traffic is routed to router 3, but it may arrive on any interface. However, your IGP should know the shortest path to reach this loopback interface.

The primary statement is what ties the LSP to the path you created. When you apply the path to the LSP, you want to apply it as the primary path so that all traffic on this LSP uses the path. You can configure secondary paths, which would then be used if the primary path is not available (if, for example, an ERO in the primary path was not reachable).