[ovs-git] Open vSwitch: ofproto: Support OF version-specific table-miss behaviours (master)

dev at openvswitch.org dev at openvswitch.org
Thu Apr 3 23:10:09 UTC 2014

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Open vSwitch".

The branch, master has been updated
       via  6b83a3c5c37a07118681a3738ec776a7d8485a3f (commit)
      from  cb25142c50cd3a92e779ca1ce6f61380ffc75927 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 6b83a3c5c37a07118681a3738ec776a7d8485a3f
Diffs: http://openvswitch.org/cgi-bin/gitweb.cgi?p=openvswitch;a=commitdiff;h=6b83a3c5c37a07118681a3738ec776a7d8485a3f
Author: Simon Horman <horms at verge.net.au>
ofproto: Support OF version-specific table-miss behaviours
OpenFlow 1.1 and 1.2 specify that if a table-miss occurs then the default
behaviour is to forward the packet the controller using a packet-in
message. And until this patch this is the default behaviour that Open
vSwitch uses for all OpenFlow versions.

OpenFlow1.3+ specifies that if a table-miss occurs then the default
behaviour is simply to drop the packet. This patch implements this
behaviour using the following logic:

If a table-miss occurs and the table-miss behaviour for the table
has not been set using a table_mod (in which case it is no longer
the default setting) then:

* Installing a facet in the datapath with a drop action in the
  if there are no pre-OF1.3 controllers connected which would receive
  an packet_in message.

  Note that this covers both the case where there are only OF1.3
  controllers and the case where there are no controllers at all.

* Otherwise sent a packet_in message to all pre-OF1.3 controllers.

  This covers both the case where there are only pre-OF1.3
  controllers and there are both pre-OF1.3 and OF1.3+ controllers.

Signed-off-by: Simon Horman <horms at verge.net.au>
Signed-off-by: Ben Pfaff <blp at nicira.com>


Summary of changes:
 OPENFLOW-1.1+                |    7 -----
 ofproto/connmgr.c            |   62 +++++++++++++++++++++++++++++++++++++++++-
 ofproto/connmgr.h            |    1 +
 ofproto/ofproto-dpif-xlate.c |    5 ++++
 ofproto/ofproto-dpif.c       |   44 +++++++++++++++++++++++-------
 ofproto/ofproto-dpif.h       |    8 ++++++
 ofproto/ofproto-provider.h   |    2 +-
 ofproto/ofproto.c            |    8 +++---
 ofproto/ofproto.h            |   20 ++++++++++++--
 tests/ofproto-dpif.at        |   42 +++++++++++++++++++++++-----
 tests/tunnel.at              |    2 +-
 11 files changed, 168 insertions(+), 33 deletions(-)

Open vSwitch

More information about the git mailing list