Re: [hybi] Restarting IESG review on permessage-deflate

Tobias Oberstein <tobias.oberstein@tavendo.de> Fri, 04 October 2013 18:34 UTC

Return-Path: <tobias.oberstein@tavendo.de>
X-Original-To: hybi@ietfa.amsl.com
Delivered-To: hybi@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 02A2B21F9D46 for <hybi@ietfa.amsl.com>; Fri, 4 Oct 2013 11:34:52 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.599
X-Spam-Level:
X-Spam-Status: No, score=-2.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id LJWo11vjngGW for <hybi@ietfa.amsl.com>; Fri, 4 Oct 2013 11:34:48 -0700 (PDT)
Received: from EXHUB020-1.exch020.serverdata.net (exhub020-1.exch020.serverdata.net [206.225.164.28]) by ietfa.amsl.com (Postfix) with ESMTP id DFDC121F9C37 for <hybi@ietf.org>; Fri, 4 Oct 2013 11:34:47 -0700 (PDT)
Received: from EXVMBX020-12.exch020.serverdata.net ([169.254.3.6]) by EXHUB020-1.exch020.serverdata.net ([206.225.164.28]) with mapi; Fri, 4 Oct 2013 11:34:46 -0700
From: Tobias Oberstein <tobias.oberstein@tavendo.de>
To: Bjoern Hoehrmann <derhoermi@gmx.net>
Date: Fri, 04 Oct 2013 11:34:44 -0700
Thread-Topic: [hybi] Restarting IESG review on permessage-deflate
Thread-Index: Ac7BLMNXNqQivQfuT2axjmd1+FX0PwAAi9Ug
Message-ID: <634914A010D0B943A035D226786325D4446790C068@EXVMBX020-12.exch020.serverdata.net>
References: <CAH9hSJbwd5qhMJw=3dwk3CDPua5ENRksd9=q2KDcyyma3uKzZg@mail.gmail.com> <CAG4zZZD8eq4w9kyQbX2AJcM1LA8=UyRO7txK7TvmYhSp=YU+9g@mail.gmail.com> <634914A010D0B943A035D226786325D4446790BF34@EXVMBX020-12.exch020.serverdata.net> <CAG4zZZDNRZ_kaXBKhx5VkKjpj+Luo53Y7ue0eaGHH_ghoBrdkQ@mail.gmail.com> <634914A010D0B943A035D226786325D4446790BFFC@EXVMBX020-12.exch020.serverdata.net> <qb0u491vbecgjihjhkd6d75jo0uoka5al2@hive.bjoern.hoehrmann.de>
In-Reply-To: <qb0u491vbecgjihjhkd6d75jo0uoka5al2@hive.bjoern.hoehrmann.de>
Accept-Language: de-DE, en-US
Content-Language: de-DE
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
acceptlanguage: de-DE, en-US
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
Cc: "hybi@ietf.org" <hybi@ietf.org>, Gabriel Montenegro <Gabriel.Montenegro@microsoft.com>
Subject: Re: [hybi] Restarting IESG review on permessage-deflate
X-BeenThere: hybi@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Server-Initiated HTTP <hybi.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/hybi>, <mailto:hybi-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/hybi>
List-Post: <mailto:hybi@ietf.org>
List-Help: <mailto:hybi-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/hybi>, <mailto:hybi-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 04 Oct 2013 18:34:52 -0000

>>Lets collect a list: a) stuff that exposes the complete zlib vs b) 
>>stuff that does not;)
>>
>>a) C, C++, Python, NodeJS, Perl, Ruby, PHP, Erlang, Haskell
>>b) Java

>If you have an environment to develop application in C then it should be relatively easy to compile the zlib library and link it to your program, but the C language and its standard library and the typical extensions to it do not usually include zlib by themself; and if you >write in Java, there are comparable libraries available where the same holds true, but the out-of-the-box experience is different. So this does not seem to be a fair comparison.

Of course making up such lists is questionable.

My main point is: should IETF protocols be designed against a least-common denominator of todays existing language run-times / implementations / environments? I don't know if there is a general IETF policy with this. My view: it should not.

>A better comparison would be among independent DEFLATE implementations; that way we could at least tell how zlib-specific the relevant features are, and if they are very zlib-specific and not commonly implemented in independent implementations, they might >make bad mandatory features. My http://bjoern.hoehrmann.de/pngwolf/ for instance uses the DEFLATE imple- mentation in Igor Pavlov's 7-Zip library, which I believe is the best- compressing free software implementation; that would be a good candiate, among >others.

Good point. It's one thing which run-time does expose which feature of one and the same Deflate implementation ("zlib"), and another to compare features of independent Deflate implementations.

Here is another point:

The current spec only refers to the original LZ77 paper under normative-references:

http://tools.ietf.org/html/draft-ietf-hybi-permessage-compression-12#page-27

The Deflate RFC

http://tools.ietf.org/html/rfc1951

is only listed under informational.

This is strange, since the "permessage-deflate" extension is not only LZ77, but really Deflate (= LZ77 + Huffman Coding + Window Size .. see below).

And the RFC1951 mentions:

" 3.3. Compliance

      A compressor may limit further the ranges of values specified in
      the previous section and still be compliant; for example, it may
      limit the range of backward pointers to some value smaller than
      32K.  Similarly, a compressor may limit the size of blocks so that
      a compressible block fits in memory.
"

Which I read as refering to "window size". But the wording neither has SHOULD nor MUST in it.

Mmh.

/Tobias