summaryrefslogtreecommitdiff
path: root/ofproto/ofproto-dpif-sflow.c
diff options
context:
space:
mode:
authorWilliam Tu <u9012063@gmail.com>2016-06-24 07:42:30 -0700
committerPravin B Shelar <pshelar@ovn.org>2016-06-24 09:17:00 -0700
commitaaca4fe0ce9e90a41b3f4db84be7d05823c733e4 (patch)
tree501ddeb047ddb614067f89787d71bb01427bacc1 /ofproto/ofproto-dpif-sflow.c
parent4c7804f14b9b5bbcd37cf9170781e2f820992532 (diff)
downloadopenvswitch-aaca4fe0ce9e90a41b3f4db84be7d05823c733e4.tar.gz
ofp-actions: Add truncate action.
The patch adds a new action to support packet truncation. The new action is formatted as 'output(port=n,max_len=m)', as output to port n, with packet size being MIN(original_size, m). One use case is to enable port mirroring to send smaller packets to the destination port so that only useful packet information is mirrored/copied, saving some performance overhead of copying entire packet payload. Example use case is below as well as shown in the testcases: - Output to port 1 with max_len 100 bytes. - The output packet size on port 1 will be MIN(original_packet_size, 100). # ovs-ofctl add-flow br0 'actions=output(port=1,max_len=100)' - The scope of max_len is limited to output action itself. The following packet size of output:1 and output:2 will be intact. # ovs-ofctl add-flow br0 \ 'actions=output(port=1,max_len=100),output:1,output:2' - The Datapath actions shows: # Datapath actions: trunc(100),1,1,2 Tested-at: https://travis-ci.org/williamtu/ovs-travis/builds/140037134 Signed-off-by: William Tu <u9012063@gmail.com> Acked-by: Pravin B Shelar <pshelar@ovn.org>
Diffstat (limited to 'ofproto/ofproto-dpif-sflow.c')
-rw-r--r--ofproto/ofproto-dpif-sflow.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/ofproto/ofproto-dpif-sflow.c b/ofproto/ofproto-dpif-sflow.c
index fbc82b735..5d26b7c47 100644
--- a/ofproto/ofproto-dpif-sflow.c
+++ b/ofproto/ofproto-dpif-sflow.c
@@ -1140,6 +1140,7 @@ dpif_sflow_read_actions(const struct flow *flow,
}
break;
+ case OVS_ACTION_ATTR_TRUNC:
case OVS_ACTION_ATTR_USERSPACE:
case OVS_ACTION_ATTR_RECIRC:
case OVS_ACTION_ATTR_HASH: