Re: [tcpm] [iccrg] Fwd: [tcpPrague] Implementation and experimentation of TCP Prague/L4S hackaton at IETF104

Dave Taht <dave.taht@gmail.com> Fri, 15 March 2019 10:46 UTC

Return-Path: <dave.taht@gmail.com>
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 4BD29127A73 for <tcpm@ietfa.amsl.com>; Fri, 15 Mar 2019 03:46:46 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.998
X-Spam-Level:
X-Spam-Status: No, score=-1.998 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
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 FpQY96mMAQQp for <tcpm@ietfa.amsl.com>; Fri, 15 Mar 2019 03:46:41 -0700 (PDT)
Received: from mail-qt1-x829.google.com (mail-qt1-x829.google.com [IPv6:2607:f8b0:4864:20::829]) (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 6A6FC12865E for <tcpm@ietf.org>; Fri, 15 Mar 2019 03:46:41 -0700 (PDT)
Received: by mail-qt1-x829.google.com with SMTP id k2so9529510qtm.1 for <tcpm@ietf.org>; Fri, 15 Mar 2019 03:46:41 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=myDgnxek1A0g6mVA8qKx0rtEvTjX98r2YbQxJa5nzkk=; b=K1H4RkB5e94N/gjlVhqnm2OAsFasBNP1H8xZDeFt67VpkYwiyxLRWL9FRyiupJZn/H YWJ8WSj5LtaNkzdJuCldFFIjl4s+udDqtssCKcKPB4U1eOrNXcBO/coyQSOmI7jwe2Z/ PBV/jyYuQoSzxZxuIGjb6E/3ySWcZR84nCPuHqeEbcFE7zKOcBnsMLr9WLkbtADvYjkv VY5samQ+S/Ehz81/ZDSv7oDMH5YlXqLpkV3ClUxd8RN0hVkbIeWDvX034uUKS/mT97m9 iTAdW93tyH7djuWBO6cR1sEdk7Vo9aO6YwmWeWHy1sQb7FEwE6V+ntow79mYIIoIlYVc MevQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=myDgnxek1A0g6mVA8qKx0rtEvTjX98r2YbQxJa5nzkk=; b=WjjgvdqNXYGXmmc0dfoOk/Dxw/M5n3fITXjiid/CW2/fzC5HaaSvtiw9ALRHEs3QDK 8P8VraXUWG/6qe9KLwr58nR418hL6ZCPDI8mXcvLLmDMSqTjWDg5q+vKh+F+T/Aa7n6N j0rV9CAwWkho3yHJXhuZmpr0LGXlaJFGNRr4dBtyzOKcigUYU/iQ+dQi1oKHc85X15p8 1fd3q9YgNQqnO9LhNRxk79E/LvE4hQv/laxroaQAncqvg6MPp7j/9kkXuuuemAN/S8RB /2sj0PWX2Ro3NRBhcWSoNUFIB4lgxOQf2/XX0naS8DaAS0dgTL0lGnkSKJm81uW6c89Z JiSA==
X-Gm-Message-State: APjAAAUoTG35kAa/rZsdi3A4h9ZeVQcjdNQW6udk5khAXfDrW8tG5oAJ XFLghiPN2IpLmLMWiwXmEH6grI0BbWWZ4j9JCueWV/nW
X-Google-Smtp-Source: APXvYqzb92DFRl4jyS7VknHEZ2diUVpoGoSZx1HrsA/iMdO3RhZ+1n+qHisftZkwchlFH7qOx5A8iqNkoaequRsCidQ=
X-Received: by 2002:a0c:a485:: with SMTP id x5mr1906210qvx.206.1552646800307; Fri, 15 Mar 2019 03:46:40 -0700 (PDT)
MIME-Version: 1.0
References: <AM0PR07MB48198660539171737E4CCAB1E0730@AM0PR07MB4819.eurprd07.prod.outlook.com> <d91a6a71-5898-9571-2a02-0d9d83839615@bobbriscoe.net>
In-Reply-To: <d91a6a71-5898-9571-2a02-0d9d83839615@bobbriscoe.net>
From: Dave Taht <dave.taht@gmail.com>
Date: Fri, 15 Mar 2019 03:46:28 -0700
Message-ID: <CAA93jw5MTdn9EQgpZ0xrjqEi7UKqH3H_741anoB+pa0dtD=fpA@mail.gmail.com>
To: Bob Briscoe <ietf@bobbriscoe.net>
Cc: tcpm IETF list <tcpm@ietf.org>, iccrg IRTF list <iccrg@irtf.org>, ecn-sane@lists.bufferbloat.net, bloat <bloat@lists.bufferbloat.net>
Content-Type: multipart/alternative; boundary="000000000000fe7ad705841fc0ee"
Archived-At: <https://mailarchive.ietf.org/arch/msg/tcpm/TV1uztVc9g7OPhaVpTEBeFtIz4Y>
Subject: Re: [tcpm] [iccrg] Fwd: [tcpPrague] Implementation and experimentation of TCP Prague/L4S hackaton at IETF104
X-BeenThere: tcpm@ietf.org
X-Mailman-Version: 2.1.29
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: Fri, 15 Mar 2019 10:46:46 -0000

Bufferbloat.net's ecn-sane working group members have a co-ordinated
response to your efforts brewing but it's not ready yet. We have a
worldwide team of linux and freebsd developers co-ordinating on landing
code for our competing proposal "Some Congestion Experienced", which we
submitted to tsvwg last sunday.

That draft is under continuous revision, here:

https://github.com/dtaht/bufferbloat-rfcs/blob/master/sce/draft-morton-taht-tsvwg-sce.txt

Our Linux and FreeBSD team is also flying into prague for SCE presentations
at netdevconf and ietf.

Some background to this: after the L4S/TCP Prague/and dualpi experiments
appeared stalled out indefinitely in the IETF, and with our own frustration
with IETF processes, bufferbloat.net project members publicly formed our
own working group to look into the problems with ecn, back in august of
last year.

Its charter is here: https://www.bufferbloat.net/projects/ecn-sane/wiki/

We were unaware, until last month, that the cable industry had 16 months
back gone and formed its own private working group also, and was intending
to turn the tcp prague/l4s/dualpi IETF "experiments" into an actual DOCSIS
standard.

Our SCE proposal appears to be backward compatible with the existing
10s-100s of millions of ecn-enabled fq_codel[1] and sch_cake[2]
deployments, and doesn't require any changes to any RFC3168 tcps (or any
tcp-friendly congestion control) at all in order to basically work.
tcp-prague is subtly incompatible with that, and dualpi, more so. Our
proposal is different also, it proposes some receiver side changes in order
to get the full benefit of SCE while remaining backward compatible with the
existing meaning of the CE codepoint.

