Re: [Int-area] [tsvwg] 2nd TSVWG WGLC on ecn-encap-guidelines and rfc6040-update-shim drafts, closes 6 May 2019

Bob Briscoe <ietf@bobbriscoe.net> Mon, 08 July 2019 12:28 UTC

Return-Path: <ietf@bobbriscoe.net>
X-Original-To: int-area@ietfa.amsl.com
Delivered-To: int-area@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 9E1CC120178; Mon, 8 Jul 2019 05:28:06 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.998
X-Spam-Level:
X-Spam-Status: No, score=-1.998 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, 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 6gbPC1cFrXwX; Mon, 8 Jul 2019 05:28:03 -0700 (PDT)
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 A6D50120165; Mon, 8 Jul 2019 05:28:01 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=bobbriscoe.net; s=default; h=Content-Type:In-Reply-To:MIME-Version:Date: Message-ID:References:Cc:To:From:Subject:Sender:Reply-To: Content-Transfer-Encoding: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=TNj8ZRMAir9uZRfwcjMSI1hFBnz4LbBQ1lBS7n9mGqw=; b=JghBwY0ClnBkeDXsOk1949G8B 1Q+WrgVyT5/zXHR3jdf2I3ZzRbQnw/qIGiZGBTCCUHduezJInx6wkcqzAe/lgPiiNcrji2XmvnxR0 ybLfF1cezz9ZTutrz0YgnqQyYJ0Z/wU0XTjHf5XzpAolv3oim9KBcZyNrJUqtR6d6kSuyksKt/T6P D1hgE4NsFTXtSn/xUSfrJFTqD/LLf2Z0kAmoQ3QpVMRWpkSoH8k2qy5BHvUCVbA6npYvEtZr9Gi+y 4va+LjrjjelrMobD8i7u5f7swUFfCZFMiYwVNf26yge2BMO/URpsdup8dRDUdm1NlpTu7dP7JKcck np0vcC+gQ==;
Received: from 89-172-179-120.adsl.net.t-com.hr ([89.172.179.120]:39358 helo=[192.168.1.9]) by server.dnsblock1.com with esmtpsa (TLSv1.2:ECDHE-RSA-AES128-GCM-SHA256:128) (Exim 4.92) (envelope-from <ietf@bobbriscoe.net>) id 1hkSkQ-0003KW-6g; Mon, 08 Jul 2019 13:27:59 +0100
From: Bob Briscoe <ietf@bobbriscoe.net>
To: Joe Touch <touch@strayalpha.com>, "Black, David" <David.Black@dell.com>
Cc: "int-area@ietf.org" <int-area@ietf.org>, tsvwg <tsvwg@ietf.org>
References: <CE03DB3D7B45C245BCA0D243277949363052958E@MX307CL04.corp.emc.com> <598B8434-3B6D-434A-B963-7FEE04D9770B@strayalpha.com> <70abde72-0091-66e3-b819-ad839e1fd028@bobbriscoe.net>
Message-ID: <d7252ffe-e13c-243c-efa2-bb15e67bd758@bobbriscoe.net>
Date: Mon, 08 Jul 2019 13:27:57 +0100
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: <70abde72-0091-66e3-b819-ad839e1fd028@bobbriscoe.net>
Content-Type: multipart/alternative; boundary="------------217D1675F4047B8E62FF864B"
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/int-area/0h1mpHoE0FPkhxs2SQSZyWXA3Q8>
Subject: Re: [Int-area] [tsvwg] 2nd TSVWG WGLC on ecn-encap-guidelines and rfc6040-update-shim drafts, closes 6 May 2019
X-BeenThere: int-area@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: IETF Internet Area Mailing List <int-area.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/int-area>, <mailto:int-area-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/int-area/>
List-Post: <mailto:int-area@ietf.org>
List-Help: <mailto:int-area-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/int-area>, <mailto:int-area-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 08 Jul 2019 12:28:07 -0000

Joe,

Following up my email to you in May quoted further down, you made me 
realize that RFC6040 did not address what to do with ECN during 
fragmentation and reassembly. So I've added the following to my local 
copy of draft-ietf-tsvwg-rfc6040-update-shim (to be posted later today), 
which recently went through TSVWG last call, and will imminently be last 
called on various int-area lists, I believe.

