Hi neale,
The ping we were debugging now work.'Bi-directional flow 'is the fade flow send 
by tester.
I'm sure  I  patched and recompiled the DEBUG version of VPP on both ‘PE’s’.

The phenomenon :When there is ip4 flow ,nothing wrong with it.when there is 
mpls flow ,the checksum come out is not the same as the checksum get into vpp2 
.Does the mpls change it?

In VPLS  the flow was dropped in L2.
The configuration and trace  is shown below:
MPLS L2VPN VPLS
######## ######## ######## ########
 ####PE1   
create host-interface name eth0
create host-interface name eth1
set int state host-eth1 up
set int state host-eth0 up
set interface mac address host-eth0 00:03:7F:FF:FF:FF
set interface mac address host-eth1 00:03:7F:FF:FF:FE
set int ip address host-eth1 2.1.1.1/24   
set interface mpls  host-eth1   enable    
mpls tunnel l2-only via 2.1.1.2 host-eth1 out-label 34  out-label 33
set int state mpls-tunnel0 up
set interface l2 bridge  mpls-tunnel0 1 
set interface l2 bridge host-eth0  1
mpls local-label add eos 1023 l2-input-on mpls-tunnel0
mpls local-label add non-eos 1024 mpls-lookup-in-table 0

######## ######## ######## ########
 ####PE2 
create host-interface name eth0
create host-interface name eth1
set int state host-eth1 up
set int state host-eth0 up
set interface mac address host-eth0 00:50:43:00:02:02
set interface mac address host-eth1 0E:1A:0D:00:50:43
set int ip address host-eth1 2.1.1.2/24 
set interface mpls  host-eth1   enable   
mpls tunnel l2-only via 2.1.1.1 host-eth1 out-label 1024 out-label 1023
set int state mpls-tunnel0 up
set interface l2 bridge mpls-tunnel0 1 
set interface l2 bridge host-eth0  1
mpls local-label add eos 33 l2-input-on mpls-tunnel0
mpls local-label add non-eos 34 mpls-lookup-in-table 0

DBGvpp# show trace 
------------------- Start of thread 0 vpp_main -------------------
Packet 1

00:04:36:289191: af-packet-input
  af_packet: hw_if_index 1 next-index 4
    tpacket2_hdr:
      status 0x9 len 76 snaplen 76 mac 66 net 80
      sec 0x2736 nsec 0xb5544e1 vlan 0
00:04:36:291446: ethernet-input
  IP4: 00:50:43:00:02:02 -> 2c:53:4a:02:91:db
00:04:36:291525: l2-input
  l2-input: sw_if_index 1 dst 2c:53:4a:02:91:db src 00:50:43:00:02:02
00:04:36:291582: l2-learn
  l2-learn: sw_if_index 1 dst 2c:53:4a:02:91:db src 00:50:43:00:02:02 bd_index 1
00:04:36:291643: l2-fwd
  l2-fwd:   sw_if_index 1 dst 2c:53:4a:02:91:db src 00:50:43:00:02:02 bd_index 1
00:04:36:291673: error-drop
  l2-fwd: Reflection Drop

Is the configuration correctly?

 VPWS :Unable to send and receive messages continuously.Sometimes there is no 
flow receive or send.
The configuration and trace is shown below:
VPP1
create host-interface name eth0
create host-interface name eth1
set int state host-eth1 up
set int state host-eth0 up
set interface mac address host-eth0 00:03:7F:FF:FF:FF
set interface mac address host-eth1 00:03:7F:FF:FF:FE
set int ip address host-eth1 2.1.1.1/24    
set interface mpls  host-eth1   enable    
mpls tunnel l2-only via 2.1.1.2 host-eth1 out-label 34  out-label 33
set int state mpls-tunnel0 up
set interface l2 xconnect   host-eth0  mpls-tunnel0 
set interface l2 xconnect    mpls-tunnel0  host-eth0
mpls local-label add eos 1023 l2-input-on mpls-tunnel0
mpls local-label add non-eos 1024 mpls-lookup-in-table 0

######## ######## ######## ########
VPP2
create host-interface name eth0
create host-interface name eth1
set int state host-eth1 up
set int state host-eth0 up
set interface mac address host-eth0 00:50:43:00:02:02
set interface mac address host-eth1 0E:1A:0D:00:50:43
set int ip address host-eth1 2.1.1.2/24    
set interface mpls  host-eth1   enable 
mpls tunnel l2-only via 2.1.1.1 host-eth1 out-label 1024 out-label 1023
set int state mpls-tunnel0 up
set interface l2 xconnect  host-eth0  mpls-tunnel0 
set interface l2 xconnect    mpls-tunnel0  host-eth0
mpls local-label add eos 33 l2-input-on mpls-tunnel0
mpls local-label add non-eos 34 mpls-lookup-in-table 0


从VPP1----VPP2的流量时断时续的.不能正常持续的收发报文

show trace
VPP1
Packet 3