In either case, either approach essentially permanently redefines the ECT_1
codepoint incompatibly, once and for all, and for all time. This is a final
battle over the meaning of a single bit in IP, and I expect the debates to
be as difficult as the ones described in
https://www.ietf.org/rfc/ien/ien137.txt - I would really, really, really
prefer that they stay technical and not veer into politics, but I have
little hope for that.

The members of the ecn-sane working group are delighted to finally hear
that running code for tcp-prague might land this ietf, and look forward to
finally testing the whole l4s/tcpprague/dualpi architecture in conjunction
with the flent.org 's and irtt's exhaustive suite of tests and servers in
the cloud in the coming months, both against our existing, deployed,
fq_codel, fq_pie, cake and pie derived solutions and our new SCE proposal.
We hope to finally be able to write new tests for flent in particular, that
can show tcpprague off in the ways that are important to those developing
it. Flent has some basic dctcp tests, but nothing that can get down below a
20ms sample rate on modern hardware. (currently. It's easy to add tests,
flent is written in python)

We also hope that more test tools and implementations in ns2 and ns3 show
up for tcpprauge  and dualpi show up soon also, from members of those
projects.

Note: sunday's dual-pi linux submission was kicked back from the linux
networking developers due to some technical and legal problems with linux
net-next HEAD ( https://patchwork.ozlabs.org/patch/1054521/  ) , and I do
hope that a corrected version lands soon, so we can safely test it with
current versions of OpenWrt, etc.

Finally, running code. Will we find consensus?

Thx!


[1] https://tools.ietf.org/html/rfc8290
[2] sch_cake was available for 3 years out of tree and was mainlined last
august, in linux 4.19. It is partially described by "Piece of CAKE: A
Comprehensive Queue Management Solution for Home Gateways" "
https://arxiv.org/pdf/1804.07617.pdf

A second paper describing its fq_codel-derived "cobalt" AQM algorithm is
awaiting publication in a peer reviewed journal. It has been part of
openwrt and the related sqm-scripts for many years and is widely deployed
on multiple commercial products, such as those from eero and evenroute.

Cake has a docsis specific mode which we longed for cablelabs to evaluate.


On Fri, Mar 15, 2019 at 2:33 AM Bob Briscoe <ietf@bobbriscoe.net> wrote:

> Forwarding to tcpm & iccrg - apologies if you were already on one of the
> lists that received this.
>
> Olivier has been working hard on integrating the pieces of a Linux
> implementation of TCP Prague, and is close to having a version ported
> against the tip of the Linux mainline tree. This is his request for more
> people to get involved.
>
>
> Bob
>
>
> -------- Forwarded Message --------
> Subject: [tcpPrague] Implementation and experimentation of TCP Prague/L4S
> hackaton at IETF104
> Date: Wed, 6 Mar 2019 10:26:05 +0000
> From: Tilmans, Olivier (Nokia - BE/Antwerp)
> <olivier.tilmans@nokia-bell-labs.com>
> <olivier.tilmans@nokia-bell-labs.com>
> To: hackathon@ietf.org <hackathon@ietf.org> <hackathon@ietf.org>,
> tcpprague@ietf.org <tcpprague@ietf.org> <tcpprague@ietf.org>
> CC: dlebrun@google.com <dlebrun@google.com> <dlebrun@google.com>, Joakim
> Misund <joakim.misund@gmail.com> <joakim.misund@gmail.com>, Bob Briscoe
> <research@bobbriscoe.net> <research@bobbriscoe.net>, Quentin De Coninck
> <quentin.deconinck@uclouvain.be> <quentin.deconinck@uclouvain.be>,
> François Michel <francois.michel@uclouvain.be>
> <francois.michel@uclouvain.be>, Mirja Kuehlewind
> <mirja.kuehlewind@tik.ee.ethz.ch> <mirja.kuehlewind@tik.ee.ethz.ch>,
> Maxime Piraux <maxime.piraux@uclouvain.be> <maxime.piraux@uclouvain.be>,
> Olga Albisser <olga@albisser.org> <olga@albisser.org>, Fabien Duchêne
> <fabien.duchene@uclouvain.be> <fabien.duchene@uclouvain.be>, De Schepper,
> Koen (Nokia - BE/Antwerp) <koen.de_schepper@nokia-bell-labs.com>
> <koen.de_schepper@nokia-bell-labs.com>
>
> Hi all,
>
> We'll be working on the "TCP Prague" congestion control/L4S architecture
> during the IETF-104 hackaton.
> This topics aims at accelerating the work that started during the IETF93
> (coincidentally also in Prague), in order to get TCP Prague to an 'usable'
> state—i.e., meet the safety requirements and have supporting materials
> (e.g., VMs, labs) to let people experiment with it. Depending on people's
> interest, prototyping something similar for QUIC is another possible output.
>
> Details and links to resources/supporting drafts are available at
> https://trac.ietf.org/trac/ietf/meeting/wiki/104hackathon#tcp-prague and
> copied below.
> Additionally, few topics will presented during netdev 0x13 the week before.
>
> See you in Prague.
>
> Best,
> Olivier
>
>
> Implementation and experimentation of TCP Prague/L4S
>
> * Champion
> * Olivier Tilmans <olivier.tilmans at nokia-bell-labs.com>
> * Projects
> * Prototype the "TCP Prague" congestion control on Linux
> * Finalize the implementation of accurate ECN (draft conformance), and
> port it on Linux v5.x * Build tooling around L4S to let people experiment
> with the technology (e.g., virtual machine, or mininet labs)
> * Work towards "QUIC Prague"
> * Resources
> * TCP Prague
> * Repository — ​https://github.com/L4STeam/tcp-prague
> * Requirements — ​
> https://tools.ietf.org/html/draft-ietf-tsvwg-ecn-l4s-id-05#page-21
> * Upcoming netdev talk —
> https://netdevconf.org/0x13/session.html?talk-tcp-prague-l4s
> * Accurate ECN
> * Specs — ​https://tools.ietf.org/html/draft-ietf-tcpm-accurate-ecn-07
> * Implementation for Linux v4.17 — ​https://github.com/mirjak/linux-accecn
> * Past netdev talk —
> https://www.netdevconf.org/2.2/session.html?kuhlewind-accecn-talk
> * Paced Chirping * Repository — ​
> https://github.com/JoakimMisund/PacedChirping
> * Upcoming netdev talk —
> https://netdevconf.org/0x13/session.html?talk-chirp
> * L4S architecture
> * Specs — ​https://tools.ietf.org/html/draft-ietf-tsvwg-l4s-arch-03
> * DualPI2 AQM
> * Specs — ​
> https://tools.ietf.org/html/draft-ietf-tsvwg-aqm-dualq-coupled-08
> * Repository — ​https://github.com/L4STeam/sch_dualpi2_upstream
> * Upcoming netdev talk —
> https://netdevconf.org/0x13/session.html?talk-DUALPI2-AQM
> * RITE Project — ​https://riteproject.eu/dctth/#code
> _______________________________________________
> tcpPrague mailing list
> tcpPrague@ietf.org
> https://www.ietf.org/mailman/listinfo/tcpprague
> _______________________________________________
> iccrg mailing list
> iccrg@irtf.org
> https://www.irtf.org/mailman/listinfo/iccrg
>


-- 

Dave Täht
CTO, TekLibre, LLC
http://www.teklibre.com
Tel: 1-831-205-9740