Subject: weird duplicate packet
To: None <netbsd-users@netbsd.org>
From: Steven M. Bellovin <smb@cs.columbia.edu>
List: netbsd-users
Date: 01/22/2005 15:28:36
Here's an excerpt from a ping sequence to a 2.0 machine.

64 bytes from 192.168.2.200: icmp_seq=71 ttl=255 time=0.545 ms
64 bytes from 192.168.2.200: icmp_seq=72 ttl=255 time=0.308 ms
64 bytes from 192.168.2.200: icmp_seq=73 ttl=255 time=0.361 ms
64 bytes from 192.168.2.200: icmp_seq=74 ttl=255 time=0.350 ms
64 bytes from 192.168.2.200: icmp_seq=75 ttl=255 time=0.246 ms
64 bytes from 192.168.2.200: icmp_seq=76 ttl=255 time=0.323 ms
64 bytes from 192.168.2.200: icmp_seq=77 ttl=255 time=0.256 ms
64 bytes from 192.168.2.200: icmp_seq=78 ttl=255 time=0.308 ms
64 bytes from 192.168.2.200: icmp_seq=79 ttl=255 time=0.355 ms
64 bytes from 192.168.2.200: icmp_seq=80 ttl=255 time=0.394 ms
64 bytes from 192.168.2.200: icmp_seq=81 ttl=255 time=0.280 ms
64 bytes from 192.168.2.200: icmp_seq=82 ttl=255 time=0.871 ms
64 bytes from 192.168.2.200: icmp_seq=83 ttl=255 time=0.297 ms
64 bytes from 192.168.2.200: icmp_seq=71 DUP! ttl=255 time=12963.909 ms
64 bytes from 192.168.2.200: icmp_seq=84 ttl=255 time=0.331 ms

Note that that duplicate is 12 seconds late...  I'm trying to 
understand how that could have happened.  The two machines are on the 
same LAN, though the target is behind a somewhat-flakey Belkin 100BaseT 
switch.  But in fact I suspect the host more, since I'm watching the 
output from a large pksrc build sometimes pause in the middle of an 
output line.  The Ethernet card itself is a 4-port fxp card:

ppb1 at pci0 dev 9 function 0: Digital Equipment DECchip 21152 PCI-PCI Bridge (rev. 0x03)
pci2 at ppb1 bus 2
pci2: i/o space, memory space enabled, rd/line, wr/inv ok
fxp0 at pci2 dev 4 function 0: i82559S Ethernet, rev 9
fxp0: interrupting at irq 10
fxp0: Ethernet address 00:20:fc:1e:67:40
inphy0 at fxp0 phy 1: i82555 10/100 media interface, rev. 4
inphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
fxp1 at pci2 dev 5 function 0: i82559S Ethernet, rev 9
fxp1: interrupting at irq 3
fxp1: Ethernet address 00:20:fc:1e:67:41
inphy1 at fxp1 phy 1: i82555 10/100 media interface, rev. 4
inphy1: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
fxp2 at pci2 dev 6 function 0: i82559S Ethernet, rev 9
fxp2: interrupting at irq 5
fxp2: Ethernet address 00:20:fc:1e:67:42
inphy2 at fxp2 phy 1: i82555 10/100 media interface, rev. 4
inphy2: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
fxp3 at pci2 dev 7 function 0: i82559S Ethernet, rev 9
fxp3: interrupting at irq 11
fxp3: Ethernet address 00:20:fc:1e:67:43
inphy3 at fxp3 phy 1: i82555 10/100 media interface, rev. 4
inphy3: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto

I see occasional fxp0 and fxp1 timeout messages in the dmesg output, 
but there haven't been any for a week, i.e., not during the time I was 
running those pings.  ttcp in either direction shows 88-89 Mbps.
(The other machine is running -current with a GigE card.)

		--Prof. Steven M. Bellovin, http://www.cs.columbia.edu/~smb