Re: [mpls] [Technical Errata Reported] RFC3031 (6240)

Stewart Bryant <stewart.bryant@gmail.com> Tue, 28 July 2020 08:02 UTC

Return-Path: <stewart.bryant@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 414183A07E7 for <mpls@ietfa.amsl.com>; Tue, 28 Jul 2020 01:02:56 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.098
X-Spam-Level:
X-Spam-Status: No, score=-2.098 tagged_above=-999 required=5 tests=[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, 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 s75n4jr13nQK for <mpls@ietfa.amsl.com>; Tue, 28 Jul 2020 01:02:54 -0700 (PDT)
Received: from mail-wr1-x42c.google.com (mail-wr1-x42c.google.com [IPv6:2a00:1450:4864:20::42c]) (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 47B043A07E6 for <mpls@ietf.org>; Tue, 28 Jul 2020 01:02:54 -0700 (PDT)
Received: by mail-wr1-x42c.google.com with SMTP id z18so13761912wrm.12 for <mpls@ietf.org>; Tue, 28 Jul 2020 01:02:54 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=ECZ8r0xVr48p1d9a9mOOqXuUh7gP2Q6xsabuOfDGYME=; b=oIPhx4+VQ/CXSrWYuJmUDHYkcfaaJECgpIhjlDvaBzTUhjiD6CiSvJ10QX0dWzcJIa pDRsoQWbFCuzT2dMBG+LkMzdDY0pfn17/++EqK24zUTSvVw6/7+rjfag0lSIQid8x5Qa uvuMK4XeBUUfQad7jygMkioY24gccFUfSHu1fFyUowz9LlC8PqzSQz63LAJfnz+d2q6Y +3wUJGiDoTZXmSlgfctDrtzdK7vyUIJUAULStw89RBiXyQFOJyc49DdJyd4ovV+FnZfx 8sSZJnX/cPtRruncV1G/f9vW9gFJInIjcOJOJSVRPyz9Ufxc6uQ5/Ethd1ySdKI25A2+ EO1A==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=ECZ8r0xVr48p1d9a9mOOqXuUh7gP2Q6xsabuOfDGYME=; b=UTjsFPf8GJSW74vYcKvEDU609ErLJlBBVSeLZcOngIUIzI3qcT4EGk87SQKslW1/9I q6EOjZjezBMLex4nA5sEhsfD49EAgLs6sPvKHOnxRPslmrb8rAE8J/++CEOzmt/7hXYk WYFMs2C67FDE/JIVt996+5qavNo4y3IEqnNDPAKIxF1/5+YC5Ui7pSE8yT5VsJZMhIfB mMaYZgDvK+C0sZdwsozFHJcNdz4wZa+r3UeCKliXceK/3Mm7XxDPhxreE429gt22IkDg r2Da2akbJGmvUvYBaXFcU5eTzxcLZmJnMifpcbdHLtsZW1Of9JgpAH0tke/aj5MAezYF 9Fbg==
X-Gm-Message-State: AOAM533UpJIsaFxUTRIeXw8dL/fUL+weql8v4akdsU76iyjUX8eNbRuu kYamgTGxvfZY2KTEV8aljH8=
X-Google-Smtp-Source: ABdhPJw24juDkLk60rLbu2ceQnMu3sZHjxkmzSayHvl+6rnPdZrhXWx37Hpc0mapRx2VGyH9No/crQ==
X-Received: by 2002:adf:f64a:: with SMTP id x10mr22205714wrp.99.1595923372600; Tue, 28 Jul 2020 01:02:52 -0700 (PDT)
Received: from broadband.bt.com ([2a00:23a8:4140:0:1c7c:7647:1fa5:1c57]) by smtp.gmail.com with ESMTPSA id x11sm2722538wmc.33.2020.07.28.01.02.50 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Tue, 28 Jul 2020 01:02:51 -0700 (PDT)
Content-Type: text/plain; charset="utf-8"
Mime-Version: 1.0 (Mac OS X Mail 13.4 \(3608.80.23.2.2\))
From: Stewart Bryant <stewart.bryant@gmail.com>
In-Reply-To: <20200727105210.2D087F40755@rfc-editor.org>
Date: Tue, 28 Jul 2020 09:02:49 +0100
Content-Transfer-Encoding: quoted-printable
Message-Id: <D08CE9EE-32FC-4C35-938F-F5F000AC84B5@gmail.com>
References: <20200727105210.2D087F40755@rfc-editor.org>
To: erosen@cisco.com, arun@force10networks.com, rcallon@juniper.net, "BRUNGARD, DEBORAH A" <db3546@att.com>, Alvaro Retana <aretana.ietf@gmail.com>, Martin Vigoureux <martin.vigoureux@nokia.com>, loa Andersson <loa@pi.nu>, n.leymann@telekom.de, Tarek Saad <tsaad.net@gmail.com>, jsharma@ciena.com, mpls <mpls@ietf.org>
X-Mailer: Apple Mail (2.3608.80.23.2.2)
Archived-At: <https://mailarchive.ietf.org/arch/msg/mpls/oi2V9hKyGOI1GgwvVXo0HW2JSwg>
Subject: Re: [mpls] [Technical Errata Reported] RFC3031 (6240)
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, 28 Jul 2020 08:02:56 -0000

As the reporter notes, RFC3031 does not provide a complete description of the procedure to use when labelling an unlabelled  packet at ingress.

However, as far as I am aware this has not caused any interoperability issues in the 20 years since its publication.

In any case the text      "d) push a new label on an unlabeled packet” should be      "d) push a first label on an unlabeled packet”

In both the old and new text 

> This may still be a labeled packet, or it
>   may be the native IP packet.

Whilst technically correct through the use of “may” does not tell the full story since the remnant may be a PW packet and we did not update RFC3031 when we published the PW series.

We could safety accept the errata, but I am worried that it is only part of the set of changes needed to cover the case.

In many ways, given the existence proof that people are able to correctly implement MPLS I am inclined to leave the document alone and note this for consideration during an update.

Stewart 


> On 27 Jul 2020, at 11:52, RFC Errata System <rfc-editor@rfc-editor.org> wrote:
> 
> The following errata report has been submitted for RFC3031,
> "Multiprotocol Label Switching Architecture".
> 
> --------------------------------------
> You may review the report below and at:
> https://www.rfc-editor.org/errata/eid6240
> 
> --------------------------------------
> Type: Technical
> Reported by: Jitendra Kumar Sharma <jsharma@ciena.com>
> 
> Section: 3.10
> 
> Original Text
> -------------
> 3.10. The Next Hop Label Forwarding Entry (NHLFE)
> 
>   The "Next Hop Label Forwarding Entry" (NHLFE) is used when forwarding
>   a labeled packet.  It contains the following information:
> 
>   1. the packet's next hop
> 
>   2. the operation to perform on the packet's label stack; this is one
>      of the following operations:
> 
>      a) replace the label at the top of the label stack with a
>         specified new label
> 
>      b) pop the label stack
> 
>      c) replace the label at the top of the label stack with a
>         specified new label, and then push one or more specified new
>         labels onto the label stack.
> 
>   It may also contain:
> 
>      d) the data link encapsulation to use when transmitting the packet
> 
>      e) the way to encode the label stack when transmitting the packet
> 
>      f) any other information needed in order to properly dispose of
>         the packet.
> 
>   Note that at a given LSR, the packet's "next hop" might be that LSR
>   itself.  In this case, the LSR would need to pop the top level label,
>   and then "forward" the resulting packet to itself.  It would then
>   make another forwarding decision, based on what remains after the
>   label stacked is popped.  This may still be a labeled packet, or it
>   may be the native IP packet.
> 
>   This implies that in some cases the LSR may need to operate on the IP
>   header in order to forward the packet.
> 
>   If the packet's "next hop" is the current LSR, then the label stack
>   operation MUST be to "pop the stack".
> 
> Corrected Text
> --------------
> 3.10. The Next Hop Label Forwarding Entry (NHLFE)
> 
>   The "Next Hop Label Forwarding Entry" (NHLFE) is used when forwarding
>   a labeled packet on an LSR or an unlabeled packet on an Ingress MPLS router. It 
>   contains the following information:
> 
>   1. the packet's next hop
> 
>   2. the operation to perform on the packet's label stack; this is one
>      of the following operations:
> 
>      a) replace the label at the top of the label stack with a
>         specified new label
> 
>      b) pop the label stack
> 
>      c) replace the label at the top of the label stack with a
>         specified new label, and then push one or more specified new
>         labels onto the label stack.
> 
>      d) push a new label on an unlabeled packet
> 
> 
>   It may also contain:
> 
>      e) the data link encapsulation to use when transmitting the packet
> 
>      f) the way to encode the label stack when transmitting the packet
> 
>      g) any other information needed in order to properly dispose of
>         the packet.
> 
>   Note that at a given LSR, the packet's "next hop" might be that LSR
>   itself.  In this case, the LSR would need to pop the top level label,
>   and then "forward" the resulting packet to itself.  It would then
>   make another forwarding decision, based on what remains after the
>   label stacked is popped.  This may still be a labeled packet, or it
>   may be the native IP packet.
> 
>   This implies that in some cases the LSR may need to operate on the IP
>   header in order to forward the packet.
> 
>   If the packet's "next hop" is the current LSR, then the label stack
>   operation MUST be to "pop the stack".
> 
> Notes
> -----
> Section 3.10 defines NHLFE, and it sounds from the definition that this piece of information is used by an MPLS router only when packet is already labeled. Now, when section 3.12 (FTN) defines the relationship between FEC and NHLFE, the definition of NHLFE in section 3.10 does not align with FTN definition.
> 
> Instructions:
> -------------
> This erratum is currently posted as "Reported". If necessary, please
> use "Reply All" to discuss whether it should be verified or
> rejected. When a decision is reached, the verifying party  
> can log in to change the status and edit the report, if necessary. 
> 
> --------------------------------------
> RFC3031 (draft-ietf-mpls-arch-06)
> --------------------------------------
> Title               : Multiprotocol Label Switching Architecture
> Publication Date    : January 2001
> Author(s)           : E. Rosen, A. Viswanathan, R. Callon
> Category            : PROPOSED STANDARD
> Source              : Multiprotocol Label Switching
> Area                : Routing
> Stream              : IETF
> Verifying Party     : IESG
> 
> _______________________________________________
> mpls mailing list
> mpls@ietf.org
> https://www.ietf.org/mailman/listinfo/mpls