cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
1249
Views
5
Helpful
9
Replies

MPLS Ping between my proprietary PE router and ASR9K router times out

AjitJoy25951
Level 1
Level 1

Hi All,

I am trying to make the mpls-ping work between my proprietary PE router xxx1234 and ASR9K router. It seems that mpls-ping packets are getting dropped at ASR9K.

xxx1234# mpls-ping 15.1.1.15

Invalid IP/mask syntax

xxx1234# mpls-ping 15.1.1.15/32

START  -U:15.1.1.15 -l:32 -pid:16808

Sending 10, MPLS Echos to 15.1.1.15/32,

timeout is 5000 msecs, send interval is 1000 msecs:

 

Codes:

        '!' - success,'Q' - request not sent,'.' - timeout,

        'M' - malformed req,'f' - FEC & Label MMatch,

        'F' - no FEC mapping,'X' - unknown ret code,'x'-ret code 0,

        'm' - unsupported tlvs,'D' - DS MMatch,'I' -unknown UP,

        'L' - Label switched, 'l' - Label Switched no MPLS forwarding,

        'N' - no label entry, 'p' - premature termination of LSP,

        'P' - Protocol not associated with intf, 'B'- Bad reply,

        'T'- TTL limit, 'R'- Resource Failure.

 

Type Ctlr + c to abort

  .  return code 256

  .  return code 256

  .  return code 256

  .  return code 256

  .  return code 256

  .  return code 256

  .  return code 256

  .  return code 256

  .  return code 256

  .  return code 256

Success rate is 0 percent (0/10), round-trip min/avg/max = 0/0/0

 

But the mpls-ping between proprietary PE router xxx1234 and simulated peer PE router in Spirent Test Center MPLS Wizard works fine every time. 

 

Summary of the behavior observed so far for mpls ping:

  1. xxx1234 to STC and  STC to xxx1234 mpls ping works fine.
  2. xxx1234 to ASR mpls ping and ASR to xxx1234 mpls ping times out.
  3. In xxx1234 to ASR mpls ping, no echo reply is observed from ASR in packet captures at the xxx1234 interface.
  4. In ASR to xxx1234 mpls ping, xxx1234 identifies the mpls echo request from ASR and sends an echo reply which is observed in packet captures. But still ASR is not able to consume the reply packet.
  5. When xxx1234 is pinging STC thru an ASR (xxx1234->ASR->STC), the STC responds back with an echo reply thru ASR and the mpls ping is success.
  6. When STC is pinging xxx1234 thru ASR(STC->ASR->xxx1234), xxx1234 responds back with an echo reply thru ASR and the mpls ping is success.

Queries

1. I have xxx1234 and ASR9K in different time zones. Will ASR9K check the time stamp of the received mpls reply from xxx1234 for security reasons? Will ASR9K drop the ping packets from xxx1234, if the absolute time of the packets doesn't match with its own clock?

 

2. show controllers np capture np1 location 0/1/CPU0 detail 

    I used above command to see the packets dropped on my interface on my ASR9K. But none of the mpls -ping packets i could see there. Is this command the right one to check the packet drop on the TenGigEthernet interfaces?

9 Replies 9

pigallo
Cisco Employee
Cisco Employee

 

 

 

hello @AjitJoy25951 ,

 

first of all, do you have mpls oam enabled under ASR9k ?

Consider that mpls ping feature tries to validate the LSP for a particular MPLS FEC so, if you do not have valid LDP neighborship between ASR9k and your device, then i'm not sure it will work.

If you can't even capture, maybe you're not matching the right np or right node under the LC.

 

 

regards,

 

 

 

 

 

 

@pigallo : Thank you for the response.

 

15.1.1.15 is my ASR9K router and 5.4.5.4 is my xxx1234 router.

 

Snaps from ASR9K:

sh mpls ldp neighbor
Thu Apr 9 21:42:40.074 UTC

 

Peer LDP Identifier: 5.4.5.4:0
TCP connection: 5.4.5.4:646 - 15.1.1.15:58174
Graceful Restart: No
Session Holdtime: 40 sec
State: Oper; Msgs sent/rcvd: 832/1028; Downstream-Unsolicited
Up time: 01:45:25
LDP Discovery Sources:
IPv4: (1)
TenGigE0/1/1/2.420
IPv6: (0)
Addresses bound to this peer:
IPv4: (3)
5.4.5.4 42.43.44.2 60.0.0.1
IPv6: (0)

 

