[tcpm] Impact on AccECN draft of change from EXP to PS
Bob Briscoe <research@bobbriscoe.net> Sat, 23 November 2019 11:27 UTC
Return-Path: <research@bobbriscoe.net>
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 AA976120058 for <tcpm@ietfa.amsl.com>; Sat, 23 Nov 2019 03:27:10 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.999
X-Spam-Level:
X-Spam-Status: No, score=-1.999 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_HELO_NONE=0.001, 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 ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id LTgqc9RRBLFz for <tcpm@ietfa.amsl.com>; Sat, 23 Nov 2019 03:27:08 -0800 (PST)
Received: from server.dnsblock1.com (server.dnsblock1.com [85.13.236.178]) (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 157C1120048 for <tcpm@ietf.org>; Sat, 23 Nov 2019 03:27:07 -0800 (PST)
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:To:Sender:Reply-To:Cc: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=XSxDEXDX6DrClG9a7082dv/0+CQwR6L4Wn1Ef79IDJo=; b=GH7aBYPJLp4yybcDdrV2JDZgR3 seDgcWglmDDc9G1xHmybxt9khAMeVQ3dmCSA/D4HdawXCxC0Z//5/slTn+jYZeVmJzcXQtm9MoB8b +CbUeFdYCdomOVaIakgg/r5hVHExnc6DpAbe+js3R9jQdiaHUu3BG6ZcY+WrYzBORkHMkgl52qbki dvFnU2FhxWKnCgYJk8txKq0pSBFlGtxDmGqWxlZb3ZNid8iw2Hg84Mgd1UvVtZQZ7mqwnttsMhiOo I0lu2TopwaKSuUba7pxCuzqKwHUaVWBW5OB3F6B848pYBogWA6TTGXqxFqDOjoPK3SkIGLD7Fp2j9 rH+Z8QPQ==;
Received: from [31.185.128.31] (port=39306 helo=[192.168.0.5]) by server.dnsblock1.com with esmtpsa (TLSv1.2:ECDHE-RSA-AES128-GCM-SHA256:128) (Exim 4.92) (envelope-from <research@bobbriscoe.net>) id 1iYTZ6-0007zu-VN for tcpm@ietf.org; Sat, 23 Nov 2019 11:27:02 +0000
To: tcpm IETF list <tcpm@ietf.org>
From: Bob Briscoe <research@bobbriscoe.net>
Message-ID: <83880058-a057-66bf-24a3-855480b29f00@bobbriscoe.net>
Date: Sat, 23 Nov 2019 19:26:59 +0800
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.6.1
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="------------0990FEC165EB1A4890B458DE"
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/tcpm/xbXJL7O9yiP2ppg5XP0Cm1vbFHA>
Subject: [tcpm] Impact on AccECN draft of change from EXP to PS
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: Sat, 23 Nov 2019 11:27:11 -0000
tcpm-ers, Here's analysis of the things in draft-ietf-tcpm-accurate-ecn that would have to be altered to upgrade it to PS from EXP. This was generally favoured in the tcpm meeting today, but it has to be ratified on this list, so I thought this info would be helpful. ==Header Block== Intended Status: Proposed Standard Updates: 3168 ==Throughout== (substituting intelligently): s/experimental/standards track/ s/other experiments/experiments/ s/other variants/variants/ ==1. Intro== CURRENT: "Until the AccECN experiment succeeds, [RFC3168] will remain as the only standards track specification for adding ECN to TCP. " PROPOSED: Instead, summarize here how this doc updates RFC3168, referring to a new section XXX (below) that gives detailed updates. CURRENT: "It is completely independent of how TCP might respond to congestion feedback, which is out of scope. For that we refer to [RFC3168]..." PROPOSED "It is completely independent of how TCP might respond to congestion feedback, which is out of scope. For that we refer to [RFC3168] and [RFC8311], excepting the updates to RFC 3168 in Section XXX of the present document that generalize the wording to include AccECN." ==1.1 Document Roadmap== Remove ref to 1.3 & include a ref to the new section XXX detailing the updates to 3168. ==1.3 Experiment Goals== Delete section FYI, the two experiment goals are: 1. fall-back strategies in the face of path traversal problems 2. interaction of change-triggered ACKs and offloaded processing The two "MUST" requirements behind #2 have just been relaxed to "SHOULD"s as part of the splitting up of change-triggered ACKs between ACE and the AccECN TCP Option, as I mentioned in the presentation to the WG. #1 is more likely to affect implementation than design, given the design provides for fall-back in most conceivable circumstances (e.g. it is designed for any or all AccECN TCP options to be sent but not received {Note 1}) and there's considerable checking of mangling already. Nonetheless, we might find byzantine middlebox behaviour, e.g. stripping the TCP option from some packets but not others, altering selected protocol fields, altering some header bits but not others,... I'd like to see some large-scale testing over production networks before the RFC is published. {Note 1}: Altho the latest change has made it necessary to receive the first AccECN Option in each direction to be able to correctly understand later options. ==XXX. Updates to RFC3168== New section XXX between sections 3 & 4. For content, see later in this email. ==3.2.6 The AccECN Option== The Kind of the option can be assigned a permanent value, rather than a 2B longer option with Kind=254 and a magic number. ==6. IANA Considerations== Delete the para about using experimental option 254. ===Section XXX. Updates to RFC3168=== The following sections of RFC3168 would be updated by the AccECN specification, if it were stds track: * The Introduction to Section "6. Support from the Transport Protocol" that summarizes the way TCP feeds back ECN markings * the whole of "6.1.1 TCP Initialization" * The whole of "6.1.2. The TCP Sender" except the second, third and last paras still apply to RFC5681 congestion control, but not necessarily to other experimental forms of ECN congestion control allowed by RFC8311 (specified by a suitable experimental RFC). * The whole of "6.1.3. The TCP Receiver" except the last two sentences till stand (which are incidentally in the wrong section, because they relate to TCP sender behaviour): "Some care is required if the TCP sender is to avoid unnecessary reductions of the congestion window when a window of data includes both dropped packets and (marked) CE packets. This is illustrated in [Floyd98]. " * The following text within "6.1.5. Retransmitted TCP packets" is updated as follows: o CURRENT: "the TCP data receiver SHOULD ignore the ECN field on arriving data packets that are outside of the receiver's current window." o UPDATED: "The TCP data receiver MUST ignore the CE codepoint on incoming segments that fail any validity check. The validity check in section 5.2 of [RFC5961] is RECOMMENDED." * Section "5.2 Dropped or Corrupted Packets" of RFC3168 says '"pure" ACK packets MUST NOT indicate ECN-Capability.' The AccECN draft will not update this aspect, but it will say what TCP should do if it receives an ECN-capable pure ACK. I'm slightly unsure about this one - any opinions?: * Section "23.2 TCP header Flags" within the "IANA Considerations" Section: If AccECN is going to update 3168, we will need to consider whether to update the names ECE and CWR. Even though they don't do anything related to those names in AccECN, AccECN has to be able to fall-back to 3168, so I suggest we keep these names. ==Opportunities to close loop-holes== I would also like people to check through RFC3168 to look for opportunities to make behaviour for currently unused values in protocol fields unambiguous - in order to allow for forward compatibility (or remove unnecessary restrictions on forward compatibility) for other future protocols derived from RFC3168. As well as the changes that AccECN already makes to the TCP part of 3168, making AccECN stds track would give an opportunity to update some TCP feedback-related aspects of 3168 that might have been overlooked when 8311 was written. I can't think of any, but I'll check and it would be good if others did too. Bob -- ________________________________________________________________ Bob Briscoe http://bobbriscoe.net/
- [tcpm] Impact on AccECN draft of change from EXP … Bob Briscoe
- Re: [tcpm] Impact on AccECN draft of change from … Bob Briscoe
- Re: [tcpm] Impact on AccECN draft of change from … Scheffenegger, Richard
- Re: [tcpm] Impact on AccECN draft of change from … Jonathan Morton