Re: [sfc] clarification on Service Path ID for draft-penno-sfc-packet

<mohamed.boucadair@orange.com> Wed, 26 July 2017 08:39 UTC

Return-Path: <mohamed.boucadair@orange.com>
X-Original-To: sfc@ietfa.amsl.com
Delivered-To: sfc@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id A9399131FC2 for <sfc@ietfa.amsl.com>; Wed, 26 Jul 2017 01:39:07 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.399
X-Spam-Level:
X-Spam-Status: No, score=-5.399 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-2.8, RP_MATCHES_RCVD=-0.001, SPF_PASS=-0.001, UNPARSEABLE_RELAY=0.001] autolearn=ham autolearn_force=no
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 SeIP6eaStc8F for <sfc@ietfa.amsl.com>; Wed, 26 Jul 2017 01:39:04 -0700 (PDT)
Received: from relais-inet.orange.com (mta136.mail.business.static.orange.com [80.12.70.36]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 5FE72131FBE for <sfc@ietf.org>; Wed, 26 Jul 2017 01:39:04 -0700 (PDT)
Received: from opfednr04.francetelecom.fr (unknown [xx.xx.xx.68]) by opfednr26.francetelecom.fr (ESMTP service) with ESMTP id ABAB520796; Wed, 26 Jul 2017 10:39:02 +0200 (CEST)
Received: from Exchangemail-eme2.itn.ftgroup (unknown [xx.xx.31.27]) by opfednr04.francetelecom.fr (ESMTP service) with ESMTP id 79B6440074; Wed, 26 Jul 2017 10:39:02 +0200 (CEST)
Received: from OPEXCLILMA3.corporate.adroot.infra.ftgroup ([fe80::60a9:abc3:86e6:2541]) by OPEXCLILM7C.corporate.adroot.infra.ftgroup ([fe80::8007:17b:c3b4:d68b%19]) with mapi id 14.03.0352.000; Wed, 26 Jul 2017 10:39:02 +0200
From: mohamed.boucadair@orange.com
To: "Kent Leung (kleung)" <kleung@cisco.com>
CC: "sfc@ietf.org" <sfc@ietf.org>
Thread-Topic: [sfc] clarification on Service Path ID for draft-penno-sfc-packet
Thread-Index: AdL8yGj6ijlxPpxFQhyonVi4uiBr2QABYlRQAACi1WAACSYE0ACB4IoAAAAW/OAAAPzOEAG6Xcmw
Date: Wed, 26 Jul 2017 08:39:01 +0000
Message-ID: <787AE7BB302AE849A7480A190F8B93300A013139@OPEXCLILMA3.corporate.adroot.infra.ftgroup>
References: <91d8a4564df24299a24bee2688c9f6a6@XCH-RTP-006.cisco.com> <BF1BE6D99B52F84AB9B48B7CF6F17DA3EF0D62@SJCEML702-CHM.china.huawei.com> <E8355113905631478EFF04F5AA706E98A9060316@wtl-exchp-2.sandvine.com>, <BF1BE6D99B52F84AB9B48B7CF6F17DA3EF0DF8@SJCEML702-CHM.china.huawei.com> <F241AD1D-A007-4AC7-A2B0-19550F1FF52C@cisco.com> <E8355113905631478EFF04F5AA706E98A9064B5C@wtl-exchp-2.sandvine.com> <99da3de545b142f5b9400f808f418fa1@XCH-RTP-006.cisco.com>
In-Reply-To: <99da3de545b142f5b9400f808f418fa1@XCH-RTP-006.cisco.com>
Accept-Language: fr-FR, en-US
Content-Language: fr-FR
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [10.168.234.1]
Content-Type: multipart/alternative; boundary="_000_787AE7BB302AE849A7480A190F8B93300A013139OPEXCLILMA3corp_"
MIME-Version: 1.0
Archived-At: <https://mailarchive.ietf.org/arch/msg/sfc/gSxlpDaM21E0w3zu_gCH9TR8nA4>
Subject: Re: [sfc] clarification on Service Path ID for draft-penno-sfc-packet
X-BeenThere: sfc@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Network Service Chaining <sfc.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/sfc>, <mailto:sfc-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/sfc/>
List-Post: <mailto:sfc@ietf.org>
List-Help: <mailto:sfc-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/sfc>, <mailto:sfc-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 26 Jul 2017 08:39:08 -0000

Hi Kent,

FWIW, there was an attempt to define this term in https://tools.ietf.org/html/draft-boucadair-sfc-requirements-06. Below an excerpt from that draft:

==
   o  Service Function Loop: If a Service Function Chain is structured
      to not invoke Service Functions multiple times, a loop is the
      error that occurs when the same Service Function is invoked
      several times when handling data bound to that Service Function
      Chain.  In other words, a loop denotes an error that occurs when a
      packet handled by a Service Function, forwarded onwards, and
      arrives once again at that Service Function while this is not
      allowed by the Service Function Chain it is bound to.

   o  Service Function Spiral: denotes a Service Function Chain in which
      data is handled by a Service Function, forwarded onwards, and
      arrives once again at that Service Function.

      *  Note that some Service Functions support built-in functions to
         accommodate spirals; these service-specific functions may
         require that the data received in a spiral should differ in a
         way that will result in a different processing decision than
         the original data.  This document does not make such
         assumption.

      *  A Service Function Chain may involve one or more Service
         Function Spirals.

      *  Unlike Service Function loop, spirals are not considered as
         errors.
==

Cheers,
Med

De : sfc [mailto:sfc-bounces@ietf.org] De la part de Kent Leung (kleung)
Envoyé : lundi 17 juillet 2017 15:37
À : Dave Dolson; Roberta Maglione (robmgl); James N Guichard
Cc : sfc@ietf.org
Objet : Re: [sfc] clarification on Service Path ID for draft-penno-sfc-packet

Why can't there be stats for per SPI and more granular stats for per SPI/SI? They seem to serve different purposes. The former is providing counters for all flows in each service path. The latter is provide counters for all flows served at each hop in the service path.

Can you explain the "spiral" scenario and how that pertains to usefulness of having per service path stats? Thanks.

Kent


From: Dave Dolson [mailto:ddolson@sandvine.com]
Sent: Monday, July 17, 2017 3:01 PM
To: Roberta Maglione (robmgl) <robmgl@cisco.com<mailto:robmgl@cisco.com>>; James N Guichard <james.n.guichard@huawei.com<mailto:james.n.guichard@huawei.com>>
Cc: Kent Leung (kleung) <kleung@cisco.com<mailto:kleung@cisco.com>>; sfc@ietf.org<mailto:sfc@ietf.org>
Subject: RE: [sfc] clarification on Service Path ID for draft-penno-sfc-packet

Strictly, stats should be per SPI and SI, in order to support the so-called spiral.
But I can see how folks might find the lazy implementation to be useful.

From: Roberta Maglione (robmgl) [mailto:robmgl@cisco.com]
Sent: Monday, July 17, 2017 11:00 AM
To: James N Guichard
Cc: Dave Dolson; Kent Leung (kleung); sfc@ietf.org<mailto:sfc@ietf.org>
Subject: Re: [sfc] clarification on Service Path ID for draft-penno-sfc-packet

I agree on the operational aspect: having different SPI's for each direction simplifies the troubleshooting procedures, as statistics on the packets counters for each direction on each SF, can be displayed just based on SPI.
Regards,
Roberta

Inviato da iPad

Il giorno 15 lug 2017, alle ore 01:09, James N Guichard <james.n.guichard@huawei.com<mailto:james.n.guichard@huawei.com>> ha scritto:
Yes understood but I was assuming no manipulation of the SI and my point was more from an operational perspective; if I use the same path ID in both directions then I cannot immediately tell in which direction the packets are flowing unless I go one step deeper and look at the SI leading to a correlation of SPI + SI to be able to figure out my traffic matrix. Not so if the SPI is uni-directional.

Jim

From: Dave Dolson [mailto:ddolson@sandvine.com]
Sent: Friday, July 14, 2017 2:51 PM
To: James N Guichard <james.n.guichard@huawei.com<mailto:james.n.guichard@huawei.com>>; Kent Leung (kleung) <kleung@cisco.com<mailto:kleung@cisco.com>>; sfc@ietf.org<mailto:sfc@ietf.org>
Subject: RE: clarification on Service Path ID for draft-penno-sfc-packet

There is not actually forwarding ambiguity, since SFF forwarding depends on *both* SPI and SI.
So for example, there is no ambiguity in forwarding to use SI in the range [0,127] of up-link and range [128,255] for down-link, on the same SPI.
The limitation is ~127 SFs per path instead of ~255.

As I see it, Kent's question is one of aesthetics. Do folks like the same SPI used for two directions?

Personally, I find use of a single SPI to be more elegant,  consuming only one path ID instead of two. (section 5.4.1).
It may make debugging easier as well.

Also, for what it's worth, we demonstrated this method of section 5.4.1 at a previous IETF hackathon.

-Dave


From: sfc [mailto:sfc-bounces@ietf.org] On Behalf Of James N Guichard
Sent: Friday, July 14, 2017 2:25 PM
To: Kent Leung (kleung); sfc@ietf.org<mailto:sfc@ietf.org>
Subject: Re: [sfc] clarification on Service Path ID for draft-penno-sfc-packet

Hi Kent,

[personal opinion ...] I have always assumed that the service path ID would be uni-directional given that it would be difficult to avoid collision in all forwarding scenarios. If you look at a basic SFC a-b-c and the service index is set to 255 at the classifiers a & c (which imho will be the normal practice) then at b you would have a conflict if the same service path ID is used in both directions.

Jim

From: sfc [mailto:sfc-bounces@ietf.org] On Behalf Of Kent Leung (kleung)
Sent: Friday, July 14, 2017 1:58 PM
To: sfc@ietf.org<mailto:sfc@ietf.org>
Subject: [sfc] clarification on Service Path ID for draft-penno-sfc-packet

Hi. We are working on a revision for this draft. There were 4 proposed solution options in section 5. During some discussions, most folks seem to favor the use of algorithmic method in section 5.4. However, there are 2 sub-options. One is based on same Service Path ID and using Service Index to determine flow direction (sect. 5.4.1). The other is based on setting high order bit on Serve Path ID, which determines flow direction (sect. 5.4.2). There are mixed opinions. One reason is that there may be the assumption the Service Path ID is uni-directional. No explicit wording of that nature has been encountered in the RFCs, maybe we missed something?

If Serve Path ID is required to be uni-directional, then the answer is easy (=> 5.4.2). We would like to solicit WG comments to get rough consensus and revised the next version with that solution. This problem is critical to address for Service Function that generate packet in reverse direction, especially security service functions as mentioned in draft-wang-sfc-ns-use-cases.

Thanks.

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