summaryrefslogtreecommitdiff
path: root/FAQ.md
diff options
context:
space:
mode:
authorBen Pfaff <blp@ovn.org>2016-06-03 09:10:15 -0700
committerBen Pfaff <blp@ovn.org>2016-06-03 13:10:49 -0700
commitb5936d520b5055356d190411180a24a736beb907 (patch)
tree15b912f17d03cb6a07412e36ad2b02902cb2d8e1 /FAQ.md
parent258e42fa2c06c3dbaa9bdfd04b75c6bac132b77d (diff)
downloadopenvswitch-b5936d520b5055356d190411180a24a736beb907.tar.gz
FAQ: Explain that the order of actions is significant.
I've seen users make this error several times. This FAQ will provide a useful answer to pass along. Signed-off-by: Ben Pfaff <blp@ovn.org> Acked-by: Gurucharan Shetty <guru@ovn.org>
Diffstat (limited to 'FAQ.md')
-rw-r--r--FAQ.md17
1 files changed, 17 insertions, 0 deletions
diff --git a/FAQ.md b/FAQ.md
index 5e95ccc2b..df6f2250f 100644
--- a/FAQ.md
+++ b/FAQ.md
@@ -2012,6 +2012,23 @@ A: In Open vSwitch 2.3 and earlier, Open vSwitch used the destination
vSwitch source tree. (OpenFlow 1.5 support in Open vSwitch is still
experimental.)
+### Q: I added a flow to accept packets on VLAN 123 and output them on
+ VLAN 456, like so:
+
+ ovs-ofctl add-flow br0 dl_vlan=123,actions=output:1,mod_vlan_vid:456
+
+ but the packets are actually being output in VLAN 123. Why?
+
+A: OpenFlow actions are executed in the order specified. Thus, the
+ actions above first output the packet, then change its VLAN. Since
+ the output occurs before changing the VLAN, the change in VLAN will
+ have no visible effect.
+
+ To solve this and similar problems, order actions so that changes
+ to headers happen before output, e.g.:
+
+ ovs-ofctl add-flow br0 dl_vlan=123,actions=mod_vlan_vid:456,output:1
+
Development
-----------