Re: HTTP router point-of-view concerns

Mike Belshe <mike@belshe.com> Fri, 12 July 2013 09:13 UTC

Return-Path: <ietf-http-wg-request@listhub.w3.org>
X-Original-To: ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com
Delivered-To: ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 01E2821F9CC6 for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Fri, 12 Jul 2013 02:13:04 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -9.976
X-Spam-Level:
X-Spam-Status: No, score=-9.976 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, FM_FORGED_GMAIL=0.622, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-8]
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 Bg1vMS-UAAvV for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Fri, 12 Jul 2013 02:12:57 -0700 (PDT)
Received: from frink.w3.org (frink.w3.org [128.30.52.56]) by ietfa.amsl.com (Postfix) with ESMTP id 536B221E80A6 for <httpbisa-archive-bis2Juki@lists.ietf.org>; Fri, 12 Jul 2013 02:12:50 -0700 (PDT)
Received: from lists by frink.w3.org with local (Exim 4.72) (envelope-from <ietf-http-wg-request@listhub.w3.org>) id 1UxZOY-0007xA-Dt for ietf-http-wg-dist@listhub.w3.org; Fri, 12 Jul 2013 09:12:06 +0000
Resent-Date: Fri, 12 Jul 2013 09:12:06 +0000
Resent-Message-Id: <E1UxZOY-0007xA-Dt@frink.w3.org>
Received: from lisa.w3.org ([128.30.52.41]) by frink.w3.org with esmtp (Exim 4.72) (envelope-from <mike@belshe.com>) id 1UxZOQ-0007uj-2h for ietf-http-wg@listhub.w3.org; Fri, 12 Jul 2013 09:11:58 +0000
Received: from mail-bk0-f45.google.com ([209.85.214.45]) by lisa.w3.org with esmtps (TLS1.0:RSA_ARCFOUR_SHA1:16) (Exim 4.72) (envelope-from <mike@belshe.com>) id 1UxZOO-0007Ww-Sw for ietf-http-wg@w3.org; Fri, 12 Jul 2013 09:11:58 +0000
Received: by mail-bk0-f45.google.com with SMTP id je9so3694549bkc.32 for <ietf-http-wg@w3.org>; Fri, 12 Jul 2013 02:11:30 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:x-gm-message-state; bh=Ugf6jQCwBHGTpBLS9WWZC4Y56lMHnF20krbluBOrTSo=; b=PSLw0rjze+F6b+j1O3FQhliaxIgAW2dTJtpElMY/ZZxlKkC5hOoQXBtyzeanpbksh/ SPdqi3pAKIGk0YP0TMnRZqmQoTmEObI5igHE0ICXP2D7XZebi3dfOlly9MePjSneLtVY wjz1isw946hAndWh0z402x6ly1jsHt3+68Gqt1thtAzgLTHOYWb08VZIQSvvGbu+2Qhs 970mNMBXeMu0fH1gURqVbHluzQXOA9/K8ImAJn0DW3XAWL9P9s3M3pP8uP+yB3xf2pMD 4lUe0Iuhxmyu/hVS6y6i/o9UWpL0K3CT4CSkwzGGpWH6QpjQi9I9TNwg6TDqZ8moABeo ZClg==
MIME-Version: 1.0
X-Received: by 10.204.76.72 with SMTP id b8mr6422283bkk.67.1373620290462; Fri, 12 Jul 2013 02:11:30 -0700 (PDT)
Received: by 10.204.168.130 with HTTP; Fri, 12 Jul 2013 02:11:30 -0700 (PDT)
In-Reply-To: <51DFBDAB.9010505@treenet.co.nz>
References: <CA+qvzFPUpcm6kUtJx+rTw8Dpp4Gtx4Bmr3XPDhjNsjchUfN9_w@mail.gmail.com> <51DE1E32.9010801@treenet.co.nz> <CAP+FsNdcYhA=V5Z+zbt70b5e7WmcmXgjG5M9L3vfXeXfTwmRnw@mail.gmail.com> <51DE327C.7010901@treenet.co.nz> <CABkgnnXeqD6wh0dcJ1Dz=4PLAJNkDeGcCuzMr9ATd_7xS7nbGQ@mail.gmail.com> <CABP7RbcUkLf3CTAB4jwicnsiKWLGVY6=hX0k=0256SR_gcVt9A@mail.gmail.com> <CAP+FsNcOZnLa9GCr6XcZNFdq-mSXG6Q-_1Lb5u=a2YyXNCsVfQ@mail.gmail.com> <51DFBDAB.9010505@treenet.co.nz>
Date: Fri, 12 Jul 2013 02:11:30 -0700
Message-ID: <CABaLYCs4KUXO2YwGyG07kbGJtrrfc7kVMJH3N_f=D-WQG86FcQ@mail.gmail.com>
From: Mike Belshe <mike@belshe.com>
To: Amos Jeffries <squid3@treenet.co.nz>
Cc: httpbis mailing list <ietf-http-wg@w3.org>
Content-Type: multipart/alternative; boundary="047d7bb03bc0787a9b04e14ce503"
X-Gm-Message-State: ALoCoQkA4ivq4WKy32A1OcMqXW0J1UHmnprlA+oSssO1J1C9DxNlgjMdz2OcTL7ismsUKL63QLr3
Received-SPF: none client-ip=209.85.214.45; envelope-from=mike@belshe.com; helo=mail-bk0-f45.google.com
X-W3C-Hub-Spam-Status: No, score=-3.8
X-W3C-Hub-Spam-Report: AWL=-3.101, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7
X-W3C-Scan-Sig: lisa.w3.org 1UxZOO-0007Ww-Sw 5882dcca357cb583b8c74fce5eb33d94
X-Original-To: ietf-http-wg@w3.org
Subject: Re: HTTP router point-of-view concerns
Archived-At: <http://www.w3.org/mid/CABaLYCs4KUXO2YwGyG07kbGJtrrfc7kVMJH3N_f=D-WQG86FcQ@mail.gmail.com>
Resent-From: ietf-http-wg@w3.org
X-Mailing-List: <ietf-http-wg@w3.org> archive/latest/18718
X-Loop: ietf-http-wg@w3.org
Resent-Sender: ietf-http-wg-request@w3.org
Precedence: list
List-Id: <ietf-http-wg.w3.org>
List-Help: <http://www.w3.org/Mail/>
List-Post: <mailto:ietf-http-wg@w3.org>
List-Unsubscribe: <mailto:ietf-http-wg-request@w3.org?subject=unsubscribe>

