Re: [spring] I-D Action: draft-ietf-spring-segment-routing-policy-09.txt

"Ketan Talaulikar (ketant)" <ketant@cisco.com> Thu, 12 November 2020 04:45 UTC

Return-Path: <ketant@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 62DE93A13E2 for <spring@ietfa.amsl.com>; Wed, 11 Nov 2020 20:45:14 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -9.6
X-Spam-Level:
X-Spam-Status: No, score=-9.6 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, HTML_MESSAGE=0.001, RCVD_IN_MSPIKE_H2=-0.001, SPF_PASS=-0.001, URIBL_BLOCKED=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=aIqX48d3; dkim=pass (1024-bit key) header.d=cisco.onmicrosoft.com header.b=S6uFSKR0
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 ZljIuEjMBpF1 for <spring@ietfa.amsl.com>; Wed, 11 Nov 2020 20:45:10 -0800 (PST)
Received: from alln-iport-8.cisco.com (alln-iport-8.cisco.com [173.37.142.95]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id AAF9E3A13E1 for <spring@ietf.org>; Wed, 11 Nov 2020 20:45:09 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=129822; q=dns/txt; s=iport; t=1605156309; x=1606365909; h=from:to:cc:subject:date:message-id:references: in-reply-to:mime-version; bh=FqJt3KHMVuLz0rR3iYlJ5YMlx4GUIfrYFbcgP6JCfmQ=; b=aIqX48d3JDODTr6kG1/GRDLR9qL3dZRyg6yVvmatyERAL3lPIti/6Mpk a4mA0r61mlemjwPeJjNc098n+NxkataUKL+ezVtH9HcvRXPVYqvIXW2En 8mTXB8DzkGxhbemtGTel2f18dJjK+nBmpb2IorKbVUMfzFgLcPcnan9yh g=;
X-IPAS-Result: =?us-ascii?q?A0CCBwBpvaxffYQNJK1iHQEBAQEJARIBBQUBgg+BIy8jL?= =?us-ascii?q?ntZLy4KhDODSQONVYoWjm2BQoERA08FCwEBAQ0BARgBDAgCBAEBhAZEAheBf?= =?us-ascii?q?wIlOBMCAwEBAQMCAwEBAQEFAQEBAgEGBBQBAYYPAQclDIVyAQEBBAEBEAgBC?= =?us-ascii?q?AoTAQEjCQsBCwQCAQgRAQIBAQEhAQYDAgICHwYLFAMGCAIEAQ0FCBqDBYF+V?= =?us-ascii?q?wMuAQ6lBwKBPIhodoEygwQBAQWBMwEDAg5BgwwNC4IQCYE4gnOCZU5CgQaBP?= =?us-ascii?q?oQTG4FBP4ERQ4JPPoIbQgEBAgEBFYEAEQESASMFBxINCQIGglkzgiyQLRmDI?= =?us-ascii?q?IcdjA6QSlQKgm2JD4xyhTWDGYEqiGuBLZBogjSTUYF/iH2Cbo4xhDQCBAIEB?= =?us-ascii?q?QIOAQEFgUEqIWlwcBUaIYI1AQEyCUcXAg2BNIZIhggbDBeDToUUhUR0AjYCB?= =?us-ascii?q?gEJAQEDCXyMOwGBEAEB?=
IronPort-PHdr: =?us-ascii?q?9a23=3AhU8GgRC+Gfc4tbctR3i7UyQJPHJ1sqjoPgMT9p?= =?us-ascii?q?ssgq5PdaLm5Zn5IUjD/qw00A3PWoba4rRPjO+F+6zjWGlV55GHvThCdZFXTB?= =?us-ascii?q?YKhI0QmBBoG8+KD0D3bZuIJyw3FchPThlpqne8N0UGHsH9ZlSUqXq3vnYeHx?= =?us-ascii?q?zlPl9zIeL4UofZk8Ww0bW0/JveKwVFjTawe/V8NhKz+A7QrcIRx4BlL/U8?=
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-AV: E=Sophos;i="5.77,471,1596499200"; d="scan'208,217";a="606079159"
Received: from alln-core-10.cisco.com ([173.36.13.132]) by alln-iport-8.cisco.com with ESMTP/TLS/DHE-RSA-SEED-SHA; 12 Nov 2020 04:45:06 +0000
Received: from XCH-RCD-002.cisco.com (xch-rcd-002.cisco.com [173.37.102.12]) by alln-core-10.cisco.com (8.15.2/8.15.2) with ESMTPS id 0AC4j2hB005280 (version=TLSv1.2 cipher=AES256-SHA bits=256 verify=FAIL); Thu, 12 Nov 2020 04:45:05 GMT
Received: from xhs-rtp-003.cisco.com (64.101.210.230) by XCH-RCD-002.cisco.com (173.37.102.12) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Wed, 11 Nov 2020 22:45:01 -0600
Received: from xhs-rtp-002.cisco.com (64.101.210.229) by xhs-rtp-003.cisco.com (64.101.210.230) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Wed, 11 Nov 2020 23:45:01 -0500
Received: from NAM12-BN8-obe.outbound.protection.outlook.com (64.101.32.56) by xhs-rtp-002.cisco.com (64.101.210.229) with Microsoft SMTP Server (TLS) id 15.0.1497.2 via Frontend Transport; Wed, 11 Nov 2020 23:45:01 -0500
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=hkKoswvgAFqskM3EtpJfJ1A8y38+h9lxvWv0HsKGfPuS+99IgqRLDrtur/vuo/1vcPOdrQRj+0owjWKXjZYDqyP+JADwoDZtljLb63l30mt00yJsIuJ931q7xDs0vTMkfnYF0dtGcOkgJE0BbhpXQ6XLIHvkVMAsHsJsxgqlbwIpK9Jnxv+NKeRRpDmxAdSsoO+rBVyhGi3c3LXxaToIEfbDzlSnq9Djeh5wQ0ICcgz0dBIgz1YdoqDhDMRdmyiOVxaN8aXO5Eg/YPpoZPU6+qAduuW239bB15jOo3IPQ3kURVxYiGf72ArxD3dqorREdUlM0mGDdBdhGTGZRWCMvw==
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=FqJt3KHMVuLz0rR3iYlJ5YMlx4GUIfrYFbcgP6JCfmQ=; b=Nm6kH500whWxNLreaKTg7cJ5Td/ISi+4DSO1qia3I3knMqkJCLRj4zanCJeiGKLBWtMKnQA9/PUKswn9Kn/gxlD0fhZLVorf8WIAH7gbSRlFt77MTul2tF85en0HAxX05Ui8X7ry6ZT8DyR325OX89fbK3kuIVFtLIhwPbANSbR3hlGVEUUkJsyfYtFiVQ6ehMFFLPzOSTqDqeAg/oelUZIrgpsD82MQciUmwmfub+2vQP6g636lfgnx+jSqM6yGSzs9JRm+W+vIfxRyKcL5xVy47KMlsTOC1Nsv7x5fjvZNkf6Qo78fFbRXZ7wEFUQjWE/IVa7Tw8CsOsQDVCvxGA==
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=FqJt3KHMVuLz0rR3iYlJ5YMlx4GUIfrYFbcgP6JCfmQ=; b=S6uFSKR0bjEkhcvumFs8CRiTM0Y94fMZ88fDtGxUiuMEcMM+oZ/+cBpe9/4yb2oIu+N2pfsEAkRnSO/UQIdOe9rYh+uCrnO0kyviNmEGUWzs5Z/NR6Vu5hWFQaAq+ygk10UWNVqyd3cPwO40teGKDDptj9OWr99sDgHH9Fca9TA=
Received: from MW3PR11MB4570.namprd11.prod.outlook.com (2603:10b6:303:5f::22) by MWHPR11MB1344.namprd11.prod.outlook.com (2603:10b6:300:23::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3541.21; Thu, 12 Nov 2020 04:44:59 +0000
Received: from MW3PR11MB4570.namprd11.prod.outlook.com ([fe80::d4d5:97f0:17b5:2f77]) by MW3PR11MB4570.namprd11.prod.outlook.com ([fe80::d4d5:97f0:17b5:2f77%5]) with mapi id 15.20.3541.025; Thu, 12 Nov 2020 04:44:59 +0000
From: "Ketan Talaulikar (ketant)" <ketant@cisco.com>
To: "Stone, Andrew (Nokia - CA/Ottawa)" <andrew.stone@nokia.com>, "Vishnu Pavan Beeram" <vishnupavan@gmail.com>
CC: "spring@ietf.org" <spring@ietf.org>
Thread-Topic: [spring] I-D Action: draft-ietf-spring-segment-routing-policy-09.txt
Thread-Index: AQHWsLNAvqgyg1iaMU6IIe6qxgFXrqm0BXfggAwoDICAAP2ogIAAmcsAgACMyMCAAU4HgIAAWSNw
Date: Thu, 12 Nov 2020 04:44:58 +0000
Message-ID: <MW3PR11MB4570654EEDA8BC76AC8AC3B6C1E70@MW3PR11MB4570.namprd11.prod.outlook.com>
References: <160427863467.23607.17022367772306047140@ietfa.amsl.com> <MW3PR11MB4570D65A1973363A1A6EF7AEC1100@MW3PR11MB4570.namprd11.prod.outlook.com> <CA+YzgTuqyGvFzx_SBSxx-4y0e0d8FvMhcPzx9b5tzq3F5ayL0A@mail.gmail.com> <MW3PR11MB4570D601ADC0D8E24B6B2675C1E90@MW3PR11MB4570.namprd11.prod.outlook.com> <CA+YzgTsptfe7j83_A9G5v9PpkH-i5+CzgOKssuD=b6BXPxRqtg@mail.gmail.com> <MW3PR11MB45708212D3D166F34006C0C5C1E80@MW3PR11MB4570.namprd11.prod.outlook.com> <3E1EC667-7B17-45AC-9CDE-F121FB75F14B@nokia.com>
In-Reply-To: <3E1EC667-7B17-45AC-9CDE-F121FB75F14B@nokia.com>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: nokia.com; dkim=none (message not signed) header.d=none;nokia.com; dmarc=none action=none header.from=cisco.com;
x-originating-ip: [72.163.220.5]
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: 1199aacc-a802-466a-76b0-08d886c5b5de
x-ms-traffictypediagnostic: MWHPR11MB1344:
x-microsoft-antispam-prvs: <MWHPR11MB13448AC717B30F687DC986CDC1E70@MWHPR11MB1344.namprd11.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:9508;
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: e/WfjTizdC5S77214j8Wp/sjHPeY503CtP2xUl3bikJvEZt4NSRWchm3uMO5f7aEJ0gTnFbPRvZgFD7AdfpJ8lyuPR2X9My9SWwPyYkETVE+NlO+qZMeCm4ERhbs4IssSstANzRb7dNHN/Da4nrD4OKrR3c7IBgTVFmJScxZC83/HFD8uGnlAD03n0wOBE9UbeP+h5BAqn24g1POYHboPYP6LU0mwWleYjp2Q5vpUUF0DgyNbNnI9v2oNfUN1061W1rl8z7kujeN4/F1/Ddj/dAZK43gfNVi9zBBOLSlMf2EM1lLN89S+sFdvEQinI5r4FSCu14MdekGFyRX0tkETBJmenN6QipPe9MDWlpRPXeY+nWm6A14Pgd39/PKpPCYDicwnYL7ekPbST+XMZ1n1A==
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:MW3PR11MB4570.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(39860400002)(396003)(376002)(366004)(136003)(346002)(26005)(7696005)(5660300002)(110136005)(16350225007)(86362001)(2906002)(316002)(296002)(55016002)(966005)(478600001)(52536014)(30864003)(8676002)(186003)(8936002)(66574015)(166002)(76116006)(53546011)(66556008)(66946007)(66476007)(64756008)(71200400001)(6506007)(83380400001)(9326002)(66446008)(9686003)(33656002)(4326008)(579004)(559001); DIR:OUT; SFP:1101;
x-ms-exchange-antispam-messagedata: KnQdTW5J+42AA5ptEVN/VBzOc7TMNbryBgiC+dHcNOL6YBnpFSOFzu5hr1pwI5e6nyDqFmXWWMB91cj2LHpDSDYZ/4E0NhB3/gSsM5JKiueNvQtTUAbxgG42te612F+/ofL8hKigEY4B3JAKgzahUDgdJuU520ZSJCKOVJhf5XJ4T7qyY6iKIKPbniR4UiuCTyBxzftqCbqnae44txIEiF7O8sQhiaVJAd5uAoTtHvp+IGuu85VTx8oQi1M04ZhBSqumHSLClfWHX0X9KniedfwF/iBRB522wBTAxzO8flnX3wgPqYBvkdozgWCLlYX9dBGrYBMEIG1Fl3ub1Ev0ZIdyAMu83hasusnfjF8x+p74Aqe6yfLJdmUQUDTAquWE0N2GQuS3rov9WuN/aptUlKdNRungL6yJIL34u8dsrYm/M3UCBFkhmnk1UuPTwXVC3VXnCkVDS07gAup1z1f7u0Z99+gnEZ6O+qc0kzE5jVbWCGuk4kUUubLUKhuKrb7pii6+lyOKigoZupwOgcQl5j17dgcT4GN6QDE5iw/zTelcE5FJL0AUfumV0TfNlFUsJQGhJOGVFqb7Y9UV6hURuaog+sRLU3RV8JxG615Q6WQQELYQKgx6Fe9/ZqbV/L3M3NGzosZvw6i7KI+Bk9iz6/8TjYTRx1Sm6dH384Y99LEnO2mhokjkk1HGJDU6ELYzd2J8N3VoPYoA8D/ApAVZHMp/6nY4vWyGDj6SJ8ZEkR8FVH1U7deyD25aTz0oKL7UKq4JAk0zFFS++kpGqoh0DhVsz1U5wyNIUnw7+aQABbc2vdj22mzhP/SWKuzw1bo9KkHILR7KcMTYUsvteqa68BaE1M6+poPaZJ2wDRG3s7lykPZv9OPAaY165Htwx9qDgsByvp9D2kINITzS3qizXg==
x-ms-exchange-transport-forked: True
Content-Type: multipart/alternative; boundary="_000_MW3PR11MB4570654EEDA8BC76AC8AC3B6C1E70MW3PR11MB4570namp_"
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: MW3PR11MB4570.namprd11.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 1199aacc-a802-466a-76b0-08d886c5b5de
X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Nov 2020 04:44:58.9037 (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: qQfvxk7mzqLPggX92H8hIh8gmozDLMl0QjUYh1KWI0yefQoewTa8oXGMmlGDNMJVHvZZs6b3Zd2eJcBJKhPa6Q==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR11MB1344
X-OriginatorOrg: cisco.com
X-Outbound-SMTP-Client: 173.37.102.12, xch-rcd-002.cisco.com
X-Outbound-Node: alln-core-10.cisco.com
Archived-At: <https://mailarchive.ietf.org/arch/msg/spring/fu4CdNndhhJB3fFCOE-U9VFWAN4>
Subject: Re: [spring] I-D Action: draft-ietf-spring-segment-routing-policy-09.txt
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: Thu, 12 Nov 2020 04:45:14 -0000

Hi Andrew,

Thanks for your inputs and feedback. Please check inline below.

From: Stone, Andrew (Nokia - CA/Ottawa) <andrew.stone@nokia.com>
Sent: 12 November 2020 04:46
To: Ketan Talaulikar (ketant) <ketant@cisco.com>om>; Vishnu Pavan Beeram <vishnupavan@gmail.com>
Cc: spring@ietf.org
Subject: Re: [spring] I-D Action: draft-ietf-spring-segment-routing-policy-09.txt

Hi Ketan, Pavan,

Good discussion. Just going to chip in some thoughts…

One of the elements I personally like of the SR Policy model is that many Candidate Paths may exist, but only one may be active and a candidate path contains 1 or many SID lists. It’s a simple parent/child - root/leaf tree with very clear rules within the SR policy context instance. From my point of view, what is being proposed in the -09 document still follows those rules and the general top-down tree behaviour. Despite the composite CP pointing to a different SR Policy, that SR Policy still follows all of the same rules top down in its own isolated context. Compare that to say, having a candidate path contain a child that points to other candidate paths within the same SR Policy context: within the same context a child is pointing to a sibling of its parent. The rules now have to bend slightly. As noted below, some of the rules around what is considered an active candidate path would need to change, since the constituents essentially are active (they’re installed) despite not being thought of as being active. Note that the proposed new text below says “The preference is ignored for each of the two constituent candidate paths" which is also a new rule, however one could perhaps work around that by just requiring the preference on the constituents be less preferred than any other standard or composite CP – but that raises its own troubles with multiple sources of provisioning – which leads to a rule asking to ignore the preference. In summary, from my p.o.v new rules in the hierarchy would need to be introduced.
[KT] Agree and this would be a far more intrusive and change to the model. That too for a very specific use-case while the current proposal supports not just that use-case but many others as well in a more generic way.

Regarding steering into an SR Policy, yes, you burn colors in doing this (32bits...) and it would require deploying an entirely dedicated SR Policy construct, and run the risk of steering ‘other’ traffic into that policy. If this is a concern, would the composite SR Policies not be engineered in a way where the color block used is designed to not be used elsewhere in the network for other purposes? Is there not a different but kind of similar problem with Binding SIDs, in that they’re eligible for use by other consumers even if not directly intended? (although at least BSIDs are optional and not mandatory). In addition to the split TE cases, being able to have an SR Policy steer into another SR Policy might also have some value in a backup candidate scenario when one has multiple SR Policies with the same endpoint, but can share a common fallback/best effort candidate path. The entity (I'm thinking PCE) managing that would only need to maintain the fallback/best effort CP SID list(s), instead of one for each N * CPs.
[KT] This was exactly one the main considerations for the proposal in the draft currently. In that it provides the flexibility to support not just the very specific use-case for splitting service flows with b/w granularity across different planes, but it enables/allows other use-cases like what you mention. There is also the use-case where there is really no b/w considerations but where  Service R needs to be steered over the red-plane, Service B needs to be steered over the blue-plane while Service A needs to be load-balanced over both red and blue planes. Here, the coloring on the service route will dictate whether the planes are to be used individually or not. This is just one example use-case.

Something I haven’t concluded to myself yet are questions such as:


  *   does having a candidate path steer into another SR Policy satisfy the ability to do various sub-path specific TE/constraint/object combinations sufficiently?
  *   is the model relatively straight forward to map into yang/bgp/pcep etc..?
[KT] I believe this is straightforward and we can work these aspects out.


  *   does using an additional SR Policy create too much overhead or state burn to configure, deploy, manage, track etc.. ?
[KT] The unit of signaling being the CP, I don’t think this makes a difference either way.

Thanks,
Ketan

Cheers
Andrew

From: spring <spring-bounces@ietf.org<mailto:spring-bounces@ietf.org>> on behalf of "Ketan Talaulikar (ketant)" <ketant=40cisco.com@dmarc.ietf.org<mailto:ketant=40cisco.com@dmarc.ietf.org>>
Date: Tuesday, November 10, 2020 at 10:33 PM
To: Vishnu Pavan Beeram <vishnupavan@gmail.com<mailto:vishnupavan@gmail.com>>
Cc: "spring@ietf.org<mailto:spring@ietf.org>" <spring@ietf.org<mailto:spring@ietf.org>>
Subject: Re: [spring] I-D Action: draft-ietf-spring-segment-routing-policy-09.txt

Hi Pavan,

Please check inline below.

From: Vishnu Pavan Beeram <vishnupavan@gmail.com<mailto:vishnupavan@gmail.com>>
Sent: 11 November 2020 00:26
To: Ketan Talaulikar (ketant) <ketant@cisco.com<mailto:ketant@cisco.com>>
Cc: spring@ietf.org<mailto:spring@ietf.org>
Subject: Re: [spring] I-D Action: draft-ietf-spring-segment-routing-policy-09.txt

Ketan, Hi!

Please see inline for responses (prefixed VPB).

Regards,
-Pavan

On Tue, Nov 10, 2020 at 4:04 AM Ketan Talaulikar (ketant) <ketant@cisco.com<mailto:ketant@cisco.com>> wrote:
Hi Pavan,

Please check inline below.

From: Vishnu Pavan Beeram <vishnupavan@gmail.com<mailto:vishnupavan@gmail.com>>
Sent: 10 November 2020 00:08
To: Ketan Talaulikar (ketant) <ketant@cisco.com<mailto:ketant@cisco.com>>
Cc: spring@ietf.org<mailto:spring@ietf.org>
Subject: Re: [spring] I-D Action: draft-ietf-spring-segment-routing-policy-09.txt

Ketan,

Much Thanks for taking a stab at addressing the composite candidate path use-case! We seem to be converging.
[KT] Thanks for that feedback and confirmation that the proposal in the draft does address the use-case. I believe we are now discussing the mechanics of how this is achieved within the current SR Policy framework.

However, I don’t understand why you need to use additional SR policies (and unnecessarily burn additional colors) to address this.
[KT] I do not follow what you mean by “burn additional colors”. Color is just a 32 bit number that indicates the “intent” and is not really a scarce resource. Assigning a color to “a composite intent” seems like a seamless way to integrate with existing mechanisms for Steering over SR Policies. This gives the flexibility for say some BGP services to be steered over the constituent explicit/dynamic intent while others can steer over a composite intent that includes those individual explicit/dynamic intents.

[VPB] The “flexibility” that you are referring to is undesirable for this use-case. For the traffic-split use-case, we don’t want any other services to be directly steered over the constituents when they are part of a composite candidate path.
[KT] I believe the use-case that you are referring to was for splitting some traffic for a service over a blue plane and the rest over a red plane. At the same time, there may be other services that utilize only a single plane. The flexibility that I was referring to was to enable/allow for either of the two scenarios and there may be other/more use-cases for which we need a more generic framework.

The current proposal in the draft would have been acceptable if the constituent SR Policies were uncolored – but that would violate the current rules imposed by the draft.


Why can’t the composite candidate path just be a grouping of explicit candidate paths and/or dynamic candidate paths?
[KT] This is because in the SR Policy framework, there is only a single active CP – it may be explicit or dynamic. Now we’ve added another Composite CP type to cover this specific use-case. Your proposal will result in 3 candidate paths being active within the same SR Policy – one each of the explicit and dynamic CP and then additionally the Composite CP. This breaks the existing rules for selection of CP based on preference and mechanisms like fallback between CPs. While the current proposal in the draft provides a way to address the new use-case with a backwards compatible extension to the SR Policy framework.

[VPB] The proposal in my previous email is backwards compatible and does not intend to break any existing rules for deeming a candidate path active. As per the rules that are outlined in Section 2.9, only the composite candidate path is “active” given its preference. The constituent candidate paths will never be active on their own. If it is necessary, we can add a statement in Section 2.9 to explicitly state that the candidate path selection criteria does not apply to the constituent candidate paths.
[KT] When a CP is “active” it is actually the one that is being used for forwarding.

Thanks,
Ketan


Thanks,
Ketan

Consider the following changes:

** Section 2.2
OLD:

   A composite candidate path acts as a container for grouping of SR

   Policies.  The composite candidate path construct enables combination

   of SR Policies, each with explicit candidate paths and/or dynamic

   candidate paths with potentially different optimization objectives

   and constraints, for a load-balanced steering of packet flows over

   its constituent SR Policies.  The following criteria apply for

   inclusion of constituent SR Policies using a composite candidate path

   under a parent SR Policy:



   o  the endpoints of the constituent SR Policies and the parent SR

      Policy MUST be identical



   o  The colors of each of the constituent SR Policies and the parent

      SR Policy MUST be different



   o  the constituent SR Policies MUST NOT use composite candidate paths



   Each constituent SR Policy of a composite candidate path is

   associated with a weight for load-balancing purposes (refer

   Section 2.11<https://tools.ietf.org/html/draft-ietf-spring-segment-routing-policy-09#section-2.11> for details).  The default weight is 1.



NEW:

   A composite candidate path acts as a container for grouping of

   explicit candidate paths and/or dynamic candidate paths with

   potentially different optimization objectives and constraints.

   The composite candidate path construct enables load-balanced

   steering of packet-flows over a set of constituent candidate

   paths. The following criteria apply for constituent candidate

   paths under a composite candidate path:



   o  the preference of the constituent candidate path MUST be

      ignored.



   o  the constituent candidate path MUST NOT be a composite candidate

      path



   Each constituent candidate path of a composite candidate path is

   associated with a weight for load-balancing purposes (refer

   Section 2.11<https://tools.ietf.org/html/draft-ietf-spring-segment-routing-policy-09#section-2.11> for details).  The default weight is 1.



**



** Section 2.11



OLD:
   When a composite candidate path is active, the fraction of flows
   steered into each constituent SR Policy is equal to the relative
   weight of each constituent SR Policy.  Further load balancing of
   flows steered into a constituent SR Policy is performed based on the
   weights of the Segment-List of the active candidate path of that
   constituent SR Policy.



NEW:
   When a composite candidate path is active, the fraction of flows
   steered into each constituent candidate path is equal to the relative
   weight of each constituent candidate path.  Further load balancing of
   flows steered into a constituent candidate path is performed based on
   the weights of each associated Segment-List.


**



** Section 2.13



OLD:
   The information model of SR Policy POL100 having a composite
   candidate path is the following:

   SR policy POL100 <headend = H1, color = 100, endpoint = E1>
        Candidate-path CP1 <protocol-origin = 20, originator =
   100:1.1.1.1, discriminator = 1>
            Preference 200
            Weight W1, SR policy <color = 1>
            Weight W2, SR policy <color = 2>

   The constituent SR Policies POL1 and POL2 have information model as
   described at the start of this section.  They are referenced only by
   color in the composite candidate path since their headend and
   endpoint are identical to the POL100.  The valid Segment-Lists of the
   active candidate path of POL1 and POL2 are installed in the
   forwarding.  Traffic steered on POL100 is flow-based hashed on POL1
   with a ratio W1/(W1+W2).  Within the POL1, the flow-based hashing
   over its Segment-Lists are performed as described earlier in this
   section.



NEW:
   The information model of SR Policy POL100 having a composite
   candidate path is the following:

   SR policy POL100 <headend = H1, color = 100, endpoint = E1>
        Candidate-path Comp-CP <protocol-origin = 20, originator =
   100:1.1.1.1, discriminator = 1>
            Preference 200
            Weight W1, Candidate-path CP1
            Weight W2, Candidate-path CP2
        Candidate-path CP1 <protocol-origin = 20, originator =
   100:1.1.1.1, discriminator = 2>
             Weight W11, SID-List1 <SID11...SID1i>
             Weight W12, SID-List2 <SID21...SID2j>
        Candidate-path CP2 <protocol-origin = 20, originator =
   100:1.1.1.1, discriminator = 3>
             Weight W21, SID-List3 <SID31...SID3i>
             Weight W22, SID-List4 <SID41...SID4j>

   Comp-CP is a composite candidate path with two constituents, CP1
   and CP2. The preference is ignored for each of the two constituent
   candidate paths. The valid Segment-Lists of the two constituent
   candidate paths are installed in the forwarding. Traffic steered
   on Comp-CP is flow-based hashed on to CP1 and CP2 with a ratio of
   W1/(W1+W2) and W2/(W1+W2) respectively. Within each constituent
   candidate path, the flow-based hashing over its Segment-Lists are
   performed as described earlier in this section.


**



** Section 5.3



OLD:
   A composite candidate path is specified as a group of its constituent
   SR Policies.

   A composite candidate path is valid when it has at least one valid
   constituent SR Policy.



NEW:
   A composite candidate path is specified as a group of its constituent
   candidate paths.

   A composite candidate path is valid when it has at least one valid
   constituent candidate path.


**



Regards,

-Pavan



On Sun, Nov 1, 2020 at 7:02 PM Ketan Talaulikar (ketant) <ketant=40cisco.com@dmarc.ietf.org<mailto:40cisco.com@dmarc.ietf.org>> wrote:
Hello All,

We have just posted an update for the draft and following is the summary of changes:

1) Introduction of the Composite Candidate Path construct to address a pending comment from the WG (Ref : https://mailarchive.ietf.org/arch/msg/spring/fEqE5TOwdh2vEyFm_MEjiXyP2ws/ and https://mailarchive.ietf.org/arch/msg/spring/d9oSSbgp0jCExRx0SXyBY0CyqXU/)
2) Based on offline feedback received, updated SRv6 segment types to include optional SRv6 SID and behavior instead of the new type that was introduced for it in the v08.
3) Clarification of handling of colors and BGP multi-path scenarios based on offline feedback received.
4) Clarification on considerations for TI-LFA for SR Policy as discussed in the WG (Ref : https://mailarchive.ietf.org/arch/msg/spring/EV1ytUsd5ZgkMHDN0IvFhw9id40/)

Please let know your comments/feedback.

Thanks,
Ketan (on behalf of co-authors)

-----Original Message-----
From: spring <spring-bounces@ietf.org<mailto:spring-bounces@ietf.org>> On Behalf Of internet-drafts@ietf.org<mailto:internet-drafts@ietf.org>
Sent: 02 November 2020 06:27
To: i-d-announce@ietf.org<mailto:i-d-announce@ietf.org>
Cc: spring@ietf.org<mailto:spring@ietf.org>
Subject: [spring] I-D Action: draft-ietf-spring-segment-routing-policy-09.txt


A New Internet-Draft is available from the on-line Internet-Drafts directories.
This draft is a work item of the Source Packet Routing in Networking WG of the IETF.

        Title           : Segment Routing Policy Architecture
        Authors         : Clarence Filsfils
                          Ketan Talaulikar
                          Daniel Voyer
                          Alex Bogdanov
                          Paul Mattes
        Filename        : draft-ietf-spring-segment-routing-policy-09.txt
        Pages           : 37
        Date            : 2020-11-01

Abstract:
   Segment Routing (SR) allows a headend node to steer a packet flow
   along any path.  Intermediate per-flow states are eliminated thanks
   to source routing.  The headend node steers a flow into an SR Policy.
   The header of a packet steered in an SR Policy is augmented with an
   ordered list of segments associated with that SR Policy.  This
   document details the concepts of SR Policy and steering into an SR
   Policy.


The IETF datatracker status page for this draft is:
https://datatracker.ietf.org/doc/draft-ietf-spring-segment-routing-policy/

There are also htmlized versions available at:
https://tools.ietf.org/html/draft-ietf-spring-segment-routing-policy-09
https://datatracker.ietf.org/doc/html/draft-ietf-spring-segment-routing-policy-09

A diff from the previous version is available at:
https://www.ietf.org/rfcdiff?url2=draft-ietf-spring-segment-routing-policy-09


Please note that it may take a couple of minutes from the time of submission until the htmlized version and diff are available at tools.ietf.org<http://tools.ietf.org>.

Internet-Drafts are also available by anonymous FTP at:
ftp://ftp.ietf.org/internet-drafts/


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

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