[hybi] WebSocket over HTTP2 is discussed on httpbis

Yutaka Hirano <yhirano@chromium.org> Mon, 10 March 2014 05:13 UTC

Return-Path: <yhirano@google.com>
X-Original-To: hybi@ietfa.amsl.com
Delivered-To: hybi@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 8F2AA1A02B7 for <hybi@ietfa.amsl.com>; Sun, 9 Mar 2014 22:13:47 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.925
X-Spam-Level:
X-Spam-Status: No, score=-1.925 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FM_FORGED_GMAIL=0.622, HTML_MESSAGE=0.001, RP_MATCHES_RCVD=-0.547, SPF_PASS=-0.001] 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 L5NzCan7UpwO for <hybi@ietfa.amsl.com>; Sun, 9 Mar 2014 22:13:44 -0700 (PDT)
Received: from mail-yh0-x22c.google.com (mail-yh0-x22c.google.com [IPv6:2607:f8b0:4002:c01::22c]) by ietfa.amsl.com (Postfix) with ESMTP id C69FF1A02B3 for <hybi@ietf.org>; Sun, 9 Mar 2014 22:13:44 -0700 (PDT)
Received: by mail-yh0-f44.google.com with SMTP id f10so1954127yha.31 for <hybi@ietf.org>; Sun, 09 Mar 2014 22:13:39 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:sender:date:message-id:subject:from:to:content-type; bh=9Y2EkQy2LpB+5wYFCjtej/0kKfz2oyT13mRIYbannuQ=; b=KN0SAaWi09JGpL+ZoiGoLX4HvNHIx3DE7C7R2OKMS7IAJQtN8Hd1wrR6O/pFsLvuli 9ElAo0LKJinnYlo8uybVxHdS13pogVL4lBWlP08PXH24LFoPE7/TkBMkVT4G4XZdryNi NkIhSPj6mbKmrBlZIufmhOy2IbnGkElZeLHJHfK6RFRd2lFrUWJuDEMa3sz140vlNGFT eX8hM0FWWstPLzrZ0LttUawuyoHZeiVEarofLy2Pvhm121e5r9DkzsanGs4BQ3Bz0Wwx pqNhO9s2GfiD9jInLM4umLaXN9HgS9JyLGqQhm/Er0BX37wP9+XDu4bCo2gKmSbJ7mAL 6juA==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; h=mime-version:sender:date:message-id:subject:from:to:content-type; bh=9Y2EkQy2LpB+5wYFCjtej/0kKfz2oyT13mRIYbannuQ=; b=a19tL5BbaV4Vuwl6udqIpCaSg9DjYIJ1EkK8MXYEEwdE5A6qT0t1GkFS+NzSJESIK8 FiqpWoXuPgQfoInUvnQhvt8/IrLcI0k7bBNX0E6TxPE4g3dT7PkDza+X2auGkiDrdjmg phmTEx1ykEz/JIQhw+5GXLYu6k0VUawhae/Ok=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:sender:date:message-id:subject:from :to:content-type; bh=9Y2EkQy2LpB+5wYFCjtej/0kKfz2oyT13mRIYbannuQ=; b=Sne7fyOdQ/C8qgHFnK2tYedgfTyNpjSQ++F0v34AZ69ZknduaKxesgG0cCbqTUu565 BM3WL6u6PR+jZ3u1r2Y1CAcxQ6dfVz1j+TjUhoaz+f8oVDkcpu3/KZW25RybUDo4ySvV lJfHraP6s2I2n/GBixhRz8yvDWbQc2tAaOjOhKhgrMB+mXcv0bJ9WQZIFx2ovMbQrAZN kFs+e20j2KMp2s5R5GxyyqLsTIA2g+cvGfWaVNcyjFhI/rGeXqcgw/ZAOQRiKY/cts/s 9zxo8LGu/Zbb9IuzkOH74kYeVS9rXdh21cotLaUCQHvED9DOOS/vgG6CUNx9BnCtUrV2 SxCA==
X-Gm-Message-State: ALoCoQmTMHFH0Ohmj2I5T3Nl+hel76YmjVRUpBg+1sKyR2KZSIF3RUYtUTc+2aHwq9KTrIKsJb1+Wpss/oCKUTZraRUq8MJQiAxzAsDTQpc+F6eTagBA7PwPtJLXZFUih5gcGe/hWmdPUxU+mfL0CHCZ6960gbR5iZIs133glDT5f3HbilgZ9QxcS/QCyUw7wMZQqj215cTk
MIME-Version: 1.0
X-Received: by 10.236.93.208 with SMTP id l56mr354392yhf.112.1394428419335; Sun, 09 Mar 2014 22:13:39 -0700 (PDT)
Sender: yhirano@google.com
Received: by 10.170.164.87 with HTTP; Sun, 9 Mar 2014 22:13:39 -0700 (PDT)
Date: Mon, 10 Mar 2014 14:13:39 +0900
X-Google-Sender-Auth: -2fjDSZG_dJqeZohAnlPru4ySGo
Message-ID: <CABihn6GKEJ58Nhc7-RTGCekBbJ1cDTDW-gYhFKZVNMVNX_JGQA@mail.gmail.com>
From: Yutaka Hirano <yhirano@chromium.org>
To: "hybi@ietf.org" <hybi@ietf.org>
Content-Type: multipart/alternative; boundary=20cf3010ead1999e1f04f439aa5a
Archived-At: http://mailarchive.ietf.org/arch/msg/hybi/4DO5OPPJ6JSfeiCkBvPLlaEE-fs
Subject: [hybi] WebSocket over HTTP2 is discussed on httpbis
X-BeenThere: hybi@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Server-Initiated HTTP <hybi.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/hybi>, <mailto:hybi-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/hybi/>
List-Post: <mailto:hybi@ietf.org>
List-Help: <mailto:hybi-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/hybi>, <mailto:hybi-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 10 Mar 2014 05:13:47 -0000

