Arista and Juniper RSVP-TE InterOp

Arista has supported RSVP-TE for quite some time but has expanded it’s capabilities in recent years. Most notably their support for node-protection, soft preemption, and OSPF as the IGP (instead of IS-IS). Arista has also begun to release more Service-Provider features that make them an interesting choice when comparing the different vendors.

Because of all the above I wanted to test Arista’s implementation of RSVP-TE with Juniper’s implementation of RSVP-TE.

Here is the lab I am testing with:

Virtual Lab Inventory:

  • 2x vMX 21.1R1.11
  • 4x vEOS 4.27.1.1F
  • 2x Linux Hosts

The above will allow me vanilla L3VPN setup between two Juniper PE’s with vEOS acting as pure ‘P’ routers in transit. All configs are available on git-hub

Juniper’s Configuration

There was nothing magical about setting up the Juniper side but I’ll share the config bits for the LSP and MPLS:

R1’s Config

R2’s Config:

You’ll notice that i’ve node-link-protection turned up on R1 but not R2. This is on purpose so I can easily pick out what’s happening for a simple proof of concept. I always like to start simple and add scale/complexity once I can prove the fundamentals work.

Arista’s Configuration:

This is my first time configuring RSVP-TE on Arista vEOS. I’ve enabled link-protection only on BB01 since it has two paths to R2 it is the optimal place to enable link-protection. The rest of the P routers have nothing extra.

BB01 Configuration:

BB2’s Configuration:

BB03-BB04’s config looks exactly like BB02’s only different IP’s and net address of course.

Does it work?

Of course it works. There was no surprises here the tunnels come up without issue and juniper’s self-ping via the LSP works. Link-protection works and the Arista is building an automatic by-pass tunnel as can be seen in the output below.

R1’s LSP:

BB01’s LFIB which shows the label 116386 (and yes BB02 is using that same locally significant label of 116386 which is why it’s swapping to 116386..):

BB01’s LSP-1:

BB01’s LSP-2 (I created a second LSP to demonstrate that two LSP’s can share the same bypass tunnel for link-protection):

BB01’s Bypass LSP:

You can see both LSP’s above (R1-R2 and R1-R2-NEW) are utilizing the same bypass LSP for link-protection.

Egress LSP at R2

Pings Pass!

Closing thoughts

Operating a Juniper network for quite some time it was was confusing just for a moment when Arista calls for link-protection to be configured under ‘fast re-route’ which means something completely different in JunOS. But technically Arista is correct as RFC 4090 is titled “Fast Reroute Extensions to RSVP-TE for LSP Tunnels” wherein several different methods of LSP protection are detailed. Whereas Juniper refers to Fast ReRoute as a 1:1 LSP creation instead of a shared bypass tunnel. So no knock on Arista or Juniper there are just small wording differences.

One thing I’m not well versed on yet is how to track how the Arista is programming of labels on the chip (since this is vEOS). I did manage to list the lfib but I do not know what the 1:1 is to Juniper’s “show route forwarding-table label <label>” and then taking index id’s to verify programming on the FPC/PFE. Not that it’s something you I’d want to do typically but it’s nice knowing how to completely verify the dataplane is programmed correctly when you take on a new vendor’s implementation of anything.

Overall it’s good to see interop between two vendors and not have any notable quirks.

Leave a Reply