Joel,

Regarding PSP as an optional behaviour in a standard:
From an implementation perspective I don’t see a big cost.
From a deployment perspective PSP is enabling new use-cases. Hence benefits.
From an operational perspective, 4 of the existing deployments have chosen to 
use PSP.

Regarding ASICs complexity:
It's a bold statement to say "non trivial undertaking" when several vendors 
support PSP at linerate in a broad set of different chipset families. 
Deep termination or chopping was complex several years ago. This is no longer 
an issue. As pointed out in my previous email, this has been deployed using 
ASICs that started shipping 3 years ago (and were designed much earlier).
To go even further: I have not worked with any ASIC currently available on the 
market that supports SRH processing and cannot do PSP at linerate. Please bring 
one to the table if you know one. 

By the way: you brought up this same topic two months ago at the mailer. At 
that time we got to the same conclusion: it is not complex.
https://mailarchive.ietf.org/arch/msg/spring/ssobwemrPz0uEZjvRCZP1e4l_l0

Thanks,
Pablo.

-----Original Message-----
From: "Joel M. Halpern" <j...@joelhalpern.com>
Date: Thursday, 12 December 2019 at 06:48
To: "Pablo Camarillo (pcamaril)" <pcama...@cisco.com>, "spring@ietf.org" 
<spring@ietf.org>
Subject: Re: [spring] Is srv6 PSP a good idea

    There are several aspects of your reply that leave me wondering.
    
    First, optional behaviors in a protocol spec have signficiant cost.  So 
    if they are nbot needed, we generally prefer not to have options.

    Second, I am confused by your comments about complexity.  From my 
    conversations with multiple ASIC folks at different companies, middle 
    removal is generally not a trivial undertaking.  My congratulations to 
    the Broadcom folks for achieving it.
    Even if it is relatively simple, it is pretty clear that middle removal 
    of an SRH is significantly more effort than skipping an exhausted SRH. 
    particularly when such skipping is in a device inside the SRH domain. 
    (Since it is outside the domain, one would have encapsulated, and 
    removed the entire encapsulating header, which is indeed simpler.)
    
    Yours,
    Joel
    
    On 12/11/2019 3:11 PM, Pablo Camarillo (pcamaril) wrote:
    > 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-boun...@ietf.org> on behalf of "Joel M. Halpern" 
<j...@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://www.ietf.org/mailman/listinfo/spring
    >      
    > 
    

_______________________________________________
spring mailing list
spring@ietf.org
https://www.ietf.org/mailman/listinfo/spring

Reply via email to