Re: 6455 Websockets and the relationship to HTTP

Jacob Champion <champion.p@gmail.com> Fri, 02 December 2016 17: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 F33301296E4 for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Fri, 2 Dec 2016 09:40:06 -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 dKYouT9bfrkK for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Fri, 2 Dec 2016 09:40:05 -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 9F9B5129673 for <httpbisa-archive-bis2Juki@lists.ietf.org>; Fri, 2 Dec 2016 09:40:05 -0800 (PST)
Received: from lists by frink.w3.org with local (Exim 4.80) (envelope-from <ietf-http-wg-request@listhub.w3.org>) id 1cCrm1-000801-M9 for ietf-http-wg-dist@listhub.w3.org; Fri, 02 Dec 2016 17:37:25 +0000
Resent-Date: Fri, 02 Dec 2016 17:37:25 +0000
Resent-Message-Id: <E1cCrm1-000801-M9@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 1cCrlu-0007xU-0c for ietf-http-wg@listhub.w3.org; Fri, 02 Dec 2016 17:37:18 +0000
Received: from mail-pg0-f52.google.com ([74.125.83.52]) 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 1cCrln-0004ky-Li for ietf-http-wg@w3.org; Fri, 02 Dec 2016 17:37:12 +0000
Received: by mail-pg0-f52.google.com with SMTP id 3so109634215pgd.0 for <ietf-http-wg@w3.org>; Fri, 02 Dec 2016 09:36:50 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=subject:to:references:from:message-id:date:user-agent:mime-version :in-reply-to:content-transfer-encoding; bh=PpEAoss+0eLfFF1px457+MkegRqkHjsohfEt+eKG2T0=; b=kiB6uvPw+PWhkpx1KVOM57HnE0QS+NNsk//INObfKk28kZeMdAC50WHMpwDbQWDxxE Mpw+oTV0Ir3sFuEF57GMWqRQV+PDi1+FI6iLQtslpSuohRytqPt6BCPlr//Cdo5JDv2G epE/5XfB2iH5JD+MNqM9dJ4HkQTaaM+AQMxkCcq3cGl4DpfzTeuL3e406wBj7VuxMbj/ BFyb7HKPygdk4nE6Uc+a/GctH+LrsaUBGg2Zk1tCZ5gkj+va1Xm7+96qbGwCS4ObrwE6 DdDKU9vnJZBXiGnzhbIpP2pWkUQMdDF5pl4OsQR/Tme1AOiCBNdhVbRzvmuN8yys6Eds dcAw==
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:from:message-id:date :user-agent:mime-version:in-reply-to:content-transfer-encoding; bh=PpEAoss+0eLfFF1px457+MkegRqkHjsohfEt+eKG2T0=; b=UAXiEvWU7x+7DXoMT3we3I4UwTwZWnr4ZhZHGbXVrxgSAdAxNAVoELPKUd25MkVfHb Ye8fc9gd8YCYZ4DberhEMihAnZuef+w80NudltZa7z6Nck8D6OCV8qjAvS+mAcRNOthG E1VTZup/Vq25MT1ffJCkIkRRL0TnIDH+gJaMqdbCGFTOJmB9Jx6t7mpAUX+Klu9lDrQ8 X1swmFflv6J8hbV9PDw81xJqJ5eYz7jkL4ghoH43n3b8habsUUYiFZ8M1y4qhXCkMr/B XoaTFRzmGmMOiSPnffTQyrX0lpbZgWQ5KUwTyD7RGPq5vtrrbDUfNCP7FBbPjKj8V1hY TLQA==
X-Gm-Message-State: AKaTC00dbxs4q6rr5UQCWA3F98KKgKRjg9s6wC1qq1GHHBbE8dSBghQvWsEbssL5l9RYgw==
X-Received: by 10.99.131.67 with SMTP id h64mr79874992pge.135.1480700199803; Fri, 02 Dec 2016 09:36:39 -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 a22sm9292271pfg.7.2016.12.02.09.36.39 for <ietf-http-wg@w3.org> (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 02 Dec 2016 09:36:39 -0800 (PST)
To: ietf-http-wg@w3.org
References: <CAOdDvNqk7W_oNWUismMb-ZuhvdboZNDQ0YV2BLsbka-FGC-7oA@mail.gmail.com> <39F32B28-7116-478A-B02A-E8310EA6E189@mnot.net> <CABkgnnVZeLQGES5Dige8u+ukSgqSfJNKiCuL=oK3gQnAb_3LNw@mail.gmail.com> <CANatvzwoUYaC_YPTTF6fdwN5aOiwrttyH9Xj7xYVR1i1DZ27bA@mail.gmail.com> <037D2D57-7423-4375-9FEC-50B3106F42ED@mnot.net> <CANatvzx=mOQ3kE-vnvwNvD2w26+RNTueHgu7BhHLnJixn0vRcw@mail.gmail.com> <9e6f1a46-a782-a688-5b16-836d28032823@treenet.co.nz> <1480646012.4219.21.camel@warmcat.com> <CAOdDvNqShPUdu6zt-dPDpXm31eP2xX_dahrTr8JEbOOGQFFNSw@mail.gmail.com> <1480650234.4219.23.camel@warmcat.com> <CFF6942F-63CD-4668-B978-6E712A6A8B3D@lukasa.co.uk>
From: Jacob Champion <champion.p@gmail.com>
Message-ID: <9f583989-5aab-9279-5839-13dc8ea99b4b@gmail.com>
Date: Fri, 2 Dec 2016 09:36:38 -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: <CFF6942F-63CD-4668-B978-6E712A6A8B3D@lukasa.co.uk>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 8bit
Received-SPF: pass client-ip=74.125.83.52; envelope-from=champion.p@gmail.com; helo=mail-pg0-f52.google.com
X-W3C-Hub-Spam-Status: No, score=-4.0
X-W3C-Hub-Spam-Report: BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_PASS=-0.001, W3C_AA=-1, W3C_WL=-1
X-W3C-Scan-Sig: mimas.w3.org 1cCrln-0004ky-Li 4d1fd4303caab04f4771085959965944
X-Original-To: ietf-http-wg@w3.org
Subject: Re: 6455 Websockets and the relationship to HTTP
Archived-At: <http://www.w3.org/mid/9f583989-5aab-9279-5839-13dc8ea99b4b@gmail.com>
Resent-From: ietf-http-wg@w3.org
X-Mailing-List: <ietf-http-wg@w3.org> archive/latest/33090
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/02/2016 03:33 AM, Cory Benfield wrote:
> I assume that what you mean here is you can’t deploy a H2 *only*
> server that also does WS: that is, a server with no HTTP/1.1 stack.
>
> To which I reply: so what? Last I looked no-one was deploying servers
> that can *only* do HTTP/2 except in very specific cases where they
> are deliberately seeing the HTTP/2 use-cases (the only two instances
> I know of are Apple’s new Push Notification Service and Amazon’s
> Alexa API, both of which are HTTP/2 only: presumably they considered
> and rejected the use of WS, and it didn’t stop them shipping their
> product).
>
> I don’t think anyone is planning to move to a HTTP/2-only server
> stack anytime soon, and we have a whole bunch of servers that have
> mature and battle-tested HTTP/1.1 stacks that aren’t going anywhere.
> So I’m not really convinced that there’s any demand for H2-only + WS.
> Of course, I might be wrong (I’m wrong a lot).

I think this ends up being a circular argument. If people rely on both 
HTTP/2 and WS, but WS requires HTTP/1.1, then they will not demand an 
HTTP/2-only stack. Likewise with the Amazon and Apple examples: they're 
going to ship what works; it doesn't necessarily mean the engineers 
didn't want something different. (Perhaps there are employees watching 
the list who can chime in?)

This is not a server-only thing, either. A conforming WebSocket client 
has to implement enough of HTTP/1.1 to handle, or at least correctly 
bail out from, any pre-upgrade shenanigans such as 3xx redirects, 401 
authentications, Set-Cookies, etc.

(For the record, my background is primarily in the embedded security 
space, where opportunities to consolidate and reduce software footprint 
-- and attack surface -- are pretty much always welcomed.)

--Jacob