[mpls] Re: Shepherd review of draft-ietf-mpls-1stnibble
Greg Mirsky <gregimirsky@gmail.com> Thu, 25 July 2024 17:21 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 65764C169419; Thu, 25 Jul 2024 10:21:30 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -0.862
X-Spam-Level:
X-Spam-Status: No, score=-0.862 tagged_above=-999 required=5 tests=[AC_DIV_BONANZA=0.001, BAYES_00=-1.9, 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, NORMAL_HTTP_TO_IP=0.001, NUMERIC_HTTP_ADDR=1.242, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_ZEN_BLOCKED_OPENDNS=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 ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id n1qUjEN74VQ2; Thu, 25 Jul 2024 10:21:26 -0700 (PDT)
Received: from mail-wm1-x335.google.com (mail-wm1-x335.google.com [IPv6:2a00:1450:4864:20::335]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id B9602C14F738; Thu, 25 Jul 2024 10:21:25 -0700 (PDT)
Received: by mail-wm1-x335.google.com with SMTP id 5b1f17b1804b1-427fc9216f7so9393905e9.2; Thu, 25 Jul 2024 10:21:25 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1721928084; x=1722532884; darn=ietf.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=H7KAvH4gpz5/OzLZOYIS1YGJoK+2SBeItJtTFA/Op7c=; b=k5AJvC0WxlcxnP+PHIajdP29sArOUUnYLcvqsVteJ1K+IuGfjhBC1Ch7ioTuq8Y8Qk 7dUXNxqlj7xL8ZID3KqSxITpu9iO2sRkeEzKNB5hCeEdQsWvfiVP7+QvBmFAh4Ez7VD/ ORCaix5X6ULjvcyTkfUELRtg85d2JXBYCiE1jgPnkzwFNqCS67DxfYYCZagK757CgWVo +8XzcTV6RjyoonqZDvCnlT1hYJepyxs49FeJwUbjxEkS+Nei1XbfKit4bQl1mV9oQDqX 4QOew0FMFHvl/gLZ4mF13W6sN9ElpdKYscq0bgwxS5BrIAIyJJJxU0g23dFSyRjN4NG+ AubA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1721928084; x=1722532884; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=H7KAvH4gpz5/OzLZOYIS1YGJoK+2SBeItJtTFA/Op7c=; b=Mz78ldPrjo01SLb5L1tq2GwDDaX95YjDNPn/88jUfZcOTjwPLdcLWzbQDnyOGcLOI7 fgYklMMomJJmRvtINM8SZe5rLZWNqmsTe0+9XXM89pb7BTyrWiaMPkLt0UnNX5djBrod K5pm1exE9aaZx5hXqsiLe1GyIJhWYxLCpFceYQmysRt00jjpCtL6cRqTSPlDTO1milAR JFSI+r0vRSxLaMUz6ppHKnZw7US+fXaOHfgHtuY3RJpKGIwKYkUGiykFE7XMljm3Bwzo pr7RZF0ZI+IDMqUJ97avcv0kNyOWtnw27wZk2JTD96jsZ7ydiHX4vpQBlzqccwMsqZvN 3jYA==
X-Forwarded-Encrypted: i=1; AJvYcCWkP2drT29pcTgyf8pKRywIsTl+Oyj5r6XETKIsH8fNRIJivWz5WzOc4rgfBBXUuGuIyEUcrnNCYSaFAKJD
X-Gm-Message-State: AOJu0YyUJx7fwa5P8gy4+zOft7JcNPYRw0kjPL73f8JxvGMKJ69RP24m tqJEc19JUgOFz5BeBScWKtM5qunDRw6o5idfLugGnORpyo7ELXCA+fYRkcRd3UtQtpWFj4lvhNy cfgU2uY1dPFLNEonpgmphnp1EVnE=
X-Google-Smtp-Source: AGHT+IH4Oo0uccR9IaCvA/MMcHJJ8XTvlnfG0YKQ8AVjIXapk7h0NMU59YZSYKRzb93/ZSy0uFjHggKuMvXTG3DWa/A=
X-Received: by 2002:a5d:43c8:0:b0:368:3b83:65be with SMTP id ffacd0b85a97d-36b3639a71amr1948329f8f.26.1721928083219; Thu, 25 Jul 2024 10:21:23 -0700 (PDT)
MIME-Version: 1.0
References: <027301dad776$a0b3ed70$e21bc850$@olddog.co.uk> <CA+RyBmVndYiV-Ftivn4i4_t++BngQbD6iHRniC-iriPsM6Dong@mail.gmail.com> <077a01dadeb5$8b57b9c0$a2072d40$@olddog.co.uk>
In-Reply-To: <077a01dadeb5$8b57b9c0$a2072d40$@olddog.co.uk>
From: Greg Mirsky <gregimirsky@gmail.com>
Date: Thu, 25 Jul 2024 10:21:11 -0700
Message-ID: <CA+RyBmXg7D6p_Ona=eog5B5TYZV-p1TKfD7NesH=wzB7kuD21A@mail.gmail.com>
To: adrian@olddog.co.uk
Content-Type: multipart/alternative; boundary="000000000000bab412061e159f31"
Message-ID-Hash: NRLX57O2YTO7NYJDNYUYI5VIUETZFWP6
X-Message-ID-Hash: NRLX57O2YTO7NYJDNYUYI5VIUETZFWP6
X-MailFrom: gregimirsky@gmail.com
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-mpls.ietf.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
CC: draft-ietf-mpls-1stnibble@ietf.org, mpls@ietf.org, mpls-chairs@tools.ietf.org
X-Mailman-Version: 3.3.9rc4
Precedence: list
Subject: [mpls] Re: Shepherd review of draft-ietf-mpls-1stnibble
List-Id: Multi-Protocol Label Switching WG <mpls.ietf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/mpls/VF44ObfWDJoh8tXzbpHnQd7tfiQ>
List-Archive: <https://mailarchive.ietf.org/arch/browse/mpls>
List-Help: <mailto:mpls-request@ietf.org?subject=help>
List-Owner: <mailto:mpls-owner@ietf.org>
List-Post: <mailto:mpls@ietf.org>
List-Subscribe: <mailto:mpls-join@ietf.org>
List-Unsubscribe: <mailto:mpls-leave@ietf.org>
Sincere thanks, Adrian. Uploaded -09 version. Regards, Greg On Thu, Jul 25, 2024 at 10:10 AM Adrian Farrel <adrian@olddog.co.uk> wrote: > Hi Greg, > > > > Thanks for your careful work to make sure that no point is missed. > > > > - Author count. I have enough info to complete the shepherd write-up. > Thanks. > - Detailed points. I am comfortable with all of your proposed changes. > > > > Please post the new version when you are ready, and I will complete the > shepherd write-up. > > > > Cheers, > > Adrian > > > > *From:* Greg Mirsky <gregimirsky@gmail.com> > *Sent:* 25 July 2024 17:50 > *To:* adrian@olddog.co.uk > *Cc:* draft-ietf-mpls-1stnibble@ietf.org; mpls@ietf.org; > mpls-chairs@tools.ietf.org > *Subject:* Re: Shepherd review of draft-ietf-mpls-1stnibble > > > > Hi Adrian, > > thank you for the review and your thoughtful suggestions. Please find my > notes in-lined below under the GIM>> tag. Also, attached are the new > working version and the diff highlighting the updates. > > > > Regards, > > Greg > > > > On Tue, Jul 16, 2024 at 4:52 AM Adrian Farrel <adrian@olddog.co.uk> wrote: > > Hi, > > I'm your document shepherd for this journey. > > I have done my shepherd review of revision -08. I have quite a lot of > nits, but also some more substantial points. I don't want to go against > WG consensus, but I'd like you to answer my comments and we can see > where to go from there. > > There may be more questions as I work on the shepherd write-up. > > Thanks, > Adrian > > === > > Number of authors > > While having more than five front-page authors is something we can > achieve, I am required (as shepherd) to provide a credible reason. Can > you supply me with this, or move someone to be a Contributor? > > Since you have one of your number designated as Editor, one solution > would be to move everyone else to be Contributors. > > GIM>> As Loa expressed in the separate thread, and I completely support > him as a co-author and the Editor of this document, all authors provided > essential contributions in the course of this work. > > > --- > > Loa's affiliation. > > Are you sure that Loa's affiliation is still Huawei? > > --- > > id-nits > > Line 474 at the top of section 3.1 uses smart quotes. Please squash > them. > > There is a nit in your BCP 14 boilerplate. s/BCP14/BCP 14/ > > GIM>> Fixed both > > > --- > > Abstract > > Say what you are doing, not what you hope to do. > > s/The goal of this memo is to create/This memo creates/ > > GIM>> Accepted, thank you. > > > --- > > Abstract > > The update reference for 4928 in the Abstract is too conditional. You > already have "if approved" in the header. What you want in the rest of > the text is to write material that can be included in the RFC without > further modification. Thus, "This document updates RFC 4928." > > However, you should give a clue as to the nature of the update. You > don't have to write an essay (that comes in the main body), but a simple > "This document updates RFC 4928 by changing the colour of the curtains." > > GIM>> Would the following update address this issue: > > OLD TEXT: > > This memo, if published, would update RFC 4928. > > NEW TEXT: > > This document updates RFC 4928 by deprecating the heuristic method > > for identifying the type of packet encapsulated in MPLS. > > > --- > > Introduction > > The first paragraph makes a number of (true) statements that would > benefit from citations. > > GIM>> I've spurced the paragraph with references (PW CW and BIER header). > What would you suggest adding to further clarify the text? > > > --- > > Introduction > > Pedantically, and with regard to the note that the information about the > PSH and the embedded data packet is communicated via means such as the > routing protocols that signal the labels in the stack, isn't it wrong to > say that > the > correct interpretation of the Post-stack First Nibble (PFN) in a PSH > can be made only in the context of the Label Stack Element (LSE) or > group of LSEs in the preceding label stack that characterize the type > of the PSH > This is nearly right, but I think that the LSEs indicate the context: > they are not the context. > > GIM>> Thank you for bringing this to the discussion. Indeed, it is the > context that is associated with label that is communicated via control or > management plane. I propose the following update: > > OLD TEXT: > > the > > correct interpretation of the Post-stack First Nibble (PFN) in a PSH > > can be made only in the context of the Label Stack Element (LSE) or > > group of LSEs in the preceding label stack that characterize the type > > of the PSH > > NEW TEXT: > > the correct interpretation of the Post-stack First Nibble (PFN) in a > > PSH can be made only in the context associated using the control or > > management plane with the Label Stack Element (LSE) or group of LSEs > > in the preceding label stack that characterize the type of the PSH > > > > WDYT? > > > --- > > 1. > > * To document the assignments already made. > > Technically, there being no registry up to now, no assignments have > been made. Perhaps... > > * To document the values already in use. > > GIM>> It makes text more accurate, thank you. > > > --- > > 1. > > * To provide straightforward documentation of future assignments > through the creation of a "Post-stack First Nibble registry". > > This document doesn't provide that documentation. It provides a way to > achieve that documentation. So... > > * To provide a mechanism to document future assignments through the > creation of a "Post-stack First Nibble" IANA registry. > > GIM>> Thank you for your help in improving the quality of this document. > That is excellent suggestion. > > > --- > > 1. > > * Provide a method for tracking usage by requiring more consistent > documentation. > > Consistent with what? Perhaps "more detailed" or "more rigorous"? > > GIM>> I think that "detailed" is the right one. Thank you. > > > --- > > 1. > > Getting ahead of the details of the document, but... > > * To stress the importance that any MPLS packet not carrying plain > IPv4 or IPv6 packets contains a PSH. > > So, when IPv13 comes along, this will or will not require the use of a > PSH? > > I found the answer to this in 2.4, but I think you should call out that > all other versions of IP MUST be encoded using a PSH. > > GIM>> Would the forward reference to Sect.2.4 be acceptable and sufficient: > > NEW TEXT: > > * To stress the importance that any MPLS packet not carrying plain > > IPv4 or IPv6 packets contains a PSH, including any new version of > > IP (Section 2.4). > > > --- > > 1. > > Again, avoid the conditional and provide RFC-ready text > > s/, if published, would update [RFC4928]/updates [RFC4928]/ > > GIM>> Right, it's about time ;) > > > --- > > 1.1 > > Expand BoS on first use. > > GIM>> It turns out that it is the only place we use BoS. Replaced with the > expanded form. > > > --- > > 1.1 > > Examples include a control > word or an associated channel. > > Needs a reference. > > GIM>> Are these references what you envisioned: > > NEW TEXT: > > Examples include a control > > word [RFC4385] or an associated channel [RFC4385], [RFC5586]. > > > --- > > 1.1 > > Very odd to have the figures in this section especially as figure 2 is > not mentioned until 2.1.1.1. > > I suggest breaking out to a new section "Reference Figures", adding a > mention of Figure 2 within that section, and giving Figure 2 a caption. > > GIM>> Was I able to address your recommendation with the updates? > > > --- > > 1.1 Embedded packet > > Perhaps, > OLD > Embedded Packet: all octets beyond the PSH (if any). > NEW > Embedded Packet: all octets beyond the MPLS label stack excluding > the PSH (if present). > END > > s/packet ,/packet,/ > > GIM>> Would the follwoing be acceptable: > > NEW TEXT: > > Embedded Packet: an embedded packet follows immediately after the > > MPLS Label Stack and an optional PSH. > > END > > WDYT? > > > --- > > 1.1 > > Deprecation: regardless of how the deprecation is understood in > other IETF documents, the interpretation in this document is that > if a practice has been deprecated, that practice should not be > included in the new implementations or deployed in deployments. > > s/the new/new/ > > When you say "should not be ... deployed in deployments" what does that > say about pre-existing implementations that are already deployed? > > GIM>> We extensively discussed two actions - deprecate and obsolete. As I > understand them, your question about the latter. To that the document, in > update to Section 3 RFC 4928, states: > > | At the time RFC XXXX was written, it was planned to obsolete MPLS > > | encapsulations without PSH of non-IP payload when sufficient > > | evidence exists that there are no marketed or deployed > > | implementations using the heuristic practice. > > > --- > > 1.2 > > LSR is not used in the document > > GIM>> I found two occurences in the definition of a Post-Stack Header: > > Post-stack Header (PSH): optional field of interest to the egress > > Label Switching Router (LSR) (and possibly to transit LSRs). > > SPL could use a reference > > GIM>> RFC 7274? > > > Add > BoS > > GIM>> I've found it is used only once and I've replaced it with the > expanded form. > > G-ACh > > GIM>> It is used only in the table for IANA new registry. I've replaced it > with the expanded form (and it fits) > > NSH > > GIM>> Used several times but, as G-ACh, only in the table for IANA new > registry. Added the expanded form. WDYT? > > OUI > > GIM>> I found it is used once and replaced it with the expanded form > "Organizationally Unique Identifier". Would you agree? > > > --- > > 2.1 > > Should the section title have a question mark? > > GIM>> I defer that to people more proficient in English than I am. AFAICS, > "why" could be an introduction to an explanation, e.g., "Why we fight". > > > --- > > 2.1 > > An MPLS packet can contain many types of embedded packets. > > I think an MPLS packet can only contain one type of embedded packet. So, > > MPLS packets can contain many types of embedded packet. > > Or, > > There are many types packet that may be carried by MPLS packets. > > GIM>> I borrowed from your note: > > NEW TEXT: > > An MPLS packet can contain one of many types of embedded packets. > > WDYT? > > > --- > > 2.1 > > The most common types are > > I have no doubt what you say is true, but it is something of an > unsubstantiated assertion. It is also not clear that it will stand the > test of time. > > Perhaps: > Three common types are > > GIM>> Indeed. Thank you. > > > --- > > 2.1 > > In addition, there may be a PSH ahead of the embedded packet, and it > needs to be parsed. The PFN is currently used for both of these > purposes. > > a) "it needs to be parsed" By whom? Why? > b) "The PFN is currently used for both of these purposes." This is not > very clear as the first purpose (identifying the payload packet type) > has not be introduced as something that needs to be done, and the > second purpose (indicting that there is a PSH present) has not been > mentioned. > > GIM>> To address a) and b) I propose the following update: > > OLD TEXT: > > In addition, there may be a PSH ahead of the embedded packet, and it > > needs to be parsed. The PFN is currently used for both of these > > purposes. > > NEW TEXT: > > In addition, there may be a PSH ahead of the embedded packet. The > > value of PFN is considered to ensure that the PSH can be correctly > > parsed. If no PSH follows the label stack, then the value of PFN > > indicates the version number of the IP packet header. > > > > Is it more clear now? > > > --- > > 2.1.1 > > 3. One can do even better by "divining" the type of embedded packet, > and using fields from the guessed header. The ramifications of > using this load-balancing technique are discussed in detail in > Section 2.2. > > 4. One can do best by using either an Entropy Label [RFC6790] or a > Flow-Aware Transport (FAT) Pseudowire Label [RFC6391]; see > Section 2.2.) > > I think that is s/2.2/2.1.1.1/ in both cases. > > GIM>> Great catch, thank you. > > > --- > > 2.1.1 > > "dangerous" may be over doing it. Perhaps "risky"? > > GIM>> Agreed. > > > --- > > 2.1.1.1 > > For example, if payload B is an > Ethernet frame, then the PFN is the first nibble of the OUI of the > destination MAC address, which can be 0x4 or 0x6, and if so would > lead to very bad load-balancing. > > "Very bad load-balancing" is an interesting phrase. Maybe expand a > little, such as... > > would lead to the packet being treated as an IPv4 or IPv6 packet such > that data at the offsets of specific relevant fields would be used as > input to the load-balancing heuristic resulting in unpredictable load > balancing. > > BTW "load-balancing" as an adjective, but "load balancing" as a noun. > > GIM>> Thank you for the suggested text. > > > --- > > 2.1.1.1 > > A consequence of that heuristic approach is that while legacy routers > may look for a PFN of 0x4 [RFC0791] or 0x6 [RFC8200], no router will > look for any other PFN, regardless of what future IP version numbers > will be, for load-balancing purposes. > > When you say "no router will look for", I there are two things: > - No *legacy* router will look for any other future IP version numbers > > GIM>> s/no router/no legacy router/ > > - New routers that follow the recommendations in this document will not > look for other IP versions except if they are included in the registry > > GIM>> I think that that will happen only after a new IP version is > published and the registry updated. Before that, a router that follows the > recommendation in the draft will not look for any value other than 0x4 and > 0x6 as an indication that the embedded packet is an IP packet. > > > But, possibly I am confused by "that heuristic" because the previous > paragraph recommends a "mechanism" and recommends against using a > "heuristic". > > GIM>> s/that heuristic approach/the heuristic approach/? > > > --- > > 2.2 > > All of the text in 2.2 is very forward referential. > I don't think it is right to update 4928 to say "if conformant to XXXX". > You should just update the text to what you want the case to be. Thus... > > NEW TEXT: > > | Network equipment MUST use a PSH (Post-Stack Header) with a PFN > | (Post-stack First Nibble) value that is neither 0x4 nor 0x6 in all > | cases when the MPLS payload is not an IP packet. > > GIM>> Thank you for suggestions. > > > Except, do you want "not an IPv4 or IPv6 packet." > > GIM>> Yes, that is the practical outcome of the requirement. But we wanted > to arrive to it from the point of PFN values. > > > ...and... > > NEW TEXT: > > | The practice of deducing the payload type based on the PFN value > | is deprecated to avoid inaccurate load balancing. This means that > | means that older implementations and deployments can continue to > | use that heuristic, while it must not be part of new > | implementations or deployments. It also means that concerns about > | load balancing for future IP versions with a version number of 0x0 > | or 0x1 are no longer relevant. > > GIM>> Thenk you for the suggested text that further improves the document. > > > I was also surprised by... > > | At the time RFC XXXX was written, it was planned to obsolete MPLS > | encapsulations without PSH of non-IP payload when sufficient > | evidence exists that there are no marketed or deployed > | implementations using the heuristic practice. > > ... There was no discussion of this anywhere else in the draft. Anyway, > it is really odd to see what-will-be RFC XXX saying "at the time > RFC XXXX was written". > > I suggest you move this paragraph to a separate section that discusses > the issue and proposes to collect evidence and make the further change > in the future. > > GIM>> Extracting that paragraph and adding a new section: > > 2.5. Next Step to More Deterministic Load -balancing in an MPLS Network > > > > Network evolution is impossible to control, but it develops over a > > period of time determined by various factors. This document prevents > > further proliferation of the implementations that could lead to > > undesired effects affecting data flow. At some time in the future, > > it was planned to obsolete MPLS encapsulations without PSH of non-IP > > payload. Before that it is paramount to collect sufficient evidence > > that there are no marketed or deployed implementations using the > > heuristic practice to load-balancing MPLS data flows. > > What are your thoughts? Suggestions to improve the new section? > > > --- > > I think section 2.3 is referring to the MNA work when it says... > > The MPLS WG is currently engaged in updating the MPLS architecture; > > The world has moved on a bit, and you can be a bit more specific. > > Perhaps... > > Support for MPLS Network Actions (MNAs) is described in > [I-D.ietf-mpls-mna-fwk] and is an enhancement to the MPLS > architecture. The use of post-stack data (PSD) to encode the MNA > indicators and ancillary data is described in section 3.6 might place > data in the PFN that could conflict with other uses of that nibble. > This issue is described in section 3.6.1 of [I-D.ietf-mpls-mna-fwk] > and is further illustrated by the PFN value of 0x0 which has two > different formats depending on whether the PSH is a pseudowire > control word or a DetNet control word: disambiguation requires the > context of the service label. > > With a registry, PSHs become easier to parse; not needing means > outside the data plane to interpret them correctly; and their > semantics and usage are documented. > > GIM>> Updated as you sugegsted, thank you. > > > --- > > 3.1 > > I wonder whether the new registry will ever be used for anything other > than MPLS. The draft describes it as being to capture the first nibble > after an MPLS label stack. Doesn't that make it a part of the MPLS > registry group? > > > > GIM>> We had an early IANA review and, after a number of iterations, it > seems like IANA has agreed with the proposed update. >
- [mpls] Shepherd review of draft-ietf-mpls-1stnibb… Adrian Farrel
- [mpls] Re: Shepherd review of draft-ietf-mpls-1st… Loa Andersson
- [mpls] Re: Shepherd review of draft-ietf-mpls-1st… Greg Mirsky
- [mpls] Re: Shepherd review of draft-ietf-mpls-1st… Adrian Farrel
- [mpls] Re: Shepherd review of draft-ietf-mpls-1st… Greg Mirsky