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.2.tar.gz (242.7 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.2-py2-none-any.whl (270.5 kB view details)

Uploaded Python 2

File details

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

File metadata

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

File hashes

Hashes for networking-bagpipe-9.0.2.tar.gz
Algorithm Hash digest
SHA256 ffa37510af6b0112368d80f159da6951c26a332f94e40047d5e0f01f711b8dc7
MD5 f25f51fe53141c7a99873a9b5a13f248
BLAKE2b-256 a2fa0f88ef2972d28b06cf2d945c49c5cd400763190f1e754b7c3e80fdb72e83

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for networking_bagpipe-9.0.2-py2-none-any.whl
Algorithm Hash digest
SHA256 3450b5d02590c01db508b0df6a9aa671bb09c3c6106b2f8a91ce335134c33aaa
MD5 7ebdc64bf5c31d269c83f770d998ac2e
BLAKE2b-256 7d3a97f57a47546dfe6d5793994695fe8b9f4be3c6d7bb71877c400ab184e8c0

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