Re: [tsvwg] New Version Notification for draft-herbert-tcp-in-udp-00.txt

Michael Welzl <michawe@ifi.uio.no> Mon, 14 August 2023 07:30 UTC

Return-Path: <michawe@ifi.uio.no>
X-Original-To: tsvwg@ietfa.amsl.com
Delivered-To: tsvwg@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 80275C14CE5F for <tsvwg@ietfa.amsl.com>; Mon, 14 Aug 2023 00:30:45 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.007
X-Spam-Level:
X-Spam-Status: No, score=-2.007 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=unavailable autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=ifi.uio.no
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 4aby-SaFfExT for <tsvwg@ietfa.amsl.com>; Mon, 14 Aug 2023 00:30:40 -0700 (PDT)
Received: from mail-out04.uio.no (mail-out04.uio.no [IPv6:2001:700:100:8210::76]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 4C2B9C151084 for <tsvwg@ietf.org>; Mon, 14 Aug 2023 00:30:39 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=ifi.uio.no; s=key2103; h=References:To:Cc:In-Reply-To:Date:Subject:Mime-Version: Content-Type:Message-Id:From:Sender:Reply-To:Content-Transfer-Encoding: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=6ULZvrjbgN0I7cef2EnuMJNyYxo7DuCKjJq+YJYXJqY=; b=e1KFKBjclpeHKz6TlZIVwRuNlA SenDmkvfVarjEYKmd31qV8k57ojmWRXrNRGY/+Nqe0WyPkIlGSIDrsf03kOSdD2ZDGfKPZhvP4NKY Dun2nU65S7bKIZIQgKYMkVc8vwhrJY8liVCW3pkke8Ey+5+3AB6uBjXDrEMo951F4L4QGfBqX9fJv 98wfHVCTXrfA2WVJTABMytQ/LV6Iww/JyXmW45rKxxbc60WYbeOgnSxZbXk7QKQNdRu99GRJBVXUF B1Bu3KAJdWwsBBxJufmvxeUH/AjIJCfgO3ErEegVM9BXrOliMTbMjmgzlwlJEYMfduKXZs6qJhuit LunDA2bA==;
Received: from mail-mx11.uio.no ([129.240.10.83]) by mail-out04.uio.no with esmtps (TLS1.2) tls TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from <michawe@ifi.uio.no>) id 1qVS25-000mdN-0B; Mon, 14 Aug 2023 09:30:33 +0200
Received: from collaborix.ifi.uio.no ([129.240.69.78] helo=smtpclient.apple) by mail-mx11.uio.no with esmtps (TLS1.2:ECDHE-ECDSA-AES256-GCM-SHA384:256) (Exim 4.96) (envelope-from <michawe@ifi.uio.no>) id 1qVS23-0003AL-0R; Mon, 14 Aug 2023 09:30:32 +0200
From: Michael Welzl <michawe@ifi.uio.no>
Message-Id: <F3861EFB-4982-48BB-9C2C-4FC200DBD4E5@ifi.uio.no>
Content-Type: multipart/alternative; boundary="Apple-Mail=_EE7E6D86-91FB-41D1-B99B-149316B3D94F"
Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3696.120.41.1.1\))
Date: Mon, 14 Aug 2023 09:30:31 +0200
In-Reply-To: <CALx6S36-4d=48UMKusabbRnQiZ7B=0uTvd-Oksrnwj9bxN7xmg@mail.gmail.com>
Cc: tsvwg <tsvwg@ietf.org>, safiqul.islam@oslomet.no
To: Tom Herbert <tom=40herbertland.com@dmarc.ietf.org>
References: <169179236696.36797.6075120394432124931@ietfa.amsl.com> <CALx6S36-4d=48UMKusabbRnQiZ7B=0uTvd-Oksrnwj9bxN7xmg@mail.gmail.com>
X-Mailer: Apple Mail (2.3696.120.41.1.1)
X-UiO-SPF-Received: Received-SPF: neutral (mail-mx11.uio.no: 129.240.69.78 is neither permitted nor denied by domain of ifi.uio.no) client-ip=129.240.69.78; envelope-from=michawe@ifi.uio.no; helo=smtpclient.apple;
X-UiO-Spam-info: not spam, SpamAssassin (score=-5.0, required=5.0, autolearn=disabled, HTML_MESSAGE=0.001, T_PDS_SHORTFWD_URISHRT_QP=0.01, UIO_MAIL_IS_INTERNAL=-5)
X-UiO-Scanned: 6E5A2D4C979F8796524C46C4BB915AB2B0732CF7
X-UiOonly: D4C3077AA6FC843BA3DA7EA5041961646E42DCBA
Archived-At: <https://mailarchive.ietf.org/arch/msg/tsvwg/glznt1aNMqzBC5CGE-e65oBffc8>
Subject: Re: [tsvwg] New Version Notification for draft-herbert-tcp-in-udp-00.txt
X-BeenThere: tsvwg@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: Transport Area Working Group <tsvwg.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tsvwg>, <mailto:tsvwg-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/tsvwg/>
List-Post: <mailto:tsvwg@ietf.org>
List-Help: <mailto:tsvwg-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tsvwg>, <mailto:tsvwg-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 14 Aug 2023 07:30:45 -0000

