RETIRED, SDN based Distributed Virtual Router for OpenStack Neutron
Go to file
Shachar Snapiri f1788f3ac6 Update cirros image version
The current cirros image version is 0.4.0.
As we have the image name hard-coded, it is required that we update it manually.
See [1] for reference.

[1] https://review.openstack.org/#/c/521825/

Change-Id: I99a49975c5674991d84932ebd2c7ab6599d343ea

Migrate Dragonflow from Ryu to os-ken

This change causes Dragonflow to stop consuming Ryu in favor of os-ken.
os-ken becomes the reference implementation for BGP services and
Dragonflow no longer has a dependency on Ryu.
See [1] for reference in Neutron.

[1] https://review.openstack.org/607008/

Change-Id: Ifbf294f2f586cf765d20cfa60774c45aa735ca62

Force delete of VM on close

There are tests that fail because we are waiting for the VM to complete shutdown
In tests, we do not mind destroying the machine forcefully as there is no reason
to wait for it.

Change-Id: I5f8e4928ceb7b467af891835600cd8096ec88d2b

use payloads for SECURITY_GROUP BEFORE_DELETE events

This patch switches over to the payload style callbacks for
BEFORE_DELETE events of SECURITY_GROUP resources.

Co-Authored-By: Boden R <bodenvmw@gmail.com>
Depends-On: https://review.openstack.org/#/c/597599/
Change-Id: Ie9163ad7baecf85e234e4253160f30015b43166b
2019-02-05 11:31:44 +02:00
devstack Update cirros image version 2019-02-05 11:31:44 +02:00
doc Update cirros image version 2019-02-05 11:31:44 +02:00
dragonflow Update cirros image version 2019-02-05 11:31:44 +02:00
etc Update cirros image version 2019-02-05 11:31:44 +02:00
rally-jobs Adds doc8 check to pep8 2018-07-13 03:52:28 +00:00
releasenotes Add dragonflow-status upgrade check command framework 2018-10-18 16:03:00 +05:30
tools Fix default value syntax for docker script 2019-01-09 18:58:05 +02:00
vagrant Remove redundant line from vagrant All-In-One script 2018-03-22 15:38:27 +02:00
zuul Add neutron_tempest_plugin to tempest dependencies 2018-04-08 13:19:37 +00:00
.coveragerc Update .coveragerc after the removal of openstack directory 2016-10-17 16:53:51 +05:30
.gitignore Switch to stestr 2018-07-05 13:38:59 +07:00
.gitreview Update .gitreview file for project rename 2015-06-12 23:12:30 +00:00
.mailmap Initial Cookiecutter Commit. 2015-01-29 16:46:27 +02:00
.stestr.conf Gate fix: verify .testrepository exists before changing permissions 2017-09-13 05:41:22 +03:00
.zuul.yaml use openstack-lower-constraints-jobs-neutron job template 2018-12-11 09:47:24 -07:00
CONTRIBUTING.rst Optimize the link address 2017-04-07 10:52:28 +08:00
Dockerfile Set absolute path for docker entrypoint 2019-01-02 08:20:42 +02:00
Dockerfile.fedora Set absolute path for docker entrypoint 2019-01-02 08:20:42 +02:00
HACKING.rst Update and optimize documentation links 2017-07-19 10:58:45 +00:00
LICENSE Initial Cookiecutter Commit. 2015-01-29 16:46:27 +02:00
README.rst Add release note link in README 2018-07-10 14:29:40 +07:00
babel.cfg Initial Cookiecutter Commit. 2015-01-29 16:46:27 +02:00
lower-constraints.txt Update cirros image version 2019-02-05 11:31:44 +02:00
requirements.txt Update cirros image version 2019-02-05 11:31:44 +02:00
setup.cfg Change openstack-dev to openstack-discuss 2018-12-04 02:52:03 -05:00
setup.py Updated from global requirements 2017-03-02 11:43:54 +00:00
test-requirements.txt Adds doc8 check to pep8 2018-07-13 03:52:28 +00:00
tox.ini Merge "Don't quote {posargs} in tox.ini" 2018-11-08 14:17:09 +00:00

README.rst

Team and repository tags

image

Distributed SDN-based Neutron Implementation

Solution Overview

Overview

Dragonflow implements Neutron using a lightweight embedded SDN Controller.

Our project mission is to Implement advanced networking services in a manner that is efficient, elegant and resource-nimble

Distributed Dragonflow

Comprehensive agentless implementation of the Neutron APIs and advanced network services, such as fully distributed Switching, Routing, DHCP and more.

This configuration is the current focus of Dragonflow. Overview and details are available in the Distributed Dragonflow Section

Solution Overview

Mitaka Version Features

  • L2 core API

    IPv4, IPv6 GRE/VxLAN/STT/Geneve tunneling protocols L2 Population

  • Distributed L3 Virtual Router

  • Distributed DHCP

  • Distributed DNAT

  • Security Groups Using OVS and Connection tracking

  • Pluggable Distributed Database

    Supported databases:

    Stable:

    ETCD, RAMCloud, Redis, Zookeeper

    In progress:

    RethinkDB

  • Pluggable Publish-Subscribe

    ZeroMQ, Redis

  • Selective DB Distribution

    Tenant Based Selective data distribution to the compute nodes

Experimental Mitaka Features

  • Local Controller Reliability

In progress

  • IGMP Distributed application
  • Allowed Address Pairs
  • Port Security
  • DHCP DOS protection
  • Distributed Meta Data Service
  • Kuryr integration
  • Local Controller HA
  • ML2 Driver, hierarchical Port Binding
  • VLAN L2 Networking support
  • Smart broadcast/multicast

In planning

  • Distributed Load Balancing (East/West)
  • DNS service
  • Port Fault detection
  • Dynamic service chaining (service Injection)
  • SFC support
  • Distributed FWaaS
  • Distributed SNAT
  • VPNaaS

Configurations

To generate the sample dragonflow configuration files, run the following command from the top level of the dragonflow directory:

tox -e genconfig

If a 'tox' environment is unavailable, then you can run the following script instead to generate the configuration files:

./tools/generate_config_file_samples.sh