Snaps from  xxx1234 router:
sh mpls ldp binding
LOCAL REMOTE
FEC PEER ID LABEL LABEL
------------------------------------------------
15.1.1.15/32 15.1.1.15:0 - -

 

This means that the LDP neighbor-ship is UP between ASR9K and  xxx1234 router, right?

@pigallo 

We have also confirmed mpls oam is enable in ASR9K.

 

if ASR9K mpls oam configurations are available, would you please share so that we can confirm our configurations are correct?

 

Also our xxx1234 router sends out the mpls-ping packet to destination loopback 127.76.83.80 whereas in the ASR9K the mpls-ping packet is sent out to loopback 127.0.0.1 destination. Would this impact the reply from ASR9K? We choose the 127.76.83.80 IP in the design since when we set the destination as  loopback 127.0.0.1 for mpls-packet, our box consumes the ping packet and the mpls-echo request is never sent out.

 

 

 

Hello @AjitJoy25951 ,

 

 

 

if ASR9K mpls oam configurations are available, would you please share so that we can confirm our configurations are correct?

Enabling "mpls oam" globally is enough for asr9k to handle both mpls ping and traceroutes.

 

 

Also our xxx1234 router sends out the mpls-ping packet to destination loopback 127.76.83.80 whereas in the ASR9K the mpls-ping packet is sent out to loopback 127.0.0.1 destination. Would this impact the reply from ASR9K? We choose the 127.76.83.80 IP in the design since when we set the destination as  loopback 127.0.0.1 for mpls-packet, our box consumes the ping packet and the mpls-echo request is never sent out.

Not really sure what you mean by "sent out to loopback 127.0.0.1 destination".

Destination will be the address you have in the RIB for remote PE loopback associated to a valid label in the Label Forwarding Database.
can you post :

1-from asr9k the route entry of your remote PE loopback--> show route <pe-address>

2-the remote label associated to the remote PE prefix with mask--> show mpls forwarding prefix <pe-address/32>

 


 

 

Regards.

 

 

 

 

 

 

5.4.5.4 is my mpls peer for ASR9K.

RP/0/RSP1/CPU0:ASR9k#sh route 5.4.5.4/32
Wed Apr 22 02:01:07.030 UTC

Routing entry for 5.4.5.4/32
Known via "ospf mpls", distance 110, metric 2, type intra area
Installed Apr 22 01:58:00.563 for 00:03:06
Routing Descriptor Blocks
42.43.44.2, from 5.4.5.4, via TenGigE0/1/0/3.420
Route metric is 2
No advertising protos.

 

RP/0/RSP1/CPU0:ASR9k#sh mpls forwarding prefix 5.4.5.4/32
Wed Apr 22 02:01:48.110 UTC
Local Outgoing Prefix Outgoing Next Hop Bytes
Label Label or ID Interface Switched
------ ----------- ------------------ ------------ --------------- ------------
18175 Pop 5.4.5.4/32 Te0/1/0/3.420 42.43.44.2 8230

 

 

Ok good.
so, from ASR9k, 5.4.5.4 is the destination to ping with the "ping mpls" command.

ping mpls ipv4 5.4.5.4/32

 

 

 

 

 

@pigallo 

But this command is getting timed out.

 

RP/0/RSP1/CPU0:ASR-9K#ping mpls ipv4 5.4.5.4/32

Wed Mar 25 22:19:24.775 UTC

 

Sending 5, 100-byte MPLS Echos to 5.4.5.4/32,

      timeout is 2 seconds, send interval is 0 msec:

 

Codes: '!' - success, 'Q' - request not sent, '.' - timeout,

  'L' - labeled output interface, 'B' - unlabeled output interface,

  'D' - DS Map mismatch, 'F' - no FEC mapping, 'f' - FEC mismatch,

  'M' - malformed request, 'm' - unsupported tlvs, 'N' - no rx label,

  'P' - no rx intf label prot, 'p' - premature termination of LSP,

  'R' - transit router, 'I' - unknown upstream index,

  'X' - unknown return code, 'x' - return code 0

 

Type escape sequence to abort.

 

.....

Success rate is 0 percent (0/5)

 

 

 

Could you post the output of the following command from ASR9k:

 

show mpls oam counters packet

 

 

thanks

 

 

 

 

 

This issue is solved. The issue was with the udp checksum of the MPLS-ECHO which was sent out from my proprietary router. The checksum calculation was wrong which resulted in the error
Getting Started

Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community: