[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