Looks to me like it’s IPv4 fragmentation that fails, not reassembly.
Currently fragmentation on buffer chains isn’t supported.
Try this patch for an ugly hack: https://gerrit.fd.io/r/#/c/13918/

Cheers,
Ole

> On 6 Aug 2018, at 08:34, Ni, Hongjun <hongjun...@intel.com> wrote:
> 
> Hi all,
>  
> We performed below test on VPP 18.07, and it seems that IP reassembly doesn't 
> work in VPP 18.07.
>  
> Below is the test topology:
> Machine A is the VPP DUT, while machine B is just a standard Linux server.
> Network topology: Machine A (VPP) <----> Machine B ; And set both MTU to 1500
> Issue: “ping A_ip -s 2000” at B doesn’t get reply from A; While from VPP (A), 
> “ping B_ip size 1900” does.
>  
> Could you help to take a look at this issue?  Thanks a lot.
>  
> Below is the configuration and packet trace:
> VPP CLI: 
>               set interface state TenGigabitEthernetaf/0/1 up
>               set interface ip address TenGigabitEthernetaf/0/1 10.1.1.2/24
> set interface mtu 1500 TenGigabitEthernetaf/0/1
> set interface reassembly TenGigabitEthernetaf/0/1 on
> vpp# show errors
>      314                ip4-frag                malformed packet
> Vpp# show trace
> Packet 1
>  
> 00:04:02:492398: dpdk-input
>   TenGigabitEthernetaf/0/1 rx queue 0
>   buffer 0x2556: current data 14, length 1500, free-list 0, clone-count 0, 
> totlen-nifb 0, trace 0x0
>                  ext-hdr-valid
>                  l4-cksum-computed l4-cksum-correct l2-hdr-offset 0
>   PKT MBUF: port 0, nb_segs 1, pkt_len 1514
>     buf_len 2176, data_len 1514, ol_flags 0x180, data_off 128, phys_addr 
> 0x80095600
>     packet_type 0x391 l2_len 0 l3_len 0 outer_l2_len 0 outer_l3_len 0
>     rss 0x0 fdir.hi 0x0 fdir.lo 0x0
>     Packet Offload Flags
>       PKT_RX_IP_CKSUM_GOOD (0x0080) IP cksum of RX pkt. is valid
>       PKT_RX_L4_CKSUM_GOOD (0x0100) L4 cksum of RX pkt. is valid
>     Packet Types
>       RTE_PTYPE_L2_ETHER (0x0001) Ethernet packet
>       RTE_PTYPE_L3_IPV4_EXT_UNKNOWN (0x0090) IPv4 packet with or without 
> extension headers
>       RTE_PTYPE_L4_FRAG (0x0300) Fragmented IP packet
>   IP4: 68:05:ca:3a:19:18 -> 3c:fd:fe:a9:cc:ed
>   ICMP: 10.1.1.1 -> 10.1.1.2
>     tos 0x00, ttl 64, length 1500, checksum 0x2eb6
>     fragment id 0x1067, flags MORE_FRAGMENTS
>   ICMP echo_request checksum 0x496a
> 00:04:02:492403: ip4-input-no-checksum
>   ICMP: 10.1.1.1 -> 10.1.1.2
>     tos 0x00, ttl 64, length 1500, checksum 0x2eb6
>     fragment id 0x1067, flags MORE_FRAGMENTS
>   ICMP echo_request checksum 0x496a
> 00:04:02:492406: ip4-reassembly-feature
>   reass id: 1000000118, op id: 0 first bi: 9558, data len: 1480, 
> ip/fragment[0, 1479]
>                                  new range: [0, 1479], off 0, len 1480, bi 
> 9558
>   reass id: 1000000118, op id: 2 first bi: 9558, data len: 2008, 
> ip/fragment[0, 1479]
>                                  finalize reassembly
> 00:04:02:492434: ip4-lookup
>   fib 0 dpo-idx 5 flow hash: 0x00000000
>   ICMP: 10.1.1.1 -> 10.1.1.2
>     tos 0x00, ttl 64, length 2028, checksum 0x4ca6
>     fragment id 0x1067
>   ICMP echo_request checksum 0x496a
> 00:04:02:492435: ip4-local
>     ICMP: 10.1.1.1 -> 10.1.1.2
>       tos 0x00, ttl 64, length 2028, checksum 0x4ca6
>       fragment id 0x1067
>     ICMP echo_request checksum 0x496a
> 00:04:02:492436: ip4-icmp-input
>   ICMP: 10.1.1.1 -> 10.1.1.2
>     tos 0x00, ttl 64, length 2028, checksum 0x4ca6
>     fragment id 0x1067
>   ICMP echo_request checksum 0x496a
> 00:04:02:492436: ip4-icmp-echo-request
>   ICMP: 10.1.1.1 -> 10.1.1.2
>     tos 0x00, ttl 64, length 2028, checksum 0x4ca6
>     fragment id 0x1067
>   ICMP echo_request checksum 0x496a
> 00:04:02:492436: ip4-load-balance
>   fib 0 dpo-idx 13 flow hash: 0x00000000
>   ICMP: 10.1.1.2 -> 10.1.1.1
>     tos 0x00, ttl 64, length 2028, checksum 0x2d49
>     fragment id 0x2fc4
>   ICMP echo_reply checksum 0x516a
> 00:04:02:492436: ip4-rewrite
>   tx_sw_if_index 0 dpo-idx 1 : ipv4 via 10.1.1.1 TenGigabitEthernetaf/0/1: 
> mtu:1500 6805ca3a19183cfdfea9cced0800 flow hash: 0x05dc0000
>   00000000: 450007ec2fc4000040012d490a0101020a0101010000516a3ef600723f805a48
>   00000020: 00000000bd7c0c0000000000101112131415161718191a1b1c1d1e1f
> 00:04:02:492436: ip4-frag
>   IPv4 offset: 0 mtu: 1500 fragments: 1
> 00:04:02:492437: ip4-drop
>     ICMP: 10.1.1.2 -> 10.1.1.1
>       tos 0x00, ttl 64, length 2028, checksum 0x2d49
>       fragment id 0x2fc4
>     ICMP echo_reply checksum 0x516a
> 00:04:02:492437: error-drop
>   ip4-frag: malformed packet
>  
> Thanks,
> Hongjun
>  
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> 
> View/Reply Online (#10040): https://lists.fd.io/g/vpp-dev/message/10040
> Mute This Topic: https://lists.fd.io/mt/24206662/675193
> Group Owner: vpp-dev+ow...@lists.fd.io
> Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub  [otr...@employees.org]
> -=-=-=-=-=-=-=-=-=-=-=-

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.

View/Reply Online (#10041): https://lists.fd.io/g/vpp-dev/message/10041
Mute This Topic: https://lists.fd.io/mt/24206662/21656
Group Owner: vpp-dev+ow...@lists.fd.io
Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub  [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to