Re: [Taps] I-D Action: draft-ietf-taps-transports-06.txt

Joe Touch <touch@isi.edu> Fri, 17 July 2015 17:28 UTC

Return-Path: <touch@isi.edu>
X-Original-To: taps@ietfa.amsl.com
Delivered-To: taps@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 55C0A1ACD27 for <taps@ietfa.amsl.com>; Fri, 17 Jul 2015 10:28:27 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.91
X-Spam-Level:
X-Spam-Status: No, score=-6.91 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_HI=-5, T_RP_MATCHES_RCVD=-0.01] 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 MXmkMrXZwwUU for <taps@ietfa.amsl.com>; Fri, 17 Jul 2015 10:28:26 -0700 (PDT)
Received: from boreas.isi.edu (boreas.isi.edu [128.9.160.161]) (using TLSv1 with cipher ECDHE-RSA-AES128-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 3F3701ACD23 for <taps@ietf.org>; Fri, 17 Jul 2015 10:28:26 -0700 (PDT)
Received: from [128.9.184.152] ([128.9.184.152]) (authenticated bits=0) by boreas.isi.edu (8.13.8/8.13.8) with ESMTP id t6HHRtEh028349 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES128-SHA bits=128 verify=NOT); Fri, 17 Jul 2015 10:27:56 -0700 (PDT)
To: Karen Elisabeth Egede Nielsen <karen.nielsen@tieto.com>, taps@ietf.org
References: <20150706220631.6336.219.idtracker@ietfa.amsl.com> <456cadf6d459a1c9e2c508af7b5470de@mail.gmail.com> <55A6A31B.3090500@isi.edu> <0047fc6ff18d95970285941d02534db4@mail.gmail.com> <55A7EE70.9040308@isi.edu> <19919f75ba4ebb620630739e023745de@mail.gmail.com>
From: Joe Touch <touch@isi.edu>
X-Enigmail-Draft-Status: N1110
Message-ID: <55A93B1B.5020703@isi.edu>
Date: Fri, 17 Jul 2015 10:27:55 -0700
User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:38.0) Gecko/20100101 Thunderbird/38.0.1
MIME-Version: 1.0
In-Reply-To: <19919f75ba4ebb620630739e023745de@mail.gmail.com>
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: <http://mailarchive.ietf.org/arch/msg/taps/BJ6ouYqw0NzEZxgJFLn8OtY40HA>
Cc: touch@isi.edu
Subject: Re: [Taps] I-D Action: draft-ietf-taps-transports-06.txt
X-BeenThere: taps@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Discussions on Transport Services <taps.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/taps>, <mailto:taps-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/taps/>
List-Post: <mailto:taps@ietf.org>
List-Help: <mailto:taps-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/taps>, <mailto:taps-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 17 Jul 2015 17:28:27 -0000

Hi, Kasren,

[Michael]:
>>> For SCTP we allow for that Nagle is disabled on some streams (streams
>>> with high scheduling priority) and not on others. This is done exactly
>>> for this purpose.

[Joe]:
>> Sure, but that's also why it doesn't make sense for TCP.

> [Karen ] Yes and then also why Nagle off for TCP may give undesired and
> contra-productive results from a latency perspective.
> But then TCP applications may not typically have the application traffic
> patterns that gives these undesired latency effects of disabling Nagle.

The one thing we should have learned about TCP is to not make
assumptions about traffic patterns:

- (paraphrasing) after going idle, we need to decide whether to slam
CWND down or keep it open, and we need a "time since last sent"; we
don't have that timer, but because TCP traffic is mostly symmetric,
let's use "time since last received" (VJ88)
	Result: burst the entire CWND on the next HTTP request

- TCP congestion control can assume infinite sources
	Result: good performance for elephants but bad for mice
	or transaction sequences (web)

- TCP should not send large amounts of small packets because they create
congestion, e.g., Telnet (Nagle)
	Result: very bad delays on protocols where multibyte
	messages can straddle packet boundaries, e.g.,
	Telnet with Unicode, Web, etc.

	i.e., Nagle fails exactly for the kinds of uses
	it was intended

Joe