These are quite significant updates to outer fragment processing at the 
tunnel egress. But, given something has to be said, I can't think of a 
better way (see the original quoted email about why the logical OR of 
the ECN codepoints as defined in RFC3168 is no longer sufficient - and 
it's no simpler anyway).

5.  ECN Propagation and Fragmentation/Reassembly

    The following requirements update RFC6040, which omitted handling of
    the ECN field during fragmentation or reassembly.  These changes
    might alter how many ECN-marked packets are propagated by a tunnel
    that fragments packets, but this would not raise any backward
    compatibility issues:

    If a tunnel ingress fragments a packet, it MUST set the outer ECN
    field of all the fragments to the same value as it would have set if
    it had not fragmented the packet.

    As a tunnel egress reassembles sets of outer fragments
    [I-D.ietf-intarea-tunnels] into packets, it SHOULD propagate CE
    markings on the basis that a congestion indication on a packet
    applies to all the octets in the packet.  On average, a tunnel egress
    SHOULD approximately preserve the number of CE-marked and ECT(1)-
    marked octets arriving and leaving (counting the size of inner
    headers, but not encapsulating headers that are being stripped).
    This process proceeds irrespective of the addresses on the inner
    headers.

    Even if only enough incoming CE-marked octets have arrived for part
    of the departing packet, the next departing packet SHOULD be
    immediately CE-marked.  This ensures that CE-markings are propagated
    immediately, rather than held back waiting for more incoming CE-
    marked octets.  Once there are no outstanding CE-marked octets, if
    only enough incoming ECT(1)-marked octets have arrived for part of
    the departing packet, the next departing packet SHOULD be immediately
    marked ECT(1).

    For instance, an algorithm for marking departing packets could
    maintain a pair of counters, the first representing the balance of
    arriving CE-marked octets minus departing CE-marked octets and the
    second representing a similar balance of ECT(1)-marked octets.  The
    algorithm:

    o  adds the size of every CE-marked or ECT(1)-marked packet that
       arrives to the appropriate counter;

    o  if the CE counter is positive, it CE-marks the next packet to
       depart and subtracts its size from the CE counter;

    o  if the CE counter is negative but the ECT(1) counter is positive,
       it marks the next packet to depart as ECT(1) and subtracts its
       size from the ECT((1) counter;

    o  (the previous two steps will often leave a negative remainder in
       the counters, which is deliberate);

    o  if neither counter is positive, it marks the next packet to depart
       as ECT(0);

    o  until all the fragments of a packet have arrived, it does not
       commit any updates to the counters so that, if reassembly fails
       and the partly reassembled packet has to be discarded, none of the
       discarded fragments will have updated any of the counters.

    During reassembly of outer fragments [I-D.ietf-intarea-tunnels], if
    the ECN fields of the outer headers being reassembled into a single
    packet consist of a mixture of Not-ECT and other ECN codepoints, the
    packet MUST be discarded.

    A tunnel end-point that claims to support the present specification
    MUST NOT use an approach that results in a significantly different
    ECN-marking outcome to that defined by the "SHOULD" statements
    throughout this section.  "SHOULD" is only used to allow similar
    perhaps more efficient approaches that result in approximately the
    same outcome.





Bob

On 16/05/2019 22:14, Bob Briscoe wrote:
> Joe,
>
> Sorry I missed this posting at the time (my mail filters moved both 
> cross-postings into my int-area box which I check only rarely).
>
>
> On 27/04/2019 18:13, Joe Touch wrote:
>> Cross-posting to let both communities know:
>>
>> - it would be useful for these documents to address how fragmentation 
>> and reassembly affects these signals
>> (esp. if reassembling fragments with different ECN values)
>>
> [BB] This is addressed by the re-framing section 
> <https://tools.ietf.org/html/draft-ietf-tsvwg-ecn-encap-guidelines-12#section-4.6> 
> in ecn-encap-guidelines, altho it doesn't give examples of what might 
> have caused frame boundary misalignment, so fragmentation is not 
> specifically mentioned. I think I will add an explicit mention of 
> fragmentation (if only so a search finds that section).
>
> Actually I've realized that this highlights an inconsistency between 
> the advice on ECN and fragment reassembly in RFC3168 and in 
> ecn-encap-guidelines.:
>
>   * RFC3168 requires that the ECN marking of a reassembled packet is
>     the logical OR of the ECN marks on the fragments,
>   * whereas ecn-encap-guidelines recommends marking the same number of
>     outgoing as incoming octets when reassembling L2 frames or
>     tunnelled packets with different boundaries - using a simple
>     counter to track the balance.
>
> In fact, it was the review of RFC3168 by me and Jon Crowcroft back in 
> 2001 that originally raised the question of how to handle reassembly 
> of ECN-marked fragments 
> <https://tools.ietf.org/html/draft-ietf-tsvwg-ecn-ip-00#section-11>. 
> I'll quote a passage from the review, which I think justifies the 
> recommendation in ecn-encap-guidelines to count marked bytes, rather 
> than use the logical OR of RFC3168:
>
>     To use the logical OR of the marking of all fragments might be a pragmatic
>     solution, particularly for congestion control protocols like TCP where one
>     loss per round trip is treated identically to many. However, it is becoming
>     more common to see large numbers of packets per round trip time as data
>     rates increase while packet sizes and the speed of light haven't increased
>     for many years. Therefore it is to be expected that newer congestion
>     control protocols might take more accurate account of the number of packets
>     marked in a round trip. Hence, the inaccuracy of a logical OR during
>     re-assembly at the IP layer is best avoided.
>
> I'm not too worried about the inaccuracy of using a logical OR, but I 
> think it best to recommend more accurate and no less costly counting. 
> The only justification for the logical OR was that TCP only reacted to 
> one ECN mark per RTT. But that is changing now, and the behaviour of 
> one transport should not be embedded in lower layers anyway.
>
>> - it would be useful for these documents to consider 
>> draft-ietf-intarea-tunnels (which relates to the above) and its 
>> discussion on many of the protocols cited
> I can't find anything in draft-ietf-intarea-tunnels that ought to be 
> cited from ecn-encap-guidelines or rfc6040-update-shim. Did you have 
> something specific in mind?
>
> I do want to raise a question about the following sentence, which 
> precedes the mention of ECN:
>     There are exceptions to this rule that are explicitly intended to
>     relay signals from inside the tunnel to the network outside the
>     tunnel, typically relevant only when the tunnel network N and the
>     outer network M use the same network.
> Was that last word meant to say "network protocol"?
>
> Then, if that is what you meant, I would disagree. Many different 
> network protocols include concepts similar to Diffserv and/or ECN 
> (e.g. IEEE802.1p, MPLS and TRILL support both, etc), and there's 
> rarely a reason /not/ to propagate the concept between different 
> network protocols when they encapsulate each other, even tho it's not 
> always straightforward to do so.
>
>
>
> Bob
>
>
> Bob
>>
>> Joe
>>
>>> On Apr 26, 2019, at 1:50 PM, Black, David <David.Black@dell.com 
>>> <mailto:David.Black@dell.com>> wrote:
>>>
>>> This may be of interest to INT folks who are interested in tunnels 
>>> and encapsulations.
>>> Comments by the WGLC deadline are encouraged, but comments after the 
>>> deadline are ok, as they’d have to be dealt with anyway at IETF Last 
>>> Call.
>>> Thanks, --David
>>> *From:*tsvwg <tsvwg-bounces@ietf.org 
>>> <mailto:tsvwg-bounces@ietf.org>>*On Behalf Of*Black, David
>>> *Sent:*Wednesday, April 17, 2019 2:51 PM
>>> *To:*tsvwg@ietf.org <mailto:tsvwg@ietf.org>
>>> *Subject:*[tsvwg] 2nd WGLC on ecn-encap-guidelines and 
>>> rfc6040-update-shim drafts, closes 6 May 2019
>>>
>>> [EXTERNAL EMAIL]
>>>
>>> This email announces a 2nd TSVWG Working Group Last Call (WGLC) on 
>>> two drafts:
>>> [1] Guidelines for Adding Congestion Notification to Protocols that
>>> Encapsulate IP
>>> draft-ietf-tsvwg-ecn-encap-guidelines-12
>>> https://datatracker.ietf.org/doc/draft-ietf-tsvwg-ecn-encap-guidelines/
>>> This draft is intended to become a Best Current Practice RFC
>>> [2] Propagating Explicit Congestion Notification Across IP Tunnel 
>>> Headers
>>> Separated by a Shim
>>> draft-ietf-tsvwg-rfc6040update-shim-08
>>> https://datatracker.ietf.org/doc/draft-ietf-tsvwg-rfc6040update-shim/
>>> This draft is intended to become a Proposed Standard RFC.
>>> This WGLC will run through the end of the day on Monday, May 6, 2019.
>>> Comments should be sent to thetsvwg@ietf.org 
>>> <mailto:tsvwg@ietf.org>list, although purely
>>> editorial comments may be sent directly to the author. Please cc: the
>>> WG chairs attsvwg-chairs@ietf.org <mailto:tsvwg-chairs@ietf.org> if 
>>> you would like the chairs to
>>> track such editorial comments as part of the WGLC process.
>>> No IPR disclosures have been submitted directly on either draft
>>> Thanks,
>>> David, Gorry and Wes
>>> (TSVWG Co-Chairs)
>>> _______________________________________________
>>> Int-area mailing list
>>> Int-area@ietf.org <mailto:Int-area@ietf.org>
>>> https://www.ietf.org/mailman/listinfo/int-area
>>
>
> -- 
> ________________________________________________________________
> Bob Briscoehttp://bobbriscoe.net/

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