Re: [spring] to drop or to forward unlabelled (Re: Question on RFC8660)

Jeff Tantsura <jefftant.ietf@gmail.com> Wed, 09 September 2020 08:38 UTC

Return-Path: <jefftant.ietf@gmail.com>
X-Original-To: spring@ietfa.amsl.com
Delivered-To: spring@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 237A43A110D for <spring@ietfa.amsl.com>; Wed, 9 Sep 2020 01:38:18 -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 JvdWaWFqLDcP for <spring@ietfa.amsl.com>; Wed, 9 Sep 2020 01:38:16 -0700 (PDT)
Received: from mail-ed1-x52f.google.com (mail-ed1-x52f.google.com [IPv6:2a00:1450:4864:20::52f]) (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 1EEFD3A1108 for <spring@ietf.org>; Wed, 9 Sep 2020 01:38:16 -0700 (PDT)
Received: by mail-ed1-x52f.google.com with SMTP id t16so1779204edw.7 for <spring@ietf.org>; Wed, 09 Sep 2020 01:38:16 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=content-transfer-encoding:from:mime-version:subject:date:message-id :references:cc:in-reply-to:to; bh=jkllXs/MKw++fQqTZj9upS7uG4MXO/Duk6vBekpzV+M=; b=EXM6WKBzEt5smAN7yHsWngRBbV8RIV/2wAtHwxVOPdUV3PKVwaTKdCvUP5QWZ6dQIl l+B8IB21OXUHiX0JkwjBrXdWCjY8nTdVI3sbZnZ+rap0v7IFcZn7NMa++AsNIK9jGg+N PPRPK/xBmVBv+WYra4RGiLiKGYMFi/0nElK8Pvv9VBwHXj98VkJ/EriXZyvXDGjqyw+q Za2dDSUZqfNSBndfrjyEG6KxG5GrzSVvhzbQo6cnbJIQt2aRFwqjB+CVrPFHQz/yK/MY P4IXOZty707+uiXMgogIQOaNytqswtVBmi5UK1xXJF2Oi2Cg6cpuVA67sgJ1OXyAvcZX KpOQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:content-transfer-encoding:from:mime-version :subject:date:message-id:references:cc:in-reply-to:to; bh=jkllXs/MKw++fQqTZj9upS7uG4MXO/Duk6vBekpzV+M=; b=edSAiNQeRe9Z34kRXw1ymBYpx3zD28a9TRcT/1FtBs+pnk9XmYGYmuLzAr3Z8OVbbP /dsBkPdDlWE/WHenBE/QEH/rzO3Aj7rwupWiJnZm4bRpHeoYAg7AMSTfEMyQksLAe+1t R2en23teXn+AI6e4K8ExO6OLHOiPoYK2/h/3NobVDJy44zirPNCKQVXndACMYfAH6p2J mwNAn4tC3uYDYQa/P4zduwdq/AsNS669JFA0s5Smps2WjdtEF4qghrxG2Es45/bxnPjn qUAfYp76fs0f7WimfSDUYUkjJQI3146CrxWvHpb+FZ2+PmiXl28uxPq+qovEINkSbOAm qS0g==
X-Gm-Message-State: AOAM533vZ4wOykx/YROFfYNfor8/ITMeqJI8cbOflstQT+uUqBut43OG 9dLe2zj7iYHkJ0VIh3eex63jTHZ2jx0=
X-Google-Smtp-Source: ABdhPJy3OyKB+Sfd6k+Bb1LCe6Px/rH6v/+JCpMgxf9EEH9Ks36tumaYsOEAWiSmLllYZAXjmVochw==
X-Received: by 2002:a50:8881:: with SMTP id d1mr2982336edd.306.1599640694254; Wed, 09 Sep 2020 01:38:14 -0700 (PDT)
Received: from [192.168.1.148] ([151.82.217.12]) by smtp.gmail.com with ESMTPSA id 16sm1355636edx.72.2020.09.09.01.38.13 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 09 Sep 2020 01:38:13 -0700 (PDT)
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
From: Jeff Tantsura <jefftant.ietf@gmail.com>
Mime-Version: 1.0 (1.0)
Date: Wed, 09 Sep 2020 10:38:12 +0200
Message-Id: <799904D5-864B-4D86-958F-4588F64F464A@gmail.com>
References: <22402_1599234564_5F526204_22402_314_1_53C29892C857584299CBF5D05346208A48F58F00@OPEXCAUBM43.corporate.adroot.infra.ftgroup>
Cc: Martin Horneffer <maho@lab.dtag.de>, "spring@ietf.org" <spring@ietf.org>
In-Reply-To: <22402_1599234564_5F526204_22402_314_1_53C29892C857584299CBF5D05346208A48F58F00@OPEXCAUBM43.corporate.adroot.infra.ftgroup>
To: bruno.decraene@orange.com
X-Mailer: iPad Mail (17G80)
Archived-At: <https://mailarchive.ietf.org/arch/msg/spring/A9m3P9VvxjRJf8KjKeMfF2gG5T0>
Subject: Re: [spring] to drop or to forward unlabelled (Re: Question on RFC8660)
X-BeenThere: spring@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "Source Packet Routing in NetworkinG \(SPRING\)" <spring.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/spring>, <mailto:spring-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/spring/>
List-Post: <mailto:spring@ietf.org>
List-Help: <mailto:spring-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/spring>, <mailto:spring-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 09 Sep 2020 08:38:18 -0000

I’m with Bruno here, and the spec is quite clear on the behavior expected (implementors, please speak up).
Given variability and interdependencies in use cases, I’d say, drop should be (and de-jure it is) the default behavior, and if someone wants their vendor of choice to implement a knob to change that - they are free to do so (local behavior) as long as consequences are well understood (rope is short).

Cheers,
Jeff

> On Sep 4, 2020, at 17:49, bruno.decraene@orange.com wrote:
> 
> Hi Martin,
> 
>> From: spring [mailto:spring-bounces@ietf.org] On Behalf Of Martin
>> Horneffer
>> 
>> Hello everyone,
>> 
>> may I come back the the question below? Or rather let me update it a little:
>> 
>> In case an SR-MPLS path is broken, should a node rather drop the packet,
>> or forward it?
>> 
>> This can happen whenever the IGP points to a certain next hop, but that
>> neither supplies a valid SID, nor allows LDP-stitching for whatever
>> reason. For PUSH as well as for CONTINUE.
> 
> Speaking as an individual contributor, my reading of RFC 8660 (SR-MPLS) is that the packet is dropped ("Otherwise, drop the packet").
> https://www.rfc-editor.org/rfc/rfc8660.html#name-forwarding-for-push-and-con
> 
> However that could be seen as a local behavior, hence possibly configurable.
> 
> As a network operator, 
> - I understand your use case.
> - I equally understand the use case of someone preferring/requiring the packet to be dropped, e.g. in the VPN case where the isolation is the main requirement.
> 
> Best regards,
> --Bruno
> 
> 
>> We have been using MPLS transport and a BGP free core since about two
>> decades now, using LDP. In the analog case, LDP creates "unlabelled"
>> entries in the LFIB, does the equivalent of a POP operation and forwards
>> the packet to the next-hop as chosen by the IGP.
>> 
>> This behavior obviously breaks any traffic that relies on a service
>> label, but it can protect some traffic.
>> In our case a huge percentage of all traffic still is public IPv4. This
>> needs MPLS only for a transport label, be it LDP or SR-MPLS. If this
>> traffic gets forwarded unlabelled, it follows an IGP default route to a
>> central device, where it is 1) redirected to the correct destination and
>> 2) counted in a way that operators can quickly see whether and where
>> this kind of failure occurs at some point in the network.
>> 
>> After more operational experience and several internal discussions we
>> agreed that we want packets to be forwarded unlabelled rather than
>> dropped. Anyone to share, or oppose this position?
>> 
>> Best regards, Martin
>> 
>> 
>>> Am 31.01.20 um 16:50 schrieb Martin Horneffer:
>>> Hello everyone,
>>> 
>>> again it seems the interesting questions only show up when applying
>>> something to the live network...
>>> 
>>> We ran into something that poses a question related to RFC8660: What
>>> is the exact meaning of section 2.10.1, "Forwarding for PUSH and
>>> CONTINUE of Global SIDs", when the chosen neighbor doesn't provide a
>>> valid MPLS path?
>>> 
>>> The relevant sections reads:
>>> 
>>>       -  Else, if there are other usable next hops, use them to forward
>>>          the incoming packet.  The method by which the router "R0"
>>>          decides on the possibility of using other next hops is beyond
>>>          the scope of this document.  For example, the MCC on "R0" may
>>>          chose the send an IPv4 packet without pushing any label to
>>>          another next hop.
>>> 
>>> Does the part "send an IPv4 packet without pushing any label" apply to
>>> PUSH and CONTINUE, or just to PUSH?
>>> Does R0 have to validate that neighbor N can correctly process to
>>> packet? Or can it forward the packet regardless?
>>> 
>>> The reason for asking is that we are now seeing issues similar to ones
>>> we had when starting with LDP based MPLS about two decades ago:
>>> traffic being black holed even though a path to the destination
>>> exists, because the MPLS path is interrupted somewhere in the middle.
>>> 
>>> With LDP we know the case of LFIBentries called "unlabelled". While
>>> this does break connectivity for many kinds of service, e.g. those
>>> relying on an additional service labels, it still works for plain
>>> IP(v4) traffic. In our cases, this works perfectly fine for all
>>> internal routing and control traffic. And even for IPv4 traffic that
>>> gets collected by a central router that injects a default route.
>>> 
>>> However, depending on the exact interpretation of the above paragraph,
>>> an implementor might feel obliged to chose the next paragraph:
>>> 
>>>       -  Otherwise, drop the packet.
>>> 
>>> Which is, at least in our case, very unfortunate...
>>> 
>>> Any advice or opinion appreciated!
>>> 
>>> 
>>> Best regards, Martin
>>> 
>>> 
>>> 
>>> 
>>> _______________________________________________
>>> spring mailing list
>>> spring@ietf.org
>>> https://www.ietf.org/mailman/listinfo/spring
>> 
>> _______________________________________________
>> spring mailing list
>> spring@ietf.org
>> https://www.ietf.org/mailman/listinfo/spring
> 
> _________________________________________________________________________________________________________________________
> 
> Ce message et ses pieces jointes peuvent contenir des informations confidentielles ou privilegiees et ne doivent donc
> pas etre diffuses, exploites ou copies sans autorisation. Si vous avez recu ce message par erreur, veuillez le signaler
> a l'expediteur et le detruire ainsi que les pieces jointes. Les messages electroniques etant susceptibles d'alteration,
> Orange decline toute responsabilite si ce message a ete altere, deforme ou falsifie. Merci.
> 
> This message and its attachments may contain confidential or privileged information that may be protected by law;
> they should not be distributed, used or copied without authorisation.
> If you have received this email in error, please notify the sender and delete this message and its attachments.
> As emails may be altered, Orange is not liable for messages that have been modified, changed or falsified.
> Thank you.
> 
> _______________________________________________
> spring mailing list
> spring@ietf.org
> https://www.ietf.org/mailman/listinfo/spring