Hi,

As I announced before, WebSocket over HTTP2 is discussed on httpbis.
Though tunneling is widely supported in HiBy, httpbis people don't like it
and I failed to persuade them.
Currently there are two proposal [1] and [2].
[2] maps a WebSocket message to HEADERS + DATAs HTTP2 frames and it doesn't
preserve RFC6455 semantics.
For Tobias and Peter, I would show how [2] meets your design priorities
given before.

Tobias's priority:

> 1. allows to provide W3C WebSocket API
>
Yes.

> 2. no "80%-WebSocket-protocol-compatible" design (either compatible with
> full RFC6455 incl. any extensions or outright independent of WS)
>
Yes, 0% RFC6455 Frame compatible (though I would like to  reuse some
handshake stuff).

> 3. does not put servers that provide both native WS and SPDY (but not any
> SPDY/WS) on same origin at a disadvantage
>
It doesn't depend on the framing problem.

> 4. minimizes code coupling between WS and SPDY within implementations

No, though the mapping is simple.

Peter's priority:

> Important:
> 1. W3C WebSocket API and muxing go without saying.
>
Yes.

> 2. Dedicated RFC6455 connections remain a viable option in modern browsers.
>
Yes.

> 3. Efficient and clearly defined method for detecting HTTP/2.0 messaging
> support, choosing HTTP/2.0 vs raw RFC6455, when to fall back, etc.
>
It doesn't depend on the framing stuff.

> 4. Payload compression with appropriate configurability (either via
> permessage-deflate support or a native mechanism)
>
it is possible.

Nice to haves:
> 5. Avoid significant regressions from RFC6455 in wire overhead, latency,
> and per message fixed costs for very small (<100byte) messages.
>
I think there is no significant regressions.

> 6. Clean spec/avoiding redundant and unnecessary features of RFC6455.
>
Yes.

> Only if it doesn’t conflict with 1-6:
> 7. Options for future compatibility with simple RFC6455 extensions

No.


And, protocol negotiation should be also discussed.
In fact, it has more impact on the HTTP2 spec and we should provide
feedback to them as soon as possible if any (See [3] for example).
Please join discussions on http2bis if you have any comments.

Thanks,

[1]:
https://github.com/yutakahirano/ws-over-http2/blob/master/draft-hirano-websocket-over-http2.txt
[2]:
https://github.com/yutakahirano/ws-over-http2/blob/master/ws-over-http2-message-mapping.md
[3]: http://tools.ietf.org/html/draft-nottingham-httpbis-alt-svc-03