[tcpPrague] GRO for AccECN, DCTCP feedback and ECN feedback

Bob Briscoe <ietf@bobbriscoe.net> Sat, 23 March 2019 12:29 UTC

Return-Path: <ietf@bobbriscoe.net>
X-Original-To: tcpprague@ietfa.amsl.com
Delivered-To: tcpprague@ietfa.amsl.com
Received: from localhost (localhost []) by ietfa.amsl.com (Postfix) with ESMTP id 8BCDD127967 for <tcpprague@ietfa.amsl.com>; Sat, 23 Mar 2019 05:29:25 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2
X-Spam-Status: No, score=-2 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_DNSWL_NONE=-0.0001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=bobbriscoe.net
Received: from mail.ietf.org ([]) by localhost (ietfa.amsl.com []) (amavisd-new, port 10024) with ESMTP id BaAgrURH1ABI for <tcpprague@ietfa.amsl.com>; Sat, 23 Mar 2019 05:29:22 -0700 (PDT)
Received: from server.dnsblock1.com (server.dnsblock1.com []) (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 B3ECC1200D7 for <tcpPrague@ietf.org>; Sat, 23 Mar 2019 05:29:22 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=bobbriscoe.net; s=default; h=Content-Type:MIME-Version:Date:Message-ID: Subject:From:Cc:To:Sender:Reply-To:Content-Transfer-Encoding:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:In-Reply-To:References:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=fMjyR41ccdBXbwrmyXxikw0ZuktGp+kj7r2+iPQI5Q8=; b=bWtY2wWVxEQV2LP+PejN9akUR0 cGHBESNBd/dfvSgDRNRiB7hqSrk+8UIWC4sQqjVNjtV7KvsAb99qGc9dqOCjZQOVRihD6Jw1Q5xHB 0OxuX9v++10RY4EboJZprj72HCV5MroDwI3NbCF6O3gnKZgLAHaQypiBJymR+k7W80d5AyY/qClHz z79uOE1FSf1WmkUeOUjT4dLQof+vr67HV4ta3M9uAgQCUcvlezaQfJXK274j+F3tu+uqNJ30yGU2E IGXymZw/67WNTTgblhFVlUWYz7d/aXdFh+cHYkAW5aRoy3znfCnm9sBEt4kv/ri3wTzmN7YP+h8t0 as3wmhGA==;
Received: from dhcp-819f.meeting.ietf.org ([]:47914) by server.dnsblock1.com with esmtpsa (TLSv1.2:ECDHE-RSA-AES128-GCM-SHA256:128) (Exim 4.91) (envelope-from <ietf@bobbriscoe.net>) id 1h7fCD-0002ln-4Z; Sat, 23 Mar 2019 11:52:17 +0000
To: "Tilmans, Olivier (Nokia - BE/Antwerp)" <olivier.tilmans@nokia-bell-labs.com>, "Lebrun, David" <Dav.Lebrun@gmail.com>
Cc: TCP Prague List <tcpPrague@ietf.org>
From: Bob Briscoe <ietf@bobbriscoe.net>
Message-ID: <bae90d73-b472-593b-1026-446660c76846@bobbriscoe.net>
Date: Sat, 23 Mar 2019 12:52:16 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.5.1
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="------------28DA4B8AA82378DB430D3301"
Content-Language: en-GB
X-AntiAbuse: This header was added to track abuse, please include it with any abuse report
X-AntiAbuse: Primary Hostname - server.dnsblock1.com
X-AntiAbuse: Original Domain - ietf.org
X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12]
X-AntiAbuse: Sender Address Domain - bobbriscoe.net
X-Get-Message-Sender-Via: server.dnsblock1.com: authenticated_id: in@bobbriscoe.net
X-Authenticated-Sender: server.dnsblock1.com: in@bobbriscoe.net
Archived-At: <https://mailarchive.ietf.org/arch/msg/tcpprague/rzdKxbvx-hG-91I1D7m3UXz31KU>
Subject: [tcpPrague] GRO for AccECN, DCTCP feedback and ECN feedback
X-BeenThere: tcpprague@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "To coordinate implementation and standardisation of TCP Prague across platforms. TCP Prague will be an evolution of DCTCP designed to live alongside other TCP variants and derivatives." <tcpprague.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tcpprague>, <mailto:tcpprague-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/tcpprague/>
List-Post: <mailto:tcpprague@ietf.org>
List-Help: <mailto:tcpprague-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tcpprague>, <mailto:tcpprague-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sat, 23 Mar 2019 12:29:26 -0000

Olivier, David,

To record our current discussions on this in the hackathon:

I think the only thing that software or hardware GRO have to do is mask 
the three 'ACE' TCP flags (AE, CWR & ECE) in the TCP header, so they 
will coalesce packets irrespective of the 3 ECN flags.

* CWR==1 flushes GRO
* a change in ECE flushes GRO

If we are going to mask both of them, we need to understand how much 
benefit each one gives for each of AccECN, DCTCP-style and classic ECN 

      o ECE: if a change to ECE is held back while coalescing, the same
        packets will still be considered within the same RTT (because an
        RTT is defined up to when the packet at the start of the RTT is
        ACK'd). So DCTCP's accumulation of the ECE changes will still
        give exactly the same EWMA result. The only difference will be a
        longer RTT, which is the known tradeoff with segmentation offload.
      o CWR: ignored - no problem
  * AccECN
      o All 3 ACE flags: Same tradeoff as for ECE with DCTCP
  * Classic ECN
      o CWR: stops setting ECE once CWR arrives. If it sends ECE for a
        bit longer, no problem
      o ECE: it will get the leading edge of a new ECE volly later, so
        it will respond later.

* If a machine implements only Classic ECN feedback, do not mask the 3 
ECN flags
* If a machine implements DCTCP-style feedback (in a controlled 
environment), masking the 3 ECN flags for GRO does good and no harm
* If a machine implements AccECN feedback, masking the 3 ECN flags for 
GRO does good and no harm

Mixtures of connections:
* On a machine that implements AccECN or DCTCP-style feedback and 
therefore masks the ACE field, If an individual connection has to fall 
back to Classic ECN, it will exhibit a delayed response to ECE.

Is this OK?


Bob Briscoe                               http://bobbriscoe.net/