Re: [hybi] Informal survey: "Non Request-Response Communication over the Web, and What's Missing"
Takeshi Yoshino <tyoshino@google.com> Tue, 27 January 2015 12:54 UTC
Return-Path: <tyoshino@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 E50851A1EF7 for <hybi@ietfa.amsl.com>; Tue, 27 Jan 2015 04:54:52 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -0.788
X-Spam-Level:
X-Spam-Status: No, score=-0.788 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, J_CHICKENPOX_52=0.6, SPF_PASS=-0.001, T_RP_MATCHES_RCVD=-0.01] autolearn=no
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 c1ZCT4UtbRKk for <hybi@ietfa.amsl.com>; Tue, 27 Jan 2015 04:54:50 -0800 (PST)
Received: from mail-qa0-x22d.google.com (mail-qa0-x22d.google.com [IPv6:2607:f8b0:400d:c00::22d]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 4722E1A1DE2 for <hybi@ietf.org>; Tue, 27 Jan 2015 04:54:50 -0800 (PST)
Received: by mail-qa0-f45.google.com with SMTP id n8so11172913qaq.4 for <hybi@ietf.org>; Tue, 27 Jan 2015 04:54:49 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-type; bh=6e8RPCOhiPg5AWpqZvANhgeaws6VrKVStdVcdJ4s4kM=; b=iYbEhvtqs0ogh8By/CxivU2XC2ZM1UOdhdrIuARhOwbOWXQKoFfVigRul6x6qphbYU 1zc73gIeeXjkdBQ/lIB8orlgnIVMC1LDeMJK8n4pC/n7ho/gx3Zmh7GQ816noWsVJ5i0 8I42fjp9iVp6KFxpy/LNj8JHPz8OsiX8u2RyCjnB4XfPEvO7G3K5xD6hSSrmVkmK5yme FimfswN3yg6paKkbUQowSqb8yBDJIzE2xyPJifNb1YZPw7oz128J66W9hDwooktxLcsU IqplfLl61WZGbOolMT7j1m1C6UKf2tJMu1PKlWVOV5//FkY6FcvcPWJzd7FhD1ioxFAp b4jA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc:content-type; bh=6e8RPCOhiPg5AWpqZvANhgeaws6VrKVStdVcdJ4s4kM=; b=FvfXMEn+V63vDfxX8K0EuncONrr2Y/YxTCBUazWp7nZdhgnS1m5fqZQBYsO8/jUduk 9P2hOl7MYcVt8lqJxjcodriCWgHw8/mw4EjszHGdlhXS/Z1WeV3sCKGWVgNKjyiLhhD1 vPLtXMfYVZ5P6y0MEl/y7L6IdVu9ZFmXWB4RezPr0Ci1PZKDdEO9QWv0lhACB72NCGSR Apm00v1To9tgr75aG24tvo9/C5GVJre8+sO7deHQNXTWCoa4oZTtAMYHb4KMFSY1vRKU PnrCP+Io4rGB4alt8J/nbxHxU5UDuaQHgTaixvzIOeXHcraTpi2sU0FX7lRxGxC03DDa QFKg==
X-Gm-Message-State: ALoCoQm30cRLlC14KPCP5H4DS3NiMNHBouIPNqag5AtJodIrbQZN6v1OQAf1EvDo7vXGtUxDLSo1
X-Received: by 10.224.29.137 with SMTP id q9mr1539794qac.95.1422363289215; Tue, 27 Jan 2015 04:54:49 -0800 (PST)
MIME-Version: 1.0
Received: by 10.96.109.229 with HTTP; Tue, 27 Jan 2015 04:54:28 -0800 (PST)
In-Reply-To: <CAG4zZZB195+rdEjG3nei0cge9w9wLQeO-4yHxG329JbW8Qs12w@mail.gmail.com>
References: <CAH9hSJZjM1K7BKDcZCqriFZ-5uUBNJERtLEb5mH9PzG+DHnpQg@mail.gmail.com> <CAG4zZZB195+rdEjG3nei0cge9w9wLQeO-4yHxG329JbW8Qs12w@mail.gmail.com>
From: Takeshi Yoshino <tyoshino@google.com>
Date: Tue, 27 Jan 2015 21:54:28 +0900
Message-ID: <CAH9hSJY58u8viAdX5t+vwLTi+TL5EppdYzFp9Yzu3hUYSe4_Vg@mail.gmail.com>
To: Joakim Erdfelt <joakim@intalio.com>
Content-Type: multipart/alternative; boundary="047d7bdc78b69894fc050da1c29d"
Archived-At: <http://mailarchive.ietf.org/arch/msg/hybi/Vrwrd4brCIHJNmbHbg7PqUpTQ3I>
Cc: "hybi@ietf.org" <hybi@ietf.org>
Subject: Re: [hybi] Informal survey: "Non Request-Response Communication over the Web, and What's Missing"
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: Tue, 27 Jan 2015 12:54:53 -0000
Thanks for the comments, Joakim. On Fri, Jan 16, 2015 at 9:49 PM, Joakim Erdfelt <joakim@intalio.com> wrote: > Some commentary ... > > Be careful with "reliable data delivery". > This has many different meanings to different people. > > Bayeux and Cometd (for example) have acknowledgement extensions > specifically for unreliable data networks (mobile) that allow the server or > client to know if the opposite side has received the complete message or > not. > > This level of reliable message delivery could probably exist as a > WebSocket extension. a message-ack extension with exposure at the various > WebSocket APIs. > > Good point. We cut the details but it might have just led to confusion. I'll fix it. > WebSocket Gaps: > > 1. Half-Closed > > half-closed connections are currently supported by the WebSocket protocol > spec. > and many existing implementations do it correctly today (thanks autobahn!) > several libraries already rely on this behavior (bayeux, cometd) > Right. It's missing on the WebSocket API. > > however, other layers, apis, and non-websocket bugs can cause problems > here. > eg: its impossible with Android 5.x to do half-closed via SSL, on any > protocol, mostly due to many horrid bugs in their SSLEngine. > > 2. Flow-Control > > For standard http/1.1 (not http/2) this is handled at the tcp/ip level. > For http/2 this is handled by its flow-control parts of that spec. > What else do you mean here? > Is this section about how to expose this on the Javascript WebSocket API? > > Yes. Flow control is not exposed to the API level. A script cannot pose any backpressure on a WebSocket without blocking the main thread. > 3. Message-level metadata > > Let this be part of an application specific protocol layer, or an > extension handling it (with Javascript WebSocket API changes to expose > extension manipulation. see below) > Note: This is quite a passionate topic on the ietf-http-wg mailing list > also, with more people against it than for it. > > 4. Keep-Alive > > Most existing applications are happy with a combination of tcp/ip > keep-alive and websocket ping/pong so far. > With http/2 there's other keep-alive strategies. > Is is really a WebSocket protocol gap? > Or just another Javascript WebSocket API gap? > Yes. It's about the API. Sorry that it's unclear. > > 5. Multiplexing and session priority > > One concern with the common response: WebSocket over HTTP/2 will address > this. > It seems that the folks running the http2 spec track (ietf-http-wg) have > punted and want hybi to define it, and the folks here at hybi seem to think > that the ietf-http-wg folks will define it. Have there been some > discussion between these 2 groups yet? (even offline / face to face?) > > No decision is made officially yet, I think. > The Layering Concern: > > Don't forget, the websocket extensions are a layer too. > > Yes! > Other thoughts: > > If this is an effort to get baseline of effort for the Javascript > WebSocket in the browser, then you also have the following often asked > questions ... > > * Handling authentication / authorization credentials. submitting them, > and getting reasonable error messages out of the API for when problems > occur. > * Controlling extensions, both at the initial handshake, and ongoing in > the write/send apis (think compress / dont compress flags as a real world > usecase for today) > * Better error messages when use of the API results in failure to > open/connect due to violation of WebSocket spec rules > > Thanks for the list. Yeah, there're lots of overdue things. The doc is not only for WebSocket API refinement. More general discussion about what's the best messaging API/protocol we should build for better web ecosystem. > > > -- > Joakim Erdfelt <joakim@intalio.com> > webtide.com <http://www.webtide.com/> - intalio.com/jetty > Expert advice, services and support from from the Jetty & CometD experts > eclipse.org/jetty - cometd.org > > On Fri, Jan 16, 2015 at 1:42 AM, Takeshi Yoshino <tyoshino@google.com> > wrote: > >> Hi all, >> >> I and Wenbo did an informal survey of protocol gaps. We hope this would >> help moving forward the discussions about protocol/API design to some >> extent. >> >> >> https://github.com/bidiweb/bidiweb-semantics/blob/master/SurveyOfProtocolGaps.md >> >> >> _______________________________________________ >> hybi mailing list >> hybi@ietf.org >> https://www.ietf.org/mailman/listinfo/hybi >> >> >
- [hybi] Informal survey: "Non Request-Response Com… Takeshi Yoshino
- Re: [hybi] Informal survey: "Non Request-Response… Joakim Erdfelt
- Re: [hybi] Informal survey: "Non Request-Response… Roberto Peon
- Re: [hybi] Informal survey: "Non Request-Response… Takeshi Yoshino