Re: SLIP working group?


Bill Melohn (melohn@Sun.COM)
Sun, 3 Apr 88 01:43:23 PST


Error detection should be implemented as close to the potential source
of the error as possible. In a IP link from my home PC to my
workstation, there might be 5 hops, 4 of which are over various LANs
and gateways all using CRCs and 1 SLIP on a lossy voice grade phone
line with no error detection. With an end-to-end checksum, all of
these links are treated equally, and as a result, packets which get
mangled on my phone line are passed in mangled form throughout my
reliable but heavily loaded internet only to be thrown away at the
destination because of a bad checksum. Worse, because this checksum
has to be calculated and compared, it uses cycles on the CPUs at both
ends. Even worse is that fact that in 4bsd this is a host wide option,
so if I have a single SLIP based client of my NFS fileserver and I
want him to get checksummed packets, I have to checksum packets for
all Ethernet only local users as well, users who are more likely to be
concerned with speed and not with data corruption on the Ethernet. It
seems to me that the sooner I can detect that a packet has been
corrupted, the sooner I should throw it away and initiate a
retransmission of the data, minimizing both the end-system CPU and the
total network bandwidth spent. CRCs are commonly implemented in
hardware on Ethernet, in various syncronous serial chips, and on many
modems. Why not in SLIP framing as well? End-to-End checksums
certainly have their place, but depending on them alone to catch data
errors on a variety of media in a complex internet wastes both net
bandwidth and host CPU.



This archive was generated by hypermail 2.0b3 on Thu Mar 09 2000 - 14:41:54 GMT