|
|
Line 2: |
Line 2: |
| | | |
| * Todo | | * Todo |
− | ** Reduce OVS dependencies
| + | ** https://wiki.openstack.org/wiki/Neutron/OFAgent/Todo |
− | *** patch ports, multiple logical bridges
| |
− | **** https://blueprints.launchpad.net/neutron/+spec/ofagent-merge-bridges
| |
− | **** https://wiki.openstack.org/wiki/Neutron/OFAgent/FlowTable
| |
− | **** implement learning based on flows and packet-in. possibly with l2pop.
| |
− | *** OVSDB
| |
− | **** port scanning
| |
− | ***** currently periodically scannig the list of ports and its status using ovs-vsctl
| |
− | ***** use openflow port desc stats and ofp_port_status instead
| |
− | **** port external id
| |
− | ***** there's no pure-openflow way to associate openstack device uuids to OFP ports.
| |
− | ***** probably use tapXXXX, which is available as ofp_port.name. ML2 plugin already accepts tapXXXX for linuxbridge.
| |
− | **** add-br, set-controller, set bridge protocols
| |
− | ***** factor out to "OVS" sub-driver
| |
− | ***** use OF-Config
| |
− | ***** move the one-time setup code to devstack
| |
− | *** port-based VLAN
| |
− | **** currently using ovs-vsctl to set up port-based VLANs
| |
− | **** install appropriate flows to push/pop tags instead
| |
− | *** tunnel ports
| |
− | **** factor out the code into "OVS" sub-driver.
| |
− | *** the way to configure physical networks
| |
− | **** it would be more straightforward to specify an interface (eth0) rather than a bridge (br-eth0)
| |
− | **** this will be user-visible changes
| |
− | *** stop assuming the existence of local ports
| |
− | **** eg. setup_physical_bridges
| |
− | **** not a big deal
| |
− | ** neutron interface driver
| |
− | ** nova interface driver
| |
− | ** security group. ideally implement with flows.
| |
− | *** cf. https://wiki.openstack.org/wiki/Neutron/blueprint_ovs-firewall-driver
| |
− | ** l2pop
| |
− | *** https://blueprints.launchpad.net/neutron/+spec/ofagent-l2pop
| |
| | | |
| * References | | * References |
| ** https://github.com/osrg/ryu/wiki/Configuration-OpenStack-OFAgent-agent | | ** https://github.com/osrg/ryu/wiki/Configuration-OpenStack-OFAgent-agent |
OFAgent is a neutron core-plugin (ML2 mechanism driver) aims to support pure OpenFlow1.3 switches.