Re: [tcpm] A possible simplification for AccECN servers

Bob Briscoe <ietf@bobbriscoe.net> Thu, 12 December 2019 16:37 UTC

Return-Path: <ietf@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 8D40A120975 for <tcpm@ietfa.amsl.com>; Thu, 12 Dec 2019 08:37:05 -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, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=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 WO-1-pm3nIwm for <tcpm@ietfa.amsl.com>; Thu, 12 Dec 2019 08:37:03 -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 9FB6312096D for <tcpm@ietf.org>; Thu, 12 Dec 2019 08:37:03 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=bobbriscoe.net; s=default; h=Content-Transfer-Encoding:Content-Type: In-Reply-To:MIME-Version:Date:Message-ID:From:References:Cc:To:Subject:Sender :Reply-To: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=yTyt9QvSaBL8MmUiNab5OxrhvcJdwePYwHFxS2VEdZk=; b=sft1ls+SFJgcfZuxt9JSJSBWdg z4PWzXz+fODE/2lAVs0x5QjBjZguSixy9euG9iUjvupQtwkqOrZjLPKYQx8MxMBy7VrMQQkOtJBk2 4P3KTlzs/pmz2m/lONXm90f/u6P62f8s++2J3yvSb12xZVDX5EKNC49yVujP1Bjy2HsglX7pVAJ2U 8o6D0/56HmHdk8MqhDBWqNdHaI9o9PNyBQP+TV5HzQvAN/A1Qv+jGBWfPmfFgi/gw1wxw6K9p8lMI QKDLAaPc8NGbu4FnoUC/8xAQirstwwiqYoQjjGW3vNKWnMV9sgFMGC8o92juOIy5aDwVe3TeD/EvF WDB2isiQ==;
Received: from 188.29.164.197.threembb.co.uk ([188.29.164.197]:46919 helo=[172.20.10.2]) by server.dnsblock1.com with esmtpsa (TLSv1.2:ECDHE-RSA-AES128-GCM-SHA256:128) (Exim 4.92) (envelope-from <ietf@bobbriscoe.net>) id 1ifRSY-0002WD-4z; Thu, 12 Dec 2019 16:37:02 +0000
To: "Scheffenegger, Richard" <rs.ietf@gmx.at>
Cc: "Rodney W. Grimes" <4bone@gndrsh.dnsmgr.net>, tcpm IETF list <tcpm@ietf.org>, Richard Scheffenegger <rscheff@gmx.at>, Mirja Kuehlewind <ietf@kuehlewind.net>
References: <201911261949.xAQJnrjK004168@gndrsh.dnsmgr.net> <38984214-7d4b-81b1-9c15-8347ad411c0b@gmx.at>
From: Bob Briscoe <ietf@bobbriscoe.net>
Message-ID: <8ccd0d82-7fc5-453b-ba06-435e7d14a799@bobbriscoe.net>
Date: Thu, 12 Dec 2019 16:37:01 +0000
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.6.1
MIME-Version: 1.0
In-Reply-To: <38984214-7d4b-81b1-9c15-8347ad411c0b@gmx.at>
Content-Type: text/plain; charset="utf-8"; format="flowed"
Content-Transfer-Encoding: 8bit
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/5jv57R9JRd9GFHhIehvwXXsHSRk>
Subject: Re: [tcpm] A possible simplification for AccECN servers
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: Thu, 12 Dec 2019 16:37:06 -0000

Richard,

On 28/11/2019 11:34, Scheffenegger, Richard wrote:
>
> Hi,
>
> I support the new text that Bob has suggested to allow a AccECN server
> to choose to not support RFC3168 ECN.
Can you give reasons - I'm trying to understand what to do given 
conflicting preferences.

>
> I also support Rod's suggestion to replace references to "classic" ECN
> with RFC3168 ECN.
Ditto. Reasons?



