]> git.proxmox.com Git - mirror_ovs.git/commitdiff
vswitchd: Deprecate packet buffering in OVS 2.6.
authorJarno Rajahalme <jarno@ovn.org>
Mon, 29 Aug 2016 18:38:40 +0000 (11:38 -0700)
committerJarno Rajahalme <jarno@ovn.org>
Mon, 29 Aug 2016 18:38:40 +0000 (11:38 -0700)
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' for OVS 2.6, and adds detail to the FAQ
question about backet buffering.

Signed-off-by: Jarno Rajahalme <jarno@ovn.org>
Acked-by: Ben Pfaff <blp@ovn.org>
FAQ.md
NEWS

diff --git a/FAQ.md b/FAQ.md
index 6d234431f3781e1b93ba260065bd574ae5175f4b..787c67dee2fe0cd8e6ce02e15e57e92b7822f43f 100644 (file)
--- a/FAQ.md
+++ b/FAQ.md
@@ -2011,6 +2011,15 @@ 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 deprecated in OVS 2.6
+   release, and will be removed in OVS 2.7.  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 280fc156847d022ccf46096f52b009d9d54e6cc4..143915136c770bf11471cf837a6139dd4a4a13f1 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -28,6 +28,15 @@ 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
+     * The optional OpenFlow packet buffering feature is deprecated in
+       this release, and will be removed in the next OVS release
+       (2.7).  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+.