%% You should probably cite draft-dkg-dprive-demux-dns-http-03 instead of this revision. @techreport{dkg-dprive-demux-dns-http-01, number = {draft-dkg-dprive-demux-dns-http-01}, type = {Internet-Draft}, institution = {Internet Engineering Task Force}, publisher = {Internet Engineering Task Force}, note = {Work in Progress}, url = {https://datatracker.ietf.org/doc/draft-dkg-dprive-demux-dns-http/01/}, author = {Daniel Kahn Gillmor}, title = {{Demultiplexing Streamed DNS from HTTP}}, pagetotal = 18, year = 2017, month = may, day = 3, abstract = {DNS over TCP and traditional HTTP are both stream-oriented, client- speaks-first protocols. They can both be run over a stream-based security protocol like TLS. A server accepting a stream-based client can distinguish between a valid stream of DNS queries and valid stream of HTTP requests by simple observation of the first few octets sent by the client. This can be done without any external demultiplexing mechanism like TCP port number or ALPN. Implicit multiplexing of the two protocols over a single listening port can be useful for obscuring the presence of DNS queries from a network observer, which makes it relevant for DNS privacy.}, }