Bob
>
> However, as bob also pointed out, "ECT" is usually interpreted in the
> context of the IP header, but the AccECN draft only concerns itself with
> the TCP layer, where "ECN mode" / "non ECN mode" is the correct
> description of the state of the TCP sessions feedback...
>
> Best regards,
>   Richard
>
>
> Am 26.11.2019 um 02:49 schrieb Rodney W. Grimes:
>> tcpm'ers:
>>
>>          I believe the more common terminology is "Not ECT" (Not
>> ECN Capable Transport), rather than Non ECN.  Many new
>> instances of "Classic" has crept in with the new text, which I
>> do think we should avoid.
>>
>>          Comments inline marked [RWG].
>>
>> Regards,
>> Rod
>>
>>> Jonathan,
>>>
>>> On 24/11/2019 13:20, Jonathan Morton wrote:
>>>>> On 23 Nov, 2019, at 4:43 pm, Richard Scheffenegger 
>>>>> <rscheff@gmx.at> wrote:
>>>>>
>>>>> My reading of bob?s suggestion is
>>>>>
>>>>> Syn - accecn
>>>>> Syn-ack no ect
>>> I think Richard meant 'no ECN' at the TCP layer, rather than 'no ect',
>>> which implies the IP layer. I don't think this led to any confusion so
>>> far on the thread, but I've corrected it in case someone else gets 
>>> confused.
>>>
>>>>>
>>>>> I don?t see any problem there ;
>>>> That is indeed a valid transaction, but one which represents an 
>>>> AccECN client (that is, AE|CWR|ECE on SYN) and a Not-ECT server.  
>>>> Of course, it is also legal by protocol to request RFC-3168 ECN 
>>>> (that is, CWR|ECE without AE on SYN) with a Not-ECT server.
>>>>
>>>> What the draft currently (and correctly, IMO) forbids is for an 
>>>> AccECN server to downgrade RFC-3168 clients to Not-ECT. I don't see 
>>>> any reason for allowing this, because the difference in code 
>>>> complexity must be very small, and the benefit to the RFC-3168 
>>>> supporting clients which are ubiquitous today (even if they don't 
>>>> always advertise it) in terms of avoiding packet loss and 
>>>> retransmissions just for the sake of a congestion signal is 
>>>> significant.
>>> I also "don't see any reason for allowing this", but that isn't what
>>> motivates text in RFCs. If there is no interoperability reason to
>>> disallow such a downgrade, then we should not disallow it.
>>>>
>>>> It does appear that I missed part of Bob's proposal through trying 
>>>> to read it on a phone at the airport.  It made me think that he was 
>>>> proposing that AccECN *clients* might not support RFC-3168 as 
>>>> well.  I now see that he was proposing this only for servers.  I 
>>>> still think this is wrong-headed, but it technically doesn't break 
>>>> the protocol on the wire.
>>> Yes, that's my point.
>>>
>>> If it doesn't break the protocol, it's not up to the IETF to tell
>>> implementers what is "right-headed". The two examples I gave are
>>> possible valid reasons an implementer might have (but even if no-one
>>> could think of a valid reason now, there's no need to preclude this):
>>> i) a cut-down lightweight TCP implementation
>>> ii) an implementer wishing to rationalize the server code she has to
>>> maintain when, in the long term future (recall that RFCs last for ever)
>>> AccECN might have become pervasive and 3168 ECN hardly ever seen.
>>>
>>> Here's how I propose to alter the text:
>>>
>>> CURRENT:
>>>
>>>      3.  The third block shows the cases where the TCP server (B) 
>>> supports
>>>          AccECN but the TCP client (A) supports some earlier variant of
>>>          TCP feedback, indicated in its SYN.Therefore, as soon as an 
>>> AccECN-enabled TCP server (B) receives the SYN
>>> shown, it MUST set both its half connections into the feedback mode
>>> shown in the rightmost column.
>>>
>>>
>>> PROPOSED:
>>>
>>>      3.  The third block shows the cases where the TCP server (B) 
>>> supports
>>>          AccECN but the TCP client (A) supports some earlier variant of
>>>          TCP feedback, indicated in its SYN.When an AccECN-enabled 
>>> TCP server (B) receives a SYN from a client in
>>> classic ECN feedback mode (AE,CWR,ECE = 0,1,1) it SHOULD set both its
>>
>> classic -> RFC3168
>>
>>> half connections into the classic ECN feedback mode as shown in the
>>
>> ditto
>>
>>> rightmost column and return a SYN-ACK as shown (AE, CWR, ECE = 0,0,1).
>>> The "SHOULD" allows for the unlikely case where a server might not wish
>>> to implement classic ECN. When an AccECN-enabled TCP server (B) 
>>> receives
>>
>> Ditto
>>
>>> a SYN from a client in No ECN mode (AE,CWR,ECE = 0,0,0) it MUST set 
>>> both
>>
>> No ECN -> Not ECT
>>
>>> its half connections into the No ECN feedback mode as shown in the
>>
>> No ECN -> Not ECT
>>
>>> rightmost column and return the SYN-ACK shown (AE,CWR,ECE = 0,0,0).
>>>
>>>
>>> Bob
>>>>
>>>>    - Jonathan Morton
>>>
>>> -- 
>>> ________________________________________________________________
>>> Bob Briscoe http://bobbriscoe.net/
>>>
>>
>>> _______________________________________________
>>> tcpm mailing list
>>> tcpm@ietf.org
>>> https://www.ietf.org/mailman/listinfo/tcpm
>>

-- 
________________________________________________________________
Bob Briscoe                               http://bobbriscoe.net/