Re: [mpls] Available IP version numbers.

Greg Mirsky <gregimirsky@gmail.com> Tue, 20 April 2021 00:46 UTC

Return-Path: <gregimirsky@gmail.com>
X-Original-To: mpls@ietfa.amsl.com
Delivered-To: mpls@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 220033A0935 for <mpls@ietfa.amsl.com>; Mon, 19 Apr 2021 17:46:14 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -0.196
X-Spam-Level:
X-Spam-Status: No, score=-0.196 tagged_above=-999 required=5 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, 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=gmail.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 g-pEvnDKMdwT for <mpls@ietfa.amsl.com>; Mon, 19 Apr 2021 17:46:09 -0700 (PDT)
Received: from mail-lj1-x22f.google.com (mail-lj1-x22f.google.com [IPv6:2a00:1450:4864:20::22f]) (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 DAB113A0930 for <mpls@ietf.org>; Mon, 19 Apr 2021 17:46:08 -0700 (PDT)
Received: by mail-lj1-x22f.google.com with SMTP id a36so30678289ljq.8 for <mpls@ietf.org>; Mon, 19 Apr 2021 17:46:08 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=rie8GBiV6NtzdJKGJAT1qIfO+TMxE43fVipJJMXGb8c=; b=cOcYWyOBm1aBmPtjXnS1QxytWy/qr8OmqhPWeb03Pm5pp6VRnn1HoZLd1BlCsTHw/h Ts6FOWyVsUGzsBuMxb0QfREpcE1ObcN2mtqctYc+kV7w8Lc8Tw/tdV8I4H/Fo76L/jYn lq/rBmA7KZdZ4UtySsSKkYPKtWVL7Hq9FefioSeJMxw1ULfSbjcnt8WiFKpTvlhD8pBP UKAVypYJc8CXWBAC5Q/E4sWoVYO3GgB+L4IKbMs65XP6vRI7AEZL7ecx3RAAyl0Ia45B L2EKwFVbk2x1nGKemr9OnslavghwvXsTyWTGDvHirLGfj/cHFDS6MwFpoKBuNp+BCH8f eREA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=rie8GBiV6NtzdJKGJAT1qIfO+TMxE43fVipJJMXGb8c=; b=BDZUOB2WkhegDn93im5nqpI8954hNFbFWGGXS1yqDYrL/x+pu4bn+7kNlU2T+LVZ54 kqLCf4rMBH7wJxmwobopUMgLcoOenqX8GfpITLfTUi465fbtXelciyQNYBKHpVp28IIa h1NdZDEmrfRJ1ek2cu5unnOPNhXfqHkX1+DpgBr7j/7pVWX076/gyhpN858FZrsQvumH 20enU2nDCWAimlcTJXt8hbcVOdhCHY3R77nGct4paMPOQojFMNd+u5NIt87DZ36sKGWu wmWkOW4EQWSMP+T7z3jQcj5znjoM6rOryR7cl645eE4QEb3CFowuNs6TdYPNiS+GCnBP Km4w==
X-Gm-Message-State: AOAM530ue97QNseuzu6nuR+W8EJQ29GYf/7Y18tW8iliJW7yzWNvtna7 8lV2IwcQHOLQaVfF21AnyHDi7Y9yHchceAG7Ne8=
X-Google-Smtp-Source: ABdhPJz9atycdAS5da4nEkGXIiSBk6TM0vy1RlkNl4U4ghAq3//IhWsdjr9LXO54uTNUYBk1rjNt+4TfniK26j4PJMo=
X-Received: by 2002:a05:651c:105a:: with SMTP id x26mr13132491ljm.158.1618879566084; Mon, 19 Apr 2021 17:46:06 -0700 (PDT)
MIME-Version: 1.0
References: <A5C8DFA9-3601-4838-9461-727CC40507B1@gmail.com> <003701d7354d$4810e660$d832b320$@sergey.dev> <36cdf547-47b0-09f2-c168-588477f7af1c@joelhalpern.com> <001b01d73551$47ba6520$d72f2f60$@sergey.dev> <CA+RyBmXsWqNtiLrK2scjjQUKC5j0MHi=OqHmaPi4O8DBAaoKQg@mail.gmail.com> <CAF18ct5NcrdBDvfGa=4mLjjFPZu=d56nq8bfHWKfnEepCjyORQ@mail.gmail.com> <007a01d7356c$555171e0$fff455a0$@sergey.dev> <CAF18ct7=OSxsHj+aki8qikc7q8Hd=nzj5NoVZLs=s0=ACQZMng@mail.gmail.com> <009d01d73575$500f6170$f02e2450$@sergey.dev>
In-Reply-To: <009d01d73575$500f6170$f02e2450$@sergey.dev>
From: Greg Mirsky <gregimirsky@gmail.com>
Date: Mon, 19 Apr 2021 17:45:53 -0700
Message-ID: <CA+RyBmUviK+XXgJnPbc+XZ7bB+7r7vNQH01Y-5VTvMnXUPGh2w@mail.gmail.com>
To: ietf@sergey.dev
Cc: Uma Chunduri <umac.ietf@gmail.com>, mpls <mpls@ietf.org>
Content-Type: multipart/alternative; boundary="000000000000787be205c05cc529"
Archived-At: <https://mailarchive.ietf.org/arch/msg/mpls/_aB7CM79kHL5h7g5yTFspetx0sM>
Subject: Re: [mpls] Available IP version numbers.
X-BeenThere: mpls@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Multi-Protocol Label Switching WG <mpls.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/mpls>, <mailto:mpls-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/mpls/>
List-Post: <mailto:mpls@ietf.org>
List-Help: <mailto:mpls-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/mpls>, <mailto:mpls-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 20 Apr 2021 00:46:14 -0000

Hi Sergey,
thank you for a very interesting discussion. Please find a note inlined
under the GIM>> tag.

Regards,
Greg

On Mon, Apr 19, 2021 at 4:40 PM <ietf@sergey.dev> wrote:

> Hi Uma,
>
> > This may be well worth it, for many functionalities envisioned (by many
> folks as documented by Stewart) in the BoS engineering.
>
> Agree
>
>
>
> > But the proposal/functionalities sought are much more invasive and it
> may need more than 0x0 first nibble + may be a bSPL.
>
> Agree as well.
>
> I’m not against using a new nibble value; all I’m saying is that there’s
> been a lot of focus on discussing whether we can get it and how it is
> allocated (there’s a presumption of IANA allocation from IP versions space,
> which I doubt); but so far it is not clear whether we need it in the first
> place, and what exactly it is supposed to solve.
>
GIM>> AFAIK, there's no IANA registry for the first nibble of a payload
after the BoS LE. Each protocol defines a new value of the first nibble
with consideration of what other protocols use. For BIER in an MPLS network
Section 2.1.2 RFC 8296 defines the value of the Nibble field as 0b0101
(also providing a very good explanation of why that particular value was
selected). For a non-MPLS network Section 2.2.2 states that the
filed SHOULD be zeroed on transmission and ignored on receipt.

>
>
> Thus my proposal would be to return to a more general discussion first,
> and, probably, we should start with objectives & requirements before we dig
> into the details.
>
>
>
> Thank you,
>
> --
>
> Sergey
>
>
>
> *From:* Uma Chunduri <umac.ietf@gmail.com>
> *Sent:* Monday, April 19, 2021 4:11 PM
> *To:* ietf@sergey.dev
> *Cc:* Greg Mirsky <gregimirsky@gmail.com>; mpls <mpls@ietf.org>
> *Subject:* Re: [mpls] Available IP version numbers.
>
>
>
> Hi Sergey,
>
>
>
>
>
> >Identification by the first nibble is always a _*guess*_. LER always
> identifies payload by a label/FEC
>
> >mapping (with further verifications of packet header from other protocol
> layers).  LSR can try to guess
>
> >what’s inside by using the nibble. Nothing is guaranteed in this case.
>
>
>
> Your assessment is correct. Then this amounts to getting a new ethernet
> code point; frankly to be "more"  foolproof. This may be well worth it, for
> many functionalities envisioned (by many folks as documented by Stewart) in
> the BoS engineering.
>
>
>
> >0x0 fits the scenario, if nothing else is needed from this?
>
>
>
> You need to deal with all the warts that come along with this technically
> "unknown" value apart from dealing with many existing deployments on how
> this is being used to process the rest of the stuff. But the
> proposal/functionalities sought are much more invasive and it may need more
> than 0x0 first nibble + may be a bSPL.
>
>
>
> Cheers!
> --
>
> Uma C.
>
>
>
>
>
>
>
> On Mon, Apr 19, 2021 at 3:35 PM <ietf@sergey.dev> wrote:
>
> Hi Greg, Uma,
>
>
>
> Greg,
>
> *>Also, it could be G-ACh or BIER, respectively identified by 0x01 and
> 0x05 in the first nibble. *
>
> Not quite.
>
> Identification by the first nibble is always a _*guess*_. LER always
> identifies payload by a label/FEC mapping (with further verifications of
> packet header from other protocol layers).  LSR can try to guess what’s
> inside by using the nibble. Nothing is guaranteed in this case.
>
>
>
> *> An encapsulation other than IP uses MPLS PW encapsulation. And the BoS
> LE is followed by PW CW or ACH. Note that RFC 8469
> <https://tools.ietf.org/html/rfc8469> RECOMMENDS using PW CW for Ethernet
> PWs to avoid possible misinterpretation of the payload.*
>
> An encapsulation other than IP might use, well, just about anything (just
> as your BIER example above).
>
> If we want to stick to practical examples, CW is often not present (due to
> absence of L3-L4 ECMP LSR load-balancing in the core, or presence of
> entropy labels as an example). So immediately after BoS you encounter an
> Ethernet header (where the first nibble can be just about anything).
>
>
>
> Uma,
>
> *> So it's critical to care for b (i) as has been discussed or being
> discussed for backward compatibility on this aspect..*
>
> 0x0 fits the scenario, if nothing else is needed from this?
>
>
>
> --
>
> Sergey
>
>
>
> *From:* Uma Chunduri <umac.ietf@gmail.com>
> *Sent:* Monday, April 19, 2021 1:29 PM
> *To:* Greg Mirsky <gregimirsky@gmail.com>
> *Cc:* ietf@sergey.dev; mpls <mpls@ietf.org>
> *Subject:* Re: [mpls] Available IP version numbers.
>
>
>
> Hi Greg,
>
>
>
> +1
>
>
>
> 2 Broad categories here:
>
>
>
> a.  If we are seeking to have a new ether type - we don't have to worry
> about the backward compatibility (while yes, we may seek to maintain some
> aspects same for reusability purposes) as upgrade is needed to process the
> packet header (labels + BoS stuff) with new ether type.
>
>
>
> b. If the same ether type of current MPLS is sought, this is a critical
> piece for not impacting the existing functionality  for the not upgraded
> nodes. Again 2 cases here
>
>
>
>     (i) If the underlying circuit is IP based - then the discussion here
> is completely valid and first nibble value has to be different and
> non-conflicting
>
>     (ii) For non-IP circuits an existing LSR will obviously not
> interpret/assume it's IPv4/IPv6 packet underneath (and not use the header
> fields for ECMP).
>
>
>
> So it's critical to care for b (i) as has been discussed or being
> discussed for backward compatibility on this aspect..
>
>
>
> Thx!
>
> --
>
> Uma C.
>
>
>
>
>
>
>
> On Mon, Apr 19, 2021 at 12:51 PM Greg Mirsky <gregimirsky@gmail.com>
> wrote:
>
> Hi Sergey,
>
> I think that when we are looking at how systems interpret MPLS payload, as
> I understand it, we have two scenarios - MPLS LSP and MPLS PW. In the
> former, an IP packet is a native payload. Thus the BoS label element (LE)
> is followed by an IPv4 or IPv6 packet is valid. Also, it could be G-ACh or
> BIER, respectively identified by 0x01 and 0x05 in the first nibble. An
> encapsulation other than IP uses MPLS PW encapsulation. And the BoS LE is
> followed by PW CW or ACH. Note that RFC 8469
> <https://tools.ietf.org/html/rfc8469> RECOMMENDS using PW CW for Ethernet
> PWs to avoid possible misinterpretation of the payload.
>
> That all might not be "a standard-defined paradigm", but a de facto
> standard on the wire. And, in my opinion, we must consider that to ensure
> the backward compatibility of any change we may introduce.
>
>
>
> Regards,
>
> Greg
>
>
>
> On Mon, Apr 19, 2021 at 12:22 PM <ietf@sergey.dev> wrote:
>
> Joel,
> I agree with that.
>
> But my point it - it seems there's an implicit assumption that IP header
> follows an MPLS label stack, which may or may not be the case. First nibble
> is not a protocol identifier in a classical sense (except for
> LSR-guessing).
> We can't rely on a nibble as a unique identifier by itself; so is there
> even a point in using anything besides 0x0 (to avoid LSR-guessing)? There
> might be, but it is not obvious in a current form of just taking a new
> number.
> And if we were to use a new number - it is not an IP version number (as
> long as we are not claiming that an IP header follows. Yes, 0x0 and 0x1
> were reserved by IANA for rfc4928 usecase, but this is not, strictly
> speaking, a standard-defined paradigm).
>
> --
> Sergey
>
> -----Original Message-----
> From: Joel M. Halpern <jmh@joelhalpern.com>
> Sent: Monday, April 19, 2021 12:04 PM
> To: ietf@sergey.dev; 'Loa Andersson' <loa.pi.nu@gmail.com>; 'mpls' <
> mpls@ietf.org>
> Subject: Re: [mpls] Available IP version numbers.
>
> If we are defining a protocol carried with its own ethertype (e.g.
> MPLS), there is no neeed for an IP version differentiation.
>
> It can in fact be argued that IPv6 could have used a different header
> format, and assumed that the media woudl indicate the new protocol.
> However, because we knew that it needed to interwork with, be mixed with,
> and be diagnosed with existing IPv4 packets it was far more robust to build
> the packet format in such a way that it was reliably distinguishable from
> IPv4.  Which means a different starting nibble.
>
> We could have skipped it.  (Historically, we got there the other way.
> We started by thinking we would use the same ethertype for both.  And then
> also realized that had problems.  So we have a belt and suspenders; dual
> identification.  Which is often a good design paradigm.)
>
> Yours,
> Joel
>
> PS: In the MPLS context the is further complicated by devices which look
> at the data after the end of the stack and try to guess what it is.
> Typically to support ECMP / LAG.
>
> On 4/19/2021 2:53 PM, ietf@sergey.dev wrote:
> > Hi Loa,
> > In an adjacent thread ("mpls open dt & the first nibble discussion") I
> raised a question about why do we even expect to take something from IP
> numbering. Would appreciate your feedback on this one.
> >
> >
> > -----Original Message-----
> > From: mpls <mpls-bounces@ietf.org> On Behalf Of Loa Andersson
> > Sent: Saturday, April 17, 2021 1:13 AM
> > To: mpls <mpls@ietf.org>
> > Subject: [mpls] Available IP version numbers.
> >
> > DT,
> >
> > We had a discussion on how many IP version numbers are available.
> >
> > It should be remembered that in IANA “Reserved” really means “Reserved,
> do not assign”.
> >
> > 0,1,5,7,8,9 and 15 are reserved.
> > 2,3,10,11,12,13 and 14 are unassigned
> > 4 and 6 are assigned
> >
> > To make the reserved requires a standard track RFC.
> >
> > So we 7 IP version numbers available, that is a sufficient low number to
> make me nervous, if I owned the registry.
> >
> > I would nit count on having more IP version numbers assigned to “us”,
> especially since we already have an agreement (PWE3), accepting to get two
> numbers and committing to not use more.
> >
> > /Loa
> >
> > Sent from my iPhone
> > _______________________________________________
> > mpls mailing list
> > mpls@ietf.org
> > https://www.ietf.org/mailman/listinfo/mpls
> >
> > _______________________________________________
> > mpls mailing list
> > mpls@ietf.org
> > https://www.ietf.org/mailman/listinfo/mpls
> >
>
> _______________________________________________
> mpls mailing list
> mpls@ietf.org
> https://www.ietf.org/mailman/listinfo/mpls
>
> _______________________________________________
> mpls mailing list
> mpls@ietf.org
> https://www.ietf.org/mailman/listinfo/mpls
>
>