Difference between revisions of "VPP/OVN"
(→Work list) |
(→Introduction) |
||
| (6 intermediate revisions by the same user not shown) | |||
| Line 9: | Line 9: | ||
ovs.db manages a cached copy of the OVSDB database. We can do something similar for VPP, where the VPP side of the agent maintains a local cached copy of VPP's interfaces, interface state, VLANs etc. | ovs.db manages a cached copy of the OVSDB database. We can do something similar for VPP, where the VPP side of the agent maintains a local cached copy of VPP's interfaces, interface state, VLANs etc. | ||
| + | |||
| + | [https://github.com/vpp-dev/ovn-controller-vpp ovn-controller-vpp git repository] | ||
=== Work list === | === Work list === | ||
| Line 29: | Line 31: | ||
| | | | ||
| | | | ||
| − | | Register in the Physical_Switch table (ports, tunnels) in hardware_vtep database. | + | | Register in the Physical_Switch table (ports, tunnels) in hardware_vtep database. Populate Physical_Port table. |
|- | |- | ||
| VPP Python interface abstraction | | VPP Python interface abstraction | ||
| Line 36: | Line 38: | ||
| | | | ||
| Cache and monitor VPP's interface table, VLAN mapping, ACLs etc. | | Cache and monitor VPP's interface table, VLAN mapping, ACLs etc. | ||
| + | |- | ||
| + | | Logical_Switch and Logical_Binding table | ||
| + | | | ||
| + | | | ||
| + | | | ||
| + | | | ||
| + | |- | ||
| + | | Ucast_Macs_Local and Ucast_Mcast_Remote tables | ||
| + | | | ||
| + | | | ||
| + | | | ||
| + | | | ||
|- | |- | ||
| ACL integration | | ACL integration | ||
| Line 48: | Line 62: | ||
| | | | ||
| Monitor remote tunnel endpoints using BFD. BFD parameters and configuration from the VTEP Tunnel table. | | Monitor remote tunnel endpoints using BFD. BFD parameters and configuration from the VTEP Tunnel table. | ||
| + | |- | ||
| + | | Logical_Router Table | ||
| + | | | ||
| + | | | ||
| + | | | ||
| + | | Bridge to VRF | ||
| + | |- | ||
| + | | Support for multicast MACs? | ||
| + | | | ||
| + | | | ||
| + | | | ||
| + | | | ||
| + | |- | ||
| + | | Arp_Sources_Local and Arp_Sources_Remote tables | ||
| + | | | ||
| + | | | ||
| + | | | ||
| + | | | ||
| + | |- | ||
| + | | Geneve support | ||
| + | | | ||
| + | | | ||
| + | | | ||
| + | | | ||
|- | |- | ||
Latest revision as of 08:14, 5 July 2017
Project HotDog
Introduction
Integration of OVN and VPP. The initial phase is to integrate VPP as a VTEP gateway to OVN. ovn-controller-vtep is a simple agent written in Python that uses the VTEP OVSDB database on one side and programs the VPP data-plane on the other.
The agent uses the https://github.com/openvswitch/ovs/tree/master/python/ovs OVS Python language binding to communicate with the hardware_vtep database over OVSDB.
ovs.db manages a cached copy of the OVSDB database. We can do something similar for VPP, where the VPP side of the agent maintains a local cached copy of VPP's interfaces, interface state, VLANs etc.
ovn-controller-vpp git repository
Work list
| Task | Owner | Planned Release | Status | Description |
|---|---|---|---|---|
| Integration Bridge | VPP configured to participate in OVN integration bridge. VPP configured separately from agent? | |||
| Initialise connection to OVSDB | Register in the Physical_Switch table (ports, tunnels) in hardware_vtep database. Populate Physical_Port table. | |||
| VPP Python interface abstraction | Cache and monitor VPP's interface table, VLAN mapping, ACLs etc. | |||
| Logical_Switch and Logical_Binding table | ||||
| Ucast_Macs_Local and Ucast_Mcast_Remote tables | ||||
| ACL integration | Monitor VTEP ACL table and populate ACLs in VPP | |||
| BFD to tunnel endpoint | Monitor remote tunnel endpoints using BFD. BFD parameters and configuration from the VTEP Tunnel table. | |||
| Logical_Router Table | Bridge to VRF | |||
| Support for multicast MACs? | ||||
| Arp_Sources_Local and Arp_Sources_Remote tables | ||||
| Geneve support |
Testing
Integration tests will be achieved by extending the existing testing tool coming with ovs/ovn (make check TESTSUITEFLAGS='-k ovn'). Specific tests cases will be built for that purpose.
Contacts
- Jerome Tollet: jtollet@cisco.com
- Ole Troan: otroan@cisco.com