BiDirectional or Server-Initiated HTTP (hybi)
---------------------------------------------

 Charter
 Last Modified: 2010-03-25

 Current Status: Active Working Group

 Chair(s):
     Joe Hildebrand  <jhildebr@cisco.com>
     Salvatore Loreto  <Salvatore.Loreto@ericsson.com>

 Applications Area Director(s):
     Alexey Melnikov  <alexey.melnikov@isode.com>
     Peter Saint-Andre  <stpeter@stpeter.im>

 Applications Area Advisor:
     Alexey Melnikov  <alexey.melnikov@isode.com>

 Mailing Lists: 
     General Discussion:hybi@ietf.org
     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 


 Internet-Drafts:

  No Current Internet-Drafts.

 Request For Comments:

  None to date.