Hi,
This series adds run-time configuration of allowed OpenFlow versions
to ovs-vswtichd, ovs-ofctl and ovs-controller; and adds tests for Open Flow
1.2 messages that utilise the run-time configuration of allowed OpenFlow
versions.
Substantial portions have been re-written since my previous post.
* For ovs-vswitchd the allowed versions are configured via the database.
* For ovs-ofctl and ovs-controller they are configured using the
new --allowed-ofp-versions command line option.
* Internally a bitmap is used throughout to represent allowed Open Flow
versions.
* Open Flow 1.3.1 version negotiation is supported including
encoding and decoding of hello messages with version bitmaps.
I am unsure what to do about the -V command line option of
ovs-vswitchd, ovs-ofctl and ovs-controller. I have left it unmodified.
Git and diffstat information is provided to aid review.
----------------------------------------------------------------
The following changes since commit f7b7ee9753cd75da86c21ac6364dab07e5e8d51a:
stream.py: un-decorator Stream.register_method (2012-10-17 11:22:08 -0700)
are available in the git repository at:
git://github.com/horms/openvswitch.git devel/of1.2-runtime-switch2
for you to fetch changes up to d86a2b06acfa3b30bd067f9c48fec748fcb0d123:
test: add ofproto OpenFlow1.2 tests (2012-10-18 14:35:29 +0900)
----------------------------------------------------------------
Simon Horman (18):
vconn: Paramatise pvconn_open() over minimum OpenFlow version
vconn: Add ofputil_version_bitmap
vconn: Allowed OpenFlow versions
ofp-util: Add version bitmap to hello messages
connmgr: Paramatise ofservice_create() over allowed OpenFlow versions
ofproto: Make set_pvconns() aware of OpenFlow versions
rconn: Add allowed OpenFlow versions
ofproto, connmgr: Parameterise OpenFlow versions for adding controller
ofp-util: Allow use of OpenFlow 12 flow format
connmgr: Use version of underlying rconn
vswitchd: Configuration of allowed OpenFlow versions
lib: Add helpers for OpenFlow version command line options
ovs-ofctl: Add option to set allowed OpenFlow versions
ovs-controller: Allow setting of allowed OpenFlow versions
ovs-ofctl: By default, do not set flow format for OpenFlow 1.1+
ofp-util: Open Flow 1.1 and 1.2 flow format capabilities
ofp-util: Flow Dump Protocol for OpenFlow 12
test: add ofproto OpenFlow1.2 tests
include/openflow/openflow-common.h | 11 +
lib/automake.mk | 3 +
lib/bitmap.c | 31 ++
lib/bitmap.h | 3 +
lib/ofp-print.c | 30 +-
lib/ofp-util.c | 430 ++++++++++++++++++++++++--
lib/ofp-util.h | 67 +++-
lib/ofp-version-opt.c | 43 +++
lib/ofp-version-opt.h | 28 ++
lib/ofp-version.man | 28 ++
lib/rconn.c | 12 +-
lib/rconn.h | 5 +-
lib/vconn-provider.h | 28 +-
lib/vconn-stream.c | 23 +-
lib/vconn.c | 146 ++++++---
lib/vconn.h | 17 +-
manpages.mk | 2 +
ofproto/connmgr.c | 59 ++--
ofproto/connmgr.h | 5 +-
ofproto/ofproto.c | 8 +-
ofproto/ofproto.h | 11 +-
tests/learn.at | 2 +-
tests/ofp-print.at | 19 ++
tests/ofproto-macros.at | 2 +-
tests/ofproto.at | 595 +++++++++++++++++++++++++++++++++---
tests/ovs-ofctl.at | 2 +-
tests/test-vconn.c | 24 +-
utilities/ovs-controller.8.in | 1 +
utilities/ovs-controller.c | 22 +-
utilities/ovs-ofctl.8.in | 1 +
utilities/ovs-ofctl.c | 95 +++---
vswitchd/bridge.c | 42 ++-
32 files changed, 1575 insertions(+), 220 deletions(-)
create mode 100644 lib/ofp-version-opt.c
create mode 100644 lib/ofp-version-opt.h
create mode 100644 lib/ofp-version.man
_______________________________________________
dev mailing list
[email protected]
http://openvswitch.org/mailman/listinfo/dev