Re: [tcpm] A possible simplification for AccECN servers

Bob Briscoe <in@bobbriscoe.net> Wed, 26 February 2020 18:21 UTC

Return-Path: <in@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 D233E3A1051 for <tcpm@ietfa.amsl.com>; Wed, 26 Feb 2020 10:21:01 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.098
X-Spam-Level:
X-Spam-Status: No, score=-2.098 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, RCVD_IN_DNSWL_BLOCKED=0.001, 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 YW9m-0JziqRk for <tcpm@ietfa.amsl.com>; Wed, 26 Feb 2020 10:20:59 -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 57FD03A105A for <tcpm@ietf.org>; Wed, 26 Feb 2020 10:20:59 -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:To:Subject:Sender: Reply-To:Cc: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=2NsExhSELxcb6u2Q59Ii/49OXCnf6LtXp/21NjbBRGE=; b=dRGmd2wDdQHOV8kCQvkSLB0tkx ECOXQ12fpbCsxq9dhINn/MHwIvOGyeHKpZk+osQYrfI6H2jtBJOa4umT/2sBHp0NVud+FmX+QW4Gd 8Xzufydbbb1jZPLxRWVau+M4ZD3hyUdrcMzEbvTLokmjd4dw5aOv+LR0ciSPlIZBi6aLsSAI7vOKZ 6QdarPdRk/yK2H9rUd1TdneCcNGUIcbM5h7hkTzH3xkJsYSXwF5as7c9P9Zmx9Qf/FZxQCw1fXXsR VrP+8fRxBVt+ZEkZBoL8G3OSRkT/KcU4fBDS67lcXoQynkTW8o2AtIX9yji3mCuJvDSJC0YniidZX mM2+oS8g==;
Received: from [31.185.128.125] (port=44006 helo=[192.168.0.6]) by server.dnsblock1.com with esmtpsa (TLSv1.2:ECDHE-RSA-AES128-GCM-SHA256:128) (Exim 4.92) (envelope-from <in@bobbriscoe.net>) id 1j71In-0006QC-5i; Wed, 26 Feb 2020 18:20:57 +0000
To: "Scheffenegger, Richard" <rs.ietf@gmx.at>, tcpm@ietf.org
References: <d35618ee-c0dc-44ee-9e22-50bdabbe026c@bobbriscoe.net> <732C4247-BC55-4719-A399-711689CB379A@kuehlewind.net> <256E6F9D-607A-4A9D-9505-933FC4EC28FC@gmail.com> <333DA677-0930-45B2-AC65-05852FC46955@kuehlewind.net> <A76315DB-B3B4-45A4-A8CA-5F4701EB4085@gmail.com> <F90043A1-87F5-4DD1-BB11-AE8D2F3C5A7E@kuehlewind.net> <86dd14dc-0c24-d604-ea57-b280407a1a09@bobbriscoe.net> <CCA9AFF7-6EBB-4DB0-B851-7806B8E96871@kuehlewind.net> <74fe4c25-6ea2-ac5e-e59e-51acfd54be5f@bobbriscoe.net> <F74FD1C5-DB49-45FB-8AF8-73CCE1A125EC@kuehlewind.net> <6ea44dd6-e830-2bce-39a2-d0efd7a90b2e@bobbriscoe.net> <538AD737-107E-44D7-A305-7B99BEA9F0CE@kuehlewind.net> <21a45367-89fd-303b-f0e8-c51303de3760@bobbriscoe.net> <29AA3850-D1AA-4CED-BCAC-8F4C6A94A9C3@kuehlewind.net> <cd7cdb98-b3d7-a082-daed-f100c2ca9361@bobbriscoe.net> <1199c56d-720c-46a6-4b47-4393a9c1469a@gmx.at>
From: Bob Briscoe <in@bobbriscoe.net>
Message-ID: <2cc23b7f-01f6-c01d-06f8-9b57ce86145f@bobbriscoe.net>
Date: Wed, 26 Feb 2020 18:20:56 +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: <1199c56d-720c-46a6-4b47-4393a9c1469a@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/w1EFATy9nWYavITM_sIlNRm75kg>
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: Wed, 26 Feb 2020 18:21:02 -0000

