The HTTP-NG working group has invested much of its energy in the development of the WebMUX standard for message transport. WebMUX is a sophisticated, high-performance message system, where messages can be transported in parallel across a multiplexed TCP connection. Individual message streams, produced and consumed at different rates, can efficiently be packetized and multiplexed over a single or small number of TCP connections (see Figure 10-2).
Here are some of the significant goals of the WebMUX protocol:
Simple design.
High performance.
MultiplexingMultiple data streams (of arbitrary higher-level protocols) can be interleaved dynamically and efficiently over a single connection, without stalling data waiting for slow producers.
Credit-based flow controlData is produced and consumed at different rates, and senders and receivers have different amounts of memory and CPU resources available. WebMUX uses a "credit-based" flow-control scheme, where receivers preannounce interest in receiving data to prevent resource-scarcity deadlocks.
Alignment preservingData alignment is preserved in the multiplexed stream so that binary data can be sent and processed efficiently.
Rich functionalityThe interface is rich enough to support a sockets API.
You can read more about the WebMUX Protocol at http://www.w3.org/Protocols/MUX/WD-mux-980722.html.