00:03:05:985952: af-packet-input
  af_packet: hw_if_index 1 next-index 4
    tpacket2_hdr:
      status 0x1 len 124 snaplen 124 mac 66 net 80
      sec 0x5b1f nsec 0x35349da1 vlan 0
00:03:05:986527: ethernet-input
  IP4: 00:10:94:00:00:04 -> 00:03:7f:ff:ff:ff
00:03:05:986683: l2-input
  l2-input: sw_if_index 1 dst 00:03:7f:ff:ff:ff src 00:10:94:00:00:04
00:03:05:986805: l2-output
  l2-output: sw_if_index 3 dst 00:03:7f:ff:ff:ff src 00:10:94:00:00:04 data 08 
00 45 c0 00 6e 01 10 00 00 ff fd
00:03:05:986932: mpls-tunnel0-output
  mpls-tunnel0
  00000000: 00037fffffff001094000004080045c0006e01100000fffd324ac0a80314c0a8
  00000020: 0214000000000000000000000000000000000000000000000000000000000000
  00000040: 0000000000000000000000000000000000000000000000000000000000000000
  00000060: 0000000000000000c12dada7ee982510513b19e40f04dc7d952391bc
00:03:05:987057: mpls-tunnel0-tx
  MPLS: tunnel 0
00:03:05:987105: l2-load-balance
  L2-load-balance: index 22
00:03:05:987162: ethernet-mpls-label-imposition
    mpls-header:[33:255:0:eos]
00:03:05:987207: mpls-output                                                    
                                                                                
                
  adj-idx 2 : mpls via 2.1.1.2 host-eth1: 0e1a0d00504300037ffffffe8847 flow 
hash: 0xb78171c6
  00000000: 0000000000000000000000000000000000000000000000000000000000000000
  00000020: 00000000000000000000000000000000000000000000000000000000
00:03:05:987385: host-eth1-output
  host-eth1
  MPLS: 00:03:7f:ff:ff:fe -> 0e:1a:0d:00:50:43
  label 34 exp 0, s 0, ttl 255
---------------------------------------------------------------------------------------------------------------------

VPP2

Packet 6

00:07:14:455621: af-packet-input
  af_packet: hw_if_index 2 next-index 4
    tpacket2_hdr:
      status 0x1 len 146 snaplen 146 mac 66 net 80
      sec 0x24ba nsec 0x7299553 vlan 0
00:07:14:455772: ethernet-input
  MPLS: 00:03:7f:ff:ff:fe -> 0e:1a:0d:00:50:43
00:07:14:455928: mpls-input
  MPLS: next mpls-lookup[1]  label 34 ttl 255
00:07:14:456060: mpls-lookup
  MPLS: next [7], lookup fib index 0, LB index 23 hash 0 label 34 eos 0
00:07:14:456177: lookup-mpls-dst
     fib-index:0 hdr:[33:255:0:eos] load-balance:21
00:07:14:456251: interface-dpo-l2
     sw_if_index:3
00:07:14:456289: l2-input
  l2-input: sw_if_index 3 dst 00:03:7f:ff:ff:ff src 00:10:94:00:00:04
00:07:14:456468: l2-output
  l2-output: sw_if_index 1 dst 00:03:7f:ff:ff:ff src 00:10:94:00:00:04 data 08 
00 45 c0 00 6e 0b 24 00 00 ff fd
00:07:14:456511: host-eth0-output
  host-eth0
  IP4: 00:10:94:00:00:04 -> 00:03:7f:ff:ff:ff
  unknown 253: 192.168.3.20 -> 192.168.2.20
    tos 0xc0, ttl 255, length 110, checksum 0x2836
    fragment id 0x0b24

Thanks,
xyxue


 
From: Neale Ranns (nranns)
Date: 2017-05-27 17:11
To: 薛欣颖; vpp-dev
Subject: Re: [vpp-dev] MPLS L3VPN PING FAILED
Hi Xxyue,
 
Can you please be more specific about what is working and was is not. Does the 
ping we were debugging previously now work?
What is this ‘bi-directional flow’ you speak of, if it is not the ping.
 
Those asserts could be related to:
https://gerrit.fd.io/r/#/c/6883/
I saw them, whilst debugging the original problem.
 
I you sure you patched and recompiled the DEBUG version of VPP on both ‘PE’s’?
 
Thanks,
neale
 
From: 薛欣颖 <xy...@fiberhome.com>
Date: Saturday, 27 May 2017 at 06:33
To: "Neale Ranns (nranns)" <nra...@cisco.com>, vpp-dev <vpp-dev@lists.fd.io>
Subject: Re: Re: [vpp-dev] MPLS L3VPN PING FAILED
 
Hi neale,
 
The result :flow is ok. But when have  bi-directional flow ,the assertion will 
appear:
That is the assertion:
DBGvpp# 0: /home/vpp/build-data/../src/vnet/ip/ip4_forward.c:2635 
(ip4_rewrite_inline) assertion `ip0->checksum == ip4_header_checksum (ip0)' 
fails
Aborted


/home/vpp/build-data/../src/vnet/ip/ip4_forward.c:2497 (ip4_rewrite_inline) 
assertion `ip1->checksum == ip4_header_checksum (ip1)' fails
Aborted