I'm also in favor of removing the compressor completely.

The reason is because we've seen the "negotiable compression protocol"
movie before.  At this point, its negotiable, and therefore just a big time
sink.  In the end, it will not be deployed because some player will have a
bug forcing everyone else to turn it off to avoid the hassle.   I apologize
if this sounds pessimistic - but history shows that this is a likely result.

If we can't agree on mandatory compression (which was long ago thrown out)
why not just add session state.  Cookies & User Agents can be set as state
which applies across all streams and be done.  It's mandatory, its super
simple, it fixes the single biggest redundant-bandwidth problem elegantly,
and in the end, I think this is basically what pkh and christian are asking
for under different names.

We'll probably save a lot of time debating and end up with a protocol which
is almost as good as a true compressor.
Mike



On Fri, Jul 12, 2013 at 1:26 AM, Amos Jeffries <squid3@treenet.co.nz> wrote:

> On 12/07/2013 7:35 a.m., Roberto Peon wrote:
>
>> I think it is perfectly reasonable for an intermediary to set the
>> compression size to zero if it wishes.
>>
>> Market forces will (in the long-term) pick the correct strategy for
>> this-- assuming the compression is effective at reducing latency, and that
>> people care about latency reductions, then eventually intermediaries might
>> evolve to use it.
>> If it is ineffective at reducing latency, or if reduced latency is not
>> actually desirable, then intermediaries would not use it.
>>
>>
>> The DoS vector you're talking about is not a DoS vector if the
>> intermediary resets all streams before the change-of-state-size comes into
>> effect.
>>
>
> If you means RST_STREAM on all the initial streams which use a larger
> compression size then what you are doing is adding an RTT penalty to all
> those requests over and beyond what HTTP/1 suffers from already on a normal
> transaction. This is not a useful way forward (wastes packets, RTT and
> stream IDs) and resolving it is to make decompression with the default
> state size mandatory for all recipients. Which brings us full circle on the
> problem of having a default >0 in the dynamic part of the state tables.
>
>
>
>  When the state size is 0, one should be able to use some kinds of
>> 'indexed' representations, so long as those representations refer only to
>> items in the static tables. Why do you believe that this would use more or
>> less CPU? (It should use less CPU and less memory...)
>>
>
> I did not mention CPU. Only the bandwidth amplification effects that
> agents disabling compression would incur and need to consider carefully.
>
> Personally I would like to see a 127 entry mandatory static table in the
> spec itself and tied to the "2.0" version with a 127 entry optional dynamic
> table indicated by the high-end bit of the byte code. With a capacity byte
> size for dynamic table sent each way and senders forbidden to add new
> entries to the dynamic table until they hold the value from both ends of
> the connection. Agreed value being the minimum of both ends capacities.
>
> Amos
>
>