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

Joe Touch <touch@isi.edu> Wed, 15 July 2015 18:15 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 5FF921ACDD7 for <taps@ietfa.amsl.com>; Wed, 15 Jul 2015 11:15:19 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.011
X-Spam-Level:
X-Spam-Status: No, score=-5.011 tagged_above=-999 required=5 tests=[BAYES_40=-0.001, 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 2stqhx0bIGof for <taps@ietfa.amsl.com>; Wed, 15 Jul 2015 11:15:18 -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 09D431ACEB1 for <taps@ietf.org>; Wed, 15 Jul 2015 11:15:18 -0700 (PDT)
Received: from [128.9.160.211] (mul.isi.edu [128.9.160.211]) (authenticated bits=0) by boreas.isi.edu (8.13.8/8.13.8) with ESMTP id t6FIEp3O023932 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES128-SHA bits=128 verify=NOT); Wed, 15 Jul 2015 11:14:54 -0700 (PDT)
Message-ID: <55A6A31B.3090500@isi.edu>
Date: Wed, 15 Jul 2015 11:14:51 -0700
From: Joe Touch <touch@isi.edu>
User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:31.0) Gecko/20100101 Thunderbird/31.7.0
MIME-Version: 1.0
To: Karen Elisabeth Egede Nielsen <karen.nielsen@tieto.com>, taps@ietf.org
References: <20150706220631.6336.219.idtracker@ietfa.amsl.com> <456cadf6d459a1c9e2c508af7b5470de@mail.gmail.com>
In-Reply-To: <456cadf6d459a1c9e2c508af7b5470de@mail.gmail.com>
Content-Type: text/plain; charset="windows-1252"
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/p9uLAINCoc1SKBHUEqnEIX-zCxA>
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: Wed, 15 Jul 2015 18:15:19 -0000


On 7/15/2015 7:51 AM, Karen Elisabeth Egede Nielsen wrote:
> Hi,
> 
> Please find a very few comments to the document. Nothing major. Please use
> if you see fit and only then :-)
> 
> Section 1: End First Paragraph:
> 
> Here it is said that a transport service feature may be minimal latency.
> Opposed to the other features listed here,
> like e.g. in-order or reliable delivery, then minimal latency seems a more
> delicate obtainable feature; How one best obtain it
> within the services provided by a certain transport protocol, may depend
> quite heavily on the application traffic pattern (unless CPU and network
> resources are unlimited).
> Also minimal latency is not a feature which any of the protocols described
> in the document has within its list of features (I think) or
> are you thinking minimal latency and best effort transport service (like
> UDP) - Or are you thinking some smart protocol of the future which will
> deduce how to best
> provide a minimal latency service for a particular application flow over a
> specific E-to-E path ?

FWIW, UDP doesn't minimize latency; it (arguably) minimizes the latency
created by the transport layer at the expense of ordered, reliable
delivery and congestion control.

So there are several levels of the latency issue:

	- minimize the latency ADDED by the transport layer
	- reduce the latency seen by the app
	(which can involve more active interaction with the network
	layer, anticipation, etc.)

Note also that latency is not a single metric nor a meaningful
standalone metric:

	1. latency between two parties is a property *of a message*,
	i.e., it requires knowing the message size

	2. latency includes both basic and higher order effects;
	the basic is "delay", the higher order include "jitter" etc.
	Many common delay-sensitive use cases are really mostly
	jitter sensitive.

...
> I am not sure if Connection oriented  and Feature negotiation should be
> split into two features ?

If you don't share state (i.e., what we tend to call a "connection"),
what is the meaning of feature negotiation?

...
> Disabling Nagle does not always give the lowest latency and further then I
> think that we are missing the good side of Nagle in the present text.

Nagle reduces the number of small packets at the expense of introducing
transport delay. Turning it off increases the number of small packets
and reduces the transport delay.

Although it's theoretically possible for the larger number of packets to
cause delays larger than those that Nagle aggregation would induce, in
practice the Nagle delays are several orders of magnitude larger.

Using byte-based congestion control, the larger number of packets would
have no effect. Using packet-based congestion control, the larger number
of packets would reduce latency (by opening up the window faster,
keeping it open longer, etc.) unless the increased number of packets
itself is the bottleneck.

So the general assumption that turning off Nagle will reduce latency
should be reasonable. Do you have a counterexample seen in the wild?

Joe