[ovs-dev] [PATCH v2 01/15] vswitchd: Deprecate packet buffering in OVS 2.7.

Jarno Rajahalme jarno at ovn.org
Mon Aug 22 23:31:27 UTC 2016


OVS implementation of buffering packets that are sent to the
controller is not compliant with the OpenFlow specifications after
OpenFlow 1.0.  OVS implementation executes the buffered packet against
the actions of the modified or added rule, whereas OpenFlow (since
1.1) specifies that the packet should be matched against the flow
table 0 and processed accordingly.

Rather than fix this behavior, and potentially break OVS users, we
propose to remove the feature altogether, starting in OVS 2.7.  This
patch announces this in 'NEWS', and adds detial to the FAQ question
about backet buffering.

Signed-off-by: Jarno Rajahalme <jarno at ovn.org>
---
 FAQ.md | 8 ++++++++
 NEWS   | 8 ++++++++
 2 files changed, 16 insertions(+)

diff --git a/FAQ.md b/FAQ.md
index 6d23443..43d5ba5 100644
--- a/FAQ.md
+++ b/FAQ.md
@@ -2011,6 +2011,14 @@ A: When a switch sends a packet to an OpenFlow controller using a
    buffering that the OpenFlow specification requires implementations
    to document.
 
+   Note that the packet buffering support is slated for deprecation in
+   OVS 2.7 release.  After the change OVS always sends the 'buffer_id'
+   as 0xffffffff in "packet-in" messages and will send an error
+   response if any other value of this field is included in
+   "packet-out" and "flow mod" sent by a controller.  Controllers are
+   already expected to work properly in cases where the switch can not
+   buffer packets, so this change should not affect existing users.
+
 ### Q: How does OVS divide flows among buckets in an OpenFlow "select" group?
 
 A: In Open vSwitch 2.3 and earlier, Open vSwitch used the destination
diff --git a/NEWS b/NEWS
index 280fc15..4c4785d 100644
--- a/NEWS
+++ b/NEWS
@@ -28,6 +28,14 @@ v2.6.0 - xx xxx xxxx
        packet to size M bytes when outputting to port N.
      * New command OFPGC_ADD_OR_MOD for OFPT_GROUP_MOD message that adds a
        new group or modifies an existing groups
+     * Next OVS release (2.7) will deprecate the optional OpenFlow
+       packet buffering feature.  After the change OVS always sends
+       the 'buffer_id' as 0xffffffff in packet-in messages and will
+       send an error response if any other value of this field is
+       included in packet-out and flow mod sent by a controller.
+       Controllers are already expected to work properly in cases
+       where the switch can not buffer packets, so this change should
+       not affect existing users.
    - Improved OpenFlow version compatibility for actions:
      * New OpenFlow extension to support the "group" action in OpenFlow 1.0.
      * OpenFlow 1.0 "enqueue" action now properly translated to OpenFlow 1.1+.
-- 
2.1.4




More information about the dev mailing list