Re: [hybi] Extensibility mechanisms?

Mike Belshe <mike@belshe.com> Sun, 18 April 2010 21:06 UTC

Return-Path: <mike@belshe.com>
X-Original-To: hybi@core3.amsl.com
Delivered-To: hybi@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id D1AE73A68C8 for <hybi@core3.amsl.com>; Sun, 18 Apr 2010 14:06:16 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.196
X-Spam-Level: *
X-Spam-Status: No, score=1.196 tagged_above=-999 required=5 tests=[AWL=0.572, BAYES_50=0.001, FM_FORGED_GMAIL=0.622, HTML_MESSAGE=0.001]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id C-6Pp3l1AJtN for <hybi@core3.amsl.com>; Sun, 18 Apr 2010 14:06:15 -0700 (PDT)
Received: from mail-pw0-f44.google.com (mail-pw0-f44.google.com [209.85.160.44]) by core3.amsl.com (Postfix) with ESMTP id CB56E3A67AF for <hybi@ietf.org>; Sun, 18 Apr 2010 14:06:15 -0700 (PDT)
Received: by pwj2 with SMTP id 2so2953717pwj.31 for <hybi@ietf.org>; Sun, 18 Apr 2010 14:06:05 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.143.45.15 with HTTP; Sun, 18 Apr 2010 14:06:05 -0700 (PDT)
In-Reply-To: <4BCB6FD0.7080003@webtide.com>
References: <h2w5c902b9e1004152345j992b815bz5f8d38f06a19181a@mail.gmail.com> <Pine.LNX.4.64.1004161952530.751@ps20323.dreamhostps.com> <4BC96A0D.4080904@webtide.com> <Pine.LNX.4.64.1004180246380.751@ps20323.dreamhostps.com> <4BCAB2C1.2000404@webtide.com> <B9DC25B0-CD21-44E7-BD9B-06D0C9440933@apple.com> <Pine.LNX.4.64.1004181812370.751@ps20323.dreamhostps.com> <4BCB6641.70408@webtide.com> <Pine.LNX.4.64.1004182010070.751@ps20323.dreamhostps.com> <4BCB6FD0.7080003@webtide.com>
Date: Sun, 18 Apr 2010 14:06:05 -0700
Received: by 10.143.131.3 with SMTP id i3mr1736180wfn.96.1271624765444; Sun, 18 Apr 2010 14:06:05 -0700 (PDT)
Message-ID: <k2r2a10ed241004181406zf93cf5c4p9652e4a78980027d@mail.gmail.com>
From: Mike Belshe <mike@belshe.com>
To: Greg Wilkins <gregw@webtide.com>
Content-Type: multipart/alternative; boundary="000e0cd17c2e6e959c04848936a1"
Cc: Hybi <hybi@ietf.org>
Subject: Re: [hybi] Extensibility mechanisms?
X-BeenThere: hybi@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: Server-Initiated HTTP <hybi.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/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: Sun, 18 Apr 2010 21:06:16 -0000

On Sun, Apr 18, 2010 at 1:47 PM, Greg Wilkins <gregw@webtide.com> wrote:

> Ian Hickson wrote:
>
> > Why would a large scale deployments with complex infrastructure that
> can't
> > handle BEEP framing opt-in to an experimental non-standard feature that
> > uses BEEP framing?
>
> because experiments are a precursor to real deployments.
>
> >
> >> If you want to send BEEP over a HTTP connection, then you should upgrade
> >> to BEEP, not websocket.
> >
> > If the handshake involves an optional opt-in to a non-standard
> > experimental feature, and you accept it, then you're not upgrading to Web
> > Socket, you're upgrading to a non-standard protocol influenced by Web
> > Sockets, as defined by the convention you and the client are using.
>
> My point is that an intermediary can't possible know about
> all subprotocols (experimental or otherwise), nor be expected
> to upgrade everytime a new subprotocol is invented.
>
> Intermediaries can know about websocket framing and so long as
> all sub protocols and extensions are restricted to adhere to
> websocket framing, then intermediaries can continue to work
> regardless of sub protocols.
>

Should intermediaries know about these protocols?  Why?

In my view, new protocols should be thinking not just about "right now" but
also about the future.  It takes a long time for protocols to be adopted, so
thinking only of 2010 is a mistake.  Think about 2020.

In the year 2020, should the guy sitting next to you in the coffee shop be
able to sniff your traffic to see what you're doing?  Sure, maybe you're
only watching a movie, but who's business is it but yours?  Should common
users be expected to understand when their data is private and when it is
not?  Why should they?  Is it realistic to expect them to?

If we run all websockets through SSL, the protocol is stronger.  And poor
users aren't left holding the bag wondering why they just got hacked.

But, even if we don't care about end-user security, surely we care about
deployability of the protocol.  Unlike any protocol layering on top of port
80, running with SSL is deployable today without updating the intermediaries
at all.

So, to review you get:
   a) A protocol designed for the future.
   b) A deployable protocol
   c) A more reliable and robust protocol, because it can't be accidentally
broken by intermediaries making incorrect assumptions about what it is
transporting.  (We've seen this so often in history, we ought to learn the
lesson!)

Mike


>
> regards
>
>
>
> _______________________________________________
> hybi mailing list
> hybi@ietf.org
> https://www.ietf.org/mailman/listinfo/hybi
>