CC13: DPDK vrouter fragments packets >= 1500 from non-DPDK workloads
Affects | Status | Importance | Assigned to | Milestone | ||
---|---|---|---|---|---|---|
Juniper Openstack | Status tracked in Trunk | |||||
R5.0 |
New
|
High
|
Saurabh | |||
Trunk |
New
|
High
|
Saurabh |
Bug Description
In a CC13/Contrail 5.0.1 setup with Intel X710 Fortville NICs, for non-DPDK workloads, the DPDK vrouter fragments packets with default 1500 MTU and above despite vrouter/vhost MTU being set to 9000.
# vifdump on vif 0/0
17:38:55 | (vrouter-
17:38:55 | vif0/0 PCI: 0000:00:00.0 (Speed 20000, Duplex 0)
# packet from SDN-GW to VM
17:39:45 | 15:39:45.686691 IP (tos 0x0, ttl 64, id 47127, offset 0, flags [none], proto UDP (17), length 1560)
17:39:45 | 100.64.128.3.56632 > 100.64.144.61.6635: [no cksum] UDP, length 1532
# packet from VM to SDN-GW
17:39:45 | 15:39:45.687314 IP (tos 0x0, ttl 64, id 27886, offset 0, flags [none], proto UDP (17), length 1492, bad cksum 0 (->2f6a)!)
17:39:45 | 100.64.144.61.49969 > 100.64.128.3.6635: [no cksum] UDP, length 1464
17:39:45 | 15:39:45.687326 IP (tos 0x0, ttl 64, id 27886, offset 0, flags [none], proto UDP (17), length 120, bad cksum 0 (->34c6)!)
17:39:45 | 100.64.144.61.49969 > 100.64.128.3.6635: [no cksum] UDP, length 92
# config
[root@overcloud
vhost0: flags=4163<
inet 100.64.144.61 netmask 255.255.248.0 broadcast 100.64.151.255
inet6 fe80::6a05:
ether 68:05:ca:41:ff:e0 txqueuelen 1000 (Ethernet)
RX packets 26076733 bytes 1839255148 (1.7 GiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 1476132 bytes 97125795 (92.6 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
[root@overcloud
1: lo: <LOOPBACK,
2: eno1: <BROADCAST,
3: eno2: <BROADCAST,
4: eno3: <NO-CARRIER,
5: eno4: <NO-CARRIER,
8: ens5f0: <BROADCAST,
9: enp0s20u1u5: <BROADCAST,
10: ens5f1: <BROADCAST,
11: docker0: <NO-CARRIER,
14: bond1: <BROADCAST,
15: vlan303@bond1: <BROADCAST,
16: vlan304@bond1: <BROADCAST,
17: bond0: <BROADCAST,
18: vhost0: <BROADCAST,
[root@overcloud
# This file is autogenerated by os-net-config
DEVICE=vhost0
ONBOOT=yes
HOTPLUG=no
NM_CONTROLLED=no
PEERDNS=no
MTU=9000
BOOTPROTO=static
IPADDR=
NETMASK=
DEVICETYPE=vhost
TYPE=dpdk
BIND_INT=
BOND_MODE=4
BOND_POLICY=
DRIVER=vfio-pci
CPU_LIST=0xe00000e
VLAN_ID=301
# contrail-status
17:43:14 | [root@overcloud
17:43:15 | Pod Service Original Name State Status
17:43:15 | vrouter agent contrail-
17:43:15 | vrouter agent-dpdk contrail-
17:43:15 | vrouter nodemgr contrail-nodemgr running Up 2 days
17:43:15 |
17:43:15 | vrouter DPDK module is PRESENT
17:43:15 | == Contrail vrouter ==
17:43:15 | nodemgr: active
17:43:15 | agent: active
17:43:15 |
# vif list
17:41:07 | (vrouter-
17:41:07 | Vrouter Interface Table
17:41:07 |
17:41:07 | Flags: P=Policy, X=Cross Connect, S=Service Chain, Mr=Receive Mirror
17:41:07 | Mt=Transmit Mirror, Tc=Transmit Checksum Offload, L3=Layer 3, L2=Layer 2
17:41:07 | D=DHCP, Vp=Vhost Physical, Pr=Promiscuous, Vnt=Native Vlan Tagged
17:41:07 | Mnp=No MAC Proxy, Dpdk=DPDK PMD Interface, Rfl=Receive Filtering Offload, Mon=Interface is Monitored
17:41:07 | Uuf=Unknown Unicast Flood, Vof=VLAN insert/strip offload, Df=Drop New Flows, L=MAC Learning Enabled
17:41:07 | Proxy=MAC Requests Proxied Always, Er=Etree Root, Mn=Mirror without Vlan Tag, Ig=Igmp Trap Enabled
17:41:07 |
17:41:07 | vif0/0 PCI: 0000:00:00.0 (Speed 20000, Duplex 0)
17:41:07 | Type:Physical HWaddr:
17:41:07 | Vrf:0 Mcast Vrf:65535 Flags:TcL3L2VpEr QOS:-1 Ref:183
17:41:07 | RX device packets:148760677 bytes:100772950203 errors:2
17:41:07 | RX port packets:22096245 errors:0
17:41:07 | RX queue errors to lcore 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
17:41:07 | RX packets:21872441 bytes:5047649117 errors:0
17:41:07 | TX packets:13461281 bytes:4024415957 errors:0
17:41:07 | Drops:1426580
17:41:07 | TX port packets:13376148 errors:86652
17:41:07 | TX device packets:128200703 bytes:22037988996 errors:0
17:41:07 |
17:41:07 | vif0/1 PMD: vhost0
17:41:07 | Type:Host HWaddr:
17:41:07 | Vrf:0 Mcast Vrf:65535 Flags:L3DEr QOS:-1 Ref:17
17:41:07 | RX device packets:325655 bytes:19709666 errors:0
17:41:07 | RX queue packets:325655 errors:0
17:41:07 | RX queue errors to lcore 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
17:41:07 | RX packets:325655 bytes:19709666 errors:0
17:41:07 | TX packets:7513215 bytes:522931356 errors:0
17:41:07 | Drops:0
17:41:07 | TX queue packets:6625285 errors:887930
17:41:07 | TX device packets:6625263 bytes:435257461 errors:0
17:41:07 |
17:41:07 | vif0/2 Socket: unix
17:41:07 | Type:Agent HWaddr:
17:41:07 | Vrf:65535 Mcast Vrf:65535 Flags:L3Er QOS:-1 Ref:3
17:41:07 | RX port packets:1731003 errors:0
17:41:07 | RX queue errors to lcore 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
17:41:07 | RX packets:1731003 bytes:297731006 errors:0
17:41:07 | TX packets:4281847 bytes:661636460 errors:0
17:41:07 | Drops:0
17:41:07 |
17:41:07 | vif0/3 PMD: tapf8e31b10-43
17:41:07 | Type:Virtual HWaddr:
17:41:07 | Vrf:2 Mcast Vrf:2 Flags:PL3L2DEr QOS:-1 Ref:20
17:41:07 | RX port packets:63302 errors:0 syscalls:1
17:41:07 | RX queue packets:51539 errors:0
17:41:07 | RX queue errors to lcore 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
17:41:07 | RX packets:63302 bytes:8483331 errors:0
17:41:07 | TX packets:38552 bytes:8532265 errors:0
17:41:07 | Drops:88746
17:41:07 | TX port packets:37676 errors:22 syscalls:37415