Skip to main content

Mechanism driver for Neutron ML2 plugin using BGP E-VPNs/IP VPNs as a backend

Project description

Driver and agent code to use BaGPipe lightweight implementation of BGP-based VPNs as a backend for Neutron.

Team and repository tags

https://governance.openstack.org/tc/badges/networking-bagpipe.svg

Overview

BGP-based VPNs rely on extensions to the BGP routing protocol and dataplane isolation (e.g. MPLS-over-x, VXLAN) to create multi-site isolated virtual networks over a shared infrastructure, such as BGP/MPLS IPVPNs (RFC4364) and E-VPN (RFC7432). They have been heavily used in IP/MPLS WAN backbones since the early 2000’s.

These BGP VPNs are relevant in the context of Neutron, for two distinct use cases:

  1. creating reachability between Neutron ports (typically VMs) and BGP VPNs outside the cloud datacenter (this use case can be relevantindependently of the backend chosen for Neutron)

  2. leveraging these BGP VPNs in Neutron’s backend, to benefit from the flexibility, robustness and scalability of the underlying technology (as do other existing backends such as OpenContrail, Nuage Networks, or Calico – although the latter relies on plain, non-VPN, BGP)

BaGPipe proposal is to address these two use cases by implementing this protocol stack – both the BGP routing protocol VPN extensions and the dataplane encapsulation – in compute nodes or possibly ToR switches, and articulating it with Neutron thanks to drivers and plugins.

The networking-bagpipe package includes:

  • for use case 1: backend code for Neutron’s BGPVPN Interconnection service plugin (networking-bgpvpn) ; only compute node code (agent and BGP) is in networking-bagpipe, the Neutron server-side part, being currently in networking-bgpvpn package)

  • for use case 2: a Neutron ML2 mechanism driver (base Neutron networks), a networking-sfc driver (service chaining)

  • compute code common to both: agent extensions for Neutron agent (linuxbridge or openvswitch) to consolidate and pass information via its REST API to BaGPipe-BGP (a lightweight BGP VPN implementation)

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

networking-bagpipe-9.0.0.tar.gz (243.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

networking_bagpipe-9.0.0-py2-none-any.whl (270.5 kB view details)

Uploaded Python 2

File details

Details for the file networking-bagpipe-9.0.0.tar.gz.

File metadata

  • Download URL: networking-bagpipe-9.0.0.tar.gz
  • Upload date:
  • Size: 243.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/39.0.1 requests-toolbelt/0.8.0 tqdm/4.25.0 CPython/2.7.12

File hashes

Hashes for networking-bagpipe-9.0.0.tar.gz
Algorithm Hash digest
SHA256 1d10caa4cdc2c3981212f1f7d2815bf72d738c5a47fb35b8eb061365e873656c
MD5 55e06ffcc0b3d75774958ed9b52b6895
BLAKE2b-256 5bccb41e0138fff39bbd1d4f055aaf338d07aef790fce194b424acc9b8150784

See more details on using hashes here.

File details

Details for the file networking_bagpipe-9.0.0-py2-none-any.whl.

File metadata

  • Download URL: networking_bagpipe-9.0.0-py2-none-any.whl
  • Upload date:
  • Size: 270.5 kB
  • Tags: Python 2
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/39.0.1 requests-toolbelt/0.8.0 tqdm/4.25.0 CPython/2.7.12

File hashes

Hashes for networking_bagpipe-9.0.0-py2-none-any.whl
Algorithm Hash digest
SHA256 82f8f60ecd14e5df7591b1ed55a2cef2fc9593996c8742ed8ce7d65b57dc3313
MD5 209dbed251a26fa6d2e9aad23b925c5a
BLAKE2b-256 95013149282f2240dae9ae497f00e2319209841813c1980909881da48c07780c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page