Re: [LOOPS] [nwcrg] IETF106: LOOPS side meeting on Tuesday 08:30, Orchard Room

Michael Welzl <michawe@ifi.uio.no> Mon, 06 January 2020 08:55 UTC

Return-Path: <michawe@ifi.uio.no>
X-Original-To: loops@ietfa.amsl.com
Delivered-To: loops@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 050B0120098 for <loops@ietfa.amsl.com>; Mon, 6 Jan 2020 00:55:08 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.899
X-Spam-Level:
X-Spam-Status: No, score=-1.899 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] 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 Gtwo2boJu7-Z for <loops@ietfa.amsl.com>; Mon, 6 Jan 2020 00:55:04 -0800 (PST)
Received: from mail-out01.uio.no (mail-out01.uio.no [IPv6:2001:700:100:10::50]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id DE241120116 for <loops@ietf.org>; Mon, 6 Jan 2020 00:55:02 -0800 (PST)
Received: from mail-mx12.uio.no ([129.240.10.84]) by mail-out01.uio.no with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) (Exim 4.92.3) (envelope-from <michawe@ifi.uio.no>) id 1ioO9v-00052n-M9; Mon, 06 Jan 2020 09:54:47 +0100
Received: from ti0182q160-4250.bb.online.no ([82.164.31.203] helo=[10.0.0.14]) by mail-mx12.uio.no with esmtpsa (TLS1.2:ECDHE-RSA-AES256-GCM-SHA384:256) user michawe (Exim 4.93) (envelope-from <michawe@ifi.uio.no>) id 1ioO9t-0003Gm-JL; Mon, 06 Jan 2020 09:54:47 +0100
From: Michael Welzl <michawe@ifi.uio.no>
Message-Id: <8484FB1B-AAB8-45D8-B838-89AD58F4B3FD@ifi.uio.no>
Content-Type: multipart/alternative; boundary="Apple-Mail=_7C9BFF23-E98D-44E9-B975-D72E919C561F"
Mime-Version: 1.0 (Mac OS X Mail 12.4 \(3445.104.11\))
Date: Mon, 06 Jan 2020 09:54:41 +0100
In-Reply-To: <abe6495a7d6e4b89bea3c48bd62c0c50@huawei.com>
Cc: Stuart William Card <stu.card@critical.com>, Carsten Bormann <cabo@tzi.org>, "loops@ietf.org" <loops@ietf.org>
To: "Zhouxingwang (Joe)" <zhouxingwang@huawei.com>
References: <AAF1E19E-37C1-4A9D-B92A-621054B06AF6@tzi.org> <c172b80c-04ee-9786-153f-9e1dda57fdd8@steinwurf.com> <3D026CEF-AF7D-4CDE-8A5B-8CE5DCF749D1@tzi.org> <163A8040-9B13-43AA-8917-F75D984B0EBF@tzi.org> <26708398-5DEB-478E-8CB8-D406A8B874FF@tzi.org> <7DC0B005-8BA2-4D80-8CDF-4E2AE7EA96F3@tzi.org> <24526f0dbdcbdb65951d16cb5770fcbe.squirrel@www.critical.com> <A5F38E44-F83A-41EC-AFF6-90EDFFFDF057@tzi.org> <266cb00cb46ed971f3055a086b421312.squirrel@www.critical.com> <abe6495a7d6e4b89bea3c48bd62c0c50@huawei.com>
X-Mailer: Apple Mail (2.3445.104.11)
X-UiO-SPF-Received: Received-SPF: neutral (mail-mx12.uio.no: 82.164.31.203 is neither permitted nor denied by domain of ifi.uio.no) client-ip=82.164.31.203; envelope-from=michawe@ifi.uio.no; helo=[10.0.0.14];
X-UiO-Spam-info: not spam, SpamAssassin (score=-5.0, required=5.0, autolearn=disabled, HTML_MESSAGE=0.001, UIO_MAIL_IS_INTERNAL=-5, uiobl=NO, uiouri=NO)
X-UiO-Scanned: DB4F1B750402E1CD1775C04671AA606C46FEFBB6
Archived-At: <https://mailarchive.ietf.org/arch/msg/loops/-R5FCyL5stObGFTQa-1BEEg4-JQ>
Subject: Re: [LOOPS] [nwcrg] IETF106: LOOPS side meeting on Tuesday 08:30, Orchard Room
X-BeenThere: loops@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Local Optimizations on Path Segments <loops.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/loops>, <mailto:loops-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/loops/>
List-Post: <mailto:loops@ietf.org>
List-Help: <mailto:loops-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/loops>, <mailto:loops-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 06 Jan 2020 08:55:08 -0000

