Great Suggestion for the DNS problem...?
Steven M. Bellovin
smb at cs.columbia.edu
Tue Jul 29 09:23:02 CDT 2008
On Tue, 29 Jul 2008 15:56:19 +0200
Colin Alston <karnaugh at karnaugh.za.net> wrote:
> > DNS uses UDP.
> Ahh yes of course..
> Why does it use UDP? :P
In this situation, UDP uses one query packet and one reply. TCP uses 3
to set up the connection, a query, a reply, and three to tear down the
connection. *Plus* the name server will have to keep state for
every client, plus TIMEWAIT state, etc. (Exercise left to TCP geek
readers: how few packets can you do this in? For example -- send the
query with the SYN+ACK, send client FIN with the query, send server FIN
with the answer? Bonus points for not leaving the server's side in
TIMEWAIT. Exercise for implementers: how sane can your stack be if
you're going to support that?)
--Steve Bellovin, http://www.cs.columbia.edu/~smb
More information about the NANOG