Extend OVS IPFIX exporter to export tunnel headers
authorWenyu Zhang <wenyuz@vmware.com>
Mon, 18 Aug 2014 03:19:36 +0000 (20:19 -0700)
committerPravin B Shelar <pshelar@nicira.com>
Mon, 18 Aug 2014 08:01:10 +0000 (01:01 -0700)
commit8b7ea2d4803381c249f5886aac80f8dbe51ba771
treedc30224f9405a00d13f59c02b91bdd8453198277
parent84067a4c1a5033ad43ed444d1cb7f40ebddbf2e3
Extend OVS IPFIX exporter to export tunnel headers

Extend IPFIX exporter to export tunnel headers when both input and output
of the port.
Add three other_config options in IPFIX table: enable-input-sampling,
enable-output-sampling and enable-tunnel-sampling, to control whether
sampling tunnel info, on which direction (input or output).
Insert sampling action before output action and the output tunnel port
is sent to datapath in the sampling action.
Make datapath collect output tunnel info and send it back to userpace
in upcall message with a new additional optional attribute.
Add a tunnel ports map to make the tunnel port lookup faster in sampling
upcalls in IPFIX exporter. Make the IPFIX exporter generate IPFIX template
sets with enterprise elements for the tunnel info, save the tunnel info
in IPFIX cache entries, and send IPFIX DATA with tunnel info.
Add flowDirection element in IPFIX templates.

Signed-off-by: Wenyu Zhang <wenyuz@vmware.com>
Acked-by: Romain Lenglet <rlenglet@vmware.com>
Acked-by: Ben Pfaff <blp@nicira.com>
Acked-by: Pravin B Shelar <pshelar@nicira.com>
34 files changed:
datapath-windows/ovsext/OvsNetProto.h
datapath/actions.c
datapath/datapath.c
datapath/datapath.h
datapath/flow.h
datapath/flow_netlink.c
datapath/flow_netlink.h
datapath/linux/compat/include/linux/openvswitch.h
datapath/vport-geneve.c
datapath/vport-gre.c
datapath/vport-lisp.c
datapath/vport-vxlan.c
datapath/vport.c
datapath/vport.h
include/sparse/netinet/in.h
lib/dpif-linux.c
lib/dpif.h
lib/odp-util.c
lib/odp-util.h
lib/packets.h
ofproto/automake.mk
ofproto/ipfix-enterprise-entities.def [new file with mode: 0644]
ofproto/ofproto-dpif-ipfix.c
ofproto/ofproto-dpif-ipfix.h
ofproto/ofproto-dpif-upcall.c
ofproto/ofproto-dpif-xlate.c
ofproto/ofproto-dpif.c
ofproto/ofproto.h
ofproto/tunnel.c
tests/odp.at
utilities/ovs-vsctl.8.in
vswitchd/bridge.c
vswitchd/vswitch.ovsschema
vswitchd/vswitch.xml