Richard,

I'm responding to your email now, 'cos I'm just finalizing a rev of the 
AccECN draft. See inline...

On 12/12/2019 16:28, Scheffenegger, Richard wrote:
>
>
> Am 12.12.2019 um 15:53 schrieb Bob Briscoe:
>> You were saying we should just refer to RFC3168 in this case. I am
>> saying we should not refer to RFC3168 for the wire protocol aspect.
>> Rather we should specify the wire protocol part in the AccECN spec,
>> because we can specify more tightly than RFC3168 that only a 001 SYN/ACK
>> causes the client to fall back to classic ECN, whereas it would be an
>> X01 SYN/ACK if we referred to 3168.
>>
>> This was originally just a very minor disagreement about not referring
>> off to another spec, but it got detached from its original context by
>> the way the responses were posted.
>>
>> Here's suggested text. Changes from -09 are in green:
>>
>>     | AccECN | Nonce  | 1   1   1  | 1   0   1 
>> |(Reserved)              |
>>     | AccECN | ECN    | 1   1   1  | 0   0   1 | classic 
>> ECN            |
>>     | AccECN | No ECN | 1   1   1  | 0   0   0 | Not 
>> ECN                |
>>
>>
>>     2.  The second block shows the cases where the TCP client (A)
>>         supports AccECN but the TCP server (B) supports some earlier
>>         variant of TCP feedback, indicated in its SYN/ACK. Therefore, as
>>         soon as an AccECN-capable TCP client (A) receives the SYN/ACK
>>         shown it MUST set both its half connections into the feedback
>>         mode shown in the rightmost column.If it has set itself into 
>> classic ECN feedback mode it MUST then comply
>> with [RFC3168].
>>
>>
>> Note that I've referred to RFC3168 for the behaviour after the wire
>> protocol negotiation, but that's something I've been tightening up
>> separately from this conversation.
>>
>> Note that in the Nonce row, now that it's historic, I realized we
>> should've changed "classic ECN" to "(Reserved)", so as not to burn that
>> codepoint.
>
>
> A further comments here: Since Nonce is historic, should it even be
> mentioned as a possible server behavior at all, in this table?
[BB] All bit patterns are possible, whether or not there is a current 
RFC describing them. I always prefer to give a full truth table, to be 
clear what a machine does when it receives one of these bit patterns 
that might be used in the future.

Further, I think it's best to express this as in the snippet of table 2 
above, but also add to "Note 2" to say that the server response called 
'Nonce' in the table is now historic. I.e. the resulting mode is 
'Reserved', but the the pattern of bits from the server resembles that 
of the historic nonce behaviour.

>
> While the initial nonce sum was set to 1, and supposed to be included in
> the SYN,ACK, a mangling of IP ECN bits could conceivable have masked
> this (and a L4S sender, setting ECT1 on the SYN, would elicit the same
> SYN,ACK response from both a RFC3168 server, as well as a RFC3540 Nonce
> server...)
[BB] I don't think any of this is right. RFC3540 required the initial 
nonce sum to be 1. So NS on the SYN/ACK and 3rd ACK was always meant to 
be 1 (see end of S.5 in RFC3540).

At that time, the IP-ECN field of the SYN and SYN/ACK were meant to be 
Not-ECT, so no-one would even have thought of incrementing the nonce sum 
during the handshake, whether the IP-ECN field was different due to 
mangling, L4S or whatever.

>
> To be clear - I'd swap out the "Nonce" server to "Resrvd" or "Future"
> (or SCE :) )...
As above. Yes, 'Reserved' for the mode, but still 'Nonce' for host B, 
but add to the note to say "The server response called 'Nonce' in the 
table is now historic."



Bob
>
> Richard
>
>
> _______________________________________________
> tcpm mailing list
> tcpm@ietf.org
> https://www.ietf.org/mailman/listinfo/tcpm
>

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