Re: [spring] Is srv6 PSP a good idea

Gyan Mishra <hayabusagsm@gmail.com> Sun, 15 December 2019 17:10 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 9766E120048 for <spring@ietfa.amsl.com>; Sun, 15 Dec 2019 09:10:30 -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=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 GeO1akAfNBX9 for <spring@ietfa.amsl.com>; Sun, 15 Dec 2019 09:10:28 -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 DC4C312001A for <spring@ietf.org>; Sun, 15 Dec 2019 09:10:27 -0800 (PST)
Received: by mail-io1-xd2a.google.com with SMTP id a22so4540541ios.3 for <spring@ietf.org>; Sun, 15 Dec 2019 09:10:27 -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=uWjjym6ZX5IQEkrqldEHGMnQL5pHSpnYjoSs4K3Ohy4=; b=OVeIu+fRqY+PpdqhsVvOmxkW0TbVFqD3aCFejdJ1utDcW9ypth7KQ59IjVCwweIcRl TqxbIlrbUbZ9oJtgbLwuho/+4jxHfWHniXCF6q5iRLO//XR6BkTUNCOhm5WLppEfpQSf XyLZhIRpOslnP1n56OKofLeKN8zoswaULLu+5VdYSQ7j0BkVqbhjtnN24Q+73V/ryPHs xvJM5q+k7VIigpiZ7C/2hdSPAsBblwTXJE/ORfqa285P+CHaWELhNeCJietRZ9zbhBFk sdlh/+6Yoi5nfq87Vew5JmWp0bNXJsRuXfS3VxoqN00ET+U0Ert97b3APCm7BAvCkBNc 57jA==
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=uWjjym6ZX5IQEkrqldEHGMnQL5pHSpnYjoSs4K3Ohy4=; b=VVjomg1GaLEh6widpdvaDlgVZsmuhliGpvvL4gpgTzz0SNwZkx4f8ZVABdrlzK33/H py1f2m/LhaOZodFd7QVi6xNcqb0Pjax9xKnBzYp1LyJwoTZE85M9Bg/etHExAnh6JceI t+W81QC516VFhibc4t+KIPuZgkDIDPdNMtP8/nS15ntcOZmDuC4UOZ0mOWKgrF9NznVS Av8o0LwUFBr6ojz2+PYVE3ir4GGOEnGETOci5EbCTdlpsb+AnslkWCRs1iOIH7TovPC2 36FDz3Cr1D+5oKNFQzIvEvVrEO/ssHcIO1Jofh8tAzLMRwyXF+zSCj+3BVF6U4HMBj1x m/qQ==
X-Gm-Message-State: APjAAAWqMg8pBD0bTMNzYrA001dIeUeuwb27f84Jc8QFg3i42901cK+d 6x/6vrhEpmujNaZXmJfeoB/xszVTWfRKBzTM6D0=
X-Google-Smtp-Source: APXvYqyLct+2aWk+DfuzvolXeFLTWUxGd4bEt4HEaZRsCq+jI1Gatr33vFxT07i9f8khIQpKotySVeHnTEGzQLm0vm4=
X-Received: by 2002:a02:a38a:: with SMTP id y10mr8763579jak.55.1576429826914; Sun, 15 Dec 2019 09:10:26 -0800 (PST)
MIME-Version: 1.0
References: <EC02B3AB-9E11-4F85-B618-1092B1B8E085@bell.ca> <0f00cda3-480c-f568-e4c2-a591c7fd260d@joelhalpern.com>
In-Reply-To: <0f00cda3-480c-f568-e4c2-a591c7fd260d@joelhalpern.com>
From: Gyan Mishra <hayabusagsm@gmail.com>
Date: Sun, 15 Dec 2019 12:10:16 -0500
Message-ID: <CABNhwV1dZ4M_o-y8_D+ezfHqU1p4EOsn6XJ1XrvKdEcZ2Vsq5w@mail.gmail.com>
To: "Joel M. Halpern" <jmh@joelhalpern.com>
Cc: "Voyer, Daniel" <daniel.voyer@bell.ca>, "spring@ietf.org" <spring@ietf.org>
Content-Type: multipart/alternative; boundary="000000000000d8beed0599c12bfe"
Archived-At: <https://mailarchive.ietf.org/arch/msg/spring/AUawOiuYjsvS0RJz2UEnzcMDbwg>
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 17:10:31 -0000

