devstack | ||
doc | ||
dragonflow | ||
etc | ||
rally-jobs | ||
releasenotes | ||
tools | ||
vagrant | ||
zuul | ||
.coveragerc | ||
.gitignore | ||
.gitreview | ||
.mailmap | ||
.stestr.conf | ||
.zuul.yaml | ||
babel.cfg | ||
CONTRIBUTING.rst | ||
Dockerfile | ||
Dockerfile.fedora | ||
HACKING.rst | ||
LICENSE | ||
lower-constraints.txt | ||
README.rst | ||
requirements.txt | ||
setup.cfg | ||
setup.py | ||
test-requirements.txt | ||
tox.ini |
Team and repository tags
Distributed SDN-based Neutron Implementation
- Free software: Apache license
- Homepage: http://www.dragonflow.net/
- Source: https://opendev.org/openstack/dragonflow
- Bugs: https://bugs.launchpad.net/dragonflow
- Documentation: https://docs.openstack.org/dragonflow/latest/
- Release notes: https://docs.openstack.org/developer/dragonflow/releasenotes.html
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
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