Re: [tcpm] A possible simplification for AccECN servers

Bob Briscoe <ietf@bobbriscoe.net> Mon, 25 November 2019 21:42 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 1F89B120FB8 for <tcpm@ietfa.amsl.com>; Mon, 25 Nov 2019 13:42:11 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2
X-Spam-Level:
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, 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 o3vXs2asYAPl for <tcpm@ietfa.amsl.com>; Mon, 25 Nov 2019 13:42:09 -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 78D32120F6C for <tcpm@ietf.org>; Mon, 25 Nov 2019 13:42: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=cPw2nPM9suIhfOXBzC1lvDLvrbiKST/J7KlH/D0Vhng=; b=cz1xWeSKdTErVmTpMeQMR71o2V 2S+m/z2pE4f9IWmjjn74ceWkidFqkH2FC2utt4KYmb0Ux8p7A+FvuceFpieW5sl422J2N3LT7e8cM L49qDXcTjc9fnE/5AUFIUbKuTcOEfV/YeZcFfCT6akY3wyu3u5Zn/NKvlRNWjkBsOXdYzCdd+v3T+ W0WY2xdFVA3WW2is0qvV5/rO0/DeZ5w209mcEsGys0vqO9TyLBLo5HO5Nl0Wnx8+y/yB3hddfRtJs EG6VhkpdNc8F4qtjLfnfaM7zOZS+243Q4Z3zvqjTRScdhdUKJOntOzpLvQLNx2ipPSUuMTszwgxzL B57zAAKw==;
Received: from [31.185.128.31] (port=50474 helo=[192.168.0.5]) by server.dnsblock1.com with esmtpsa (TLSv1.2:ECDHE-RSA-AES128-GCM-SHA256:128) (Exim 4.92) (envelope-from <ietf@bobbriscoe.net>) id 1iZM7N-0004Qm-7U; Mon, 25 Nov 2019 21:42:01 +0000
To: Mirja Kuehlewind <ietf@kuehlewind.net>, Jonathan Morton <chromatix99@gmail.com>
Cc: tcpm IETF list <tcpm@ietf.org>, Richard Scheffenegger <rscheff@gmx.at>
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>
From: Bob Briscoe <ietf@bobbriscoe.net>
Message-ID: <86dd14dc-0c24-d604-ea57-b280407a1a09@bobbriscoe.net>
Date: Mon, 25 Nov 2019 21:41:58 +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: <F90043A1-87F5-4DD1-BB11-AE8D2F3C5A7E@kuehlewind.net>
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/8XwK6e6hmYq7ygIOg62quKE-Y-0>
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: Mon, 25 Nov 2019 21:42:14 -0000

Mirja,


On 26/11/2019 01:02, Mirja Kuehlewind wrote:
> Hi Jonathan,
>
> Sorry I wasn’t clear. I think we should not have these normative requirement in the draft and change the text to make it non-normative. This section was meant to explain which modes you end up in and the current use of normative language doesn’t seem to be right to me.
>
> Likewise the table was also not meant to say whenever you implement AccECN, you MUST negotiate it in the handshake. And likewise the table does not show any classic ECN only transitions.
In the spec of AccECN, it's necessary and reasonable to state normative 
requirements for a node "that is AccECN-enabled". That doesn't mean that 
an AccECN implementation has to always support AccECN - it can always 
disable AccECN. But we do have to say what it is expected to do if it is 
following the AccECN protocol.

This draft has included that normative language for the negotiation 
phase in all 16 revisions since the first individual draft (that you 
wrote!).

The table shows only cases where one end or the other is AccECN-capable, 
and the text preceding and following the table gives normative 
requirements solely for the AccECN node(s) in those cases. It doesn't 
give any normative requirements for non-AccECN nodes.

In block 3, the server is AccECN capable, so in the AccECN spec. it's 
perfectly reasonable to say what it ought to do in response to various 
types of SYN. In particular, if it receives a SYN with AE,CWR,ECE=0,0,0 
the AccECN-enabled server MUST respond with AE,CWR,ECE=0,0,0.

The only case that is in question, AFAIC, is whether we have to say what 
an AccECN-capable server does in response to a SYN from an RFC3168 
client (AE,CWR,ECE=0,1,1). We need to somehow say an AccECN server can 
respond with a SYN-ACK that is either RFC3168 or non-ECN.

I just proposed respectively SHOULD and MAY, but I can now see there is 
no need to make that judgement call. However, it is still important to 
say an AccECN-enabled server MUST respond with either (0,0,1) or (0,0,0).

It's also important that the spec defines all three bits in the SYN-ACK 
responses, not just the 2-bits defined in RFC3168 - so that the 
combinations with AE=1 are ruled out and therefore remain available for 
future use.



Bob
>
> Mirja
>
>
>> On 25. Nov 2019, at 17:48, Jonathan Morton <chromatix99@gmail.com> wrote:
>>
>>> On 25 Nov, 2019, at 6:43 pm, Mirja Kuehlewind <ietf@kuehlewind.net> wrote:
>>>
>>> I don’t think we can or should derive a normative requirement from this table. The table rather explains which mode you are in depending on the handshake that has happened. So it says: when client A is ECN capable and requests classic ECN support in the handshake and server B is AccECN capable and negotiated classic ECN support in the handshake then you are in classic ECN mode.
>> I will merely re-quote the final sentence from my quoted text, which transforms that table into a normative requirement:
>>
>>>       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.
>> - Jonathan Morton

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