Re: [DNSOP] Should we try to work on DNS over HTTP in dnsop?

Paul Vixie <paul@redbarn.org> Mon, 21 December 2015 22:25 UTC

Return-Path: <paul@redbarn.org>
X-Original-To: dnsop@ietfa.amsl.com
Delivered-To: dnsop@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id D01D21ACDEE for <dnsop@ietfa.amsl.com>; Mon, 21 Dec 2015 14:25:41 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.91
X-Spam-Level:
X-Spam-Status: No, score=-1.91 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, SPF_PASS=-0.001, T_RP_MATCHES_RCVD=-0.01] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id V2Pr2hFys1mq for <dnsop@ietfa.amsl.com>; Mon, 21 Dec 2015 14:25:39 -0800 (PST)
Received: from family.redbarn.org (family.redbarn.org [24.104.150.213]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 8AF271ACDED for <dnsop@ietf.org>; Mon, 21 Dec 2015 14:25:39 -0800 (PST)
Received: from linux-85bq.suse (unknown [24.104.150.29]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by family.redbarn.org (Postfix) with ESMTPSA id BD0CF1812B; Mon, 21 Dec 2015 22:25:40 +0000 (UTC)
From: Paul Vixie <paul@redbarn.org>
To: Tony Finch <dot@dotat.at>
Date: Mon, 21 Dec 2015 14:25:37 -0800
Message-ID: <2858865.LSerpu06UP@linux-85bq.suse>
Organization: Vixie Enterprises
User-Agent: KMail/4.14.10 (Linux/4.1.13-5-default; KDE/4.14.10; x86_64; ; )
In-Reply-To: <alpine.LSU.2.00.1512211307360.959@hermes-2.csi.cam.ac.uk>
References: <20151217020754.6915b71c@pallas.home.time-travellers.org> <1999760.RBe1cJlAWr@linux-85bq.suse> <alpine.LSU.2.00.1512211307360.959@hermes-2.csi.cam.ac.uk>
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="nextPart1622417.JceNRShmVc"
Content-Transfer-Encoding: 7bit
Archived-At: <http://mailarchive.ietf.org/arch/msg/dnsop/gq3XyY6FkQ6NGPBmhtijIRv74OI>
Cc: dnsop@ietf.org, Mark Delany <f4t@november.emu.st>
Subject: Re: [DNSOP] Should we try to work on DNS over HTTP in dnsop?
X-BeenThere: dnsop@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: IETF DNSOP WG mailing list <dnsop.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/dnsop>, <mailto:dnsop-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/dnsop/>
List-Post: <mailto:dnsop@ietf.org>
List-Help: <mailto:dnsop-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/dnsop>, <mailto:dnsop-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 21 Dec 2015 22:25:42 -0000

On Monday, December 21, 2015 01:13:10 PM Tony Finch wrote:
> Paul Vixie <paul@redbarn.org> wrote:
> > any HTTP initiator who wants out of order response processing will have
> > to negotiate for it (see mogul's 2001 RID draft) and will then have new
> > responsibilities for matching up the out of order HTTP responses with
> > then-outstanding HTTP requests.
> 
> The current way to deal with out-of-order responses and head-of-line
> blocking in HTTP is HTTP/2.

since http/2 is a completely new protocol, i think that's a strange way to say it. as you point 
out below, existing HTTP initiators accomplish out-of-order processing by using multiple 
parallel HTTP/1.1 TCP sessions. how the HTTP asynchrony is achieved is beyond the scope 
of an HTTP application spec such as DNS-over-HTTP. i will suggest some text below.

> 
> If you do DNS over HTTP then there has to be an exact correspondence
> between HTTP requests and responses and DNS requests and responses -
> anything else would be madness. This implies that DNS over HTTP/1 only
> supports in-order pipelined queries and responses in each connection; to
> avoid head-of-line blocking you need either multiple connections or
> HTTP/2.

by all means let us add text to the effect that "HTTP/1.1 or later can be used, with the DNS-
over-HTTP initiator having the responsibility to discover what HTTP protocol version the 
responder supports, and to speak that protocol version correctly -- for example, if an HTTP 
protocol version supports multiple outstanding requests and out of order responses, then 
the DNS-over-HTTP initiator is required to match inbound HTTP responses with outstanding 
DNS requests."

-- 
P Vixie