3 ms·
Similar design decision as IPv6, which doesn't have CRC at the IP level, unlike IPv4, for the same reason.
by AceJohnny2 10y ago
Similar design decision as IPv6, which doesn't have CRC at the IP level, unlike IPv4, for the same reason.
- legulere 10y agoIf I remember correctly it's actually the opposite and it was reasoned that checksumming should be done higher up.
- takeda 10y agoActually the reason for it is that lower layers already do checksuming and generally at that layer you don't get scrambled packets. You only lose packets which happens when there's congestion.
- greglindahl 10y agoBut anyone who's ever looked knows that you DO get scrambled packets, thanks to buggy hardware. And disks screw up, too.
- ghshephard 10y agoBuggy Hardware you would catch with your MAC checksum, such as ethernet's CRC.
- greglindahl 10y agoAnyone with enough hardware can observe this sort of problem: http://www.evanjones.ca/tcp-and-ethernet-checksums-fail.html http://www.evanjones.ca/tcp-and-ethernet-checksums-fail.html When The CRC and TCP Checksum Disagree: http://conferences.sigcomm.org/sigcomm/2000/conf/paper/sigcomm2000-9-1.pdf http://conferences.sigcomm.org/sigcomm/2000/conf/paper/sigco... Alternately, just look at "netstat -s" for any machine on the Internet talking to a bunch of others. Here's the score for the main web host of the Internet Archive Wayback Machine: 3088864840 segments received 2401058 bad segments received.