Subject: Re: Efficient callout handling
To: Chuck Cranor <chuck@dworkin.wustl.edu>
From: Charles M. Hannum <mycroft@mit.edu>
List: tech-kern
Date: 07/17/1996 23:24:08
Chuck Cranor <chuck@dworkin.wustl.edu> writes:

> 
> Did you look at http://www.cs.wustl.edu/~amc/research/timer/,
> "New Callout and Timer Facilities for NetBSD" by Adam Costello?
> This is based on the timing wheel algorithm designed in 1987 
> by George Varghese and Tony Lauck (in fact, Varghese and Lauck are
> referenced in the 4.3BSD book in chapter 3, around page 53.)

Ignoring the itimer portion, this is more or less equivalent to a hash
table with a hash function of `t % hash table size'.  Given that many
other hash tables in the kernel are currently fixed in size at boot
time (including the PCB hash table, which is also relevant for large
numbers of TCP connections), perhaps this simple approach is a good
tradeoff for now.

Anyway, I'll also look for a copy of the papers it references
tomorrow; in particular, [CJRS89] could be useful.