RE: [spring] Per segment service instructions

Ron Bonica <rbonica@juniper.net> Mon, 16 September 2019 16:44 UTC

Return-Path: <rbonica@juniper.net>
X-Original-To: ipv6@ietfa.amsl.com
Delivered-To: ipv6@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 33FD4120052; Mon, 16 Sep 2019 09:44:20 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.7
X-Spam-Level:
X-Spam-Status: No, score=-2.7 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=juniper.net
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 GL8NkSkiptFE; Mon, 16 Sep 2019 09:44:16 -0700 (PDT)
Received: from mx0a-00273201.pphosted.com (mx0a-00273201.pphosted.com [208.84.65.16]) (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 81E6E120026; Mon, 16 Sep 2019 09:44:16 -0700 (PDT)
Received: from pps.filterd (m0108156.ppops.net [127.0.0.1]) by mx0a-00273201.pphosted.com (8.16.0.42/8.16.0.42) with SMTP id x8GGEcfV025252; Mon, 16 Sep 2019 09:44:15 -0700
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=juniper.net; h=from : to : cc : subject : date : message-id : references : in-reply-to : content-type : mime-version; s=PPS1017; bh=uC44eZ8Hnvy6OfR3m1cChQG3DtULdQUG97MS/00r950=; b=n0RDZQVsoF4QZizGWME9XyBl3YfY2zvqXo7T6QOyRgdQUBxOeRgi7k1TyWrchEaZyoPx 7jWIjZIUIcrPo/lAj1LMeuixnkOv6F0M7GuqBVgidmmEmVhNWRBhkTS5GmdbwgdqqBPR FT+TLUESnUG4wt1v+fmpIRKBLn3dUP0y9EUaLJPfrRKk1gfWOM+nCr05qVyJIP8u+E8U fiNZM6swEoeSeioq+EGAItz2ijam+nDTnvZKlys+C25oProkjRxK6/PBLhI1BCv2Zkt/ UfcM4+PiceRjK4PeEdxSo0IvgezHAfFgl69QmV1x5Z6cYqnemQh2DA/gwDrgTcqwl9Kz Cg==
Received: from nam01-bn3-obe.outbound.protection.outlook.com (mail-bn3nam01lp2054.outbound.protection.outlook.com [104.47.33.54]) by mx0a-00273201.pphosted.com with ESMTP id 2v0y7p33tm-2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Mon, 16 Sep 2019 09:44:15 -0700
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=fFPRxeR7MtGo+0515Kn0JLEYBCMJmJ39pj7Ae5D+rB5YQua1lDpbnxOGmTsUrlszkfI90ZZ6TYWU2R6J6cp2Nyn8YXKrwuGTMNuHNzPn4y2NI9o9P/LjrSG1aOUJsoeKf2X3PyaFkEi2Jf/XWbqZXUKNE88a5RwHXnn6efsfl0tDzvHwO07nNCQ5f/OL6NCIzPRoB9oMkAbxkdoV5SDOh3PLuPf5ujPiT9VaCRkTAxN8QqiwrRW+weqfFhomJy52vIxXllKHkQBwPxwoZg1H6Cly1oV2ivmP5gug06Y7iyTFb7KmbfMBSJJFKCbJd7r9KWH90ZX1ZHMxwiFBBPRT/g==
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=uC44eZ8Hnvy6OfR3m1cChQG3DtULdQUG97MS/00r950=; b=TajKup5w1vqd6UqMcKQmg28ula+3X5kXv+AKeBdP8NsxSQQKn7FFHgoq+27ZgMSMlDABfVeggZN+ytAwiRCBn09BN5LwrhINUpL1hi22zJdoF3iU60MeTnPOxGnfHFDFMYUYGHbeRFwXjRKwYFs+YyrHHxpJpHYWR5ksRBr1b2V75kpuDsRZsX2PIlazpYJDKCmbSrJ2FEN7IcS1lZ1WMeFEJR0AKt4KKntULnRD1V/mi4AI2MtgWRyzI2RjppSc2MzY0VXk/8bhI6Ru4729ikLv4uKx1iyy1BMp0FGPFZe9u7ImNGrDmXMntcykpBxhjIRbqdaMjJGaun3IQgoXWA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=juniper.net; dmarc=pass action=none header.from=juniper.net; dkim=pass header.d=juniper.net; arc=none
Received: from BYAPR05MB5463.namprd05.prod.outlook.com (20.177.185.144) by BYAPR05MB6277.namprd05.prod.outlook.com (20.178.48.80) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2284.10; Mon, 16 Sep 2019 16:44:11 +0000
Received: from BYAPR05MB5463.namprd05.prod.outlook.com ([fe80::f4f2:f284:d49a:890a]) by BYAPR05MB5463.namprd05.prod.outlook.com ([fe80::f4f2:f284:d49a:890a%4]) with mapi id 15.20.2284.009; Mon, 16 Sep 2019 16:44:11 +0000
From: Ron Bonica <rbonica@juniper.net>
To: Tarek Saad <tsaad.net@gmail.com>, "EXT - daniel.bernier@bell.ca" <daniel.bernier@bell.ca>, Robert Raszuk <robert@raszuk.net>
CC: SPRING WG <spring@ietf.org>, 6man <6man@ietf.org>
Subject: RE: [spring] Per segment service instructions
Thread-Topic: [spring] Per segment service instructions
Thread-Index: AQHVarm81EQgA5AggkOfLsSOqmefjacuefSAgAAMTSA=
Content-Class:
Date: Mon, 16 Sep 2019 16:44:11 +0000
Message-ID: <BYAPR05MB54636297CCDC1E82380648F6AE8C0@BYAPR05MB5463.namprd05.prod.outlook.com>
References: <5971B5F4-74C1-4DD0-BBD2-D76BE105532E@bell.ca> <BYAPR19MB3415DA7196E45FF52A740ED3FC8C0@BYAPR19MB3415.namprd19.prod.outlook.com>
In-Reply-To: <BYAPR19MB3415DA7196E45FF52A740ED3FC8C0@BYAPR19MB3415.namprd19.prod.outlook.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
msip_labels: MSIP_Label_0633b888-ae0d-4341-a75f-06e04137d755_Enabled=True; MSIP_Label_0633b888-ae0d-4341-a75f-06e04137d755_SiteId=bea78b3c-4cdb-4130-854a-1d193232e5f4; MSIP_Label_0633b888-ae0d-4341-a75f-06e04137d755_Owner=rbonica@juniper.net; MSIP_Label_0633b888-ae0d-4341-a75f-06e04137d755_SetDate=2019-09-16T16:44:09.9006805Z; MSIP_Label_0633b888-ae0d-4341-a75f-06e04137d755_Name=Juniper Business Use Only; MSIP_Label_0633b888-ae0d-4341-a75f-06e04137d755_Application=Microsoft Azure Information Protection; MSIP_Label_0633b888-ae0d-4341-a75f-06e04137d755_ActionId=0688069e-8514-4e62-b599-6168071390a4; MSIP_Label_0633b888-ae0d-4341-a75f-06e04137d755_Extended_MSFT_Method=Automatic
dlp-product: dlpe-windows
dlp-version: 11.2.0.14
dlp-reaction: no-action
x-originating-ip: [66.129.241.10]
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: d6cea118-3616-4acd-8fd4-08d73ac51a3f
x-ms-office365-filtering-ht: Tenant
x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(5600167)(711020)(4605104)(1401327)(4618075)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(2017052603328)(7193020); SRVR:BYAPR05MB6277;
x-ms-traffictypediagnostic: BYAPR05MB6277:
x-ms-exchange-purlcount: 2
x-ld-processed: bea78b3c-4cdb-4130-854a-1d193232e5f4,ExtAddr
x-microsoft-antispam-prvs: <BYAPR05MB627747069B78345B274805F8AE8C0@BYAPR05MB6277.namprd05.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:3383;
x-forefront-prvs: 0162ACCC24
x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(4636009)(376002)(136003)(39860400002)(366004)(346002)(396003)(199004)(53754006)(189003)(25786009)(76176011)(66946007)(66476007)(76116006)(66446008)(64756008)(790700001)(54896002)(52536014)(186003)(2906002)(66556008)(33656002)(256004)(6116002)(3846002)(9686003)(99286004)(55016002)(54906003)(26005)(6246003)(6306002)(236005)(8676002)(53936002)(486006)(5660300002)(7696005)(110136005)(66066001)(446003)(4326008)(11346002)(476003)(316002)(102836004)(53546011)(6506007)(6436002)(229853002)(86362001)(8936002)(74316002)(14454004)(71200400001)(71190400001)(478600001)(81166006)(81156014)(7736002); DIR:OUT; SFP:1102; SCL:1; SRVR:BYAPR05MB6277; H:BYAPR05MB5463.namprd05.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1;
received-spf: None (protection.outlook.com: juniper.net does not designate permitted sender hosts)
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam-message-info: pVpLdUpiT3reZaPrFnZmWdIp9jwkssb1oDo17Or80GyOJMTZBZiFfMy2+Qt6fP0MmRlWVlYPiFhcLW6I47E4gH7HLX8F4G1IWKp2WausDlTUk4/XzD3/mEoyYeg59rilkkhvhC4NQTG8Mct8+Fhklj5AX2eCscfuX17f3hZ5prbsOeNA/xDOpmOxav5vZgf0kEzgvMmqQ0MhxYvL2HbtFCZQOn67I9XphRrtVYLVc9AYtXXG6aZLDzWaRRINFvFRf4WwaU6/7zBFldmltte6+UCANqSSrjL047gPkHSLjKXhaPRsrE3Logdkt/tiza1+1WFhyDi0PiWU/DAyb+8mDRzn7QvKMQfsB4QAikWpFVvzeyz+ypUl4eD1GxcQAjYyWBYXEnRxARJsdc5XG4rFn2MlfxCAPHzztGGGx5GlQDg=
x-ms-exchange-transport-forked: True
Content-Type: multipart/alternative; boundary="_000_BYAPR05MB54636297CCDC1E82380648F6AE8C0BYAPR05MB5463namp_"
MIME-Version: 1.0
X-OriginatorOrg: juniper.net
X-MS-Exchange-CrossTenant-Network-Message-Id: d6cea118-3616-4acd-8fd4-08d73ac51a3f
X-MS-Exchange-CrossTenant-originalarrivaltime: 16 Sep 2019 16:44:11.8408 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: bea78b3c-4cdb-4130-854a-1d193232e5f4
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: 5PwZ9k6W/bvZIgvblJlNjLTjGk37ZIr2UJfFmdYwk/WUTtF5vjS4tQWM8IYYxezhVcYbd9dEi+prCTqgRYJXzQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR05MB6277
X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.70,1.0.8 definitions=2019-09-16_07:2019-09-11,2019-09-16 signatures=0
X-Proofpoint-Spam-Details: rule=outbound_spam_notspam policy=outbound_spam score=0 phishscore=0 mlxlogscore=999 suspectscore=0 spamscore=0 adultscore=0 mlxscore=0 priorityscore=1501 bulkscore=0 malwarescore=0 lowpriorityscore=0 clxscore=1015 impostorscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-1908290000 definitions=main-1909160167
Archived-At: <https://mailarchive.ietf.org/arch/msg/ipv6/cJfvMhPNDHsT3hq-9Fgq4geyMCs>
X-BeenThere: ipv6@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "IPv6 Maintenance Working Group \(6man\)" <ipv6.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/ipv6>, <mailto:ipv6-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/ipv6/>
List-Post: <mailto:ipv6@ietf.org>
List-Help: <mailto:ipv6-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ipv6>, <mailto:ipv6-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 16 Sep 2019 16:44:20 -0000

Good idea!!




Juniper Business Use Only
From: Tarek Saad <tsaad.net@gmail.com>
Sent: Monday, September 16, 2019 11:59 AM
To: EXT - daniel.bernier@bell.ca <daniel.bernier@bell.ca>; Ron Bonica <rbonica@juniper.net>; Robert Raszuk <robert@raszuk.net>
Cc: SPRING WG <spring@ietf.org>; 6man <6man@ietf.org>
Subject: Re: [spring] Per segment service instructions

Hi all,

A possible way to avoid domain wide scope of PSSI, would be to encode a per node ID within the PSSI (per node namespace of Service IDs).
This allows the node parsing the DOH to identify PSSI(s) that needs to be invoked locally and to resolve the Service ID within its node scope. The per node ID can be a SRV6+ short SID that is instantiated locally on the node.

So, a PSSI = Short-SID.SE1

DOH can contain:
Short-SID1.SE1
Short-SID2.SE2
Etc.

Regards,
Tarek



From: spring <spring-bounces@ietf.org<mailto:spring-bounces@ietf.org>> on behalf of "Bernier, Daniel" <daniel.bernier@bell.ca<mailto:daniel.bernier@bell.ca>>
Date: Saturday, September 14, 2019 at 1:03 AM
To: Ron Bonica <rbonica=40juniper.net@dmarc.ietf.org<mailto:rbonica=40juniper.net@dmarc.ietf.org>>, Robert Raszuk <robert@raszuk.net<mailto:robert@raszuk.net>>
Cc: SPRING WG <spring@ietf.org<mailto:spring@ietf.org>>, 6man <6man@ietf.org<mailto:6man@ietf.org>>
Subject: Re: [spring] Per segment service instructions

Hi Ron,

If PSSI provide non-routing services such as SE1 from Robert's example which offers DPI, FW and Packet Replication then, I need a domain-wide PSSI defining DPI + FW + Sampling but if somewhere else in my network I just need FW, then I need another domain-wide PSSI for only FW.
In that model, I will end up with and endless list of permutations which must be agreed upon to ensure interop (i.e. vendor A cannot use a PSSI X for FW while vendor B think's its DPI).
Thx
Dan B



On 2019-09-13, 2:10 PM, "ipv6 on behalf of Ron Bonica" <ipv6-bounces@ietf.org<mailto:ipv6-bounces@ietf.org> on behalf of rbonica=40juniper.net@dmarc.ietf.org<mailto:rbonica=40juniper.net@dmarc.ietf.org>> wrote:

Robert,

In your email, you ask how I would solve a TE problem with a Per Segment Service Instruction (PSSI).. In SRv6+:


-          The CRH and the SIDs that it contains are used to solve TE problems

-          The PSSI is used too provide non-routing services (e.g., firewalling, sampling, DPI)

This leaves the following questions to be answered:


-          How would I solve the TE problem that you describe in your email?

-          Given another example, explain how PSSI works?

Which question would you like me to tackle first?

                                                                    Ron


From: Robert Raszuk <robert@raszuk.net<mailto:robert@raszuk.net>>
Sent: Friday, September 13, 2019 8:45 AM
To: Ron Bonica <rbonica@juniper.net<mailto:rbonica@juniper.net>>
Cc: SPRING WG <spring@ietf.org<mailto:spring@ietf.org>>; 6man <6man@ietf.org<mailto:6man@ietf.org>>
Subject: Per segment service instructions

Dear Ron,

I have read yet one more draft from the SRv6+ package defining another Destination Option type - this time Per Segment Service Instruction(s) described in draft-bonica-6man-seg-end-opt

I have one technical question regarding it.

Imagine I have following topology - drawing only what is relevant to the question:

PE1 - - P1 - - SE1 - - P2 - -  SE2 - - P3 - - PE2

When packet enters the network PE1 is instructed to program my flow A to execute following following functions on Segment End 1 (SE1) and Segment End 2 (SE2):

SE1 - When packet is routed out of SE1 consider only interfaces of bw 10G and up

SE2 - When packet is routed out of SE2 make sure that path to segment end node is no more then 2 hops away.

>From reading the draft I think the answer is that you mandated the segment end functions in SRv6+ to have domain-wide significance such that the function itself contains not only the instruction but also as it is of domain-wide significance the location of the instruction to execute it on.

So far so good ... Flow-A get's CRH and PSSI encoding the above requirement.

When packet enters SE1 Destination Options preceding RH is read and PSSIs are attempted to get executed ! Both instructions are tried but only one is known so only one get's executed on SE1. Same story on SE2.

Not sure if eveyone would be ok with such model to read and attempt to execute instructions which are not for a given end segment but let's assume some may accept it.

But now how unfortunate it may sound PE1 is receving the flow-B and for flow B the requirements are opposite:

SE1 - When packet is routed out of SE1 make sure that path to segment end node is no more then 2 hops away.

SE2 - When packet is routed out of SE2 consider only interfaces of bw 10G and up.

Well what do you - simple - you allocate another two domain wide functions and encode it in the packet at PSSI DOH on PE1.

But if my description matches the plan you now end up with per flow !!! state in the network which is the price to pay for splitting SIDs with its functions into completely different headers.

I don't know about others but I think we went in the past via multiple attempts to put any per flow state into the large network and it all failed when faced scale.

Also SR specifically in its architecture RFC8402 says that segment routing is "maintaining per-flow state only at the ingress node(s) to the SR domain."

Kind regards,
Robert.



Juniper Business Use Only