Re: [lisp] Mirja Kühlewind's Discuss on draft-ietf-lisp-rfc6830bis-16: (with DISCUSS and COMMENT)

Luigi Iannone <ggx@gigix.net> Wed, 06 February 2019 16:11 UTC

Return-Path: <ggx@gigix.net>
X-Original-To: lisp@ietfa.amsl.com
Delivered-To: lisp@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 97A0812F1AC for <lisp@ietfa.amsl.com>; Wed, 6 Feb 2019 08:11:05 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.042
X-Spam-Level:
X-Spam-Status: No, score=-2.042 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_MED=-0.142, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001] autolearn=unavailable autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gigix-net.20150623.gappssmtp.com
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 RhNqiuqHpYM9 for <lisp@ietfa.amsl.com>; Wed, 6 Feb 2019 08:11:01 -0800 (PST)
Received: from mail-wm1-x32f.google.com (mail-wm1-x32f.google.com [IPv6:2a00:1450:4864:20::32f]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id BF9D312F295 for <lisp@ietf.org>; Wed, 6 Feb 2019 08:10:54 -0800 (PST)
Received: by mail-wm1-x32f.google.com with SMTP id g67so3378558wmd.2 for <lisp@ietf.org>; Wed, 06 Feb 2019 08:10:54 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gigix-net.20150623.gappssmtp.com; s=20150623; h=from:message-id:mime-version:subject:date:in-reply-to:cc:to :references; bh=8G3DOXTS4pIeA8u2Kfn/Ga7jU/XGMJHlAl+af0h/nQE=; b=wK/JW0Zc6W5cvLK0Ip0/O2JMqUDxRtTjorONkiYnM71SWig5ymJHDPPDYkfLkpgHCc 6KDEfOTkR6fjqPx+qr3t0S/DiowqCt8CY726/yQrA7IpEBhcRCs7LXpapAnzUWO2Wfx6 gOu/GSdpdjmmnVoaAtiDI3mg2Et3OghfhGeaaGyAxhAqlIYLz/XT+XHqc2GJjxZDO+Oi kosvoF43SgWATySABGkzPO2e5scL+y/PSgXKe05AglDfBN6bfLXkiDbLgk6LuC6bmamS yEZvzwaHpikHpnWIIkcHdE0RKLjwRdtSCDqfrHtc3XjatK1PFad5d5cHMZxNcCKhr3BP hunA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:message-id:mime-version:subject:date :in-reply-to:cc:to:references; bh=8G3DOXTS4pIeA8u2Kfn/Ga7jU/XGMJHlAl+af0h/nQE=; b=DB1V2INqtb7yZrN9OZejbltwd64CpyY2t5BHPaUsbZsjyF8NVtGKl4dq9NkBftZJ0i 7xjzCTFd/EXu6bfAGOZ3FQQ6IohVar5eKv9JiaNtdrGDmwECy4QsW7WG49GA84pk57pN Bqkwe1lwohE51QUMqBRtrlArmw1N0UTRCd306mTt+YQJr/Tpn4jIQAlNGEpMzvmiHdT0 gTk/6/lHKf4/SIucVZe1gVeIGXEugt77Ij6OQ0hje848+ipwSLw95RikEL3YV/3tvewa pTiwDqWASS/5pPJ/euwtZMNhRYryH/ZDegIrlBejiMKYnipV1Wt0NsponFXscAFbD+Go gktg==
X-Gm-Message-State: AHQUAuYOzIkWQWUpiCwUb1zP1J7HPYhNb3VBqki6XqezuwPfOB+WCYeW busLyhi0xNKR/VhUEnbeUi/2Gw==
X-Google-Smtp-Source: AHgI3IaLN3jWbJl/YYSCLt9QnvZupVMwYG3vpsaiJD06uutzP4D41/514BbhTKgWIs6xP8OmO46UTQ==
X-Received: by 2002:a1c:5f8a:: with SMTP id t132mr3915247wmb.40.1549469452971; Wed, 06 Feb 2019 08:10:52 -0800 (PST)
Received: from 2a01cb0404a8c700d077aef381d45a44.ipv6.abo.wanadoo.fr (2a01cb0404a8c700d077aef381d45a44.ipv6.abo.wanadoo.fr. [2a01:cb04:4a8:c700:d077:aef3:81d4:5a44]) by smtp.gmail.com with ESMTPSA id q12sm11131001wmf.2.2019.02.06.08.10.50 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 06 Feb 2019 08:10:51 -0800 (PST)
From: Luigi Iannone <ggx@gigix.net>
Message-Id: <1B6E2085-FFD8-4CAA-B9BB-5CBFC5AA9745@gigix.net>
Content-Type: multipart/alternative; boundary="Apple-Mail=_BFFCCB7E-1C4D-47C8-9626-19BD7985E7A8"
Mime-Version: 1.0 (Mac OS X Mail 12.2 \(3445.102.3\))
Date: Wed, 06 Feb 2019 17:10:50 +0100
In-Reply-To: <A3211D06-60D4-45C6-9B99-3F9CA6421CCA@kuehlewind.net>
Cc: Dino Farinacci <farinacci@gmail.com>, The IESG <iesg@ietf.org>, lisp-chairs@ietf.org, "lisp@ietf.org list" <lisp@ietf.org>, draft-ietf-lisp-rfc6830bis@ietf.org
To: "Mirja Kuehlewind (IETF)" <ietf@kuehlewind.net>
References: <153667905625.16761.12157659372502604927.idtracker@ietfa.amsl.com> <7DEBCA24-9D55-4325-85AA-48AB3FAAB91D@gmail.com> <0201F06C-DA9E-445A-A995-54BA805B595C@kuehlewind.net> <DDA9C261-44DD-4389-9463-3A84E4C176BB@gmail.com> <5EC21C57-D217-48A9-AFD0-24710299CF7F@kuehlewind.net> <5A3C4B1F-EA31-4698-96F4-915A77400A56@gmail.com> <2CAF25CC-01EE-49D4-B970-F8EFB24940A8@kuehlewind.net> <5F9D8F39-871D-4A96-9C0A-7BACD2ABB1F7@gmail.com> <AC0C4ACA-0E15-441E-B05A-64F034CBF2F1@kuehlewind.net> <CDF10486-2CD1-43C2-BF1B-BA8CA8C29444@gmail.com> <2DC6D38E-C46B-4D38-B093-B88720BCD550@kuehlewind.net> <0BE5C929-D2FA-4786-9F5E-0A93E7700880@gmail.com> <11FBAC13-2859-4778-84CA-B546EB669727@kuehlewind.net> <EB03EA1D-6C18-4039-A228-224774D991B5@gmail.com> <2FEB555F-16A5-4875-93ED-D14BFEEF503A@gigix.net> <A3211D06-60D4-45C6-9B99-3F9CA6421CCA@kuehlewind.net>
X-Mailer: Apple Mail (2.3445.102.3)
Archived-At: <https://mailarchive.ietf.org/arch/msg/lisp/m5SGKGWw5juZakv_8zoMRLpd4Fc>
Subject: Re: [lisp] Mirja Kühlewind's Discuss on draft-ietf-lisp-rfc6830bis-16: (with DISCUSS and COMMENT)
X-BeenThere: lisp@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: List for the discussion of the Locator/ID Separation Protocol <lisp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/lisp>, <mailto:lisp-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/lisp/>
List-Post: <mailto:lisp@ietf.org>
List-Help: <mailto:lisp-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/lisp>, <mailto:lisp-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 06 Feb 2019 16:11:06 -0000

Hi Mirja,


> On 5 Feb 2019, at 16:39, Mirja Kuehlewind (IETF) <ietf@kuehlewind.net> wrote:
> 
> Hi Luigi,
> 
> I just realized that I never replied to this mail. The change below is okay, however, it did not make it into the current version of the draft and therefore I cannot clear my discuss.

Fair enough.

Let me sum up the changes we agree on:


Section 5.3 in the part marked as "When doing ITR/PITR encapsulation:”

OLD:
      The 'Explicit Congestion Notification' (ECN) field (bits 6 and 7
      of the IPv6 'Traffic Class' field) requires special treatment in
      order to avoid discarding indications of congestion [RFC6040 <https://tools.ietf.org/html/rfc6040>].
      ITR encapsulation MUST copy the 2-bit 'ECN' field from the inner
      header to the outer header.  Re-encapsulation MUST copy the 2-bit
      'ECN' field from the stripped outer header to the new outer
      header.

NEW and simplified:

      The 'Explicit Congestion Notification' (ECN) field (bits 6 and 7
      of the IPv6 'Traffic Class' field) requires special treatment in
      order to avoid discarding indications of congestion as specified in 
      [RFC6040 <https://tools.ietf.org/html/rfc6040>]. 


Note the re-encapsultion test has been remove (see later on)


Section 5.3 in the part marked as "When doing ETR/PETR decapsulation:"

OLD: 
      The 'Explicit Congestion Notification' (ECN) field (bits 6 and 7
      of the IPv6 'Traffic Class' field) requires special treatment in
      order to avoid discarding indications of congestion [RFC6040 <https://tools.ietf.org/html/rfc6040>].  If
      the 'ECN' field contains a congestion indication codepoint (the
      value is '11', the Congestion Experienced (CE) codepoint), then
      ETR decapsulation MUST copy the 2-bit 'ECN' field from the
      stripped outer header to the surviving inner header that is used
      to forward the packet beyond the ETR.  These requirements preserve
      CE indications when a packet that uses ECN traverses a LISP tunnel
      and becomes marked with a CE indication due to congestion between
      the tunnel endpoints.  Implementations exist that copy the 'ECN'
      field from the outer header to the inner header even though
      [RFC6040 <https://tools.ietf.org/html/rfc6040>] does not recommend this behavior.  It is RECOMMENDED
      that implementations change to support the behavior in [RFC6040 <https://tools.ietf.org/html/rfc6040>].


NEW and simplified:

      The 'Explicit Congestion Notification' (ECN) field (bits 6 and 7
      of the IPv6 'Traffic Class' field) requires special treatment in
      order to avoid discarding indications of congestion as specified in 
      [RFC6040 <https://tools.ietf.org/html/rfc6040>]. Note that implementations exist that copy the 'ECN'
      field from the outer header to the inner header even though
      [RFC6040 <https://tools.ietf.org/html/rfc6040>] does not recommend this behavior.  It is RECOMMENDED
      that implementations change to support the behavior in [RFC6040 <https://tools.ietf.org/html/rfc6040>].


In the same section drop completely the last paragraph because is a duplicate of the above.
Replaced by a note on the re-encapsulation:

NEW (Replacing last paragraph)

     Some xTRs and PxTRs performs re-encapsulation operations and need 
     to treat the 'Explicit Congestion Notification' (ECN) in a special way.
	  Because the re-encapsulation operation is a  sequence of two operations, namely 
          a decapsulation followed by an encapsulation, the ECN bits MUST be treated as described 
          above for these two operations.


Does it sound OK to you?

Ciao

L.

 




> Please also note that the text on decapsulation is basically in the same section twice. I recommend to remove it once and adapt the other one accordingly.
> 
> Further, inline with RFC6040, you would also need to align the re-encapsulation part. Currently the text says:
> "Re-encapsulation MUST copy the 2-bit 'ECN' field from the stripped outer header to the new outer header.“
> Usually re-encapsulation is performed by doing de-encapsulation and then encapsulation again. The difference here would be, that if e.g. the inner header is not-ETC but the tunnel changes the bits to ETC0 or ETC1 this error is not further propagated, indicating ECN support where there is not ECN support.
> 
> Thanks,
> Mirja
> 
> 
> 
>> Am 26.09.2018 um 17:27 schrieb Luigi Iannone <ggx@gigix.net>:
>> 
>> Hi Mirja,
>> 
>> trying to follow up on this issue.
>> 
>> The ECN text for encapsulation is currently:
>> 
>>      The 'Explicit Congestion Notification' (ECN) field (bits 6 and 7
>>      of the IPv6 'Traffic Class' field) requires special treatment in
>>      order to avoid discarding indications of congestion [
>> RFC3168
>> ].
>>      ITR encapsulation MUST copy the 2-bit 'ECN' field from the inner
>>      header to the outer header.  Re-encapsulation MUST copy the 2-bit
>> 
>>      'ECN' field from the stripped outer header to the new outer
>> 
>>      header.
>> 
>> Can we keep it as it is (updating the reference to 6040)?
>> 
>> The text for decapsulation is:
>> 
>> CURRENT:
>>      The 'Explicit Congestion Notification' (ECN) field (bits 6 and 7
>>      of the IPv6 'Traffic Class' field) requires special treatment in
>>      order to avoid discarding indications of congestion [
>> RFC6040
>> ].  If
>>      the 'ECN' field contains a congestion indication codepoint (the
>>      value is '11', the Congestion Experienced (CE) codepoint), then
>>      ETR decapsulation MUST copy the 2-bit 'ECN' field from the
>>      stripped outer header to the surviving inner header that is used
>>      to forward the packet beyond the ETR.  These requirements preserve
>>      CE indications when a packet that uses ECN traverses a LISP tunnel
>>      and becomes marked with a CE indication due to congestion between
>>      the tunnel endpoints.  Implementations exist that copy the 'ECN'
>>      field from the outer header to the inner header even though
>>      [
>> RFC6040
>> ] does not recommend this behavior.  It is RECOMMENDED
>>      that implementations change to support the behavior in [
>> RFC6040
>> ].
>> 
>> 
>> Which I suggest we shrink to:
>> 
>> NEW:
>> 
>>      The 'Explicit Congestion Notification' (ECN) field (bits 6 and 7
>>      of the IPv6 'Traffic Class' field) requires special treatment in
>>      order to avoid discarding indications of congestion [
>> RFC6040]. 
>>      Note that implementations exist that copy the 'ECN'
>>      field from the outer header to the inner header even though
>>      [
>> RFC6040
>> ] does not recommend such behavior.  It is RECOMMENDED
>>      that implementations change, so to support the specifications in [
>> RFC6040
>> ].
>> 
>> 
>> 
>> The text above clearly states that implementations should be conform to 6040. 
>> 
>> Is it what you were looking for?
>> 
>> Or am I missing something?
>> 
>> Ciao
>> 
>> L.
>> 
>> 
>> 
>> 
>> 
>> 
>>> On 24 Sep 2018, at 19:34, Dino Farinacci <farinacci@gmail.com> wrote:
>>> 
>>> Well, the implementations are out and working. And we said in the latest updates to consider using RFC6040. So not sure we can do much more than that.
>>> 
>>> Dino
>>> 
>>>> On Sep 24, 2018, at 5:52 AM, Mirja Kuehlewind (IETF) <ietf@kuehlewind.net> wrote:
>>>> 
>>>> Because they don’t follow RFC6040 and therefore we do something different in some corner cases.
>>>> 
>>>> 
>>>> 
>>>>> Am 22.09.2018 um 06:52 schrieb Dino Farinacci <farinacci@gmail.com>:
>>>>> 
>>>>>> However, I totally disagree with your comment on providing details that are not implemented. If they are not implemented correctly, it might even be more important to spell them out in this document, so implementors have chance to update their (future) implementation to do the correct thing. Having deployed implementations that are non standard-conform always happens and in this case it is probably not specifically problematic as it doesn’t impact interoperability. However, it is important though that the spec is correct.
>>>>> 
>>>>> And why do you think they are implemented incorrectly? 
>>>>> 
>>>>> Dino
>>>>> 
>>>> 
>>> 
>> 
>