North American Network Operators Group

Date Prev | Date Next | Date Index | Thread Index | Author Index | Historical

Re: Great Suggestion for the DNS problem...?

  • From: Laird Popkin
  • Date: Tue Jul 29 12:25:48 2008

We mainly use UDP for tracker announces, and only use TCP when we have to, and can confirm that the server spends far more time on the TCP setup/teardown than on computing the tracker response.

- LP

On Jul 29, 2008, at 12:21 PM, Mikael Abrahamsson wrote:

On Tue, 29 Jul 2008, Steven M. Bellovin wrote:

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?)

The bittorrent tracker guys seem to run into problems at around 30kk tracker requests per second (TCP), and they say it's mostly setup/ teardown (sy usage in vmstat), the tracker hash lookup doesn't take that much.


They're trying to move to UDP, currently their workload is approx 5% UDP.

I guess TCP DNS workload would be similar in characteristics.

--
Mikael Abrahamsson    email: [email protected]