192.168.2.20 ------192.168.3.20  VPP2----VPP1
The trace is shown below:
VPP1
Packet 4

01:06:37:616042: af-packet-input
  af_packet: hw_if_index 2 next-index 4
    tpacket2_hdr:
      status 0x1 len 132 snaplen 132 mac 66 net 80
      sec 0xff9 nsec 0x34b682dc vlan 0
01:06:37:616604: ethernet-input
  MPLS: 0e:1a:0d:00:50:43 -> 00:03:7f:ff:ff:fe
01:06:37:616765: mpls-input
  MPLS: next mpls-lookup[1]  label 1024 ttl 255
01:06:37:616898: mpls-lookup
  MPLS: next [8], lookup fib index 0, LB index 34 hash 0 label 1024 eos 0
01:06:37:617032: lookup-mpls-dst
     fib-index:0 hdr:[1023:254:0:eos] load-balance:33
01:06:37:617097: ip4-mpls-label-disposition
  disp:0
01:06:37:617139: lookup-ip4-dst
     fib-index:1 addr:192.168.3.20 load-balance:35
01:06:37:617255: ip4-rewrite
  tx_sw_if_index 1 dpo-idx 6 : ipv4 via 192.168.3.20 host-eth0: 
00109400000400037fffffff0800 flow hash: 0x00000000
  00000000: 00109400000400037fffffff080045c0006e8e070000fdfda752c0a80214c0a8    
                                                                                
                
  00000020: 03140000000000000000000000000000000000000000000000000000
01:06:37:617323: host-eth0-output
  host-eth0
  IP4: 00:03:7f:ff:ff:ff -> 00:10:94:00:00:04
  unknown 253: 192.168.2.20 -> 192.168.3.20
    tos 0xc0, ttl 253, length 110, checksum 0xa752
    fragment id 0x8e07





VPP2  
Packet 3

01:02:34:895149: af-packet-input
  af_packet: hw_if_index 1 next-index 4
    tpacket2_hdr:
      status 0x5 len 124 snaplen 124 mac 66 net 80                              
                                                                                
                
      sec 0x1054 nsec 0x11097ff5 vlan 0
01:02:34:895471: ethernet-input
  IP4: 00:10:94:00:00:03 -> 00:50:43:00:02:02
01:02:34:895533: ip4-input
  unknown 253: 192.168.2.20 -> 192.168.3.20
    tos 0xc0, ttl 255, length 110, checksum 0xa169
    fragment id 0x91f0
01:02:34:895586: ip4-lookup
  fib 1 dpo-idx 3 flow hash: 0x00000000
  unknown 253: 192.168.2.20 -> 192.168.3.20
    tos 0xc0, ttl 255, length 110, checksum 0xa169
    fragment id 0x91f0
01:02:34:895643: ip4-mpls-label-imposition
    mpls-header:[1023:254:0:eos]
01:02:34:895695: mpls-midchain
  adj-idx 7 : mpls via 0.0.0.0  mpls-tunnel0: 
  stacked-on:
    [@3]: dpo-load-balance: [proto:mpls index:33 buckets:1 uRPF:-1 to:[0:0] 
via:[37340:4266490]]
      [0] [@8]: mpls-label:[0]:[1024:255:0:neos]
          [@2]: mpls via 2.1.1.1 host-eth1: 00037ffffffe0e1a0d0050438847 flow 
hash: 0x00000000
  
01:02:34:895726: adj-midchain-tx
  adj-midchain:[7]:mpls via 0.0.0.0  mpls-tunnel0: 
  stacked-on:
    [@3]: dpo-load-balance: [proto:mpls index:33 buckets:1 uRPF:-1 to:[0:0] 
via:[37340:4266490]]
      [0] [@8]: mpls-label:[0]:[1024:255:0:neos]
          [@2]: mpls via 2.1.1.1 host-eth1: 00037ffffffe0e1a0d0050438847
01:02:34:895767: mpls-label-imposition
    mpls-header:[1024:255:0:neos]
01:02:34:895814: mpls-output
  adj-idx 6 : mpls via 2.1.1.1 host-eth1: 00037ffffffe0e1a0d0050438847 flow 
hash: 0x00000000
  00000000: 0000000000000000000000000000000000000000000000000000000000000000
  00000020: 00000000000000000000000000000000000000000000000000000000
01:02:34:895851: host-eth1-output
  host-eth1
  MPLS: 0e:1a:0d:00:50:43 -> 00:03:7f:ff:ff:fe
  label 1024 exp 0, s 0, ttl 255
 
Thanks,
xyxue
_______________________________________________
vpp-dev mailing list
vpp-dev@lists.fd.io
https://lists.fd.io/mailman/listinfo/vpp-dev

Reply via email to