cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
1307
Views
0
Helpful
7
Replies

Xconnect path selection for P router ASR9K

mcagiola
Cisco Employee
Cisco Employee

Hi all, I need to find out the exact outgoing interface that the packets of a l2vpn choose in a P router (all ASR9K).

The topology is very simple:

PE1=====3xconnections======P1=====2xconnections====PE2

PE1=====3xconnections======P2=====2xconnections====PE2

I need to determine which interface the P1 and P2 choose for a xconnect traffic from PE2 to PE1.

For the configuration of l2vpn we are using the control word.

Anyone can help me?

Thanks.

Marco

1 Accepted Solution

Accepted Solutions

Adam Vitkovsky
Level 3
Level 3

I’m afraid that traceroute is not going to produce anything meaningful, it will only reveal how pure IP traffic is hashed across available links based on s/d-ip, s/d-tcp/udp-port, router-id).

 

In case of a PW it is an MPLS encapsulated non-IP traffic, i.e after the inner-most label (the PW label) there’s Ethernet header instead of an IP header.

So in this case the NPU doesn’t find IP header (i.e. 4 or 6 in the first nibble) directly after the inner-most label (in your case it will find 0 –due to control-word), it then backs out and performs hashing based solely on the inner-most label and router-id, (sh arm router-id).

 

So what you want to find out is, how are packets with certain inner-most label values (as advertised by PE2 as VC(PW) labels) load-shared across available links on P1 and P2.

For that you can use cmd:

RP/0/RSP0/CPU0:A9K-BNG#sh mpls forwarding exact-route label 1234 bottom-label 16000 ... location 0/1/cpu0

 

 

I suggest you also read Xander’s post in its entirety, to get the overall picture: ASR9000/XR: Load-balancing architecture and characteristics

 

 

adam

 

netconsultings.com

::carrier-class solutions for the telecommunications industry::

 

adam

View solution in original post

7 Replies 7

smailmilak
Level 4
Level 4

Hi,

do a traceroute between the PW neighbors.

If you are using TE tunnels then check the TE path "show mpls traffic-eng tunnels".

Adam Vitkovsky
Level 3
Level 3

I’m afraid that traceroute is not going to produce anything meaningful, it will only reveal how pure IP traffic is hashed across available links based on s/d-ip, s/d-tcp/udp-port, router-id).

 

In case of a PW it is an MPLS encapsulated non-IP traffic, i.e after the inner-most label (the PW label) there’s Ethernet header instead of an IP header.

So in this case the NPU doesn’t find IP header (i.e. 4 or 6 in the first nibble) directly after the inner-most label (in your case it will find 0 –due to control-word), it then backs out and performs hashing based solely on the inner-most label and router-id, (sh arm router-id).

 

So what you want to find out is, how are packets with certain inner-most label values (as advertised by PE2 as VC(PW) labels) load-shared across available links on P1 and P2.

For that you can use cmd:

RP/0/RSP0/CPU0:A9K-BNG#sh mpls forwarding exact-route label 1234 bottom-label 16000 ... location 0/1/cpu0

 

 

I suggest you also read Xander’s post in its entirety, to get the overall picture: ASR9000/XR: Load-balancing architecture and characteristics

 

 

adam

 

netconsultings.com

::carrier-class solutions for the telecommunications industry::

 

adam

Hi Adam, actually what I used was sh mpls forwarding exact-route label XXXX bottom-label YYYY and in this case i'm pretty sure that the path that I found is the right path used by the P router. Thank to all for the support!!! Best regards.

xthuijs
Cisco Employee
Cisco Employee

yeah the logic you have there adam is correct for all P routers.

the ingress PE however has access to the IP on the AC/EFP. it is the ingress AC that generates the hash. 

In *most* scenarios we can use that hash for the egress member/path selection.

I have a little tool that shadow computes the hash and generates a bucket list.

you'd need to use the show cef <nexthop> detail command to find out which path belongs to that bucket, but regardless you are able to determine if you have spread or not.

its compiled for OSX btw (rename to remove the png extension to zip).

it also helps you to calculate FAT labels in case you do flow aware transport, so you can use that fat label compution on a P router with the show mpls exact-route

the show cef exact-route can't be used here, because the fed IP into the command is not following ip routing, but the PW.

cheers

xander

Hi Xander,

Very good point, in my response to OP’s question about P hashing I forgot to mention the approach described is indeed P node specific.

Thank you very much for the tool, can you please also attach it to your article: ASR9000/XR: Load-balancing architecture and characteristics.

 

 

adam

adam

thanks adam, good idea, it is easier to find there indeed!

xander

Sorry for getting it all wrong. I did not pay attention well enough.

Traceroute is for pure IP traffic like Adam said in the previous post.

I did a check on customer equipment. They are also using TE tunnels which gives me headaches when I have to troubleshoot something :D