Hi, I'm running FreeBSD 5.2.1-p4 on a dell system with a Broadcom 5704C Nic in it. bge0: <Broadcom BCM5704C Dual Gigabit Ethernet, ASIC rev. 0x2002> mem 0xfcd20000-0xfcd2ffff,0xfcd30000-0xfcd3ffff irq 16 at device 0.0 on pci2 bge0: Ethernet address: 00:0b:db:93:c5:c4 miibus0: <MII bus> on bge0 brgphy0: <BCM5704 10/100/1000baseTX PHY> on miibus0 brgphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseTX, 1000baseTX-FDX, auto Since version 4.5 tcp checksum offloading is supported with this NIC. However, i'm encountering continuous on all packet send from this machines bad tdp/udp checksums: 16:05:41.287764 x.x.x.x.22 > 192.168.2.1.4761: . [bad tcp cksum f48!] 984:984(0) ack 313 win 32824 (DF) [tos 0x10] (ttl 64, id 44539, len 40, bad cksum 0!) 16:05:41.545073 x.x.x.x.123 > y.y.y.y.123: [bad udp cksum 6a52!] v3 server strat 2 poll 6 prec -31 dist 0.007049 disp 0.022796 ref 195.169.124.69@3290335106.099078394 orig 3290335541.540184020 rec +0.004841091 xmt +0.004874050 [tos 0x10] (ttl 64, id 44541, len 76, bad cksum 0!) I tried several things, using autoselect in ifconfig bge0, setting the speed and duplex hard on nic and switch port (cisco). I even tried turning off offloading: ifconfig bge0 -txcsum. But whatever i tried bad checksums kept appearing. Is this behaviour normal or not? When tcp csum offloading is turned on, does the networking stack not compute the checksum on outgoing packets and hand it to the driver which hands it to bpf and libpcap hands it to tcpdump so tcpdump reports an invalid checksum? For now i am not sure whether the behaviour is right or not.... it worries me. There's more: when i set the speed and duplex hard on the switch and nic on 100 and full-duplex, the traffic is very slow. When i use autoselect the traffic is way faster. I guess this isnt normal? Any hints on these topics? Bye, Mipam.
On Wed, Apr 07, 2004 at 03:09:11PM +0200, Mipam wrote:> Hi, > > I'm running FreeBSD 5.2.1-p4 on a dell system with a Broadcom 5704C Nic in > it. > > bge0: <Broadcom BCM5704C Dual Gigabit Ethernet, ASIC rev. 0x2002> mem > 0xfcd20000-0xfcd2ffff,0xfcd30000-0xfcd3ffff irq 16 at device 0.0 on pci2 > bge0: Ethernet address: 00:0b:db:93:c5:c4 > miibus0: <MII bus> on bge0 > brgphy0: <BCM5704 10/100/1000baseTX PHY> on miibus0 > brgphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseTX, > 1000baseTX-FDX, auto > > Since version 4.5 tcp checksum offloading is supported with this NIC. > However, i'm encountering continuous on all packet send from this machines > bad tdp/udp checksums: > > 16:05:41.287764 x.x.x.x.22 > 192.168.2.1.4761: . [bad tcp cksum > f48!] 984:984(0) ack 313 win 32824 (DF) [tos 0x10] (ttl 64, id 44539, len > 40, bad cksum 0!) > 16:05:41.545073 x.x.x.x.123 > y.y.y.y.123: [bad udp cksum > 6a52!] v3 server strat 2 poll 6 prec -31 dist 0.007049 disp 0.022796 ref > 195.169.124.69@3290335106.099078394 orig 3290335541.540184020 rec > +0.004841091 xmt +0.004874050 [tos 0x10] (ttl 64, id 44541, len 76, bad > cksum 0!)> When tcp csum offloading is turned on, does the networking stack not > compute the checksum on outgoing packets and hand it to the driver which > hands it to bpf and libpcap hands it to tcpdump so tcpdump reports an > invalid checksum? For now i am not sure whether the behaviour is right or > not.... it worries me.I ran into this yesterday with a different NIC, and Peter Wemm told me that tcpdump indeed gets it wrong for locally-generated packets when the card does checksum offloading. Indeed, when I ran the tcpdump on another machine on the LAN it verified that the checksums on those packets were all correct.> There's more: when i set the speed and duplex hard on the switch and nic > on 100 and full-duplex, the traffic is very slow.Sounds like what happens when full-duplex isn't supported by one end, or isn't actually being set correctly. Kris -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 187 bytes Desc: not available Url : http://lists.freebsd.org/pipermail/freebsd-stable/attachments/20040407/1c8c8408/attachment.bin
On Wed, Apr 07, 2004 at 10:09:33AM -0700, Kris Kennaway wrote: [...]> I ran into this yesterday with a different NIC, and Peter Wemm told me > that tcpdump indeed gets it wrong for locally-generated packets when > the card does checksum offloading. Indeed, when I ran the tcpdump on > another machine on the LAN it verified that the checksums on those > packets were all correct. >This is even more odd when the card does VLAN stripping/tagging in hardware. RELENG_4 gets it slightly less wrong though. Cheers, -- Ruslan Ermilov ru@FreeBSD.org FreeBSD committer -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 187 bytes Desc: not available Url : http://lists.freebsd.org/pipermail/freebsd-stable/attachments/20040409/439ac83c/attachment.bin