T-DNS: Connection-Oriented DNS to Improve Privacy and Security (extended). Zhu, L., Hu, Z., Heidemann, J., Wessels, D., Mankin, A., & Somaiya, N. Technical Report ISI-TR-2014-693, USC/Information Sciences Institute, June, 2014.
T-DNS: Connection-Oriented DNS to Improve Privacy and Security (extended) [link]Paper  abstract   bibtex   
DNS is the canonical protocol for connectionless UDP. Yet DNS today is challenged by eavesdropping that compromises privacy, source-address spoofing that results in denial-of-service (DoS) attacks on the server and third parties, injection attacks that exploit fragmentation, and size limitations that constrain policy and operational choices. We propose \emphT-DNS to address these problems. It uses TCP to smoothly support large payloads and to mitigate spoofing and amplification for DoS. T-DNS uses transport-layer security (TLS) to provide privacy from users to their DNS resolvers and optionally to authoritative servers. Expectations about DNS suggest connections will balloon client latency and overwhelm server with state, but our evaluation shows costs are modest: end-to-end latency from \emphTLS to the recursive resolver is only about 9% slower when UDP is used to the authoritative server, and 22% slower with TCP to the authoritative. With diverse traces we show that frequent connection reuse is possible (60–95% for stub and recursive resolvers, although half that for authoritative servers), and after connection establishment, we show TCP and TLS latency is equivalent to UDP. With conservative timeouts (20\,s at authoritative servers and 60\,s elsewhere) and conservative estimates of connection state memory requirements, we show that \emphserver memory requirements match current hardware: a large recursive resolver may have 24k active connections requiring about 3.6\,GB additional RAM. We identify the key design and implementation decisions needed to minimize overhead: query pipelining, out-of-order responses, TLS connection resumption, and plausible timeouts.
@TechReport{Zhu14b,
	author = 	"Liang Zhu and Zi Hu and John Heidemann and
 Duane Wessels and Allison Mankin and Nikita Somaiya",
	title = "T-{DNS}: Connection-Oriented {DNS} to Improve Privacy and Security (extended)",
	institution = 	"USC/Information Sciences Institute",
	year = 		2014,
	sortdate = 		"2014-06-01",
	number =	"ISI-TR-2014-693",
	month =		jun,
	jlocation =	"johnh: pafile",
	keywords =	"network outage detection, hurricane sandy",
	url =		"https://ant.isi.edu/%7ejohnh/PAPERS/Zhu14b.html",
	pdfurl =	"https://ant.isi.edu/%7ejohnh/PAPERS/Zhu14b.pdf",
	otherurl = "ftp://ftp.isi.edu/isi-pubs/tr-693.pdf",
	myorganization =	"USC/Information Sciences Institute",
	copyrightholder = "authors",
	project = "ant, retrofuture, lacrend, tdns",
	blogurl = 	"https://ant.isi.edu/blog/?p=508",
        datasetlurl =   "https://ant.isi.edu/datasets/all.html",
        codeurl =       "https://ant.isi.edu/software/tdns/index.html",
	abstract = "
DNS is the canonical protocol for connectionless UDP.  Yet DNS today
is challenged by eavesdropping that compromises privacy,
source-address spoofing that results in denial-of-service (DoS)
attacks on the server and third parties, injection attacks that
exploit fragmentation, and size limitations that constrain policy and
operational choices.  We propose \emph{T-DNS} to address these
problems.  It uses TCP to smoothly support large payloads and to
mitigate spoofing and amplification for DoS.  T-DNS uses
transport-layer security (TLS) to provide privacy from users to their
DNS resolvers and optionally to authoritative servers.  Expectations
about DNS suggest connections will balloon client latency and
overwhelm server with state, but our evaluation shows costs are
modest:  end-to-end latency 
from \emph{TLS to the recursive resolver is only about 9\% slower} 
when UDP is used to the authoritative
server, and 22\% slower with TCP to the authoritative.  With diverse
traces we show that frequent connection reuse is possible (60--95\%
for stub and recursive resolvers, although half that for authoritative
servers), and after connection establishment, we show TCP and TLS
latency is equivalent to UDP.  With conservative timeouts (20\,s at
authoritative servers and 60\,s elsewhere) and conservative estimates
of connection state memory requirements, we show 
that \emph{server memory requirements match current hardware}:  
a large recursive
resolver may have 24k active connections requiring about 3.6\,GB
additional RAM.  We identify the key design and implementation
decisions needed to minimize overhead: query pipelining, out-of-order
responses, TLS connection resumption, and plausible timeouts.
",
}

Downloads: 0