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

Sumandra Majee <S.Majee@F5.com> Fri, 14 July 2017 20:28 UTC

Return-Path: <prvs=361063d38=S.Majee@f5.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 DE81C12EA52 for <sfc@ietfa.amsl.com>; Fri, 14 Jul 2017 13:28:53 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.302
X-Spam-Level:
X-Spam-Status: No, score=-4.302 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_MED=-2.3, RP_MATCHES_RCVD=-0.001, SPF_HELO_PASS=-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=f5.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 5Bd7I8Xn2QFM for <sfc@ietfa.amsl.com>; Fri, 14 Jul 2017 13:28:51 -0700 (PDT)
Received: from mail15.f5.com (mail15.f5.com [104.219.106.14]) (using TLSv1.2 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 9628A127599 for <sfc@ietf.org>; Fri, 14 Jul 2017 13:28:51 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=f5.com; i=@f5.com; q=dns/txt; s=f5; t=1500064132; x=1531600132; h=from:to:subject:date:message-id:mime-version; bh=9NNZodZ0AH0QoRHWEeF5xUbZHvBGJ6c42qTc34Pl3Ck=; b=MM0cXDgvBLMHQTHILHfSa8JEfHKwaY8/wxzoyWhWws0VDxb++DcfgiEt 4WAtHZm2bS4EnuTcTpUfnuRPkV5y9xbK5Q8QEFjaX5oQ4gIUINOrOvViw ELx6vSa1UG52CTlqhlyup9wANlvuN5QJXIOijCB8Prq8F0wcMOyy1sTqv r42auC4ScMPuoHTpySHs3+VL7k9NLg50QFALeb3d3CBAVqnN2EKuW+JhT h3eHF4uxpnqe54vOmCxmmn1+Za7vII/wrxf7HiqZbDwpNw9yYycit5HxU AFxuCPCf/PEXswgy2Hr2BTpXXk9dgHAjxgRxiSPCCUfFhQHOb5uC9en89 w==;
X-IronPort-AV: E=McAfee;i="5800,7501,8591"; a="14351260"
X-IronPort-AV: E=Sophos; i="5.40,359,1496127600"; d="scan'208,217"; a="14351260"
Received: from sv5ccpems05.olympus.f5net.com (HELO owa.f5.com) ([172.23.209.16]) by mail.f5net.com with ESMTP/TLS/AES256-GCM-SHA384; 14 Jul 2017 13:28:52 -0700
Received: from SV5CCPEMS01.olympus.F5Net.com (172.23.209.12) by SV5CCPEMS05.olympus.F5Net.com (172.23.209.16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.1.845.34; Fri, 14 Jul 2017 13:28:50 -0700
Received: from SV5CCPEMS01.olympus.F5Net.com ([fe80::8cea:a209:8eb7:c2ab]) by SV5CCPEMS01.olympus.F5Net.com ([fe80::8cea:a209:8eb7:c2ab%19]) with mapi id 15.01.0845.036; Fri, 14 Jul 2017 13:28:50 -0700
From: Sumandra Majee <S.Majee@F5.com>
To: Dave Dolson <ddolson@sandvine.com>, James N Guichard <james.n.guichard@huawei.com>, "Kent Leung (kleung)" <kleung@cisco.com>, "sfc@ietf.org" <sfc@ietf.org>
Thread-Topic: [sfc] clarification on Service Path ID for draft-penno-sfc-packet
Thread-Index: AQHS/N/NijlxPpxFQhyonVi4uiBr2Q==
Date: Fri, 14 Jul 2017 20:28:50 +0000
Message-ID: <47E28E62-CE9E-47D4-989C-CFA81E6092B7@f5.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
user-agent: Microsoft-MacOutlook/f.23.0.170610
x-ms-exchange-messagesentrepresentingtype: 1
x-originating-ip: [172.23.251.200]
Content-Type: multipart/alternative; boundary="_000_47E28E62CE9E47D4989CCFA81E6092B7f5com_"
MIME-Version: 1.0
Archived-At: <https://mailarchive.ietf.org/arch/msg/sfc/dfKRMwxP6BPnkZJS1pAeHl8_AM0>
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: Fri, 14 Jul 2017 20:28:54 -0000

Fundamentally it is all about how divide up the SPI+SI space.
However, we like the service path SPI to be unique per direction. If the forward and reverse path reversing the order of traversal then use a bit flag (simple algorithmic) to derive the reverse SPI. This is sort of how our implementation works today.

While we are at SPI bitfield allocation topic, 24 bit is quite a lot, apologies if it has been disused earlier.
I am sure implementers would use many of those bits for various other things, in that case SFF needs to know the MASK flag to separate out forwarding table pointer.

SPI-fwding-tablePtr = SP & MASK

From: sfc <sfc-bounces@ietf.org> on behalf of Dave Dolson <ddolson@sandvine.com>
Date: Friday, July 14, 2017 at 11:50 AM
To: James N Guichard <james.n.guichard@huawei.com>, "Kent Leung (kleung)" <kleung@cisco.com>, "sfc@ietf.org" <sfc@ietf.org>
Subject: Re: [sfc] 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
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