ietf-822
[Top] [All Lists]

Re: gzip/deflate compression/encoding

2005-06-27 08:16:43

o A Content-Compression field, field body consists of a registered keyword.

I'm afraid this is a total and complete nonstarter unless you either:

(1) Put some sort of "escape" label in the CTE field saying that
    content-compression needs to be looked at.
(2) Bump the MIME-Version value to 2.0.

The problem with doing something like:

   MIME-Version: 1.0
   content-type: text/plain
   content-transfer-encoding: base64
   content-compression: deflate

is fundamental: An existing, standards-compliant client seees this and thinks
all it has to do is undo the base64 encoding and a bunch of text will pop out.
But when it actually does this aa pile of binary goo appears instead. The
resulting mess won't make users very happy even if clients handle it well, and
the odds are good they won't.

Now, many folks believe bumping the MIME version is not possible. I'm
personally not convinced of that, but I do think it would be hugely difficult.
Bumping it just to get a compression field added strikes me as way too
much trouble for way too little gain, so (2), while technically possible,
is a practical nonstarter IMO.

And the problem with doing something like

   MIME-Version: 1.0
   content-type: foo/bar
   content-transfer-encoding: see-other-fields
   content-compression: deflate
   content-other-encoding-field: base64

is that it creates a whole lot of bother for no good reason.

Embedding compression information in the CTE is, OTOH, entirely doable. And
not only was this understood back when MIME was first standardized, the
reason we didn't define content-compression or something similar is exactly
because this possibility existed and there was no real need for
content-compression.

Of course this leaves open exactly what compression/encoding pairs
need to be defined for use as CTEs. As you say, there are potentially
five of them, but I only see three that are genuinely useful:

   binary-8bit
   deflate-8bit
   deflate-base64
   deflate-binary

Of these I see little value in the last, but the others all make good sense.

However, I'm still not seeing the sort of community interest that's really
needed to get this off the ground. (In fact I'm see pretty much the opposite.)

                                Ned