The reason to use TCP framing is so that you can send multiple DNS requests in a single http request and get back multiple answers. Recent messages here suggest that's of considerable interest, and if you're only sending one request, the two bytes of TCP length are tiny compared to the http headers.
Maybe I'm still missing something - so you pack multiple DNS requests in single HTTP request, answer#1 takes 5s, answer#2 timeouts, the rest is answered from cache. How do you send back the fast answers first without blocking when you have just a single HTTP request outstanding?
The obvious way would be to send chunked http responses as the answers come back. See section 4 of RFC 7230. The DNS responses don't have to be in order.
I don't think anyone sees DNS over http as a general replacement for ordinary DNS. I see two plausible scenarios:
* The most likely is javascript apps that want to look up SRV or NAPTR or something, but can only make http/s requests back to the place the js files came from.
* The other is an application that wants to make it hord to observce its DNS queries, so it uses https to a trusted proxy.
This should be fine for both of those. R's, John _______________________________________________ DNSOP mailing list DNSOP@ietf.org https://www.ietf.org/mailman/listinfo/dnsop