Re: [tcpm] Milestones changed for tcpm WG

"Scharf, Michael" <> Tue, 04 May 2021 19:21 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id ECAF83A0E19; Tue, 4 May 2021 12:21:04 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -2.096
X-Spam-Status: No, score=-2.096 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, HTML_MESSAGE=0.001, SPF_HELO_NONE=0.001, SPF_NONE=0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: (amavisd-new); dkim=pass (1024-bit key)
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id 6n8qvB2_iYw1; Tue, 4 May 2021 12:21:00 -0700 (PDT)
Received: from ( []) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by (Postfix) with ESMTPS id A8B243A0E1F; Tue, 4 May 2021 12:20:59 -0700 (PDT)
Received: from localhost (localhost.localdomain []) by (Postfix) with ESMTP id 8903A25A19; Tue, 4 May 2021 21:20:57 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;; s=mail; t=1620156057; bh=uT283F3gmC8se6FhtrougQ4Jd4pkNpm25tkbKgod2+0=; h=From:To:CC:Subject:Date:References:In-Reply-To:From; b=zhfq+kue8mD0X57pIfoq0c12Fya/xZvBh//VJcoCmcBwpWGWlOyfqLsj0bDslYuUB 47JLYqySU3u7Ntknj9k4OWEzmnmywO7sQ6HprVX59f0SNouyVXzdDmDDGSI+O/Nm9H OObEmnQRHQpZuVytTTUchbXXFqdABd0U4S4gEzGg=
X-Virus-Scanned: by amavisd-new-2.7.1 (20120429) (Debian) at
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id fNv1ckDqyllx; Tue, 4 May 2021 21:20:56 +0200 (CEST)
Received: from ( []) (using TLSv1.2 with cipher AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by (Postfix) with ESMTPS; Tue, 4 May 2021 21:20:56 +0200 (CEST)
Received: from ( by ( with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2176.2; Tue, 4 May 2021 21:20:56 +0200
Received: from ([fe80::aca4:171a:3ee1:57e0]) by ([fe80::aca4:171a:3ee1:57e0%3]) with mapi id 15.01.2176.012; Tue, 4 May 2021 21:20:55 +0200
From: "Scharf, Michael" <>
To: Joe Touch <>, Yoshifumi Nishida <>
CC: tcpm IETF list <>, tcpm-chairs <>
Thread-Topic: [tcpm] Milestones changed for tcpm WG
Date: Tue, 4 May 2021 19:20:55 +0000
Message-ID: <>
References: <> <>
In-Reply-To: <>
Accept-Language: de-DE, en-US
Content-Language: de-DE
x-originating-ip: []
Content-Type: multipart/alternative; boundary="_000_2e6e1552fcc442fb8464668a649ce9e8hsesslingende_"
MIME-Version: 1.0
Archived-At: <>
Subject: Re: [tcpm] Milestones changed for tcpm WG
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: TCP Maintenance and Minor Extensions Working Group <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Tue, 04 May 2021 19:21:05 -0000

Hi Joe,

As far as I can see, the relevant section in draft-ietf-tcpm-tcp-edo-10 is:

   Implementers need to be careful about the potential for offload
   support interfering with this option. The EDO data needs to be
   passed to the protocol stack as part of the option space, not
   integrated with the user segment, to allow the offload to
   independently determine user data segment boundaries and combine
   them correctly with the extended option data. Some legacy hardware
   receive offload engines may present challenges in this regard, and
   may be incompatible with EDO where they incorrectly attempt to
   process segments with unknown options. Such offload engines are part
   of the protocol stack and updated accordingly. Issues with incorrect
   resegmentation by an offload engine can be detected in the same way
   as middlebox tampering.

In that paragraph, as non-native speaker, I don’t understand the sentence “Such offload engines are part of the protocol stack and updated accordingly.”

Maybe I miss something, but if there are potential issues with offloading, that could be described more explicitly and more clearly. In that case, more warning signs could be put in place at more prominent places in the document, too.

Personally, I would not be surprised if certain ways of offloading were more common than middlebox tampering. Well, I don’t know. Anyway, if that was true, a discussion regarding offloading might actually be more important than middlebox tempering.

Just as a random data point, if I were an implementer, I would probably expect a dedicated section regarding offloading, or something like that. And I would probably _not_ use the term “middlebox” when searching in the Web for material related to TSO…

My 2 cents


From: Joe Touch <>
Sent: Tuesday, May 4, 2021 6:48 AM
To: Yoshifumi Nishida <>
Cc: tcpm IETF list <>rg>; tcpm-chairs <>
Subject: Re: [tcpm] Milestones changed for tcpm WG


On May 3, 2021, at 9:10 PM, Yoshifumi Nishida <<>> wrote:

Hi Joe,

On Mon, May 3, 2021 at 11:06 AM Joseph Touch <<>> wrote:
Hi, Yoshi,

On May 2, 2021, at 11:31 PM, Yoshifumi Nishida <<>> wrote:

Hi Joe,

Thanks for bringing this up again.
In my understanding, there was no clear consensus on the interactions with TSO yet. Or, have we settled?

I don’t understand what “consensus” would mean.

TSO isn’t a standard; it’s an implementation, i.e., which ought to follow the TCP standards.

Nothing we’re doing deviates from how standards-compliant implementations handle options. However, if an implementation incorrectly ignores unknown options, then it would could be problematic for this approach, as well as others.

I thought you'll update the draft for this.

I’m not sure what to say about this issue - do you want me to point out the issue with TSO sometimes causing problems because it’s out of spec?

If so, I can do that.

I think that would be helpful for the doc. But, I also think this doc should have a clear vision on the interaction with TSO beforehand.
I think we should have a consensus on this point such as:

* EDO should not be used with TSO
* It's fine to use EDO with TSO in any circumstances.
* it's fine to use EDO with TSO under a certain conditions
* The draft does not need to specify anything for TSO as it's out of scope of the doc.

These are not decisions for the WG. TSO isn’t a single thing; it’s a nickname for an implementation optimization.  Like all such optimizations, it’s always fine when it complies with specs and not when it doesn’t.

I.e., everything stated above is equally possible if you replace “TSO” with “Linux”.

It is out of scope for the WG to state anything about either (TSO or Linux) other then “it’s ok if it complies with secs and not when it doesn’t”.

This is not the doc to point out that TSO (or any other implementation) sometimes breaks TCPs rules or that these, like all options, put TCP behavior at risk when that happens.



tcpm mailing list<>