Re: tcp and udp traffic over IPv6 does not work from the latest e1000 git change 918c25677d
- In reply to: Cheng Cui : "tcp and udp traffic over IPv6 does not work from the latest e1000 git change 918c25677d"
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Wed, 26 Jul 2023 19:45:06 UTC
Hi Cheng, Have you applied https://reviews.freebsd.org/D41170? Can you also try 'ifconfig emXX -txcsum6' on the DUT? On Wed, Jul 26, 2023 at 12:37 PM Cheng Cui <cc@freebsd.org> wrote: > > Hello Kevin, > > TCP and UDP traffic over IPv4 are working, but not over IPv6. > On a pair of FreeBSD 14.0-CURRENT nodes that are using a kernel containing the latest e1000 git change 918c25677d: > > root@s1:~ # uname -a > FreeBSD s1.testsiftr.fbsd-transport.emulab.net 14.0-CURRENT FreeBSD 14.0-CURRENT amd64 1400093 #0 main-918c25677d-dirty: Sat Jul 22 14:43:31 MDT 2023 cc@n1.buildbsd14.fbsd-transport.emulab.net:/usr/obj/usr/src/amd64.amd64/sys/TESTBED-GENERIC amd64 > root@s1:~ # > > root@s1:~ # ping6 -c 3 fd00::3 > PING6(56=40+8+8 bytes) fd00::2 --> fd00::3 > 16 bytes from fd00::3, icmp_seq=0 hlim=64 time=0.393 ms > 16 bytes from fd00::3, icmp_seq=1 hlim=64 time=0.171 ms > 16 bytes from fd00::3, icmp_seq=2 hlim=64 time=0.276 ms > > --- fd00::3 ping6 statistics --- > 3 packets transmitted, 3 packets received, 0.0% packet loss > round-trip min/avg/max/std-dev = 0.171/0.280/0.393/0.091 ms > > root@s1:~ # ifconfig em4 > em4: flags=1008843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST,LOWER_UP> metric 0 mtu 1500 > options=4e104bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,LRO,VLAN_HWFILTER,RXCSUM_IPV6,TXCSUM_IPV6,HWSTATS,MEXTPG> > ether 00:04:23:b7:40:ac > inet 10.1.1.2 netmask 0xffffff00 broadcast 10.1.1.255 > inet6 fd00::2 prefixlen 64 > inet6 fe80::204:23ff:feb7:40ac%em4 prefixlen 64 scopeid 0x5 > media: Ethernet 1000baseT <full-duplex> > status: active > nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL> > > root@s1:~ # dmesg | grep em4 > em4: <Intel(R) Legacy PRO/1000 MT 82546EB (Copper)> port 0xacc0-0xacff mem 0xdf3e0000-0xdf3fffff irq 101 at device 3.0 on pci10 > em4: EEPROM V15.255-15 > em4: Using 1024 TX descriptors and 1024 RX descriptors > em4: Ethernet address: 00:04:23:b7:40:ac > em4: netmap queues/slots: TX 1/1024, RX 1/1024 > > root@r1:~ # ifconfig em4 > em4: flags=1008843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST,LOWER_UP> metric 0 mtu 1500 > options=4e104bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,LRO,VLAN_HWFILTER,RXCSUM_IPV6,TXCSUM_IPV6,HWSTATS,MEXTPG> > ether 00:04:23:b7:40:1c > inet 10.1.1.3 netmask 0xffffff00 broadcast 10.1.1.255 > inet6 fd00::3 prefixlen 64 > inet6 fe80::204:23ff:feb7:401c%em4 prefixlen 64 scopeid 0x5 > media: Ethernet 1000baseT <full-duplex> > status: active > nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL> > > root@r1:~ # dmesg | grep em4 > em4: <Intel(R) Legacy PRO/1000 MT 82546EB (Copper)> port 0xacc0-0xacff mem 0xdf3e0000-0xdf3fffff irq 101 at device 3.0 on pci10 > em4: EEPROM V15.255-15 > em4: Using 1024 TX descriptors and 1024 RX descriptors > em4: Ethernet address: 00:04:23:b7:40:1c > em4: netmap queues/slots: TX 1/1024, RX 1/1024 > > > TCP connection timed out > root@s1:~ # iperf -Vc fd00::3 -n 2K > ------------------------------------------------------------ > Client connecting to fd00::3, TCP port 5001 > TCP window size: 32.0 KByte (default) > ------------------------------------------------------------ > tcp connect failed: Operation timed out > [ 1] local :: port 0 connected with fd00::3 port 5001 > > server side has no response: > root@r1:~ # iperf -VsB fd00::3 > ------------------------------------------------------------ > Server listening on TCP port 5001 > TCP window size: 64.0 KByte (default) > ------------------------------------------------------------ > > UDP traffic does not work either, and the UDP server has no response: > root@s1:~ # iperf -Vc fd00::3 --udp -n 2K > ------------------------------------------------------------ > Client connecting to fd00::3, UDP port 5001 > Sending 1450 byte datagrams, IPG target: 11062.62 us (kalman adjust) > UDP buffer size: 9.00 KByte (default) > ------------------------------------------------------------ > [ 1] local fd00::2 port 54362 connected with fd00::3 port 5001 > [ ID] Interval Transfer Bandwidth > [ 1] 0.00-0.01 sec 3.42 KBytes 2.36 Mbits/sec > [ 1] Sent 4 datagrams > [ 3] WARNING: did not receive ack of last datagram after 1 tries. > > root@r1:~ # iperf -VsB fd00::3 --udp > ------------------------------------------------------------ > Server listening on UDP port 5001 > UDP buffer size: 41.1 KByte (default) > ------------------------------------------------------------ > > > > On a new pair of nodes that use a kernel with backed out the latest em git change 918c25677d. Same em chip 82546EB. > root@s1:~ # uname -a > FreeBSD s1.testem.fbsd-transport.emulab.net 14.0-CURRENT FreeBSD 14.0-CURRENT amd64 1400093 #0 22dca7acf7-dirty: Wed Jul 26 08:18:23 MDT 2023 cc@n1.emtest.fbsd-transport.emulab.net:/usr/obj/usr/src/amd64.amd64/sys/TESTBED-GENERIC amd64 > > cc@s1:~ % ifconfig em2 > em2: flags=1008843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST,LOWER_UP> metric 0 mtu 1500 > options=481009b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,VLAN_HWFILTER,HWSTATS,MEXTPG> > ether 00:04:23:b7:12:be > inet 10.1.1.2 netmask 0xffffff00 broadcast 10.1.1.255 > inet6 fd00::2 prefixlen 64 > inet6 fe80::204:23ff:feb7:12be%em2 prefixlen 64 scopeid 0x3 > media: Ethernet 1000baseT <full-duplex> > status: active > nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL> > > cc@r1:~ % ifconfig em2 > em2: flags=1008843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST,LOWER_UP> metric 0 mtu 1500 > options=481009b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,VLAN_HWFILTER,HWSTATS,MEXTPG> > ether 00:04:23:b7:15:58 > inet 10.1.1.3 netmask 0xffffff00 broadcast 10.1.1.255 > inet6 fd00::3 prefixlen 64 > inet6 fe80::204:23ff:feb7:1558%em2 prefixlen 64 scopeid 0x3 > media: Ethernet 1000baseT <full-duplex> > status: active > nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL> > > cc@s1:~ % ping6 -c 3 fd00::3 > PING6(56=40+8+8 bytes) fd00::2 --> fd00::3 > 16 bytes from fd00::3, icmp_seq=0 hlim=64 time=0.637 ms > 16 bytes from fd00::3, icmp_seq=1 hlim=64 time=0.236 ms > 16 bytes from fd00::3, icmp_seq=2 hlim=64 time=0.290 ms > > --- fd00::3 ping6 statistics --- > 3 packets transmitted, 3 packets received, 0.0% packet loss > round-trip min/avg/max/std-dev = 0.236/0.388/0.637/0.178 ms > > TCP traffic works: > > root@s1:~ # iperf -Vc fd00::3 -n 2K > ------------------------------------------------------------ > Client connecting to fd00::3, TCP port 5001 > TCP window size: 32.3 KByte (default) > ------------------------------------------------------------ > [ 1] local fd00::2 port 27164 connected with fd00::3 port 5001 > [ ID] Interval Transfer Bandwidth > [ 1] 0.00-0.02 sec 2.00 KBytes 858 Kbits/sec > > cc@r1:~ % iperf -VsB fd00::3 > ------------------------------------------------------------ > Server listening on TCP port 5001 > TCP window size: 64.0 KByte (default) > ------------------------------------------------------------ > [ 1] local fd00::3 port 5001 connected with fd00::2 port 27164 > [ ID] Interval Transfer Bandwidth > [ 1] 0.00-0.00 sec 2.00 KBytes 0.000 bits/sec > > UDP traffic also works: > > root@s1:~ # iperf -Vc fd00::3 --udp -n 2K > ------------------------------------------------------------ > Client connecting to fd00::3, UDP port 5001 > Sending 1450 byte datagrams, IPG target: 11062.62 us (kalman adjust) > UDP buffer size: 9.00 KByte (default) > ------------------------------------------------------------ > [ 1] local fd00::2 port 64612 connected with fd00::3 port 5001 > [ ID] Interval Transfer Bandwidth > [ 1] 0.00-0.01 sec 3.42 KBytes 2.36 Mbits/sec > [ 1] Sent 4 datagrams > [ 1] Server Report: > [ ID] Interval Transfer Bandwidth Jitter Lost/Total Datagrams > [ 1] 0.00-0.01 sec 3.42 KBytes 2.38 Mbits/sec 0.010 ms 0/3 (0%) > > cc@r1:~ % iperf -VsB fd00::3 --udp > ------------------------------------------------------------ > Server listening on UDP port 5001 > UDP buffer size: 41.1 KByte (default) > ------------------------------------------------------------ > [ 1] local fd00::3 port 5001 connected with fd00::2 port 64612 > [ ID] Interval Transfer Bandwidth Jitter Lost/Total Datagrams > [ 1] 0.00-0.01 sec 3.42 KBytes 2.38 Mbits/sec 0.011 ms 0/3 (0%) > > Best Regards, > Cheng Cui