Re: [spring] Is srv6 PSP a good idea

"Pablo Camarillo (pcamaril)" <pcamaril@cisco.com> Sat, 14 December 2019 09:42 UTC

Return-Path: <pcamaril@cisco.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 E7D5D1200F7 for <spring@ietfa.amsl.com>; Sat, 14 Dec 2019 01:42:28 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -14.501
X-Spam-Level:
X-Spam-Status: No, score=-14.501 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_HI=-5, SPF_PASS=-0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.com header.b=R26pwxto; dkim=pass (1024-bit key) header.d=cisco.onmicrosoft.com header.b=Q1jAaPgr
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 f4V-e6BLblmL for <spring@ietfa.amsl.com>; Sat, 14 Dec 2019 01:42:26 -0800 (PST)
Received: from alln-iport-4.cisco.com (alln-iport-4.cisco.com [173.37.142.91]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 2430612006B for <spring@ietf.org>; Sat, 14 Dec 2019 01:42:26 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=8934; q=dns/txt; s=iport; t=1576316546; x=1577526146; h=from:to:subject:date:message-id:references:in-reply-to: content-id:content-transfer-encoding:mime-version; bh=PRetHPGPnOICcHuD1ZABTF2lvS/Ybwv09sJV1zdAlMk=; b=R26pwxtoz18LJBIcYmZyNYgeWN1LhU3+quX6bVFm8N4d76GgKalt2Q+Q oU5nJSyac+Q/v/ybJZEwYplYt5s76T8P0FwKnbNlg3ahdzP7vqxo7sF3J lp0vOnHpVFAC/W2Y434C5un2T2wnOyDwx5I5dFtCqQBioPVTR+JsVccdm 8=;
IronPort-PHdr: 9a23:jCe5GhPUlfGI1JxD/icl6mtXPHoupqn0MwgJ65Eul7NJdOG58o//OFDEu6w/l0fHCIPc7f8My/HbtaztQyQh2d6AqzhDFf4ETBoZkYMTlg0kDtSCDBjjJ/fvZjY7GOxJVURu+DewNk0GUMs=
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: A0DuCACJrfRd/5ldJa1lHAEBAQEBBwEBEQEEBAEBgX6BS1AFbFggBAsqCoN5g0YDiw5OgWwlmAaBQoEQA1QJAQEBDAEBGA0IAgEBgUyCL0UCF4F4JDgTAgMNAQEEAQEBAgEFBG2FCwEFASUMhV4BAQEBAwEBEBEEDQwBASwMCwQCAQgRAwECAQICJgICAiULFQgIAgQBEiKDAAGCRgMuAQMLoTICgTiIYXV/M4J+AQEFgkqCSRiCFwMGgQ4ojBgagUE/gREnDBSCHi4+gmQBAYEwARIBBxgXgnkygiyNdII+jwyPPgqCNIcohTWJJxuCQ4d2gQOFaIkki22CX4hPjm6DCgIEAgQFAg4BAQWBaSJncXAVOyoBgkFQERSDU4dJgXYJAxeDUIUUhT90gSiLWYEiAYEPAQE
X-IronPort-AV: E=Sophos;i="5.69,313,1571702400"; d="scan'208";a="382872403"
Received: from rcdn-core-2.cisco.com ([173.37.93.153]) by alln-iport-4.cisco.com with ESMTP/TLS/DHE-RSA-SEED-SHA; 14 Dec 2019 09:42:25 +0000
Received: from XCH-RCD-010.cisco.com (xch-rcd-010.cisco.com [173.37.102.20]) by rcdn-core-2.cisco.com (8.15.2/8.15.2) with ESMTPS id xBE9gP2m018394 (version=TLSv1.2 cipher=AES256-SHA bits=256 verify=FAIL); Sat, 14 Dec 2019 09:42:25 GMT
Received: from xhs-rcd-001.cisco.com (173.37.227.246) by XCH-RCD-010.cisco.com (173.37.102.20) with Microsoft SMTP Server (TLS) id 15.0.1473.3; Sat, 14 Dec 2019 03:42:24 -0600
Received: from xhs-rtp-001.cisco.com (64.101.210.228) by xhs-rcd-001.cisco.com (173.37.227.246) with Microsoft SMTP Server (TLS) id 15.0.1473.3; Sat, 14 Dec 2019 03:42:23 -0600
Received: from NAM04-BN3-obe.outbound.protection.outlook.com (64.101.32.56) by xhs-rtp-001.cisco.com (64.101.210.228) with Microsoft SMTP Server (TLS) id 15.0.1473.3 via Frontend Transport; Sat, 14 Dec 2019 04:42:23 -0500
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=IZTgNyUQ8B9gcx6Cm7c0sknNYkqxZ9ell3o4snatmfe5lGxZQap51Lj0z3cTG3a7jVHfT54v+VRLosyKyjCNXAVakuOA9APLO2DSQZzAJbKEVpU5xG7eWqXaA0rlsf5yXYlXS52UJcnDHGwGzvCSKpP+S9CtFoQlWTVmpQmLIy6SbpxJNmYXbRAApeR9x30tDKjE7lQKx0xu4eIvwNMl89kFDb6SmeyXnZz8xkG7AGoXGTextjxHushuMiz4BDnDcINLeVzH5Tv9rhCezs7bJXJRGOm+h7vpWYvD1A+gLf00ihsDvUb66P4VG2god5IUkfvsORkRAd2EOYBIRuLQrw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=PRetHPGPnOICcHuD1ZABTF2lvS/Ybwv09sJV1zdAlMk=; b=XL0o8HckwcSE45P1jCP5XL2kn/RohUNgN81sRGpS8t39v6VJC2Hg0OSaFgOfRbst8ttoN1/N0R2BGl2ybH+IhRAPlWthp4XTYss4nlQqNqREEX/bece9BuWWcdM8+mhLtDkos6WNWmnLFd6E2m4H6qcVA/nbCEHqkektgFBM1A+r872E23LYLG/8HqsUMlgx3Wu+GHOVLYEp5rK77j9YE9TYeM3rGjcBTvEAODbL/Iiwl5KJhF8cn5lhhbQi3vxGADdcW8iyMCRzhwQRw7h2B3pBPgCitBDdgI7k5vrnxT3fEzPatDZH3L970od+Wk03Hn6viqSJTP2sKQv7IBfmXQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=cisco.com; dmarc=pass action=none header.from=cisco.com; dkim=pass header.d=cisco.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cisco.onmicrosoft.com; s=selector2-cisco-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=PRetHPGPnOICcHuD1ZABTF2lvS/Ybwv09sJV1zdAlMk=; b=Q1jAaPgr8QhZG9mkLlj5YOuCSJQrOQ7GTc1lQrdMt4tnJfgvs+dNRgSkgCWojPyxQP/NEM1IKhoeN+ilcZ1nPcagWdDmH7F9Xp40kXAzLaCUdLmKUtwU7gR68853jZUC2E2z24QP8wvr3jB3SJxk5QYh5ay6DyvfEAM5t8F/tZw=
Received: from MWHPR11MB1374.namprd11.prod.outlook.com (10.169.234.8) by MWHPR11MB1424.namprd11.prod.outlook.com (10.169.235.16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2516.13; Sat, 14 Dec 2019 09:42:22 +0000
Received: from MWHPR11MB1374.namprd11.prod.outlook.com ([fe80::b04b:c9bb:2378:7a8d]) by MWHPR11MB1374.namprd11.prod.outlook.com ([fe80::b04b:c9bb:2378:7a8d%11]) with mapi id 15.20.2538.017; Sat, 14 Dec 2019 09:42:22 +0000
From: "Pablo Camarillo (pcamaril)" <pcamaril@cisco.com>
To: "Joel M. Halpern" <jmh@joelhalpern.com>, "spring@ietf.org" <spring@ietf.org>
Thread-Topic: [spring] Is srv6 PSP a good idea
Thread-Index: AQHVr85jMV33kJTkH0WlnUgh9KVMGKe15N2AgAAa+oCAA3bfgA==
Date: Sat, 14 Dec 2019 09:42:21 +0000
Message-ID: <F68581A4-1756-467F-B6B5-1F657967B6F7@cisco.com>
References: <5c2a4b36-0c59-709e-23eb-00f4aa1ce52f@joelhalpern.com> <9B89F4C2-5594-4D31-8893-21F3F4A0DF6C@cisco.com> <0f9eb3d1-77c0-2132-cad9-e23277ce6a07@joelhalpern.com>
In-Reply-To: <0f9eb3d1-77c0-2132-cad9-e23277ce6a07@joelhalpern.com>
Accept-Language: en-US
Content-Language: en-GB
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
user-agent: Microsoft-MacOutlook/10.20.0.191208
authentication-results: spf=none (sender IP is ) smtp.mailfrom=pcamaril@cisco.com;
x-originating-ip: [88.27.141.80]
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: 854f5554-3c4e-4039-e978-08d78079eb33
x-ms-traffictypediagnostic: MWHPR11MB1424:
x-microsoft-antispam-prvs: <MWHPR11MB14245DE9D81A6C23193C5B72C9570@MWHPR11MB1424.namprd11.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:10000;
x-forefront-prvs: 025100C802
x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(396003)(39860400002)(366004)(346002)(376002)(136003)(199004)(189003)(13464003)(6486002)(8936002)(2616005)(6512007)(81156014)(71200400001)(966005)(66476007)(5660300002)(8676002)(81166006)(33656002)(2906002)(66574012)(66946007)(91956017)(76116006)(53546011)(86362001)(66446008)(316002)(186003)(64756008)(478600001)(26005)(36756003)(6506007)(110136005)(66556008); DIR:OUT; SFP:1101; SCL:1; SRVR:MWHPR11MB1424; H:MWHPR11MB1374.namprd11.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1;
received-spf: None (protection.outlook.com: cisco.com does not designate permitted sender hosts)
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: CKsp+K4gPkt7pzRegy30/EdfJWAM8wakXN03rDGG7WMcQtgySSyl6ic5IcaIEn/ZnzS37cvZ8AYsWKXKbjKqqvcJTClt4m6EVmgXZvGRAXGh2MyRu1xIB+Gxa3CHolOpttvF+UH3xhNA3jtxwaLIIi4q1tZmDOIo/GV6BuEi4fu/WdQOkxq4JsIx9/sUemnrUIl1Tg9zHL1mT+WEkJSn0jcsOJY4Kek1CdyzrFU8F3sMG8Njw2y9EH3RPozyu48WwOWcjULDvwiYoK9BXuae7/9XiDvaL5CPYhsVUTSkeMMyf7KmRj/rw/ZqZbalo4UGPabFn1O3xXzPRi0uWgC/uXiibH6QIds0WEfh4/M5dvJ97F+AjNXbU71cIAW6t3SKz/IzaLT6pJ4qjoCAi0kRf2T9604aS6jjMssoueamKDSAfbM5Ub77CiNcv7ZKZOjpw8WBcQpBu8ZK5Dw9noN/os3ozltVtHD8MHy+nRrxmOepqDSXagQkJNZ60hdHj/03vy+W/gl8f3wcsZYtgqMtPPi1nlVj0AyrVakuyag/mFI=
x-ms-exchange-transport-forked: True
Content-Type: text/plain; charset="utf-8"
Content-ID: <9EA7CAAC8DC069469D617057C0303073@namprd11.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-Network-Message-Id: 854f5554-3c4e-4039-e978-08d78079eb33
X-MS-Exchange-CrossTenant-originalarrivaltime: 14 Dec 2019 09:42:21.9511 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 5ae1af62-9505-4097-a69a-c1553ef7840e
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: A3SPKmfWzUOv5ocpsljeJPcy1lwdR7GwdmHfutSgn4jsZ2UW1zWIhILH45nmvliE4cdqxGeqeMK8ixuOYRAsLA==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR11MB1424
X-OriginatorOrg: cisco.com
X-Outbound-SMTP-Client: 173.37.102.20, xch-rcd-010.cisco.com
X-Outbound-Node: rcdn-core-2.cisco.com
Archived-At: <https://mailarchive.ietf.org/arch/msg/spring/xwIjlqGQQqN2KloZYeMVkBgeD10>
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: Sat, 14 Dec 2019 09:42:29 -0000

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" <jmh@joelhalpern.com>
Date: Thursday, 12 December 2019 at 06:48
To: "Pablo Camarillo (pcamaril)" <pcamaril@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-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://www.ietf.org/mailman/listinfo/spring
    >      
    >