API's and implementations to support Service Function Chaining in Neutron.
 
 
Go to file
Takashi Kajinami cdde6a9ba2 Remove usage of LBaaS constants
Neutron LBaaS was retired some time ago in favor of Octavia and we no
longer expect any users may be using it.

Change-Id: I0f75f44f29db2a55d708991c8f754caf671fca70
2023-11-30 11:04:27 +09:00
api-ref/source Switch to newer openstackdocstheme and reno versions 2020-05-23 17:46:07 +02:00
devstack Use opendev repository 2019-06-17 09:27:01 +00:00
doc Doc: refresh sfc install details 2023-05-30 10:34:16 +02:00
etc doc: Add policy reference 2019-02-19 14:11:12 +00:00
networking_sfc Remove usage of LBaaS constants 2023-11-30 11:04:27 +09:00
playbooks Switch functional job to Zuulv3 syntax 2019-06-11 16:24:17 +02:00
releasenotes Update master for stable/2023.2 2023-09-14 01:24:42 +00:00
tools Switch functional job to Zuulv3 syntax 2019-06-11 16:24:17 +02:00
zuul.d py311: change to py311 in weekly periodic queue 2023-09-28 09:28:56 +02:00
.coveragerc Realizing SFC (1b/5): Adding additional tox and test settings. 2015-10-09 02:45:39 +09:00
.gitignore doc: Add policy reference 2019-02-19 14:11:12 +00:00
.gitreview OpenDev Migration Patch 2019-04-19 19:41:50 +00:00
.pylintrc Upgrade pylint to a version that works with python3 2019-01-08 06:24:12 +00:00
.stestr.conf Fix unit tests and test configuration 2017-09-13 16:31:22 +02:00
CONTRIBUTING.rst Update documentation links 2017-07-18 16:46:21 +02:00
HACKING.rst Use opendev repository 2019-06-17 09:27:01 +00:00
LICENSE Initial Cookiecutter dump 2015-06-17 16:35:35 -07:00
MANIFEST.in Include alembic migrations in module 2016-09-26 11:57:45 +01:00
README.rst Use opendev repository 2019-06-17 09:27:01 +00:00
bindep.txt Add libpq-dev to bindep.txt to fix gate error 2019-07-05 13:05:05 +00:00
requirements.txt Remove the old CLI code from sfc and fix issuse due to RBAC changes 2023-05-16 11:54:33 +00:00
setup.cfg Remove the old CLI code from sfc and fix issuse due to RBAC changes 2023-05-16 11:54:33 +00:00
setup.py Cleanup py27 support 2020-04-17 22:29:51 +02:00
test-requirements.txt Use unittest.mock instead of mock 2021-03-01 23:27:16 +05:30
tox.ini tox4: Add ignore_basepython_conflict = True to tox.ini 2023-01-09 11:41:06 +01:00

README.rst

Service Function Chaining Extension for OpenStack Networking

Team and repository tags

image

Service Function Chaining API

This project provides APIs and implementations to support Service Function Chaining in Neutron.

Service Function Chaining is a mechanism for overriding the basic destination based forwarding that is typical of IP networks. It is conceptually related to Policy Based Routing in physical networks but it is typically thought of as a Software Defined Networking technology. It is often used in conjunction with security functions although it may be used for a broader range of features. Fundamentally SFC is the ability to cause network packet flows to route through a network via a path other than the one that would be chosen by routing table lookups on the packet's destination IP address. It is most commonly used in conjunction with Network Function Virtualization when recreating in a virtual environment a series of network functions that would have traditionally been implemented as a collection of physical network devices connected in series by cables.

A very simple example of a service chain would be one that forces all traffic from point A to point B to go through a firewall even though the firewall is not literally between point A and B from a routing table perspective.

A more complex example is an ordered series of functions, each implemented in multiple VMs, such that traffic must flow through one VM at each hop in the chain but the network uses a hashing algorithm to distribute different flows across multiple VMs at each hop.

This is an initial release, feedback is requested from users and the API may evolve based on that feedback.

Features

  • Creation of Service Function Chains consisting of an ordered sequence of Service Functions. SFs are virtual machines (or potentially physical devices) that perform a network function such as firewall, content cache, packet inspection, or any other function that requires processing of packets in a flow from point A to point B.
  • Reference implementation with Open vSwitch
  • Flow classification mechanism (ability to select and act on traffic)
  • Vendor neutral API
  • Modular plugin driver architecture

Service Function Chaining Key Contributors

Background on the Subject of Service Function Chaining