Subject: [DNSOP] TCP/UDP performances

From: Daniel Migault <[email-masked]>
Date: Tue, 24 Nov 2009 14:43:51 +0100

Hi,
We are looking for measurements on the following points :
   - How TCP affects DNS servers performances compared to UDP?
   - Proportion of clients that switch to TCP?
   - What kind of client are they? Are they those that do not implement
EDNS0?

Feel free to provide any paper links you know.

Regards,

Daniel

-- 
Daniel Migault
Orange Labs -- Security
+33 6 70 72 69 58

---

From: Mark Andrews <[email-masked]>
Date: Wed, 25 Nov 2009 07:17:06 +1100

In message <[email-masked]>, Daniel Mi
>    - Proportion of clients that switch to TCP?

By machine or by vendor?

Every Linux, FreeBSD, NetBSD, Solaris, HPUX, MacOS, Windows box switches to TCP
by default.  General purpose computers usually support it.  The nameservers
shipped with these boxes also support TCP.

The places which don't are some middle boxes which ends up breaking
the connection between the general purpose computers and the recursive
resolvers particularly in the home market.

>    - What kind of client are they? Are they those that do not implement

Most of these general purpose computers also support EDNS though it is not
enabled by default.
 
-- 
Mark Andrews, ISC
1 Seymour St., Dundas Valley, NSW 2117, Australia
PHONE: +61 2 9871 4742                 INTERNET: [email-masked]

---

From: Sebastian Castro <[email-masked]>
Date: Wed, 25 Nov 2009 11:56:58 +1300

Hi,

>    - Proportion of clients that switch to TCP?

The proportion of clients switching to TCP depends on what are the
clients asking and their EDNS signaling. The protocol indicates if a
response comes with the TC bit on, the query should be retried using TCP.

To get a Truncated Response I've seen two scenarios:

1. The client doesn't support EDNS and the response won't fit on 512 bytes.
2. The client does support EDNS but announces a small buffer size
(usually 512 bytes), creating the same situation described above. A
general version would be a EDNS-capable client that announces a buffer
not big enough to hold the response.

>    - What kind of client are they? Are they those that do not implement

I mentioned two scenarios above, with or without EDNS. May be someone
else can think about additional conditions.

> Feel free to provide any paper links you know.

I'd like to suggest you two documents to read. One is the Root Zone
Augmentation and Impact Analysis[1] from Duane Wessels and Geoff Sisson
and recent Duane's presentation at OARC[2] in Beijing.

[1]
http://www.icann.org/en/topics/ssr/root-zone-augementation-analysis-17sep09-en.pdf
[2] https://www.dns-oarc.net/files/workshop-200911/Duane_Wessels.pdf

Personally I've been working on a DNS benchmarking tool (like queryperf)
that retries queries when the response has the TC bit on. I can't share
any results because my testing hasn't been rigorous and the reduction in
performance is related to the fraction of queries you have to retry.
Also the benchmark can be affected if you re-use the TCP socket or if
it's created on each retry (and destroyed afterwards).

Cheers
Sebastian

> 
> Regards,
> 
> Daniel
> 
> -- 
> Daniel Migault
> Orange Labs -- Security
> +33 6 70 72 69 58
> 
> 
> ------------------------------------------------------------------------
> 
> _______________________________________________
> DNSOP mailing list
> [email-masked]
> https://www.ietf.org/mailman/listinfo/dnsop