Re: The use of binary data in any part of HTTP 2.0 is not good

Tim Bray <tbray@textuality.com> Sun, 20 January 2013 23:26 UTC

Return-Path: <ietf-http-wg-request@listhub.w3.org>
X-Original-To: ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com
Delivered-To: ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id B6F8921F86FC for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Sun, 20 Jan 2013 15:26:12 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -7.378
X-Spam-Level:
X-Spam-Status: No, score=-7.378 tagged_above=-999 required=5 tests=[FM_FORGED_GMAIL=0.622, RCVD_IN_DNSWL_HI=-8]
Received: from mail.ietf.org ([64.170.98.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id QktM1NbhIFQ4 for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Sun, 20 Jan 2013 15:26:11 -0800 (PST)
Received: from frink.w3.org (frink.w3.org [128.30.52.56]) by ietfa.amsl.com (Postfix) with ESMTP id 5E9C021F86FF for <httpbisa-archive-bis2Juki@lists.ietf.org>; Sun, 20 Jan 2013 15:26:11 -0800 (PST)
Received: from lists by frink.w3.org with local (Exim 4.72) (envelope-from <ietf-http-wg-request@listhub.w3.org>) id 1Tx4Gh-0003sG-79 for ietf-http-wg-dist@listhub.w3.org; Sun, 20 Jan 2013 23:25:39 +0000
Resent-Date: Sun, 20 Jan 2013 23:25:39 +0000
Resent-Message-Id: <E1Tx4Gh-0003sG-79@frink.w3.org>
Received: from lisa.w3.org ([128.30.52.41]) by frink.w3.org with esmtp (Exim 4.72) (envelope-from <tbray@textuality.com>) id 1Tx4Gc-0003rb-Vn for ietf-http-wg@listhub.w3.org; Sun, 20 Jan 2013 23:25:35 +0000
Received: from mail-ob0-f172.google.com ([209.85.214.172]) by lisa.w3.org with esmtps (TLS1.0:RSA_ARCFOUR_SHA1:16) (Exim 4.72) (envelope-from <tbray@textuality.com>) id 1Tx4Gb-0000Dt-5r for ietf-http-wg@w3.org; Sun, 20 Jan 2013 23:25:34 +0000
Received: by mail-ob0-f172.google.com with SMTP id ta17so280193obb.31 for <ietf-http-wg@w3.org>; Sun, 20 Jan 2013 15:25:07 -0800 (PST)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:x-received:x-originating-ip:in-reply-to:references :date:message-id:subject:from:to:cc:content-type :content-transfer-encoding:x-gm-message-state; bh=cMMxrEJzdenqOT/Vsvh8j0mQwfG3JdMdz3gyC9BcmNY=; b=U4D5cFU7pF//tflRfPSJtLXUIEzs2JHP8AGcDCh0dRu4BWWdsZHeVNai17R5ofTuYM U1mV5mUhav6L5V7HzCi1tewXUQcepcB5W3p3L5hrdvpJlTmMbU36ugRwS8J3UyCZzdxr OXQi8UYLbElX/lg+/RcSb1BEzpxAXNozamzSed1Up62d9oz4b+gCnZ1k6D4VihQmCj/z KixaN/KjOiN1lq5fjHS0fdo/L61sRsYNWzXle1AjLYp1n0drTUf18a8cZhCyhHCiEs2r eqd+eZQOoxU9zQ/LRz2J7WUg+f74fpcepGTPU1DzuvivwSHkAPT3y/SVAA6fqajYafAW thpw==
MIME-Version: 1.0
X-Received: by 10.182.152.9 with SMTP id uu9mr2679904obb.9.1358724306873; Sun, 20 Jan 2013 15:25:06 -0800 (PST)
Received: by 10.76.132.102 with HTTP; Sun, 20 Jan 2013 15:25:06 -0800 (PST)
X-Originating-IP: [24.84.235.32]
In-Reply-To: <DC03C924-9DCC-45CE-B9DB-5906EADAF9C4@mnot.net>
References: <CAAZO4q4vEiYhH5FaX2XCxXox9jkf4dLTy8coQZiE+CYHA-QzBg@mail.gmail.com> <CAA4WUYhkVBRAyY1O32aOiWB8=46SBidFOjKH+e7PGbB7mKzmiQ@mail.gmail.com> <DC03C924-9DCC-45CE-B9DB-5906EADAF9C4@mnot.net>
Date: Sun, 20 Jan 2013 15:25:06 -0800
Message-ID: <CAHBU6iuaeAeTrz6TSOyhNvW2pXWgQB_RQ+6MYAb9DyJUZ00Rcg@mail.gmail.com>
From: Tim Bray <tbray@textuality.com>
To: Mark Nottingham <mnot@mnot.net>
Cc: "William Chan (陈智昌)" <willchan@chromium.org>, Pablo <paa.listas@gmail.com>, HTTP Working Group <ietf-http-wg@w3.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Gm-Message-State: ALoCoQlg/KEukxsMGcaX2b7puus1pgA/KM4dai8uwUi353rlvu55nrNyZIIY0awSTDAWY6PuawYr
Received-SPF: none client-ip=209.85.214.172; envelope-from=tbray@textuality.com; helo=mail-ob0-f172.google.com
X-W3C-Hub-Spam-Status: No, score=-4.7
X-W3C-Hub-Spam-Report: AWL=-2.148, BAYES_00=-1.9, RCVD_IN_DNSWL_LOW=-0.7
X-W3C-Scan-Sig: lisa.w3.org 1Tx4Gb-0000Dt-5r cf8f723ec08676aca24f4db8c6da67bf
X-Original-To: ietf-http-wg@w3.org
Subject: Re: The use of binary data in any part of HTTP 2.0 is not good
Archived-At: <http://www.w3.org/mid/CAHBU6iuaeAeTrz6TSOyhNvW2pXWgQB_RQ+6MYAb9DyJUZ00Rcg@mail.gmail.com>
Resent-From: ietf-http-wg@w3.org
X-Mailing-List: <ietf-http-wg@w3.org> archive/latest/16053
X-Loop: ietf-http-wg@w3.org
Resent-Sender: ietf-http-wg-request@w3.org
Precedence: list
List-Id: <ietf-http-wg.w3.org>
List-Help: <http://www.w3.org/Mail/>
List-Post: <mailto:ietf-http-wg@w3.org>
List-Unsubscribe: <mailto:ietf-http-wg-request@w3.org?subject=unsubscribe>

Would it be possible to be data-driven?  Textual formats are
well-known to be easier to debug; but clearly, if there’s a
substantial performance benefit to going all-binary, so be it. So what
is the advantage, quantitatively? -T

On Sun, Jan 20, 2013 at 3:04 PM, Mark Nottingham <mnot@mnot.net> wrote:
> In one of our recent meetings, one of the grey-bearded IETF old-timers (I forget which, sorry) said that a textual-protocol was a nice-to-have, but that it shouldn't be a determining factor in design.
>
> I.e., if you can get everything you need out of a protocol, *and* make it textual, do so, but if it detracts from the value you get from it, don't let that constrain you.
>
> FWIW, I think that's a good rule of thumb. However, this means that the community is going to need *excellent* tooling for analysing, debugging, etc. HTTP traffic; and I don't just mean a Wireshark plugin!
>
> Cheers,
>
>
> On 21/01/2013, at 9:36 AM, William Chan (陈智昌) <willchan@chromium.org> wrote:
>
>> There are many advantages to using binary data. If you would like a
>> textual representation of a protocol, I advise using a utility to
>> generate one for you.
>>
>> On Sun, Jan 20, 2013 at 2:20 PM, Pablo <paa.listas@gmail.com> wrote:
>>> Hello,
>>>
>>>   I have readed this document
>>> http://dev.chromium.org/spdy/spdy-protocol/spdy-protocol-draft1 today [1].
>>>
>>> I just wanted to say that I think that the use of any binary data (framing,
>>> header compression, etc.) in any place of the "header" part of HTTP protocol
>>> is not good; so, please only use plaintext for HTTP 2.0 because, otherwise,
>>> that will make very difficult to "see" the headers's protocol :)
>>>
>>> Thats all,
>>> Thanks for reading this few lines, sorry for my basic English, and I hope
>>> that you can re-think all this of using binary data in any part of HTTP X.X
>>> (ej: session layer).
>>>
>>>
>>> [1] I started knowing about HTTP 2.0 here:
>>> http://webscannotes.com/2012/10/09/http-2-0-officially-in-the-works/
>>>
>>
>
> --
> Mark Nottingham   http://www.mnot.net/
>
>
>
>