Re: [sfc] SFC as an IP or UDP application, pros and cons?

<mohamed.boucadair@orange.com> Wed, 26 March 2014 12:23 UTC

Return-Path: <mohamed.boucadair@orange.com>
X-Original-To: sfc@ietfa.amsl.com
Delivered-To: sfc@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id DFB2C1A0084 for <sfc@ietfa.amsl.com>; Wed, 26 Mar 2014 05:23:50 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -0.948
X-Spam-Level:
X-Spam-Status: No, score=-0.948 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, FREEMAIL_FROM=0.001, HELO_EQ_FR=0.35, HTML_MESSAGE=0.001, J_CHICKENPOX_22=0.6, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001, UNPARSEABLE_RELAY=0.001] autolearn=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 9vGw7Un74v49 for <sfc@ietfa.amsl.com>; Wed, 26 Mar 2014 05:23:46 -0700 (PDT)
Received: from relais-inet.francetelecom.com (relais-ias244.francetelecom.com [80.12.204.244]) by ietfa.amsl.com (Postfix) with ESMTP id D08821A01A5 for <sfc@ietf.org>; Wed, 26 Mar 2014 05:23:45 -0700 (PDT)
Received: from omfeda05.si.francetelecom.fr (unknown [xx.xx.xx.198]) by omfeda13.si.francetelecom.fr (ESMTP service) with ESMTP id 6806719036A; Wed, 26 Mar 2014 13:23:43 +0100 (CET)
Received: from PUEXCH61.nanterre.francetelecom.fr (unknown [10.101.44.32]) by omfeda05.si.francetelecom.fr (ESMTP service) with ESMTP id 47BDF180042; Wed, 26 Mar 2014 13:23:43 +0100 (CET)
Received: from PUEXCB1B.nanterre.francetelecom.fr ([10.101.44.11]) by PUEXCH61.nanterre.francetelecom.fr ([10.101.44.32]) with mapi; Wed, 26 Mar 2014 13:23:43 +0100
From: mohamed.boucadair@orange.com
To: "Reinaldo Penno (repenno)" <repenno@cisco.com>, Lucy yong <lucy.yong@huawei.com>, Dave Dolson <ddolson@sandvine.com>, "sfc@ietf.org" <sfc@ietf.org>
Date: Wed, 26 Mar 2014 13:23:42 +0100
Thread-Topic: [sfc] SFC as an IP or UDP application, pros and cons?
Thread-Index: Ac9IZXak5H2k6D+pTHSDqVxjpTMBQAAAFn7QAAGnooAAAH8L8AAAfg8Q///n04D//u00kA==
Message-ID: <94C682931C08B048B7A8645303FDC9F36F528DEB91@PUEXCB1B.nanterre.francetelecom.fr>
References: <2691CE0099834E4A9C5044EEC662BB9D4535F337@dfweml701-chm.china.huawei.com> <CF574684.A63B%repenno@cisco.com>
In-Reply-To: <CF574684.A63B%repenno@cisco.com>
Accept-Language: fr-FR
Content-Language: fr-FR
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
acceptlanguage: fr-FR
Content-Type: multipart/alternative; boundary="_000_94C682931C08B048B7A8645303FDC9F36F528DEB91PUEXCB1Bnante_"
MIME-Version: 1.0
X-PMX-Version: 6.0.3.2322014, Antispam-Engine: 2.7.2.2107409, Antispam-Data: 2014.3.25.173915
Archived-At: http://mailarchive.ietf.org/arch/msg/sfc/zJWRtLBiEPIVmF0NQ7FBChZ2Gqw
Subject: Re: [sfc] SFC as an IP or UDP application, pros and cons?
X-BeenThere: sfc@ietf.org
X-Mailman-Version: 2.1.15
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: <http://www.ietf.org/mail-archive/web/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 Mar 2014 12:23:51 -0000

Hi Reinaldo, all,

In addition to these two ones, other alternatives are discussed in http://tools.ietf.org/html/draft-boucadair-sfc-design-analysis-02#section-5

   5<http://tools.ietf.org/html/draft-boucadair-sfc-design-analysis-02#section-5>.  Format of the Service Function Chaining Header  . . . . . . .   6<http://tools.ietf.org/html/draft-boucadair-sfc-design-analysis-02#page-6>
     5.1<http://tools.ietf.org/html/draft-boucadair-sfc-design-analysis-02#section-5.1>.  Format 1: Single Marking Code Point . . . . . . . . . . .   7<http://tools.ietf.org/html/draft-boucadair-sfc-design-analysis-02#page-7>
     5.2<http://tools.ietf.org/html/draft-boucadair-sfc-design-analysis-02#section-5.2>.  Format 2: Marking Code Point & Profile Index  . . . . . .   7<http://tools.ietf.org/html/draft-boucadair-sfc-design-analysis-02#page-7>
     5.3<http://tools.ietf.org/html/draft-boucadair-sfc-design-analysis-02#section-5.3>.  Format 3: Explicit Route List . . . . . . . . . . . . . .   8<http://tools.ietf.org/html/draft-boucadair-sfc-design-analysis-02#page-8>
     5.4<http://tools.ietf.org/html/draft-boucadair-sfc-design-analysis-02#section-5.4>.  Format 4: Compact Explicit Route List . . . . . . . . . .   9<http://tools.ietf.org/html/draft-boucadair-sfc-design-analysis-02#page-9>

