[tsvwg] Re: Robustness to packet reordering
David Schinazi <dschinazi.ietf@gmail.com> Fri, 07 February 2025 19:28 UTC
Return-Path: <dschinazi.ietf@gmail.com>
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 64D87C1ECA7E; Fri, 7 Feb 2025 11:28:29 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.106
X-Spam-Level:
X-Spam-Status: No, score=-2.106 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_BLOCKED=0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01] 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 ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Fc06qK4939We; Fri, 7 Feb 2025 11:28:28 -0800 (PST)
Received: from mail-ej1-x636.google.com (mail-ej1-x636.google.com [IPv6:2a00:1450:4864:20::636]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature ECDSA (P-256) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 9E387C1ED105; Fri, 7 Feb 2025 11:28:28 -0800 (PST)
Received: by mail-ej1-x636.google.com with SMTP id a640c23a62f3a-ab771575040so452369866b.1; Fri, 07 Feb 2025 11:28:28 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1738956507; x=1739561307; darn=ietf.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=OtdMGRjWp/i8PnvfqpfxKoPRXhnGUueWLIfJjSZ7gnw=; b=kSNJUYMbmuWUBCQU1DZGsKA/eAcmUyvvU0XlCKxQPxhvkhJxKfx31T/r1/sUY7cBT0 L0uROMa5Xc0e9xk/CxcThAwFQTSIH/naTjzn+QPyg4jnnnelfBwOtA4VCtsA/3309Bq0 GT43ATLx/BSPHeQo6bg3TrWBc6tISykjDuYAig7YYE6Q2qIu3E/F3EiChkVmaEa4nD9V oLHoVRa1/EmOvLHSGcnH+y9gsH/1fxLOP+eEU6XWk1ffV9Bxm2daXgKs8xiSWfF5kR9v ootoCYmEIQJkhlSSCTUNLGqxCFgg3JQB2S/I8uyxh0tpahkx+K6vaXw9J/eEE4mwWUna VwPQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738956507; x=1739561307; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=OtdMGRjWp/i8PnvfqpfxKoPRXhnGUueWLIfJjSZ7gnw=; b=doxgHjtc2LxCNRY8nkjRNcidX5/skocH4KTrveSiYsBNYx4kEcHj2NUKJaR2JDVTFa FPal7ckU3pzVg1Rw6VGY/2yswyGPAD0RG9GLjFjEg1kvq8/vnijOG5jHR3mSWDQWoJR6 zM7Z02su3n1s5yLg7Ou+dGoNBN5cD7FU6BgvvW7WQsGa8uJ4ipmmgRvYHz4jMMrQkZzu 8NJGKRcyw650jVEhow3PC/SgWFbsRw06RwhR0jLiVFH0r2H4Mn159nWFQ9hBm7g3S2Eo 3rgBHSRfGwxqIhzmNNX+54hhuhVKrEkfbPprjvO3lM05kL3jRitxQN8j4tNIgEbM0jQT FF6Q==
X-Forwarded-Encrypted: i=1; AJvYcCW5JhOlqEN9DaEfvSLKdSDHV1OIA3dUVodXwmyMcCbwASRr8bS90MXso2h2xjufTGsc6fJjGsA=@ietf.org, AJvYcCXePz00SAW36PRK8QRAUC4Hc0swubw5cxz0t8ObtxPFGz/RwDtZ20RvGdFV8e/cWjoNRl6u@ietf.org
X-Gm-Message-State: AOJu0Yy267zCUv9bpHnb5cQ8GMP1GVYQN+ilWr0lk44NEWHLF4gi15Gz mFL+jy0juAQU1BoX5avOQmOvKVYqQ+KFx35Q2y9/x/JNhAEqNc2hf0/kqGMZE8zsp+9BqePcQGi kxhn3bHSjO2XP8gDI7nXEF/H/ZTg=
X-Gm-Gg: ASbGncuFwmf2WyhDX9SfST/O+VhNZtt9wRRed33DnCHKPgm1eYhkMCg4Egjj2adbOyb x/tacgZsqHcY2w6C+Cry+GdcboGoFr1m8hQCZfCHG9UPop7/LZutLCbmo9TkvqQ8sDlPaROMcH2 E=
X-Google-Smtp-Source: AGHT+IEaTEYrHMz+3ViwUgd1yK41swcn/1af4AnLdqheXi9l3MizhObnygz+VSAshcF1X2+aUCI2Xkk+ELz0yXxNZ9U=
X-Received: by 2002:a17:907:7e97:b0:ab7:63fa:e4ae with SMTP id a640c23a62f3a-ab789a9a583mr475499266b.4.1738956506868; Fri, 07 Feb 2025 11:28:26 -0800 (PST)
MIME-Version: 1.0
References: <AM8PR07MB81375E2D3CA840AEDA0F7E63C2F72@AM8PR07MB8137.eurprd07.prod.outlook.com> <38891fa7-b188-4767-8364-ae0a10c318b2@huitema.net> <AM8PR07MB81370760A8293580DDDB386BC2F62@AM8PR07MB8137.eurprd07.prod.outlook.com> <537f0095-68a3-43d5-a2f0-f91b4499017d@huitema.net> <AM8PR07MB81377C0A967260302A687113C2F62@AM8PR07MB8137.eurprd07.prod.outlook.com> <5C5E0FCB-1725-4775-9421-F4F5F687D051@CableLabs.com> <df289f06-2e00-463c-b9f5-bb67a34d9b43@betaapp.fastmail.com> <23eae943-7744-45e9-9fbc-f1581eaecac2@huitema.net> <CAPDSy+4avaqjO1LH4beiiaS8ahd55KnEPj=m1uJXi_jDYYVTnA@mail.gmail.com> <CADVnQyn4GYJKxc_VHoJT4aJnkUj1nmc5fXYVZ2=sQ11PpzE+SA@mail.gmail.com>
In-Reply-To: <CADVnQyn4GYJKxc_VHoJT4aJnkUj1nmc5fXYVZ2=sQ11PpzE+SA@mail.gmail.com>
From: David Schinazi <dschinazi.ietf@gmail.com>
Date: Fri, 07 Feb 2025 11:28:15 -0800
X-Gm-Features: AWEUYZnrsFSTXOa2R-gmhW13G8pZEi9HjEK7isPX1E6XaNeNLDng_pcBNU8Y_y8
Message-ID: <CAPDSy+46mbr+2e6NuDhjtyrUzCZT7Qpdf_NBBevTSC8xyJMf+g@mail.gmail.com>
To: Neal Cardwell <ncardwell@google.com>
Content-Type: multipart/alternative; boundary="000000000000df354a062d925cc1"
Message-ID-Hash: DUHWNRHDEXH635BLQ5YH2GPTMVKTKUQE
X-Message-ID-Hash: DUHWNRHDEXH635BLQ5YH2GPTMVKTKUQE
X-MailFrom: dschinazi.ietf@gmail.com
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-tsvwg.ietf.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
CC: Martin Thomson <mt@lowentropy.net>, Greg White <g.white=40CableLabs.com@dmarc.ietf.org>, Ingemar Johansson S <ingemar.s.johansson=40ericsson.com@dmarc.ietf.org>, "quic@ietf.org" <quic@ietf.org>, "tsvwg@ietf.org" <tsvwg@ietf.org>
X-Mailman-Version: 3.3.9rc6
Precedence: list
Subject: [tsvwg] Re: Robustness to packet reordering
List-Id: Transport Area Working Group <tsvwg.ietf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/tsvwg/1dQSje736upON_VAgxPfUQjF8yI>
List-Archive: <https://mailarchive.ietf.org/arch/browse/tsvwg>
List-Help: <mailto:tsvwg-request@ietf.org?subject=help>
List-Owner: <mailto:tsvwg-owner@ietf.org>
List-Post: <mailto:tsvwg@ietf.org>
List-Subscribe: <mailto:tsvwg-join@ietf.org>
List-Unsubscribe: <mailto:tsvwg-leave@ietf.org>
On Thu, Feb 6, 2025 at 6:53 PM Neal Cardwell <ncardwell@google.com> wrote: > > Given how modern implementations work, reordering at the link-layer is > almost always harmful. > > For modern implementations of the RACK style or newer, that sounds true. > But I would have guessed there is a large installed base of TCP senders out > there with pre-RACK TCP stacks. And for those, presumably, as Greg noted, > "older TCP implementations that don't support RACK would have problems with > reordering." So AFAICT there may be some tricky trade-offs. > You're absolutely right that there is a nontrivial base of TCP senders out there that don't have RACK and could benefit from link-layer reordering. That said, I don't think anyone cares about the performance of those senders. Anyone who cares about performance is motivated to use a recent-enough TCP implementation. I'm sure there's a small number of counter-examples out there, but in general we should optimize for the main case. I have embedded devices with minimal TCP stacks, but I really don't care if my temperature reading is slightly slower than it could be. This isn't a case of "you need to be a large tech company to have fast TCP", this is just a "update your open source code to something from this decade". To me the tradeoff is very easy: let's disable the link-layer reordering. Anyone who cares enough to notice a performance regression will be able to upgrade their TCP. And of course, this isn't a concern at all for QUIC since there's no pre-RACK legacy device problem. David If most 5G link-layer retransmissions can be completed in X milliseconds (X > less than, say, 10ms), then it may be worth the user's 5G cell phone modem > buffering received packets for X milliseconds to try to deliver in-order > data to the receiver if this can be done in a low-latency manner. AFAIK > various layers of networking software (and humans using it) already need to > tolerate ~10ms of jitter due to various link layer effects for the most > common last mile link-layer technologies (wifi, cellular, DOCSIS) and CPU > scheduling effects for networking stacks (especially in user space). But > I'm sure there are other factors I'm not taking into account... :-) > > neal > > > On Thu, Feb 6, 2025 at 5:15 PM David Schinazi <dschinazi.ietf@gmail.com> > wrote: > >> Having the link-layer delay packets to provide them in-order to the >> transport layer was helpful multiple decades ago when TCP implementations >> had more naive algorithms and were very resource-constrained. Given how >> modern implementations work, reordering at the link-layer is almost always >> harmful. TCP and QUIC stacks can handle reordering well, thanks to both >> protocol features and implementations having more memory to work with. The >> delay induced by this reordering will generally cause more harm than good. >> Furthermore, one of the biggest motivators for QUIC was to break >> head-of-line blocking and allow out-of-order delivery to the application >> layer. We have large bodies of data showing that this improves performance. >> Please disable reordering at the 5G layer. >> >> David >> >> On Thu, Feb 6, 2025 at 2:15 PM Christian Huitema <huitema@huitema.net> >> wrote: >> >>> >>> On 2/6/2025 12:55 PM, Martin Thomson wrote: >>> > >>> > On Fri, Feb 7, 2025, at 04:59, Greg White wrote: >>> >> This is an important topic relating to the expectations and >>> >> requirements that transport protocols place on layer 2 protocols. In >>> >> layer 2 standards bodies that I've been involved in, it has been >>> >> understood that "the upper layers" expect in-order delivery, >>> > As far as QUIC goes, it is sensitive to reordering in the network. >>> Some reordering will be interpreted as damage (Christian cited the relevant >>> parts) and performance suffers in a few minor way when things arrive out of >>> order (ACKs are less efficient, data needs to be held, memory accesses are >>> less likely to be contiguous, etc...). >>> > >>> > However, the idea that the network might seek to "fix" these problems, >>> when doing so necessarily involves extra work and delays, is not a good >>> trade. Stuff that is delayed to "fix" a reordering that happened might >>> delay signals that the QUIC stack could use, even if some data needs to be >>> held at the endpoint. QUIC packets contain many things, some of which >>> don't need to be strictly ordered to be useful. >>> >>> Applications that are sensitive to delays will break their traffic into >>> multiple QUIC streams. In case of packet loss, only one of those streams >>> will be blocked, the others will be delivered without "head of queue >>> blocking". Implementing L2 correction will make the response worse, not >>> better, because all the streams will be delayed for the duration of the >>> L2 correction instead of just one. >>> >>> -- Christian Huitema >>> >>>
- [tsvwg] Re: Robustness to packet reordering Greg White
- [tsvwg] Re: Robustness to packet reordering Greg White
- [tsvwg] Re: Robustness to packet reordering Tom Herbert
- [tsvwg] Re: Robustness to packet reordering Joe Touch
- [tsvwg] Re: Robustness to packet reordering Martin Thomson
- [tsvwg] Re: Robustness to packet reordering Christian Huitema
- [tsvwg] Re: Robustness to packet reordering David Schinazi
- [tsvwg] Re: Robustness to packet reordering Neal Cardwell
- [tsvwg] Re: Robustness to packet reordering Martin Thomson
- [tsvwg] Re: Robustness to packet reordering Christian Huitema
- [tsvwg] Re: Robustness to packet reordering Ingemar Johansson S
- [tsvwg] Re: Robustness to packet reordering Koen De Schepper (Nokia)
- [tsvwg] Re: Robustness to packet reordering Neal Cardwell
- [tsvwg] Re: Robustness to packet reordering David Schinazi
- [tsvwg] Re: [EXTERNAL] Re: Robustness to packet r… Overcash, Michael (CCI-Atlanta)
- [tsvwg] Re: Robustness to packet reordering Ryan Hamilton
- [tsvwg] Re: Robustness to packet reordering Joe Touch
- [tsvwg] Re: Robustness to packet reordering Michael Eriksson
- [tsvwg] Re: Robustness to packet reordering Vasilenko Eduard
- [tsvwg] Re: Robustness to packet reordering touch@strayalpha.com
- [tsvwg] Re: Robustness to packet reordering Greg White
- [tsvwg] Re: Robustness to packet reordering touch@strayalpha.com
- [tsvwg] Re: Robustness to packet reordering Sebastian Moeller
- [tsvwg] Re: Robustness to packet reordering touch@strayalpha.com
- [tsvwg] Re: Robustness to packet reordering Sebastian Moeller
- [tsvwg] Re: Robustness to packet reordering Ingemar Johansson S
- [tsvwg] Re: Robustness to packet reordering touch@strayalpha.com
- [tsvwg] Re: Robustness to packet reordering touch@strayalpha.com
- [tsvwg] Re: Robustness to packet reordering Christian Huitema
- [tsvwg] Re: Robustness to packet reordering Ruediger.Geib
- [tsvwg] Re: Robustness to packet reordering Sebastian Moeller
- [tsvwg] Re: Robustness to packet reordering Greg White
- [tsvwg] Re: Robustness to packet reordering -- dr… Gorry Fairhurst
- [tsvwg] Re: Robustness to packet reordering Sebastian Moeller