[dropping NWCRG and DTN to reduce noise a bit]


Hi,

Yes, Linux TCP has indeed been quite robust to re-ordering for many years, see here for a quite detailed study:
https://www.duo.uio.no/handle/10852/9034 <https://www.duo.uio.no/handle/10852/9034>

Cheers,
Michael


> On Jan 6, 2020, at 9:47 AM, Zhouxingwang (Joe) <zhouxingwang@huawei.com> wrote:
> 
> Hi,
> 
> It seems Linux TCP is much more out-of-order tolerant than we think.
> 
> 1) TCP can dynamically adjust flow reordering level, not stick to 3. (https://www.kernel.org/doc/Documentation/networking/ip-sysctl.txt)
> tcp_reordering - INTEGER Initial reordering level of packets in a TCP stream.
> 	TCP stack can then dynamically adjust flow reordering level
> 	between this initial value and tcp_max_reordering
> 	Default: 3
> tcp_max_reordering - INTEGER Maximal reordering level of packets in a TCP stream. 300 is a fairly conservative value, but you might increase it
> 	if paths are using per packet load balancing (like bonding rr mode) Default: 300
> 
> 2) RACK has been enabled by default in Linux for loss detection since kernel4.4. (https://kernelnewbies.org/Linux_4.4) 
> tcp_recovery - INTEGER
> 	This value is a bitmap to enable various experimental loss recovery
> 	features.
> 
> 	RACK: 0x1 enables the RACK loss detection for fast detection of lost
> 	      retransmissions and tail drops. It also subsumes and disables
> 	      RFC6675 recovery for SACK connections.
> 	RACK: 0x2 makes RACK's reordering window static (min_rtt/4).
> 	RACK: 0x4 disables RACK's DUPACK threshold heuristic
> 
> 	Default: 0x1
> 
> The retransmission conflict between TCP and other layer will not be a big issue.
> 
> Thanks
> Joe
> 
> -----Original Message-----
> From: nwcrg [mailto:nwcrg-bounces@irtf.org] On Behalf Of Stuart William Card
> Sent: Monday, January 06, 2020 9:46 AM
> To: Carsten Bormann <cabo@tzi.org>
> Cc: nwcrg@irtf.org; loops@ietf.org; dtn@ietf.org
> Subject: Re: [nwcrg] [LOOPS] IETF106: LOOPS side meeting on Tuesday 08:30, Orchard Room
> 
> Carsten --
> 
> Thanks for your thoughtful response. I'll try to focus my inputs. :-)
> 
>> ...
>> (1) ... more intricate (and timely) knowledge of the critical path
> segment...
>> (2) techniques such as TCP splitting allowed mitigating some...
>> of the latency induced performance issues end-to-end protocols exhibited...
>> With increasing use of encryption... (2) is going away...
>> (1) will stay relevant... where that knowledge can be provided...
>> What LOOPS is trying to do is providing a protocol that can help even 
>> in the absence of both (1) and (2)...
>> recovering packets can lead to reordering...
>> applications will need to be part of the picture...
>> LOOPS itself will need to focus on a more narrow set of problems and 
>> opportunities, and this is the time to discuss whether we got that 
>> narrowing right in the current charter proposal...
> 
> Agreed. Further, not only transport but also network layer encryption kills simple approaches to (2), leaving AFAIK only multipath or trading increased mean latency to reduce latency variance.
> 
> Many of us have suffered from suboptimal and sometimes unanticipated interactions between link and transport layer behaviors (retransmission in both, flow control in the data link, congestion control in the transport).
> Application layer adaptive behaviors (e.g. video streaming that switches dynamically during a session among different source coding rates based upon end to end performance as it varies) further complicate this. LOOPS will be yet another interacting control loop. In the worst case, a non-congestion loss of a link layer frame could lead to:
> - data link retransmission
> - LOOPS retransmission
> - transport retransmission
> - transport backoff
> - application rate downshift
> All at once! Presumably we can't prevent this altogether but want to minimize its occurrence.
> 
> The charter looks good. I suggest broadening its scope of consideration of cross-layer interactions: not just w/transport congestion control, but also w/retransmission, misordering & resequencing at all layers.
> 
> --
> Stuart W. Card, VP & Chief Scientist
> Critical Technologies Inc. (CTI)
> <stu.card@critical.com>
> 
> 
> _______________________________________________
> nwcrg mailing list
> nwcrg@irtf.org
> https://www.irtf.org/mailman/listinfo/nwcrg
> 
> -- 
> LOOPS mailing list
> LOOPS@ietf.org
> https://www.ietf.org/mailman/listinfo/loops