Re: [spring] Is srv6 PSP a good idea

Gyan Mishra <hayabusagsm@gmail.com> Sun, 15 December 2019 06:36 UTC

Return-Path: <hayabusagsm@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 6AC5F120071 for <spring@ietfa.amsl.com>; Sat, 14 Dec 2019 22:36:48 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.997
X-Spam-Level:
X-Spam-Status: No, score=-1.997 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=unavailable 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 U_t6F7jKB-AO for <spring@ietfa.amsl.com>; Sat, 14 Dec 2019 22:36:44 -0800 (PST)
Received: from mail-io1-xd2a.google.com (mail-io1-xd2a.google.com [IPv6:2607:f8b0:4864:20::d2a]) (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 7FD41120005 for <spring@ietf.org>; Sat, 14 Dec 2019 22:36:44 -0800 (PST)
Received: by mail-io1-xd2a.google.com with SMTP id v18so2740137iol.2 for <spring@ietf.org>; Sat, 14 Dec 2019 22:36:44 -0800 (PST)
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=PKZ5Y7TmTwbOXF7K2nDESkfugy0YMXvRlQ+msA9GYBs=; b=GiD6GBPoSR5JHdNUtVQt2gcJJZZkpLhD3aVy0ArwtOo6yYO+NqwRHRKGYwnZsRINnD 53zKlF6YQ8ByOiU8iFihmA0VZKN/GMcZM0KJeLPx0o1JLNLLFflEBD0ZgKzXKOWzHknn wMASifELpoVkHjAP3nO+UPS0LMXVZX6PRbpF60s0r0+SxdTpL8Q9US6HPeQ4Z4nQG2/l 6IRmWPHn8L9LrAm/uxRoTWePUHj0wNIw0+R5dicvlvhW3z2kHRU088hV73nnlZ8Jmzns Ne6t/nt7jO9iDPtVWqLbFCoO/Q1kEQaAjwBREELkUIs0eCxhgTOwBrmG0hKgi2uCKVY5 FT/A==
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=PKZ5Y7TmTwbOXF7K2nDESkfugy0YMXvRlQ+msA9GYBs=; b=BHgMn8kc8STPR6Od1ADH/QhcbpiaPWQHmN3VqVhW09XtZ2gxZCGzBJg0JvMb+PJRrj titGaBHhgEqeVfpLwo8UqCgM13ggrPbh2r8R75BHir7EEN+L00geO3V3Uld7y4P5nawh zksuGdYiY+K5kw1jhuaaALv3R7wD5j6BbwBJGa8RElLOemTN58Gg04GbjZRxBg8Vz7Qg oRdPoqQvrar8P/6Dxhm7lE0BRlXn3RNRy9kNQMsXdnJ48fm1+KW7kG8MznXUlO3YSnjc spt8wropfpkfkyy0c9mDCYKD6zNx3l4ruWbWzBslH5bpXSNGuTbh4kpdTu8kbbr8t73S chCg==
X-Gm-Message-State: APjAAAVqDQy6r/LH3PpSUmRi2UzRLWnJHjuFWZjEX/7iDAJZDJ1GRMsR BHdlbkgSvVfq0Hknw5evraxHdeD6oBvkpacxSX8=
X-Google-Smtp-Source: APXvYqw5k96mjIWgTOezk8Qc/fHzTN+CphyyF+AqSuQlvbCAMxwgE7Il3iXTsB/7UeL4voWlXIcW/2Ahb97Iaj1lse0=
X-Received: by 2002:a5d:9bd0:: with SMTP id d16mr5861086ion.78.1576391803459; Sat, 14 Dec 2019 22:36:43 -0800 (PST)
MIME-Version: 1.0
References: <5c2a4b36-0c59-709e-23eb-00f4aa1ce52f@joelhalpern.com> <9B89F4C2-5594-4D31-8893-21F3F4A0DF6C@cisco.com> <BN7PR05MB569969EE8D1929E7069E1BB0AE550@BN7PR05MB5699.namprd05.prod.outlook.com> <CAO42Z2xuHbaWRfxjDR9k90QfH6ZeE5fuiaE1VtH7Ptpby2FkRQ@mail.gmail.com>
In-Reply-To: <CAO42Z2xuHbaWRfxjDR9k90QfH6ZeE5fuiaE1VtH7Ptpby2FkRQ@mail.gmail.com>
From: Gyan Mishra <hayabusagsm@gmail.com>
Date: Sun, 15 Dec 2019 01:35:52 -0500
Message-ID: <CABNhwV2LU8nMYiUVwBxjMNSg7wTcjtpOcJsS8tzDBXRpvxp6rw@mail.gmail.com>
To: Mark Smith <markzzzsmith@gmail.com>
Cc: "Joel M. Halpern" <jmh@joelhalpern.com>, "Pablo Camarillo (pcamaril)" <pcamaril@cisco.com>, Ron Bonica <rbonica=40juniper.net@dmarc.ietf.org>, "spring@ietf.org" <spring@ietf.org>
Content-Type: multipart/alternative; boundary="00000000000078df2f0599b85177"
Archived-At: <https://mailarchive.ietf.org/arch/msg/spring/7FfIMQH8PNxxvySawqgeRbYgd7k>
Subject: Re: [spring] Is srv6 PSP a good idea
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: Sun, 15 Dec 2019 06:36:49 -0000

All

The concept of PHP “Penultimate Hop POP” and UHP “Ultimate Hop POP” have
historical meaning as well as real consequences as far as a packet walk
through an mpls network.

>From a historical perspective which is really the correct way to look at
PHP in the MPLS world was designed by the developers of MPLS 25+ years ago
for the following reason.  Back then,  asic chipsets used by the MPLS
forwarding plane did not have the horsepower to pop the topmost ldp label
along with all services bottom of stack labels.

For that reason alone the MPLS developers back then came up with the PHP
concept.

In essence what that did was allow the ldp topmost label to be popped one
hop prior to the egress LSR PE node on the egress P node.

What that did was offload the entire burden of popping the entire label
stack done on the PE ultimate hop router to now be offset by one less label
to pop.  Back then that was a big deal and important for processing label
switched packets at high rates.

PSP became the default standard across all vendors and platforms “implicit
null label reserved value 3”

There was a double edged sword that came about from the PSP process.

As mpls became mainstream so did customer SLA and so end to end QOS became
the forefront importance to all service providers.

The major problem in the MPLS world that came about with PSP is that when
you pop that label at the egress PE 1 hop before the ultimate hop.  What
that did is the PE-P link the packet is forwarded without the ldp topmost
label intact preserved which contained the EXP bits for end to end QOS
scheduling.

A workaround fix to this issue was to institute a new feature called
“explicit null reserved label value 0”.  This was implemented using a QOS
policy called “pipe mode” that allowed the topmost label to now be
preserved and “ultimate” hopped which we today call UHP “Ultimate Hop POP”.

Another industry development that came about to get around the complexity
of pipe mode QOS policy to UHP was a enlightening concept but unfortunately
did not work for all use cases.

So the new feature that came about was the ability to schedule outbound on
each node in the operator MPLS core on both  on the topmost label EXP bits
of the topmost was present as well as on the preserved  inner header dscp
this dual PHB scheduling capability based on which outer header existed or
didn’t exist.   This worked for enterprises where you have trust
relationship with your customer or are a customer of yourself.

In the service provide area UHP ultimate hopping to preserve the ldp
topmost label became the general rule of thumb golden standard to meet
customer SLAs of end to end QOS.

Coming back full circle to SRV6.

The concept of PSP was added to SRv6 I believe to provide parity for
operators learning curve as well as similarities as SRV6 would be the
replacement to mpls.

Based on what I have stated above providing history of PHP and how it came
about ; and now adding this truly legacy function to a NG protocol such as
SRv6 to me does not make sense.

I don’t see the necessity to add just for the sake of adding or providing
parity to a soon to be legacy protocol.

I would like to see some technical justification as to why PSP is necessary
with our modern day routers to this in the PR spec.

Gyan





On Sat, Dec 14, 2019 at 10:08 PM Mark Smith <markzzzsmith@gmail.com> wrote:

>
>
> On Fri, 13 Dec 2019, 07:50 Ron Bonica, <rbonica=
> 40juniper.net@dmarc.ietf.org> wrote:
>
>> Pablo,
>>
>> I am not convinced the benefit derived by the ultimate segment justifies
>> the price paid by the penultimate segment. Specifically,
>>
>> - the ultimate segment benefits because it doesn't have to skip over the
>> SRH with SL == 0
>> - in order for the ultimate segment to derive this benefit, the
>> penultimate segment needs to remove bytes from the middle of the packet and
>> update two fields in the IPv6 header
>>
>> As Joel said, we typically don't add options (i.e., complexity) to a
>> specification unless there is substantial benefit.
>>
>
>
> It's also contrary to the SPRING charter:
>
> "SPRING WG should avoid modification to existing data planes that would
> make them incompatible with existing deployments. Where possible,
> existing control and management plane protocols must be used within
> existing architectures to implement the SPRING function."
>
> The only time significant changes to IPv6 operation should be proposed are
> if what is being tried to be done is impossible using existing mechanisms,
> or there is a very significant benefit that far outweighs the cost and
> consequences of changing a protocol that is decades old and already has
> millions of deployments.
>
> When significant changes to a protocol are needed or would provide
> significant advantages, that's a sign that either (a) it's the wrong
> protocol to try to use or (b) it's time for a new version of the protocol.
>
> The 'man' in 6man stands for 'maintenance'. IPv6 is way past the
> development stage (that was 1995 and earlier).
>
> It seems SPRING is commonly taking a "new protocol development" approach
> regarding IPv6, rather than "use an existing protocol" approach. This "new
> protocol development" approach is costing a lot of time and effort due to
> long debates that really shouldn't be needed if the SPRING charter was
> being followed, and IPv6 was just being used rather than attempted to be
> being redeveloped.
>
> Regards,
> Mark.
>
>
>
>>                                                     Ron
>>
>>
>>
>>
>> Juniper Business Use Only
>>
>> -----Original Message-----
>> From: spring <spring-bounces@ietf.org> On Behalf Of Pablo Camarillo
>> (pcamaril)
>> Sent: Wednesday, December 11, 2019 3:12 PM
>> To: Joel M. Halpern <jmh@joelhalpern.com>; spring@ietf.org
>> Subject: Re: [spring] Is srv6 PSP a good idea
>>
>> Joel,
>>
>> 1.- The use-case for PSP has already been provided at the mailer. There
>> are scenarios where it provides benefits to operators.
>>
>> 2.- The PSP behavior is optional. It is up to the operator in his
>> deployment to decide whether to enable it or not at one particular router.
>> Similarly, a vendor may decide not to implement it. The PSP behavior has
>> been implemented by several vendors and deployed (see the srv6 deployment
>> draft).
>>
>> 3.- A network may have PSP enabled at some nodes and not at others.
>> Everything is still interoperable and works fine.
>>
>> 4.- PSP is not a complex operation in hardware (doable at linerate on
>> existing merchant silicon).
>> Example: It has been implemented and deployed on Broadcom J/J+. If I
>> recall correctly Broadcom Jericho+ started shipping in March 2016! PSP is
>> supported on this platform at linerate with no performance degradation
>> (neither PPPS nor BW).
>> Given that this is doable in a platform from more than 3 years ago, I
>> fail to see how you need "very special provision" to do this.
>>
>> Is it really something that horrible to provide freedom of choice to the
>> operators deploying?
>>
>> In summary, it can be implemented without any burden in hardware and
>> deployment experience prove this is beneficial to operators.
>>
>> Thanks,
>> Pablo.
>>
>> -----Original Message-----
>> From: spring <spring-bounces@ietf.org> on behalf of "Joel M. Halpern" <
>> jmh@joelhalpern.com>
>> Date: Wednesday, 11 December 2019 at 03:55
>> To: "spring@ietf.org" <spring@ietf.org>
>> Subject: [spring] Is srv6 PSP a good idea
>>
>>     For purposes of this thread, even if you think PSP violates RFC 8200,
>>     let us assume that it is legal.
>>
>>     As I understand it, the PSP situation is:
>>     o the packet arrives at the place (let's not argue about whether SIDs
>>     are locators) identified by the SID in the destination address field
>>     o that SID is the next to last SID in the SID list
>>     o that sid is marked as / known to be PSP
>>     o at the intended place in the processing pseudocode, the last
>> (first)
>>     entry in the SRH is copied into the destination IPv6 address field of
>>     the packet
>>     -> The SRH being used is then removed from the packet.
>>
>>     In order to evaluate whether this is a good idea, we have to have
>> some
>>     idea of the benefit.  It may be that I am missing some of the
>> benefit,
>>     and I would appreciate clarification.
>>     As far as I can tell, the benefit of this removal is that in exchange
>>     for this node doing the work of removing the SRH, the final node in
>> the
>>     SRH does not have to process the SRH at all, as it has been removed.
>>
>>     I have trouble seeing how that work tradeoff can be beneficial.
>>     Removing bytes from the middle of a packet is a complex operation.
>>     Doing so in Silicon (we expect this to be done in the fast path of
>>     significant forwarders as I understand it) requires very special
>>     provision.  Even in software, removing bytes from the middle of a
>> packet
>>     requires somewhere between some and a lot of extra work.  It is
>>     distinctly NOT free.
>>
>>     In contrast, we have assumed that the work of processing SRH itself
>> is
>>     tractable, since otherwise all of SRv6 would be problematic.  So why
>> is
>>     this necessary.
>>
>>     Yours,
>>     Joel
>>
>>     PS: Note that both the MPLS case and the encapsulation case are very
>>     different in that the material being removed is at the front of the
>> IP
>>     packet.  Pop or prepend are MUCH easier than middle-removal (or
>>     middle-insertion).
>>
>>     _______________________________________________
>>     spring mailing list
>>     spring@ietf.org
>>
>> https://urldefense.com/v3/__https://www.ietf.org/mailman/listinfo/spring__;!!NEt6yMaO-gk!Uvd5DRUIJlsmob5a7r4JRgMMbZcE60JOPIW3K2MubKpIuKXA1r78vsFpWAHa8hW2$
>>
>>
>> _______________________________________________
>> spring mailing list
>> spring@ietf.org
>>
>> https://urldefense.com/v3/__https://www.ietf.org/mailman/listinfo/spring__;!!NEt6yMaO-gk!Uvd5DRUIJlsmob5a7r4JRgMMbZcE60JOPIW3K2MubKpIuKXA1r78vsFpWAHa8hW2$
>> _______________________________________________
>> 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
>
-- 

Gyan S. Mishra

IT Network Engineering & Technology

Verizon Communications Inc. (VZ)

13101 Columbia Pike FDC1 3rd Floor

Silver Spring, MD 20904

United States

Phone: 301 502-1347

Email: gyan.s.mishra@verizon.com

www.linkedin.com/in/networking-technologies-consultant