Hi, All my em cards running 8.1 stable don't reply to icmp echo requests packets larger than 1472 bytes. On stable 7.2 the same hardware works as expected: # ping -s 1500 192.168.64.99 PING 192.168.64.99 (192.168.64.99): 1500 data bytes 1508 bytes from 192.168.64.99: icmp_seq=0 ttl=63 time=1.249 ms 1508 bytes from 192.168.64.99: icmp_seq=1 ttl=63 time=1.158 ms Here is the dump on em interface 15:06:31.452043 IP 192.168.66.65 > *****: ICMP echo request, id 28729, seq 5, length 1480 15:06:31.452047 IP 192.168.66.65 > ****: icmp 15:06:31.452069 IP **** > 192.168.66.65: ICMP echo reply, id 28729, seq 5, length 1480 15:06:31.452071 IP *** > 192.168.66.65: icmp Same ping from same source (it's a 8.1 stable with fxp interface) to em card running 8.1 stable #pciconf -lv em0@pci0:3:4:0: class=0x020000 card=0x10798086 chip=0x10798086 rev=0x03 hdr=0x00 vendor = 'Intel Corporation' device = 'Dual Port Gigabit Ethernet Controller (82546EB)' class = network subclass = ethernet # ping -s 1472 192.168.64.200 PING 192.168.64.200 (192.168.64.200): 1472 data bytes 1480 bytes from 192.168.64.200: icmp_seq=0 ttl=63 time=0.848 ms ^C # ping -s 1473 192.168.64.200 PING 192.168.64.200 (192.168.64.200): 1473 data bytes ^C --- 192.168.64.200 ping statistics --- 4 packets transmitted, 0 packets received, 100.0% packet loss And here is it's dump on em card 5:11:15.191496 IP 192.168.66.65 > *****: ICMP echo request, id 33593, seq 0, length 1480 15:11:15.191534 IP 192.168.66.65 > *****: icmp 15:11:16.192119 IP 192.168.66.65 > *****: ICMP echo request, id 33593, seq 1, length 1480 15:11:16.192156 IP 192.168.66.65 > ******: icmp igb cards on 8.1 stable are not affected Regards, Kirill
On Wed, Nov 10, 2010 at 04:21:12AM -0800, Kirill Yelizarov wrote:> Hi, > > All my em cards running 8.1 stable don't reply to icmp echo requests packets larger than 1472 bytes. > > On stable 7.2 the same hardware works as expected: > # ping -s 1500 192.168.64.99 > PING 192.168.64.99 (192.168.64.99): 1500 data bytes > 1508 bytes from 192.168.64.99: icmp_seq=0 ttl=63 time=1.249 ms > 1508 bytes from 192.168.64.99: icmp_seq=1 ttl=63 time=1.158 ms > > Here is the dump on em interface > 15:06:31.452043 IP 192.168.66.65 > *****: ICMP echo request, id 28729, seq 5, length 1480 > 15:06:31.452047 IP 192.168.66.65 > ****: icmp > 15:06:31.452069 IP **** > 192.168.66.65: ICMP echo reply, id 28729, seq 5, length 1480 > 15:06:31.452071 IP *** > 192.168.66.65: icmp > > Same ping from same source (it's a 8.1 stable with fxp interface) to em card running 8.1 stable > #pciconf -lv > em0@pci0:3:4:0: class=0x020000 card=0x10798086 chip=0x10798086 rev=0x03 hdr=0x00 > vendor = 'Intel Corporation' > device = 'Dual Port Gigabit Ethernet Controller (82546EB)' > class = network > subclass = ethernet > > # ping -s 1472 192.168.64.200 > PING 192.168.64.200 (192.168.64.200): 1472 data bytes > 1480 bytes from 192.168.64.200: icmp_seq=0 ttl=63 time=0.848 ms > ^C > > # ping -s 1473 192.168.64.200 > PING 192.168.64.200 (192.168.64.200): 1473 data bytes > ^C > --- 192.168.64.200 ping statistics --- > 4 packets transmitted, 0 packets received, 100.0% packet loss > > And here is it's dump on em card > 5:11:15.191496 IP 192.168.66.65 > *****: ICMP echo request, id 33593, seq 0, length 1480 > 15:11:15.191534 IP 192.168.66.65 > *****: icmp > 15:11:16.192119 IP 192.168.66.65 > *****: ICMP echo request, id 33593, seq 1, length 1480 > 15:11:16.192156 IP 192.168.66.65 > ******: icmp > > igb cards on 8.1 stable are not affectedPlease provide uname -a output from the machine with the emX devices, as well as relevant emX information from "dmesg" (e.g. driver version). "sysctl dev.em.X" might also be helpful. Thanks. -- | Jeremy Chadwick jdc@parodius.com | | Parodius Networking http://www.parodius.com/ | | UNIX Systems Administrator Mountain View, CA, USA | | Making life hard for others since 1977. PGP: 4BD6C0CB |
> Date: Wed, 10 Nov 2010 04:21:12 -0800 (PST) > From: Kirill Yelizarov <ykirill@yahoo.com> > Sender: owner-freebsd-stable@freebsd.org > > Hi, > > All my em cards running 8.1 stable don't reply to icmp echo requests packets larger than 1472 bytes. > > On stable 7.2 the same hardware works as expected: > # ping -s 1500 192.168.64.99 > PING 192.168.64.99 (192.168.64.99): 1500 data bytes > 1508 bytes from 192.168.64.99: icmp_seq=0 ttl=63 time=1.249 ms > 1508 bytes from 192.168.64.99: icmp_seq=1 ttl=63 time=1.158 ms > > Here is the dump on em interface > 15:06:31.452043 IP 192.168.66.65 > *****: ICMP echo request, id 28729, seq 5, length 1480 > 15:06:31.452047 IP 192.168.66.65 > ****: icmp > 15:06:31.452069 IP **** > 192.168.66.65: ICMP echo reply, id 28729, seq 5, length 1480 > 15:06:31.452071 IP *** > 192.168.66.65: icmp > > Same ping from same source (it's a 8.1 stable with fxp interface) to em card running 8.1 stable > #pciconf -lv > em0@pci0:3:4:0: class=0x020000 card=0x10798086 chip=0x10798086 rev=0x03 hdr=0x00 > vendor = 'Intel Corporation' > device = 'Dual Port Gigabit Ethernet Controller (82546EB)' > class = network > subclass = ethernet > > # ping -s 1472 192.168.64.200 > PING 192.168.64.200 (192.168.64.200): 1472 data bytes > 1480 bytes from 192.168.64.200: icmp_seq=0 ttl=63 time=0.848 ms > ^C > > # ping -s 1473 192.168.64.200 > PING 192.168.64.200 (192.168.64.200): 1473 data bytes > ^C > --- 192.168.64.200 ping statistics --- > 4 packets transmitted, 0 packets received, 100.0% packet loss > > And here is it's dump on em card > 5:11:15.191496 IP 192.168.66.65 > *****: ICMP echo request, id 33593, seq 0, length 1480 > 15:11:15.191534 IP 192.168.66.65 > *****: icmp > 15:11:16.192119 IP 192.168.66.65 > *****: ICMP echo request, id 33593, seq 1, length 1480 > 15:11:16.192156 IP 192.168.66.65 > ******: icmp > > igb cards on 8.1 stable are not affectedI'm unsure why it ever worked. Was the interface MTU set to 1500 (default) under V7? Most ping programs (including FreeBSD) send the specified number of DATA bytes. Add the ICMP header (8 bytes) and the IP header (20 bytes) to 1472 and you get 1500, the largest packet that should work. It even gives you a hint as, for no reason I have never understood, the program includes the ICMP header is the displayed packet size (1480/1508). Also, the IP MTU of 1500 does not include the Ethernet framing which includes 12 bytes of address and two bytes of ethertype or the CRC. If the igb is allowing over 1500 bytes of IP packet through, assuming the MTU has not been increased for the standard 1500, something is clearly broken. 1472 is the right answer and 1500 (or 1473) is not. -- R. Kevin Oberman, Network Engineer Energy Sciences Network (ESnet) Ernest O. Lawrence Berkeley National Laboratory (Berkeley Lab) E-mail: oberman@es.net Phone: +1 510 486-8634 Key fingerprint:059B 2DDF 031C 9BA3 14A4 EADA 927D EBB3 987B 3751
Wilkinson, Alex
2010-Nov-11 05:01 UTC
icmp packets on em larger than 1472 [SEC=UNCLASSIFIED]
0n Wed, Nov 10, 2010 at 04:21:12AM -0800, Kirill Yelizarov wrote: >All my em cards running 8.1 stable don't reply to icmp echo requests packets larger than 1472 bytes. > >On stable 7.2 the same hardware works as expected: ># ping -s 1500 192.168.64.99 >PING 192.168.64.99 (192.168.64.99): 1500 data bytes >1508 bytes from 192.168.64.99: icmp_seq=0 ttl=63 time=1.249 ms >1508 bytes from 192.168.64.99: icmp_seq=1 ttl=63 time=1.158 ms > >Here is the dump on em interface >15:06:31.452043 IP 192.168.66.65 > *****: ICMP echo request, id 28729, seq 5, length 1480 >15:06:31.452047 IP 192.168.66.65 > ****: icmp >15:06:31.452069 IP **** > 192.168.66.65: ICMP echo reply, id 28729, seq 5, length 1480 >15:06:31.452071 IP *** > 192.168.66.65: icmp > >Same ping from same source (it's a 8.1 stable with fxp interface) to em card running 8.1 stable >#pciconf -lv >em0@pci0:3:4:0: class=0x020000 card=0x10798086 chip=0x10798086 rev=0x03 hdr=0x00 > vendor = 'Intel Corporation' > device = 'Dual Port Gigabit Ethernet Controller (82546EB)' > class = network > subclass = ethernet > ># ping -s 1472 192.168.64.200 >PING 192.168.64.200 (192.168.64.200): 1472 data bytes >1480 bytes from 192.168.64.200: icmp_seq=0 ttl=63 time=0.848 ms >^C > ># ping -s 1473 192.168.64.200 >PING 192.168.64.200 (192.168.64.200): 1473 data bytes >^C >--- 192.168.64.200 ping statistics --- >4 packets transmitted, 0 packets received, 100.0% packet loss works fine for me: FreeBSD 8.1-STABLE #0 r213395 em0@pci0:0:25:0:class=0x020000 card=0x3035103c chip=0x10de8086 rev=0x02 hdr=0x00 vendor = 'Intel Corporation' device = 'Intel Gigabit network connection (82567LM-3 )' class = network subclass = ethernet #ping -s 1473 host PING host(192.168.1.1): 1473 data bytes 1481 bytes from 192.168.1.1: icmp_seq=0 ttl=253 time=31.506 ms 1481 bytes from 192.168.1.1: icmp_seq=1 ttl=253 time=31.493 ms 1481 bytes from 192.168.1.1: icmp_seq=2 ttl=253 time=31.550 ms ^C -Alex IMPORTANT: This email remains the property of the Department of Defence and is subject to the jurisdiction of section 70 of the Crimes Act 1914. If you have received this email in error, you are requested to contact the sender and delete the email.