Cheers;
Med

De : sfc [mailto:sfc-bounces@ietf.org] De la part de Reinaldo Penno (repenno)
Envoyé : mardi 25 mars 2014 22:56
À : Lucy yong; Dave Dolson; sfc@ietf.org
Objet : Re: [sfc] SFC as an IP or UDP application, pros and cons?

Hi,

There are several solution to this problem. Some of them implementation specific, others more elegant.

1 - One of the more elegant ones is to use the Service Index to determine the next service function instance.  It makes for a completely stateless solution (code wise).

2 - Another option is from a coding perspective you can just keep more state in your SN/SFF while you process the packet and determine what is the "next" service.

But irrespective, the SN needs to know the Path ID and the list of SFIs internal to its node. This provisioning can happen in a variety of ways, I implemented with RESTconf and Netconf.

As far as UDP/IP vs.IP, I give preference to UDP/IP. If you have a fixed port over UDP in which to receive/send packets:

- You can have your entire dataplane in userpace and use a variety of programming languages.
- You do not need raw packet access to pull/send packets. Therefore no root support.
- UDP can traverse non-SFC aware middlexboxes. Or you can use any of the available methods( TURN, STUN, etc).  If you encap in something else other than IP/UDP the applicability of SFC will be considerably diminished.Just check STCP and its problem on getting adopted given middlexboxes  not recognizing its protocol number.
- It jives with other IETF work in the areas of metadata and transport services (say, TAPS).

regards,

Reinaldo



From: Lucy yong <lucy.yong@huawei.com<mailto:lucy.yong@huawei.com>>
Date: Tuesday, March 25, 2014 at 2:25 PM
To: Dave Dolson <ddolson@sandvine.com<mailto:ddolson@sandvine.com>>, "sfc@ietf.org<mailto:sfc@ietf.org>" <sfc@ietf.org<mailto:sfc@ietf.org>>
Subject: Re: [sfc] SFC as an IP or UDP application, pros and cons?

Hi Dave,

If a service forwarder point connects more than one SF instances that belong to the same SFC, how can one Path ID determine which SF instances is the next? If you draw a service chain path with many SF instances, you can easily see, if Path ID represents that path, service forwarder needs to use previous SF on the path to position the next SF on that path.

Lucy

From: Dave Dolson [mailto:ddolson@sandvine.com]
Sent: Tuesday, March 25, 2014 4:10 PM
To: Lucy yong; sfc@ietf.org<mailto:sfc@ietf.org>
Subject: RE: SFC as an IP or UDP application, pros and cons?

Why do you think the previous SF IP address is required to determine the next SF IP address? Why is the Path ID not sufficient information?


From: Lucy yong [mailto:lucy.yong@huawei.com]
Sent: Tuesday, March 25, 2014 4:56 PM
To: Dave Dolson; sfc@ietf.org<mailto:sfc@ietf.org>
Subject: RE: SFC as an IP or UDP application, pros and cons?

In this solution, service forwarder and SF instance are separated entities. Service forwarder needs Path ID and previous SF IP address to uniquely identify the next SF IP address.

Lucy

From: Dave Dolson [mailto:ddolson@sandvine.com]
Sent: Tuesday, March 25, 2014 3:21 PM
To: Lucy yong; sfc@ietf.org<mailto:sfc@ietf.org>
Subject: RE: SFC as an IP or UDP application, pros and cons?

I do not see why source IP address (previous SF) would be required to look up the next SF. The path ID should be sufficient to determine the next SF.





From: sfc [mailto:sfc-bounces@ietf.org] On Behalf Of Lucy yong
Sent: Tuesday, March 25, 2014 4:02 PM
To: sfc@ietf.org<mailto:sfc@ietf.org>
Subject: [sfc] SFC as an IP or UDP application, pros and cons?

Hi,

There are many ways to implement SFCs. However, one of our goals in standard is to develop a solution that is simple and less cost for venders and service providers.  Other goals are that the solution can apply to common and majority use cases.

If we implement SFC as an IP or UDP/IP application, i.e. once traffic is classified by the classification, it adds SFC header and IP header (outer) on the packets (UDP header too in latter case), and send such packets as a regular IP packet. The src IP of outer header can be classification IP address, and dst IP can be next SF Instance IP address. Many transport networks can carry IP traffic and route IP packets based on dst IP address.  We only need to request a new IP protocol type for SFC. At the service forwarder point, it can look up next SF IP address based on Path ID in SFC header and src IP address (previous SF) on the packet.  A SF also forwards the packet with SFC header as an IP packet and fills its IP address as src IP and the service forwarder point IP address as the dst IP on the packet.

This solution works for either SFC as an IP application or UDP/IP application, which one is more proper from SF and service forwarder point?

This solution seems simple to me and only need Path ID in SFC header for steering traffic through the SFC path. But like to see others' opinion on this solution, pros and cons.

Thanks,
Lucy