Subject: [hybi] WG Action: BiDirectional or Server-Initiated HTTP (hybi)

From: IESG Secretary <[email-masked]>
Date: Tue, 26 Jan 2010 14:15:01 -0800 (PST)

A new IETF working group has been formed in the Applications Area.  
For additional information, please contact the Area Directors or the WG
Chairs.

BiDirectional or Server-Initiated HTTP (hybi)
--------------------------------------------------------
Last Modified: 2010-01-05
Current Status: Active Working Group

Chairs:
* Joe Hildebrand ([email-masked])
* Salvatore Loreto ([email-masked])

Applications Area Director(s):
* Lisa Dusseault ([email-masked])
* Alexey Melnikov ([email-masked])

Applications Area Advisor:
* Lisa Dusseault ([email-masked])

Mailing Lists:
General Discussion: [email-masked]
To Subscribe: https://www.ietf.org/mailman/listinfo/hybi
Archive: http://www.ietf.org/mail-archive/web/hybi/current/maillist.html

Description of Working Group:
-----------------------------

HTTP has most often been used as a request/response protocol, leading 
to clients polling for new data, or users hitting the refresh button in 
their browsers. Recent web applications are finding ways to communicate 
with web servers in realtime, pushing data from the server-side to the 
client as soon as it is available. However, these applications at 
present can only use a variety of HTTP mechanisms (e.g. long polling 
requests) to communicate with web servers bidirectionally.

The Hypertext-Bidirectional (HyBi) working group will seek 
standardization of one approach to maintain bidirectional 
communications between the HTTP client, server and intermediate 
entities, which will provide more efficiency compared to the current 
use of hanging requests.

A general approach is preferred, with abstract semantics that can apply 
to a large number of applications.

The Web is the design space into which the solution will be deployed.
Since the existing Web is much more complicated that it seems, the 
working group will document how it works first, with special attention 
to deployed infrastructure (e.g. web clients, intermediaries, 
firewalls, NATs, web servers) and programming environments.

New features will be required of clients, servers, or intermediaries 
allowing a more scalable and robust end-to-end experience.

Although multiple protocols exist as starting points, backward 
compatibility with these protocols is not a requirement.

In particular, the working group has liaised with the W3C WebApps 
working group around the WebSockets protocol and the need to support 
the WebSocket API; as agreed by both parties, the HyBi working group 
will take on prime responsibility for the specification of the 
WebSockets protocol, taking into consideration all the requirements, 
needs and eventual concerns raised by the W3C WebApps working group. 
The draft-hixie-thewebsocketprotocol "The Web Socket protocol" is 
considered as the input document for the working group.

Wide browser support is a goal for the bidirectional communication 
mechanism, however the solution should also be suitable for clients 
other than Web Browsers.  The Working Group will work to standardize a 
generic solution that can work efficiently in as many of the deployed 
environments as possible and in particular in all the elements of the 
web infrastructure (e.g. web browser, generic HTTP client, HTTP server 
and HTTP-aware intermediaries like proxies, load balancers, caches, 
etc.) and it is not specific for just one.

The Working Group should consider:
* Implementer experience
* Impact on existing implementations and deployments
* Ability to achieve broad implementation
* Ability to address broader use cases than those covered in the input 
  document

The Working Group will produce one or more documents suitable for 
consideration as Proposed Standard that will:
* Define a characterization of the design space
* Define a solution for the bidirectional web communication

Goals and Milestones:
---------------------
Apr 2010  Submit a document as a working group item describing the
          Web Socket requirements (draft-hixie-thewebsocketprotocol 
          will be used as a starting point for further work.)
Apr 2010  Submit 'The Web Socket protocol' as working group item
          (draft-hixie-thewebsocketprotocol will be used as a starting 
          point for further work.)
Jul 2010  Start Working Group Last Call on the WebSocket requirements
Jul 2010  Submit a document as a working group item describing the 
          Design Space characterization
Sep 2010  Submit the 'Web Socket requirements' to the IESG for
          consideration as an Informational document
Nov 2010  Start Working Group Last Call on the Design Space 
          characterization
Nov 2010  Start of discussion about Web Socket extensions the group
          should work on
Dec 2010  Submit the 'Design Space characterization' to the IESG for
          consideration as an Informational document
Mar 2011  Start Working Group Last Call on 'The Web Socket protocol'
Mar 2011  Prepare milestone update to start new work within the scope 
          of the charter
Apr 2011  Submit the 'The Web Socket protocol' to the IESG for
          consideration as a Proposed Standard
May 2011  Close or recharter