Re: 6455 Websockets and the relationship to HTTP

Jacob Champion <champion.p@gmail.com> Mon, 05 December 2016 21:40 UTC

Return-Path: <ietf-http-wg-request+bounce-httpbisa-archive-bis2juki=lists.ie@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 D7B3C129DA4 for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Mon, 5 Dec 2016 13:40:07 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -9.897
X-Spam-Level:
X-Spam-Status: No, score=-9.897 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_HI=-5, RP_MATCHES_RCVD=-2.896, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
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 dC99ivkrOgy5 for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Mon, 5 Dec 2016 13:40:06 -0800 (PST)
Received: from frink.w3.org (frink.w3.org [128.30.52.56]) (using TLSv1.2 with cipher DHE-RSA-AES128-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id C5C4B1295D7 for <httpbisa-archive-bis2Juki@lists.ietf.org>; Mon, 5 Dec 2016 13:39:49 -0800 (PST)
Received: from lists by frink.w3.org with local (Exim 4.80) (envelope-from <ietf-http-wg-request@listhub.w3.org>) id 1cE0wb-0001lw-Vq for ietf-http-wg-dist@listhub.w3.org; Mon, 05 Dec 2016 21:37:06 +0000
Resent-Date: Mon, 05 Dec 2016 21:37:05 +0000
Resent-Message-Id: <E1cE0wb-0001lw-Vq@frink.w3.org>
Received: from mimas.w3.org ([128.30.52.79]) by frink.w3.org with esmtps (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.80) (envelope-from <champion.p@gmail.com>) id 1cE0wL-0000k1-Nl for ietf-http-wg@listhub.w3.org; Mon, 05 Dec 2016 21:36:49 +0000
Received: from mail-pg0-f42.google.com ([74.125.83.42]) by mimas.w3.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2) (envelope-from <champion.p@gmail.com>) id 1cE0w7-0007xv-70 for ietf-http-wg@w3.org; Mon, 05 Dec 2016 21:36:43 +0000
Received: by mail-pg0-f42.google.com with SMTP id x23so140789197pgx.1 for <ietf-http-wg@w3.org>; Mon, 05 Dec 2016 13:36:01 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=subject:to:references:cc:from:message-id:date:user-agent :mime-version:in-reply-to:content-transfer-encoding; bh=3ZiORa+VOYtvVEOeITOt6xlO02oY1Bt/d7+cdTOXoCE=; b=UFPtUfEYVDkallOHJEl0DWj08QF+GRJExUFpib7sa1oBcorAEYnNXm28f7TxEgNe4i hztUbpD2pmsdeCC9bfecYEVVC18CigWMFRDnDE/Cac7jAxN/9UbDvu6asSWO/lb0C8Pd +GwUBmG2jOfPJBIXKWzybdqDk7lwr3CWcTbWzrhtTmrAWyZsjB6l9W4fKzHVs06+Lflx PKMHrJegwPOopdPN8hRW8urGmjg4ZTOnbuECslkMR8n311uEv01IKUbhaY0B9oBXIiLO BMPC9k0DZG0TsIuO6bjjrqJJu8StjI4H8IUJsmUkB5p7SxHbS0AE41qKsnUa2v8afspK OH7g==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:subject:to:references:cc:from:message-id:date :user-agent:mime-version:in-reply-to:content-transfer-encoding; bh=3ZiORa+VOYtvVEOeITOt6xlO02oY1Bt/d7+cdTOXoCE=; b=FSvGtrADULreSs4CH1X9uX0V46olG6osAnlJHonWmFDQubhmhGI5+uW+k5blq1cLJA ALY5HD4y0X93VIbGp/qyOZrN6Gj2TSDC1ygzq4EyOSFEvm6q+cdclzuVNSrwTzvH2nqQ aafX5BiSyzQWIywkLVy9MmrP6dKIlIDNCWrRYwRY6lw1XI8yEFjBJeh1ccIHf0PgZvXX u6aaSlh+n9DYcZ8OjpkQpFo01oQuyl7ZWf3BXguQsH3JvIelXzmkOP+ePip7PAZWp3UF hmk/X+dywMcNPWChJt49rGoJ3b8G5sC5ZuXSpPKQlbrTEH9i2nToZx7JE/0DnALDWiGe 7Y9g==
X-Gm-Message-State: AKaTC034lQ5SoA8hqwF8Up+HLIAxMUtIFySUzNg+Uu2yIHey/bCgrpcE6Etw0aGuu1i3LQ==
X-Received: by 10.84.129.34 with SMTP id 31mr130804220plb.104.1480973750199; Mon, 05 Dec 2016 13:35:50 -0800 (PST)
Received: from [192.168.1.7] (50-39-112-180.bvtn.or.frontiernet.net. [50.39.112.180]) by smtp.gmail.com with ESMTPSA id r74sm29494597pfl.79.2016.12.05.13.35.49 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 05 Dec 2016 13:35:49 -0800 (PST)
To: Van Catha <vans554@gmail.com>
References: <CAOdDvNqk7W_oNWUismMb-ZuhvdboZNDQ0YV2BLsbka-FGC-7oA@mail.gmail.com> <65d48372-590c-bc6f-1dc0-cd1309c2a29f@gmail.com> <CAG-EYChgGTkP0T-qTR-_AQbEeON2N7cgTSLphMNuBT3LS_1o8A@mail.gmail.com>
Cc: HTTP working group mailing list <ietf-http-wg@w3.org>
From: Jacob Champion <champion.p@gmail.com>
Message-ID: <6ef9f5d7-bed3-3f0c-9778-7e1886bb4a6f@gmail.com>
Date: Mon, 5 Dec 2016 13:35:49 -0800
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.5.1
MIME-Version: 1.0
In-Reply-To: <CAG-EYChgGTkP0T-qTR-_AQbEeON2N7cgTSLphMNuBT3LS_1o8A@mail.gmail.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 7bit
Received-SPF: pass client-ip=74.125.83.42; envelope-from=champion.p@gmail.com; helo=mail-pg0-f42.google.com
X-W3C-Hub-Spam-Status: No, score=-4.0
X-W3C-Hub-Spam-Report: AWL=0.009, BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, W3C_AA=-1, W3C_WL=-1
X-W3C-Scan-Sig: mimas.w3.org 1cE0w7-0007xv-70 190ce43bb80ae9022637228dbce99f8b
X-Original-To: ietf-http-wg@w3.org
Subject: Re: 6455 Websockets and the relationship to HTTP
Archived-At: <http://www.w3.org/mid/6ef9f5d7-bed3-3f0c-9778-7e1886bb4a6f@gmail.com>
Resent-From: ietf-http-wg@w3.org
X-Mailing-List: <ietf-http-wg@w3.org> archive/latest/33118
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>