Dear Tom, dear everyone else @ TSVWG,

I’m (somewhat obviously, if you see what I write below) strongly in favour of this draft - and also happy to help with it.  This idea (in some form) has been proposed multiple times over the years, and never took off; perhaps the time is now right?
Below is some material.


Earlier similar proposals:
====================

The first appearance I know of:  https://datatracker.ietf.org/doc/html/draft-denis-udp-transport-00 <https://datatracker.ietf.org/doc/html/draft-denis-udp-transport-00>   (likely it isn’t the first to exist!)
Much later:  https://datatracker.ietf.org/doc/html/draft-cheshire-tcp-over-udp-00 <https://datatracker.ietf.org/doc/html/draft-cheshire-tcp-over-udp-00>
and finally, our own effort:  https://datatracker.ietf.org/doc/html/draft-welzl-tcp-ccc <https://datatracker.ietf.org/doc/html/draft-welzl-tcp-ccc>
which I presented in ICCRG, at IETF-95:  https://folk.universitetetioslo.no/michawe/research/publications/ietf95-iccrg-tcp-in-udp.pdf <https://folk.universitetetioslo.no/michawe/research/publications/ietf95-iccrg-tcp-in-udp.pdf>



Work showing benefits:
===================

There may be several reasons to do this. Our own interest, back then, was in implementing (single-path!) coupled congestion control in the style of RFC 8699 for TCP.
Such coupling can only work when we know that the connections traverse the same bottleneck - either via measurement (RFC 8382), or because, as with this encapsulation, they carry the same outer 5-tuple.
Our coupling is lightweight, as it doesn’t require re-vamping the entire congestion control code like the congestion manager. It still yields all the benefits of a single congestion control instance, just like a multi-streaming transport would have: lower latency and packet loss from less competition, and the ability to execute precise prioritization.

This was done in the context of Safiqul Islam’s Ph.D. thesis. These publications describe the benefits:

Safiqul Islam, Michael Welzl, Kristian Hiorth, David Hayes, Grenville Armitage, Stein Gjessing: "ctrlTCP: Reducing Latency through Coupled, Heterogeneous Multi-Flow TCP Congestion Control", IEEE INFOCOM Global Internet Symposium (GI) workshop (GI 2018), Honolulu, HI, April 2018. DOI 10.1109/INFCOMW.2018.8406887
https://ieeexplore.ieee.org/document/8406887 <https://ieeexplore.ieee.org/document/8406887>
Preprint: https://folk.universitetetioslo.no/michawe/research/publications/ctrltcp-infocom-gi-2018.pdf <https://folk.universitetetioslo.no/michawe/research/publications/ctrltcp-infocom-gi-2018.pdf>

and, focusing on the benefit of ramping up cwnd faster when joining other connections:
Safiqul Islam, Michael Welzl: "Start Me Up: Determining and Sharing TCP's Initial Congestion Window", ACM, IRTF, ISOC Applied Networking Research Workshop 2016 (ANRW 2016), Berlin, Germany, 16 July 2016. DOI https://doi.org/10.1145/2959424.2959440 <https://doi.org/10.1145/2959424.2959440>
https://dl.acm.org/authorize?N16076 <https://dl.acm.org/authorize?N16076>


Code:
======

We have ( ...somewhere. I’ll be happy to dig for it if someone wants it! ) a FreeBSD implementation of both the congestion control coupling and the encapsulation, and it’s described in more detail here:
https://www.duo.uio.no/handle/10852/51926 <https://www.duo.uio.no/handle/10852/51926>


Cheers,
Michael



> On 12 Aug 2023, at 00:22, Tom Herbert <tom=40herbertland.com@dmarc.ietf.org> wrote:
> 
> Hi,
> 
> This is a draft describing how TCP could be encapsulated in UDP. This
> would be useful if UDP really is to be the "new network layer" and we
> want to use UDP Options with TCP to carry network layer options.
> 
> Thanks,
> Tom
> 
> 
> ---------- Forwarded message ---------
> From: <internet-drafts@ietf.org>
> Date: Fri, Aug 11, 2023 at 3:19 PM
> Subject: New Version Notification for draft-herbert-tcp-in-udp-00.txt
> To: Tom Herbert <tom@herbertland.com>
> 
> 
> 
> A new version of I-D, draft-herbert-tcp-in-udp-00.txt
> has been successfully submitted by Tom Herbert and posted to the
> IETF repository.
> 
> Name:           draft-herbert-tcp-in-udp
> Revision:       00
> Title:          TCP-in-UDP Encapsulation
> Document date:  2023-08-11
> Group:          Individual Submission
> Pages:          10
> URL:            https://www.ietf.org/archive/id/draft-herbert-tcp-in-udp-00.txt
> Status:         https://datatracker.ietf.org/doc/draft-herbert-tcp-in-udp/
> Htmlized:       https://datatracker.ietf.org/doc/html/draft-herbert-tcp-in-udp
> 
> 
> Abstract:
>   This document specifies a method of encapsulating TCP protocol
>   packets within UDP headers.  TCP-in-UDP is useful in situations where
>   network capabilities specific to UDP can be leveraged for TCP
>   packets.
> 
> 
> 
> 
> The IETF Secretariat
>