tunneling: Add support for tunnel ID.
authorJesse Gross <jesse@nicira.com>
Mon, 12 Apr 2010 15:49:16 +0000 (11:49 -0400)
committerJesse Gross <jesse@nicira.com>
Mon, 19 Apr 2010 13:11:51 +0000 (09:11 -0400)
commit659586efcf6f9539282da9447007897907c41112
treebaffec5ba051a06cfb2a6fa84d0837068aca54f3
parentdb0e2ad101f10288c002bd537047f3d9e1979c9f
tunneling: Add support for tunnel ID.

Add a tun_id field which contains the ID of the encapsulating tunnel
on which a packet was received (0 if not received on a tunnel).  Also
add an action which allows the tunnel ID to be set for outgoing
packets.  At this point there aren't any tunnel implementations so
these fields don't have any effect.

The matching is exposed to OpenFlow by overloading the high 32 bits
of the cookie as the tunnel ID.  ovs-ofctl is capable of turning
on this special behavior using a new "tun-cookie" command but this
command is intentially undocumented to avoid it being used without
a full understanding of the consequences.
25 files changed:
datapath/actions.c
datapath/datapath.c
datapath/datapath.h
datapath/flow.c
include/openflow/nicira-ext.h
include/openvswitch/datapath-protocol.h
lib/classifier.c
lib/classifier.h
lib/dhcp-client.c
lib/dpif-netdev.c
lib/flow.c
lib/flow.h
lib/learning-switch.c
lib/odp-util.c
lib/ofp-print.c
lib/vconn.c
ofproto/fail-open.c
ofproto/in-band.c
ofproto/ofproto-sflow.c
ofproto/ofproto.c
tests/test-classifier.c
tests/test-flows.c
utilities/ovs-ofctl.8.in
utilities/ovs-ofctl.c
vswitchd/bridge.c