Re: Fwd: Re: [tcpm] FW: Call for Adoption: TCP Tuning for HTTP

Yoshifumi Nishida <nishida@sfc.wide.ad.jp> Sat, 05 March 2016 20:15 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 (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 834851B3666 for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Sat, 5 Mar 2016 12:15:55 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.28
X-Spam-Level:
X-Spam-Status: No, score=-6.28 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, FM_FORGED_GMAIL=0.622, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, RP_MATCHES_RCVD=-0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham
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 XoVEWcV8CwjP for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Sat, 5 Mar 2016 12:15:53 -0800 (PST)
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 5E1241B3665 for <httpbisa-archive-bis2Juki@lists.ietf.org>; Sat, 5 Mar 2016 12:15:52 -0800 (PST)
Received: from lists by frink.w3.org with local (Exim 4.80) (envelope-from <ietf-http-wg-request@listhub.w3.org>) id 1acIXk-0006vI-Qi for ietf-http-wg-dist@listhub.w3.org; Sat, 05 Mar 2016 20:11:16 +0000
Resent-Date: Sat, 05 Mar 2016 20:11:16 +0000
Resent-Message-Id: <E1acIXk-0006vI-Qi@frink.w3.org>
Received: from maggie.w3.org ([128.30.52.39]) by frink.w3.org with esmtps (TLS1.2:DHE_RSA_AES_128_CBC_SHA1:128) (Exim 4.80) (envelope-from <nishida@sfc.wide.ad.jp>) id 1acIXd-0006uS-L2 for ietf-http-wg@listhub.w3.org; Sat, 05 Mar 2016 20:11:09 +0000
Received: from shonan.sfc.wide.ad.jp ([203.178.142.130] helo=mail.sfc.wide.ad.jp) by maggie.w3.org with esmtps (TLS1.2:DHE_RSA_AES_256_CBC_SHA256:256) (Exim 4.80) (envelope-from <nishida@sfc.wide.ad.jp>) id 1acIXa-0001yc-Jr for ietf-http-wg@w3.org; Sat, 05 Mar 2016 20:11:09 +0000
Received: from mail-yk0-f181.google.com (mail-yk0-f181.google.com [209.85.160.181]) by mail.sfc.wide.ad.jp (Postfix) with ESMTPSA id 438EC278324 for <ietf-http-wg@w3.org>; Sun, 6 Mar 2016 05:10:35 +0900 (JST)
Received: by mail-yk0-f181.google.com with SMTP id h197so15048961yke.2 for <ietf-http-wg@w3.org>; Sat, 05 Mar 2016 12:10:35 -0800 (PST)
X-Gm-Message-State: AD7BkJKMl57ZRoI3L+2+YltcxnNdVbb/YF8uVOlOKv9xjCuMKjMg2veGcnG+bmzsmHcKXWD/O+l6fZU3IQMQKw==
MIME-Version: 1.0
X-Received: by 10.37.95.7 with SMTP id t7mr2785092ybb.82.1457208633668; Sat, 05 Mar 2016 12:10:33 -0800 (PST)
Received: by 10.13.196.3 with HTTP; Sat, 5 Mar 2016 12:10:33 -0800 (PST)
In-Reply-To: <20160305180744.GB31228@1wt.eu>
References: <56D74C23.5010705@isi.edu> <56D76A7E.7090507@isi.edu> <20160302232125.GA18275@1wt.eu> <56D77892.2000308@isi.edu> <20160303065545.GA18412@1wt.eu> <56D87BAC.4060204@isi.edu> <20160303184418.GA18774@1wt.eu> <56D88D58.5060406@isi.edu> <20160303211105.GA23875@1wt.eu> <CAO249ye6U29cxBbrP21_J5P=yaCOW9uNEfqJqyM-WBCUDmToNg@mail.gmail.com> <20160305180744.GB31228@1wt.eu>
Date: Sat, 05 Mar 2016 12:10:33 -0800
X-Gmail-Original-Message-ID: <CAO249yewG_PeKNz5vLJtqQqL0PtHvZCoG6OhM=bumEPtbjvGiA@mail.gmail.com>
Message-ID: <CAO249yewG_PeKNz5vLJtqQqL0PtHvZCoG6OhM=bumEPtbjvGiA@mail.gmail.com>
From: Yoshifumi Nishida <nishida@sfc.wide.ad.jp>
To: Willy Tarreau <w@1wt.eu>
Cc: Yoshifumi Nishida <nishida@sfc.wide.ad.jp>, Joe Touch <touch@isi.edu>, ietf-http-wg@w3.org
Content-Type: multipart/alternative; boundary="001a11423a66f94312052d52d26f"
Received-SPF: pass client-ip=203.178.142.130; envelope-from=nishida@sfc.wide.ad.jp; helo=mail.sfc.wide.ad.jp
X-W3C-Hub-Spam-Status: No, score=-3.9
X-W3C-Hub-Spam-Report: BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RP_MATCHES_RCVD=-0.001, SPF_PASS=-0.001, W3C_AA=-1, W3C_WL=-1
X-W3C-Scan-Sig: maggie.w3.org 1acIXa-0001yc-Jr e14f446f020315b9aca721ae98484cad
X-Original-To: ietf-http-wg@w3.org
Subject: Re: Fwd: Re: [tcpm] FW: Call for Adoption: TCP Tuning for HTTP
Archived-At: <http://www.w3.org/mid/CAO249yewG_PeKNz5vLJtqQqL0PtHvZCoG6OhM=bumEPtbjvGiA@mail.gmail.com>
Resent-From: ietf-http-wg@w3.org
X-Mailing-List: <ietf-http-wg@w3.org> archive/latest/31198
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>

Hi Willy,

On Sat, Mar 5, 2016 at 10:07 AM, Willy Tarreau <w@1wt.eu> wrote:

> On Sat, Mar 05, 2016 at 05:27:34AM -0800, Yoshifumi Nishida wrote:
> > Hi Willy,
> >
> > On Thu, Mar 3, 2016 at 1:11 PM, Willy Tarreau <w@1wt.eu> wrote:
> >
> > >
> > >
> > > Let me restate it :
> > >   - the client cannot bypass the TW state because it has no way to know
> > >     whether or not the server has closed after seeing the last ACK or
> > >     is still waiting for it.
> > >
> > >   - the server when it sees a SYN with an ISN larger than the end of
> the
> > >     previous window, *knows* that the client has closed, otherwise the
> > >     client would be in LAST_ACK and couldn't send a SYN in this state.
> > >     This is why servers recycle connections, and only in this case.
> > >
> >
> > Hmm, If there are multiple clients behind a NAT, the server cannot know
> if
> > it愀 coming from the same one or difference one.
> > Also each client uses its own ISN (also timestamp). So, in this case, it
> is
> > possible that the server will see a SYN from different client with an ISN
> > smaller than the previous window or staled timestamp.
>
> Yes except that as long as the load is not too high, the firewall will
> pick a different port. And if the load is high enough to make the firewall
> reuse existing ports, then the TW issue on the client side (here the
> firewall being the client) persists.
>
> > In this case, I guess server will send back old FIN ACK or reset, which
> > causes the termination of the connection anyway.
>
> Yes.
>
> > If clients go into TIME_STATE, I think we can avoid this.
>
> That's why I said in this thread that tuning is a matter of tradeoffs
> depending on the side you're looking at. Server people often want to
> move the burden to the client to have an infinite scale, client people
> prefer to move the burden to the server to enable even smaller clients
> to work, and intermediaries people have to compose with the best of both
> worlds since they're both clients and servers, and see aggregated traffic
> that often reaches protocol limits much earlier.
>

Got it. Thanks for the clarification and that's basically what I felt when
I read the draft.
I would like to support the adoption of the draft, but at the same time, I
might want to see pros and cons for the techniques in the draft.
Then, I think it can be much more beneficial than some random info on
google search results.

Thanks,
--
Yoshi