On 12/05/2016 12:43 PM, Van Catha wrote:
>> I think the protocol is more likely to succeed if existing WebSocket
> implementations can transparently switch between WS/1 and
>> WS/2 transports as needed.
>
> The WiSH RFC was proposed that covered exactly this, there has been a
> lot of discussion archived in the mailing related to it.  A lot of the
> questions being brought up now have already been answered.  Specifically
> related how to keep interop between WS1 while layering on top of H2.

My limited understanding of WiSH is that it explicitly drops some of the 
WebSocket semantics in favor of a more general set of bidirectional 
communication primitives. That's cool. It's also not what I'm advocating 
for.

That said, I haven't been following the WiSH effort as much as I should, 
and the -01 draft is too sparse for me to draw any real conclusions 
from. If you have a pointer to the conversation thread you're referring 
to, so that I can read up, that'd be much appreciated!

>> Andy mentioned that an HTTP/2 transport for WebSocket might mean that
> we could get rid of client-to-server masking. I don't have any data
>> to support my spitballing, but that *could* be a pretty decent
> optimization for implementations, since they no longer have to mask or
>> de-mask the data in place. For example, it might open up the
> possibility of scatter/gather I/O for frame handling?
>
> See answer above and check out WiSH. This has already been discussed to
> great detail.

I thought the purpose of Patrick's original thread was to consolidate a 
list of concrete reasons for WebSocket to be ported to a new transport. 
If I've misunderstood that, I apologize for the noise.

>> perhaps your goal is that WS/2 should be
>
> WS/2 or simply 2 way binary streaming to drop the WS association.  A
> basic method to transmit binary data between two opted in endpoints.

In that case, your goal and my goal are different. That's fine -- it 
doesn't mean your goal is wrong -- but having you and I debate here, as 
if we had the *same* endgame in mind, is going to be confusing and not 
very helpful for many people, I think.

--Jacob