[tl;dr]

Considering the use of LZMA [or bzip2?] somewhere in the web platform, for improved compression compared to gzip algorithms? Take a look at a new project, Brotli, an alternative with several potential benefits:

  - formal specification will be available
  - commitment to security review
  - simpler implementation (small delta from existing Flate decoder)
  - substantially faster decompression

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

This message is intended to make people aware of a new (upcoming) data compression algorithm known as Brotli that (IMO) we may want to adopt within Gecko.

The background to this is the investigation currently being done in the W3C WebFonts Working Group into a possible WOFF2 format, as a next-generation successor to WOFF with improved compression. Initially, it was proposed that WOFF2 would rely on LZMA for entropy coding, as this is known to give substantially better compression than the Flate (gzip) algorithm used in the current WOFF spec.

However, several concerns regarding LZMA (lack of formal specification combined with complexity of the code, making careful security review and maintenance difficult; relatively slow decompression) led the compression team at Google to begin exploring an alternative. The basic idea is to take the existing Flate algorithm and make some fairly minor adjustments that can result in significantly improved compression ratios, while avoiding the aspects of LZMA that lead to slower decompression.

While this work was originally motivated by webfont requirements, the new compression format may be a good fit for other applications as well. In particular, I'm thinking of bug 366559, which suggests supporting LZMA as an HTTP transfer encoding and bug 173044 (similar, about bzip).

There's a short presentation available[1] that gives a brief overview of Brotli (presented within the context of the WOFF2 work). We expect that reference code and a draft specification will be available for review within the next few weeks. Further details should appear on the W3C Web Fonts WG mailing list[2] (though the actual standardization work for the new format will probably end up elsewhere, e.g. in IETF).

As this project matures, it'd be great if some Mozilla people with interest/expertise in compression and in security review could take a look and help to refine the spec and code, and determine whether this is the right technology for us to adopt.

JK

[1] https://docs.google.com/presentation/d/1aigINmRR7fw_ml8rz0rJ3NTv08Qb3n6lZ_qvmxo8CzQ/present
[2] http://lists.w3.org/Archives/Public/public-webfonts-wg/
_______________________________________________
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform

Reply via email to