[openstack-dev] [neutron][AdvancedServices] Confusion about the solution of the service chaining!

A, Keshava keshava.a at hp.com
Fri Jan 16 08:54:38 UTC 2015

Meathod-2 & Meathod-3 figures  needs to be  interchanged in this description.


From: A, Keshava
Sent: Friday, January 16, 2015 1:03 PM
To: Yuriy.Babenko at telekom.de; OpenStack Development Mailing List (not for usage questions); mestery at mestery.com
Cc: A, Keshava
Subject: RE: [openstack-dev] [neutron][AdvancedServices] Confusion about the solution of the service chaining!

Hi Yuriy Babenko,

Thanks for sharing information.

I also have similar personal thoughts with various options as mentioned below.
Ofcourse the ietf service chaning meathod have lot open question we needs to discuss further. This is percived by NFV working group also.
Please take a look of hybrid meathod (option-3) as mentioned below also.

[cid:image001.png at 01D03198.25168FD0]


a.     This Service-VM will be devleoped by the individuals or it will be part of the commnity.

b.    These Service-VM needs to support, multiple Services A,B,C with in a ServiceVM (vNF1) (because of performance & business scenario)
Then it is required to chain those Services statically, or dnamically  based on the Tennant
Since these VMs are  developed by the individuals, chainnig these Services using Neutron controller will be challenging  ? How can openstack know which are the Services running in that VM ?

There are 3 method to solve this issues.

Meathod-1:  Static Meathod.
Meathod-2 : Dynamic meathod, by adding the Service-chian header.
Meathod-3:  Hybrid. Static + Dynamic meathod.

Meathod-1: Static Meathod.

Community should defind and develop the Standard Service-API-LIB (Like socket layer. Each Service-VM should attach this LIB.
Then using these Service API, Openstack controller (any) can program the Service’s inside the Service-VM according the service Chain.

[cid:image002.png at 01D03198.25168FD0]

Meathod-2: Dynamic Meathod – using the Service Chain Header (IETF).

1.     Service Layer(Archestration Layer) should provide the Service Information (Service, Next/Prev Service, Type, Priotiy, Action .. etc) to Openstack Neutron Controller.

2.     Neutron Controller to program the SFF(Compute node/OVS) to attach all the Service header and each service  IP address .. as per IETF.

3.     Service Header processing should be handled by the Service-VM.

When the Tennant traffic enters the OVS/Compute Nodes, based this information, Service Header needs to be attached.

[cid:image003.png at 01D03198.25168FD0]

Meathod-3: Hybrid  Meathod.

In both of the above meathods, when the packet needs to traver from one Service-VM1(vNF1) to other Service-VM2 (vNF2), it always needs travers as vNF1->SFF1->SFF2->vFN2.
This will be real overhead and adds lot of latency during packet processing
Instead if SFF1 itself identify which SFF has the next service information, we can avoid the packet traversal across OVS .
For this happen each Service-VM should have the complete service information under that controller.

Service VM will get Service Information by Service-APIs: This information will be used to forward the packet to Nest SFF.
Service Header (ietf) will be attached by SFF and will be processed by Service-VM.

[cid:image004.png at 01D03198.25168FD0]

These are my intial thoughts . Please let me know all other thoughts.


From: Yuriy.Babenko at telekom.de<mailto:Yuriy.Babenko at telekom.de> [mailto:Yuriy.Babenko at telekom.de]
Sent: Wednesday, January 14, 2015 9:33 PM
To: openstack-dev at lists.openstack.org<mailto:openstack-dev at lists.openstack.org>; mestery at mestery.com<mailto:mestery at mestery.com>
Subject: Re: [openstack-dev] [neutron][AdvancedServices] Confusion about the solution of the service chaining!

we really like the idea to address the SFC use-case in Neutron working group.
We would be happy to work with the community to work out the way to consume service-chains via standardized neutron-api and provide use-cases and blueprints.
Some initial ideas on the use-case can be found in the following etherpad [1].

Keshava, we think that it would be ideal to have two type of use-cases: one which you described below (“dynamic” one) with the usage of IETF-defined header but also one “static” one where the whole chain can be pre-provisioned by the orchestrator via Neutron-API  w/o usage of classifier and header extensions.
[1] https://etherpad.openstack.org/p/kKIqu2ipN6

Kind regards/Mit freundlichen Grüßen
Yuriy Babenko

Von: A, Keshava [mailto:keshava.a at hp.com]
Gesendet: Donnerstag, 8. Januar 2015 07:19
An: mestery at mestery.com<mailto:mestery at mestery.com>; OpenStack Development Mailing List (not for usage questions)
Betreff: Re: [openstack-dev] [neutron][AdvancedServices] Confusion about the solution of the service chaining!

Yes, I agree with Kyle decision.

First we should define what is Service.
Service is within OpenStack infrastructure ? or Service belongs  to NFV vNF/Service-VM ?
Based on that its Chaining needs to be defined.
If it is chaining of vNFs(which are service/set of services)  then it  will be based on ietf  ‘service header insertion’ at the ingress.
This header will have all the set services  that needs to be executed  across vNFV, will be carried in each of the Tennant packet.

So it requires coordinated effort along with NFV/Telco  working groups.


From: Kyle Mestery [mailto:mestery at mestery.com]
Sent: Wednesday, January 07, 2015 8:25 PM
To: OpenStack Development Mailing List (not for usage questions)
Subject: Re: [openstack-dev] [neutron][AdvancedServices] Confusion about the solution of the service chaining!

On Wed, Jan 7, 2015 at 6:25 AM, <lv.erchun at zte.com.cn<mailto:lv.erchun at zte.com.cn>> wrote:

I want to confirm that how is the project about "Neutron Services Insertion, Chaining, and Steering" going, I found that all the code implementation about service insertion、service chaining and traffic steering list in JunoPlan were Abandoned .


and I also found that we have a new project about GBP and group-based-policy-service-chaining be located at:



so I'm confused with solution of the service chaining.

We are developing the service chaining feature, so we need to know which one is the neutron's choice. Are the blueprints about the service insertion, service chaining and traffic steering list in JunoPlan all Abandoned ?
Service chaining isn't in the plan for Kilo [1], but I expect it to be something we talk about in Vancouver for the Lxxx release. The NFV/Telco group has been talking about this as well. I'm hopeful we can combine efforts and come up with a coherent service chaining solution that solves a handful of useful use cases during Lxxx.


[1] http://specs.openstack.org/openstack/neutron-specs/priorities/kilo-priorities.html



ZTE Information Security Notice: The information contained in this mail (and any attachment transmitted herewith) is privileged and confidential and is intended for the exclusive use of the addressee(s).  If you are not an intended recipient, any disclosure, reproduction, distribution or other dissemination or use of the information contained is strictly prohibited.  If you have received this mail in error, please delete it and notify us immediately.

OpenStack-dev mailing list
OpenStack-dev at lists.openstack.org<mailto:OpenStack-dev at lists.openstack.org>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20150116/b0bee303/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image001.png
Type: image/png
Size: 48691 bytes
Desc: image001.png
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20150116/b0bee303/attachment.png>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image002.png
Type: image/png
Size: 22155 bytes
Desc: image002.png
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20150116/b0bee303/attachment-0001.png>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image003.png
Type: image/png
Size: 21944 bytes
Desc: image003.png
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20150116/b0bee303/attachment-0002.png>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image004.png
Type: image/png
Size: 20331 bytes
Desc: image004.png
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20150116/b0bee303/attachment-0003.png>

More information about the OpenStack-dev mailing list