Dan

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.

Warm regards,

Gyan

On Fri, Dec 13, 2019 at 5:25 PM Joel M. Halpern <jmh@joelhalpern.com> wrote:

> That is an udnerstandable argument, ... except:
>
> It does not acknowledge that there is a cost for this capability, or
> discuss the tradeoff.  PSP clearly has a cost.
>
> Also, that does not match my reading of the definition of the SR domain.
>   In fact, it becomes very confusing as to whether the PE is or is not
> part of the SR domain, since there is nothing in that scenario that
> requires any control participation from the egress PE.   Many of the
> SRv6 arguments rely heavily on the notion of domain.   Blurring that
> boundary makes things quite confusing.  For example, if the egress PE
> does not understand SRv6 data plane behavior, can it enforce teh
> requisite boundary properties?
>
> Yours,
> Joel
>
> On 12/13/2019 5:14 PM, Voyer, Daniel wrote:
> > I agree 100% with Jingrong,
> >
> > PSP allows us to bring SRv6 to legacy PE devices that are not capable of
> processing the SRH in the dataplane, but are capable of supporting SRv6 in
> the control plane.
> >
> > See this example:
> > I am streaming traffic from a server to a customer;
> > The ingress PE (near the server) encapsulates the packet and adds an SRH
> with a low-latency list of segments;
> > The penultimate node in the SRH executes PSP;
> > The egress PE (near the customer) decapsulates the IPv6 header and
> forwards the inner packet to the customer.
> >
> > We can include SLA unidirectionally from the server to the customer even
> though that the egress PE has a legacy ASIC. Legacy equipment are a reality
> and are not easy to replace, hence interoperability with brownfield is key
> for any innovative approach.
> >
> > dan
> >
> > On 2019-12-10, 11:15 PM, "spring on behalf of Xiejingrong (Jingrong)" <
> spring-bounces@ietf.org on behalf of xiejingrong@huawei.com> wrote:
> >
> >      I think it's a good idea.
> >      Nothing new, but benefits that people have already said seems
> notable to me.
> >
> >      (1) reduce the load of final destination. This benefit can be
> notable for the following sub reasons.
> >      (1.1) final destination tends to have heavy load. It need to handle
> all the EHs and do the delivery/demultiplex the packet to the right overlay
> service.
> >      (1.2) example 1, the final destination may need to handle the DOH
> after the RH.
> >      (1.3) example 2, the final destination may need to do the assembly
> of fragmented packets.
> >      (1.4) example 3, the final destination may need to do AH/ESP after
> the Fragmentation Header.
> >      (1.5) example 4, the final destination may need to deliver the
> packet to the right overlay service.
> >
> >      (2) support the incremental deployment when final destination(s) do
> not process/recognize SRH. This benefit can be notable for the following
> sub reasons.
> >      (2.1) A core router may (fan-out) connected with a big number of
> low-end routers that do not support SRH but support
> tunnel-end/service-demultiplex function of SRv6.
> >
> >      Thanks
> >      Jingrong
> >
> >      -----Original Message-----
> >      From: spring [mailto:spring-bounces@ietf.org] On Behalf Of Joel M.
> Halpern
> >      Sent: Wednesday, December 11, 2019 10:55 AM
> >      To: 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://www.ietf.org/mailman/listinfo/spring
> >
> >      _______________________________________________
> >      spring mailing list
> >      spring@ietf.org
> >      https://www.ietf.org/mailman/listinfo/spring
> >
> ------------------------------------------------------------------------------
> >      External Email: Please use caution when opening links and
> attachments / Courriel externe: Soyez prudent avec les liens et documents
> joints
> >
> >
> >
> > _______________________________________________
> > 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