These patches build on the first two patches which Simon Horman sent out in May to move Open vSwitch towards flow-based tunneling. The first patche adds a tun_key, deprecating the tun_id member of the ovs_skb_cb struct. This patche retain compatibilty with existing tunneling, but once the userspace code is submitted, this will be deprecated. The second patch makes an attempt at adding the new tun_key structure into the flow matching logic in the kernel.
Please note: A third patch is still needed per Jesse, which is to allow tunnel ports to send and receive packets on ports without destination IP addresses. I'm sending what I have out now to get some feedback, per discussions on the dev list. Kyle Mestery (2): This is a first pass at providing a tun_key which can be used as the basis for flow-based tunnelling. The tun_key includes and replaces the tun_id in both struct ovs_skb_cb and struct sw_tun_key. Move struct ovs_key_ipv4_tunnel out of struct sw_flow_key and into struct sw_flow. This allows it to "float" and be used for matching only when needed. Modify the matching code in ovs_flow_tbl_lookup() to match on the tunnel header if it's set. NEWS | 3 ++ datapath/actions.c | 39 ++++++++++++---- datapath/datapath.c | 43 +++++++++++++----- datapath/datapath.h | 6 ++- datapath/flow.c | 104 +++++++++++++++++++++++++++++++++++-------- datapath/flow.h | 27 +++++++---- datapath/tunnel.c | 106 ++++++++++++++++++++++++++++---------------- datapath/tunnel.h | 15 ++++++- datapath/vport-capwap.c | 12 ++--- datapath/vport-gre.c | 15 ++++--- datapath/vport.c | 2 +- include/linux/openvswitch.h | 18 +++++++- lib/dpif-netdev.c | 1 + lib/odp-util.c | 15 ++++++- lib/odp-util.h | 3 +- 15 files changed, 303 insertions(+), 106 deletions(-) -- 1.7.11.4 _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev