Re: [tcpm] TCP Tuning for HTTP - update

Willy Tarreau <w@1wt.eu> Thu, 18 August 2016 20:05 UTC

Return-Path: <ietf-http-wg-request+bounce-httpbisa-archive-bis2juki=lists.ie@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 902F512D891 for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Thu, 18 Aug 2016 13:05:45 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -8.168
X-Spam-Level:
X-Spam-Status: No, score=-8.168 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-1.247, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=unavailable autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 41G9ipxs_t4D for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Thu, 18 Aug 2016 13:05:44 -0700 (PDT)
Received: from frink.w3.org (frink.w3.org [128.30.52.56]) (using TLSv1.2 with cipher DHE-RSA-AES128-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 16DA312D1A4 for <httpbisa-archive-bis2Juki@lists.ietf.org>; Thu, 18 Aug 2016 13:05:42 -0700 (PDT)
Received: from lists by frink.w3.org with local (Exim 4.80) (envelope-from <ietf-http-wg-request@listhub.w3.org>) id 1baTVI-0006rX-Ob for ietf-http-wg-dist@listhub.w3.org; Thu, 18 Aug 2016 20:01:28 +0000
Resent-Date: Thu, 18 Aug 2016 20:01:28 +0000
Resent-Message-Id: <E1baTVI-0006rX-Ob@frink.w3.org>
Received: from lisa.w3.org ([128.30.52.41]) by frink.w3.org with esmtps (TLS1.2:DHE_RSA_AES_128_CBC_SHA1:128) (Exim 4.80) (envelope-from <w@1wt.eu>) id 1baTVD-0006qI-4m for ietf-http-wg@listhub.w3.org; Thu, 18 Aug 2016 20:01:23 +0000
Received: from wtarreau.pck.nerim.net ([62.212.114.60] helo=1wt.eu) by lisa.w3.org with esmtp (Exim 4.80) (envelope-from <w@1wt.eu>) id 1baTVB-0005gh-85 for ietf-http-wg@w3.org; Thu, 18 Aug 2016 20:01:22 +0000
Received: (from willy@localhost) by pcw.home.local (8.15.2/8.15.2/Submit) id u7IJxmUi017969; Thu, 18 Aug 2016 21:59:48 +0200
Date: Thu, 18 Aug 2016 21:59:48 +0200
From: Willy Tarreau <w@1wt.eu>
To: Joe Touch <touch@isi.edu>
Cc: Matthew Kerwin <matthew@kerwin.net.au>, Mark Nottingham <mnot@mnot.net>, tcpm@ietf.org, HTTP Working Group <ietf-http-wg@w3.org>, Patrick McManus <pmcmanus@mozilla.com>, Daniel Stenberg <daniel@haxx.se>
Message-ID: <20160818195948.GD17944@1wt.eu>
References: <20160817064545.GD16017@1wt.eu> <7f7b129c-f156-d067-bef8-4a2213f461ac@isi.edu> <20160817180802.GA16773@1wt.eu> <4ab7c5b0-3722-1346-f481-a8d76de70034@isi.edu> <20160817211317.GA16929@1wt.eu> <c928d1ca-fc89-d0b0-4e1a-8a0bd960d2bb@isi.edu> <CACweHNC1qFH5DMnZRE87bAE5sk_P+1z1Fzm-9YEu=E2DULkaYQ@mail.gmail.com> <27b58b64-48cd-39af-78b3-ef583c585fa6@isi.edu> <20160818053837.GC16773@1wt.eu> <3c93805c-05f5-2b69-235e-e1c68363bba6@isi.edu>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
In-Reply-To: <3c93805c-05f5-2b69-235e-e1c68363bba6@isi.edu>
User-Agent: Mutt/1.6.0 (2016-04-01)
Received-SPF: pass client-ip=62.212.114.60; envelope-from=w@1wt.eu; helo=1wt.eu
X-W3C-Hub-Spam-Status: No, score=-5.5
X-W3C-Hub-Spam-Report: AWL=-0.575, BAYES_00=-1.9, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, W3C_AA=-1, W3C_IRA=-1, W3C_WL=-1
X-W3C-Scan-Sig: lisa.w3.org 1baTVB-0005gh-85 d5c3e331f8e1f1a7c4657df53c4b6491
X-Original-To: ietf-http-wg@w3.org
Subject: Re: [tcpm] TCP Tuning for HTTP - update
Archived-At: <http://www.w3.org/mid/20160818195948.GD17944@1wt.eu>
Resent-From: ietf-http-wg@w3.org
X-Mailing-List: <ietf-http-wg@w3.org> archive/latest/32319
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>

On Thu, Aug 18, 2016 at 10:50:52AM -0700, Joe Touch wrote:
> Hi, Willy,
> 
> On the issue of ACK compression effects:
> 
> 
> On 8/17/2016 10:38 PM, Willy Tarreau wrote:
> >>     - watch out for ACK compression effects (turn it off in favor of ABC
> >> > if you can)
> > It does not happen that much with HTTP. Many connections on the server side
> > see only one, sometimes two requests, and most responses are small (about
> > 20kB on average, with favicon fitting in a single segment). Note, I'm talking
> > about observations on average web sites.
> The effect is more pronounced for smaller responses, for any response
> using an odd number of packets. The last odd packet will be stalled
> because the client needs to timeout before it will send an ACK for a
> single segment (it's waiting for the second segment).

With short keep-alive responses yes but not short-lived connections
since the server sends the FIN immediately afterwards, which hints
the client not to wait for anything else and to ACK immediately.

> It doesn't matter how many requests you have, but the impact can be
> complicated on persistent connections.

Yes I agree. Please note that usually the last segment of a message
carries a push which precisely speeds up delivery to the application
and acking (as most OSes ack on push but apparently not all), so it
is not often emphasized that much. But I've met some 3G networks
where ACK compression was causing excessive retransmits from the
sender, resulting in excess retransmits of ACKs in turn, maintaining
the ACK link congested. It generally gets worse with many parallel
connections than with a single one, and in this regard HTTP/2 has
improved things a lot.

Willy