Compression Extensions for WebSocket
Draft of message to be sent after approval:
From: The IESG <email@example.com> To: IETF-Announce <firstname.lastname@example.org> Cc: RFC Editor <email@example.com>, hybi mailing list <firstname.lastname@example.org>, hybi chair <email@example.com> Subject: Protocol Action: 'Compression Extensions for WebSocket' to Proposed Standard (draft-ietf-hybi-permessage-compression-28.txt) The IESG has approved the following document: - 'Compression Extensions for WebSocket' (draft-ietf-hybi-permessage-compression-28.txt) as Proposed Standard This document is the product of the BiDirectional or Server-Initiated HTTP Working Group. The IESG contact persons are Ben Campbell, Barry Leiba and Alissa Cooper. A URL of this Internet Draft is: https://datatracker.ietf.org/doc/draft-ietf-hybi-permessage-compression/
Technical Summary This document specifies a framework for creating WebSocket extensions that add compression functionality to the WebSocket Protocol. Extensions based on this framework compress the payload of non-control WebSocket messages using a specified compression algorithm. One reserved bit RSV1 in the WebSocket frame header is allocated to control application of compression for each message. This document also specifies one specific compression extension using DEFLATE. Review and Consensus The compression extension has been discussed extensively within the HyBi group almost since the beginning of the WebSockets standardization process. Initially, the wg decided that in order to maintain progress on WebSockets, it would not work on extensions until the WebSocket spec was finished, so this waited for that to happen. The initial version of the compression spec was based on per-frame compression, but at IETF84 in Vancouver (and as confirmed on the mailing list), the HyBi WG decided to change from per-frame to per-message compression. There has not been any notable controversy about this document. Chrome supports the old per-frame deflate draft, and they plan to update it to the current proposal soon. pywebsocket supports permessage-compression-04, but needs some changes to extension parameter parsing to be compliant with -05. The Jetty web server also supports an earlier version of per-message compression. Personnel Salvatore Loreto is the document shepherd. Barry Leiba is the responsible Area Director.