Re: [spring] SRv6 PSP use case

Joel Halpern Direct <jmh.direct@joelhalpern.com> Wed, 04 March 2020 22:34 UTC

Return-Path: <jmh.direct@joelhalpern.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 1D17E3A0AD8 for <spring@ietfa.amsl.com>; Wed, 4 Mar 2020 14:34:57 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.1
X-Spam-Level:
X-Spam-Status: No, score=-2.1 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, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=joelhalpern.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 MHHMZuPz4p8j for <spring@ietfa.amsl.com>; Wed, 4 Mar 2020 14:34:53 -0800 (PST)
Received: from maila2.tigertech.net (maila2.tigertech.net [208.80.4.152]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 789403A0AD5 for <spring@ietf.org>; Wed, 4 Mar 2020 14:34:53 -0800 (PST)
Received: from localhost (localhost [127.0.0.1]) by maila2.tigertech.net (Postfix) with ESMTP id 48Xpbd2wRtz6GGDD; Wed, 4 Mar 2020 14:34:53 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=joelhalpern.com; s=2.tigertech; t=1583361293; bh=mfPGy69tdLUkcLF2mS/fHMniCTWujjz3MrUv83qh51A=; h=Subject:To:Cc:References:From:Date:In-Reply-To:From; b=c5Ii5q3ieHeIgJZmv9h82lhOtR91Y291+KXtvapXFSCdSba0BWYDQXWv6nHIGDwSF Wi3eqRfgBb7OOd/6viocKN6cIqKQ3UC9A2ialvz632U8LqAyqJB5X6M5JUUH9uQ1fP uncbce5yVVP1TXbiMnX0mAIrgHBVy7BSez7zLeH8=
X-Virus-Scanned: Debian amavisd-new at a2.tigertech.net
Received: from [192.168.128.43] (209-255-163-147.ip.mcleodusa.net [209.255.163.147]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by maila2.tigertech.net (Postfix) with ESMTPSA id 48Xpbc5dLmz6G8Dm; Wed, 4 Mar 2020 14:34:52 -0800 (PST)
To: "Darren Dukes (ddukes)" <ddukes@cisco.com>
Cc: "spring@ietf.org" <spring@ietf.org>
References: <2e26bfcf-b5a6-203b-e4f3-3ee654e59598@joelhalpern.com> <7E6EF284-A5FB-4120-87C8-616C12FB8FEA@cisco.com>
From: Joel Halpern Direct <jmh.direct@joelhalpern.com>
Message-ID: <a125c7b6-4189-5f6c-f307-cd7cb9421cba@joelhalpern.com>
Date: Wed, 04 Mar 2020 17:34:51 -0500
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.5.0
MIME-Version: 1.0
In-Reply-To: <7E6EF284-A5FB-4120-87C8-616C12FB8FEA@cisco.com>
Content-Type: text/plain; charset="utf-8"; format="flowed"
Content-Language: en-US
Content-Transfer-Encoding: 8bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/spring/Jrkygxvghxd5VmLIuZBJ9wy_eqQ>
Subject: Re: [spring] SRv6 PSP use case
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, 04 Mar 2020 22:34:58 -0000

A case with no SRH is clearly not a case for PSP.
With regard to the case for PSP, as I said in my note I am concerned 
that if we want to support this specific case, then there are 
restrictions on deployment and operation that need to be called out.

For example, a path compute engine for example needs to know that it not 
only can not use such nodes as .END without prior PSP, but that it can 
not include them in transit paths.

Yours,
Joel

On 3/4/2020 5:01 PM, Darren Dukes (ddukes) wrote:
> Hi Joel, what you describe was also described by Dan Voyer and Jingrong 
> previously.  You’ve added some signalling color but otherwise the same.
> If you’ve read 
> https://tools.ietf.org/html/draft-filsfils-spring-srv6-net-pgm-illustration-00#section-2.4 
> 
> you can see how SRv6 is used for an L3VPN without an SRH present.
> 
> Combine that with the TE description with PSP here 
> https://tools.ietf.org/html/draft-filsfils-spring-srv6-net-pgm-illustration-00#section-2.8.1
> 
> Now you should be able to see how to put this together.
> 
> The WG decided illustrations such as this belong in the illustration draft.
> I believe the WG requested that be split from 
> draft-filsfils-spring-srv6-network-programming draft before adoption.
> That was over a year ago.
> 
> Darren
> 
> 
>> On Mar 4, 2020, at 3:41 PM, Joel M. Halpern <jmh@joelhalpern.com 
>> <mailto:jmh@joelhalpern.com>> wrote:
>>
>> I think I have now inferred what the intended use case is for PSP.  I 
>> really wish folks had stated it in full and explicitly, rather than 
>> implicitly a piece at a time, on the list.
>>
>> As noted below after the explanation, I think that supporting this use 
>> case does require some explanations somewhere.  And given that the 
>> support is in terms of PSP, I guess the NP draft is the place to put 
>> the caveats.
>>
>> As far as I can tell, the use case is as follows.
>> The operator has devices, that they reasonably wish to continue to use.
>> These devices can support encapsulation and decapsulation with 
>> sufficiently arbitrary content.
>> These devices comply with the RFC 8200 requirement for ignoring 
>> routing headers by punting those to the slow path.  With significant 
>> performance penalty.
>>  --  Presumably, these devices have some form of protection to prevent 
>> this slow-pathing from becoming a DoS on the other necessary control 
>> functions.  I don't think that protection is an SRv6 or NP problem. 
>>  But it is necessary.
>>
>> Thus, the SRv6 designers want to be able to use these devices as part 
>> of the SRv6 domain, strictly at entry and exit.  They use PSP as a way 
>> to avoid hitting the slow path on decapsulate.  (Presumably because 
>> the check that punts the packet to the slow path is before the check 
>> that says "decapsulate".  And it probably should be in that order.)
>>
>> In order to support this, the authors have also pretended that maximum 
>> SID depth is meaningful for a thing that is not a stack, and that 0 
>> means "no SRH permitted".  While an interesting stretch on the routing 
>> protocol semantics, it is not SPRING's problem.
>>
>> The fact that these nodes can not be SRv6 end nodes other than as 
>> terminal nodes with a prior node that advertised PSP SID(s) and where 
>> those PSP SIDs are used on any path that terminates at these end nodes 
>> is important.  It probably should be called out.  It would have helped 
>> a number of the examples that were discussed on the list.
>>
>> There is another implication that needs to be stated explicitly.  And 
>> I do not know how the necessary property can be indicated.  These 
>> nodes MUST NOT be transit nodes in an SRv6 path.
>>
>> Having parsed the use case, I would note that the topological 
>> constraints are pretty severe.  the operator must ensure that there 
>> are PSP processing nodes sufficiently close to these edge nodes that 
>> they do not destroy the traffic engineering properties in order to 
>> achieve the ingress / egress utilization.
>>
>> If all of this had been stated explicitly, I think we could have had a 
>> clear discussion of teh costs and benefits.
>>
>> Yours,
>> Joel
>>
>> _______________________________________________
>> spring mailing list
>> spring@ietf.org <mailto:spring@ietf.org>
>> https://www.ietf.org/mailman/listinfo/spring
>