Return to BSD News archive
Newsgroups: comp.os.386bsd.misc Path: sserve!newshost.anu.edu.au!harbinger.cc.monash.edu.au!msuinfo!agate!howland.reston.ans.net!usc!elroy.jpl.nasa.gov!decwrl!netcomsv!calcite!vjs From: vjs@calcite.rhyolite.com (Vernon Schryver) Subject: Re: PPP under BSD (have a heart) Message-ID: <Ctz0HM.ID1@calcite.rhyolite.com> Organization: Rhyolite Software Date: Wed, 3 Aug 1994 17:56:10 GMT References: <bakulCttyCM.7n@netcom.com> <Ctv3tI.7yE@calcite.rhyolite.com> <31mvep$6ko@sirius.anu.edu.au> Lines: 43 In article <31mvep$6ko@sirius.anu.edu.au> paulus@cs.anu.edu.au (Paul Mackerras) writes: >vjs@calcite.rhyolite.com (Vernon Schryver) writes: > >>You also might want to vary your timeouts based on the state of higher >>layer protocols. I find it convenient to use a 5 minute timeout when >>there are active TCP connections, but 30 seconds otherwise. I keep >>track of active TCP connections by noticing SYN's and FIN's in the Van >>Jacobson header compression code and state tables. I'm ridiculously >>proud of that kludge. > >What's more, you haven't patented it :-), have you? I guess I messed up and forgot. Since it's been shipping for more than a year, I've probably missed my one chance at fortune and 15 minutes of fame. However, for a very small fee, say $10,000, I'll tell you how to implement it. There seem to be a lot of people out there charging more for "expertise" on how to implement even simpler things. >What happens when you run out of slots in the VJ state tables? Do you >just assume that the connections whose slots get reused are idle and >not worth bothering about any more? Exactly. And when the link does down, all of the state tables get cleared. The biggest defects with the scheme are 1. (as you note) more active TCP connections than you have VJ state table entries don't get tracked correctly, which can open windows when the system thinks the link is more idle than it really is. 2. asymmetric routing can fool it (e.g. you may not see all of the SYNs, FINs, and resets). 3. it is fooled by BF&I multicast, since, at least as I do BF&IM, each link has independing VJ state tables. 4. you have make some minor changes to the standard 4.*BSD code or the code in RFC-1144. Still, it works great exactly when VJ header compression works. The rest of the time, who cares? Either the link is very busy, or you need to increase the VJ state tables anyway. Vernon Schryver vjs@rhyolite.com