Subject: Steven's TCP/IP V1 and Host Requirements
To: VaX#n8 <vax@linkdead.paranoia.com>
From: Jonathan Stone <jonathan@DSG.Stanford.EDU>
List: current-users
Date: 09/09/1996 20:03:27
Warning: strong opinions follow!
>Has anyone methodically gone through Steven's V1 book and checked to see if
>the problems with BSD networking (specifically, the bsdi machine) have been
>fixed? Also, to work on unconditional compliance with the Host Requirements
>doc, if not already met.
*I* certainly haven't, but then I don 't find Rich Steven's TCP/IP
books useful. I'd rather check the items in section 2 of rfc1127
*first*, and then thnk about the rest of rfc1122 and 1123.
>Off the top of my head I remember something about invalidating entries
>from the ARP cache (even if they are being used as a destination addr)
>after a timeout (10min?) to catch hosts which change hardware addresses.
Yup, ARP is a high point on the list.
I think flushing *does* happen, I've certainly seen cloned entries
time out. It's a little hard to drop them if other route entries
(eg., an ARP entry for a next--hop gateway for some other route) are
pinning them.
Anyone working on this should also be aware that the state-of-the-art
in ARP cache managment has changed since Stevens' book and the HR
RFCs. The mobile-IP field has invented ``gratutious ARP'' (and
related concepts) for flushing out stale ARP entries when a host
decidesto change its MAC-to-IP address mapping. If you want to clean
up ARP for the 1990s instead of the 1980s, work on that instead.
>I'm a little disappointed trailer encapsulation was dropped;
I think the accepted wisdom is that you should be *grateful* :).
> it seemed
>like a nifty idea, but it must not be that big of a perf increase anymore
>since nobody seems to use it now :)
Yup. Trailers made sense only for machines with relatively fast
scatter/gather I/O, relatively slow CPUs, and painfully slow memory
systems (e.g., one-word write buffer, or no cache at *all*), where it
makes a lot of sense to avoid copying a three-page packet by doing
pageflipping into user space. The afficionados should be able to
guess which model of VAX this makes most sense on; for anything with
larger pagesizes than a VAX, it's a lose. And on, say, a KA630, a
leaner, meaner TCP stack plus a DELQUA turbo-mode driver make more sense
in any case.
However, NetBSD does support Unibus Vaxes; if Ragge wants to (re)implement
trailers and finds it's a significant win, I'd consider voting to let
trailers back in.