Re: [tcpm] TCP Tuning for HTTP - update

Joe Touch <touch@isi.edu> Wed, 17 August 2016 23:02 UTC

Return-Path: <touch@isi.edu>
X-Original-To: tcpm@ietfa.amsl.com
Delivered-To: tcpm@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id C6E5B12B074 for <tcpm@ietfa.amsl.com>; Wed, 17 Aug 2016 16:02:51 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -8.167
X-Spam-Level:
X-Spam-Status: No, score=-8.167 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-1.247] autolearn=ham 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 YBx7QTD_d8vF for <tcpm@ietfa.amsl.com>; Wed, 17 Aug 2016 16:02:50 -0700 (PDT)
Received: from boreas.isi.edu (boreas.isi.edu [128.9.160.161]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id D89B212B04A for <tcpm@ietf.org>; Wed, 17 Aug 2016 16:02:50 -0700 (PDT)
Received: from [128.9.184.210] ([128.9.184.210]) (authenticated bits=0) by boreas.isi.edu (8.13.8/8.13.8) with ESMTP id u7HN1xAQ026629 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES128-SHA bits=128 verify=NOT); Wed, 17 Aug 2016 16:02:00 -0700 (PDT)
To: Adrien de Croy <adrien@qbik.com>, Willy Tarreau <w@1wt.eu>
References: <embe2271fe-c61d-4c7c-84fd-bac7efa56593@bodybag>
From: Joe Touch <touch@isi.edu>
Message-ID: <05d949e3-07aa-4cf5-8aeb-122b2be24519@isi.edu>
Date: Wed, 17 Aug 2016 16:01:57 -0700
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.2.0
MIME-Version: 1.0
In-Reply-To: <embe2271fe-c61d-4c7c-84fd-bac7efa56593@bodybag>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
X-ISI-4-43-8-MailScanner: Found to be clean
X-MailScanner-From: touch@isi.edu
Archived-At: <https://mailarchive.ietf.org/arch/msg/tcpm/lvFDs5uMDCypUzz2PRSXxcTVywg>
Cc: Mark Nottingham <mnot@mnot.net>, "tcpm@ietf.org" <tcpm@ietf.org>, HTTP Working Group <ietf-http-wg@w3.org>, Daniel Stenberg <daniel@haxx.se>, Patrick McManus <pmcmanus@mozilla.com>
Subject: Re: [tcpm] TCP Tuning for HTTP - update
X-BeenThere: tcpm@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: TCP Maintenance and Minor Extensions Working Group <tcpm.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tcpm>, <mailto:tcpm-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/tcpm/>
List-Post: <mailto:tcpm@ietf.org>
List-Help: <mailto:tcpm-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tcpm>, <mailto:tcpm-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 17 Aug 2016 23:02:52 -0000

This is a bit of a side track, but...

On 8/17/2016 3:51 PM, Adrien de Croy wrote:
>
>
> ------ Original Message ------
> From: "Joe Touch" <touch@isi.edu>
>
>> They want something different for a variety of reasons - the same kind
>> of airtight logic by which TBL developed HTTP instead of using FTP (he
>> said that you'd only typically need one file from a location, so why
>> open 2 connections? now we're stuck trying to mux control and data
>> rather than having a proper solution that already existed at the time -
>> it took nearly a decade for HTTP servers to catch up to the performance
>> of FTP).
>>
> Whilst I've been finding this discussion very informative and
> interesting, I have to raise an objection on this point.
>
> FTP was never going to be suitable for the web, and a very simple RTT
> analysis shows that.
>
> Apart from initial 3 way TCP handshake and close, which is the same
> for both, with http you have a request and a response, whereas FTP
> requires you to wait for the server welcome, log in, negotiate another
> port, set up a data connection in addition to retrieving the file

That's only the first time you go somewhere new. You don't need to close
both ports so quickly; the control channel can stay open and you thus
avoid HOL blocking between data and control (and thus the need to
chunk-and-mux within persistent HTTP), which increases other delays for
HTTP.

Neither protocol matches exactly what is really needed for a true
transaction-oriented protocol.

> ...
> Then try adding all the firewall issues due to transmitting data
> connection endpoint information over the control connection and it's
> no surprise FTP is not favoured for downloads.

FTP had a passive mode even back then that avoids this issue. It also
had suspend/resume, compression, and format conversion.

Joe