Hi,

The aim of this series is to add an implementation of and
tests for the following messages:

* Flow monitor request
  + Now present in the v5 branch of of_protocol
  + Was pull request 67
    https://github.com/FlowForwarding/of_protocol/pull/67
* Flow reply
  + Now present in the v5 branch of of_protocol
  + Length fix proposed as pull request 68
    https://github.com/FlowForwarding/of_protocol/pull/68
* Table status
  + of_protocol implementation proposed in pull request 69
    https://github.com/FlowForwarding/of_protocol/pull/69
* Bundle control message
  + Now present in the v5 branch of of_protocol
* Bundle add message
  + Now present in the v5 branch of of_protocol
* Request forward message
  + Now present in the v5 branch of of_protocol
  + of_protocol implementation proposed in pull request 70
    https://github.com/FlowForwarding/of_protocol/pull/70


A complication of implementing unit tests for bundle control add message
and request forward message is that they are OpenFlow messages that
encapsulate an OpenFlow message.  And some infrastructures changes are
required: specifically to allow MsgBase subclasses at other than the
top-level when parsing messages from JSON.

The above complication does not affect any of the other messages
covered by this series.

My first pass at this infrastructure changes is the 4rd patch of this
series:
"Allow messages inside messages".

As I expect this change to require some discussion I it and
all bundle add message and request forward message patches as RFC.
I have placed all these patches at the end of the series to allow
earlier patches to be applied without complication.


This series is based on Ryu v3.7.

This series replaces:
* [PATCH 0/5] of14: Add bundle support
* [PATCH 0/7] of14: Add Flow monitor support

Changes to patches in those series are noted in their changelogs.


To aid review this series and its dependencies are available at
https://github.com/horms/ryu devel/of1.4-messages

I have made a wiki page to summarise the status of OF1.4 support in Ryu
https://github.com/horms/ryu/wiki/OpenFlow-V1.4-Coverage


Simon Horman (18):
  of14: Add OFPFlowUpdate
  of14: Add flow monitor request support
  of14: Add flow monitor reply support
  packet_data_generator: New ofproto dependency for v5 updates
  of14: Add flow monitor request unit test
  packet_data_generator: Update ofproto dependency for v5 fix
  of14: Add flow monitor reply message unit test
  of1.4: Add table status support
  packet_data_generator: Update protocol dependency for v5 table stats
  of1.4: Add table status unit test
  of14: Add bundle control message support
  of14: Add bundle control message unit test
  [RFC] of14: Add bundle add message support
  [RFC] Allow messages inside messages
  [RFC] of14: Add bundle add message unit test
  [RFC] Add request forward message support
  [RFC] packet_data_generator: Update protocol dependency for v5 request
    forward
  [RFC] Add request forward message unit test

 ryu/lib/stringify.py                               |  20 +-
 ryu/ofproto/ofproto_parser.py                      |   1 -
 ryu/ofproto/ofproto_v1_4.py                        |  24 +-
 ryu/ofproto/ofproto_v1_4_parser.py                 | 475 +++++++++++++++++++++
 .../of14/5-66-ofp_flow_monitor_request.packet      | Bin 0 -> 48 bytes
 .../of14/5-67-ofp_flow_monitor_reply.packet        | Bin 0 -> 96 bytes
 .../packet_data/of14/5-68-ofp_table_status.packet  | Bin 0 -> 96 bytes
 .../of14/5-69-ofp_bundle_add_msg.packet            | Bin 0 -> 80 bytes
 .../of14/5-69-ofp_bundle_ctrl_msg.packet           | Bin 0 -> 72 bytes
 .../of14/5-70-ofp_requestforward.packet            | Bin 0 -> 56 bytes
 ryu/tests/packet_data_generator/rebar.config       |  11 +-
 ryu/tests/packet_data_generator/src/x5.erl         | 129 +++++-
 .../of14/5-66-ofp_flow_monitor_request.packet.json |  27 ++
 .../of14/5-67-ofp_flow_monitor_reply.packet.json   |  66 +++
 .../json/of14/5-68-ofp_table_status.packet.json    |  57 +++
 .../json/of14/5-69-ofp_bundle_add_msg.packet.json  |  45 ++
 .../json/of14/5-69-ofp_bundle_ctrl_msg.packet.json |  36 ++
 .../json/of14/5-70-ofp_requestforward.packet.json  |  31 ++
 ryu/tests/unit/ofproto/test_parser.py              |   4 +
 19 files changed, 908 insertions(+), 18 deletions(-)
 create mode 100644 
ryu/tests/packet_data/of14/5-66-ofp_flow_monitor_request.packet
 create mode 100644 
ryu/tests/packet_data/of14/5-67-ofp_flow_monitor_reply.packet
 create mode 100644 ryu/tests/packet_data/of14/5-68-ofp_table_status.packet
 create mode 100644 ryu/tests/packet_data/of14/5-69-ofp_bundle_add_msg.packet
 create mode 100644 ryu/tests/packet_data/of14/5-69-ofp_bundle_ctrl_msg.packet
 create mode 100644 ryu/tests/packet_data/of14/5-70-ofp_requestforward.packet
 create mode 100644 
ryu/tests/unit/ofproto/json/of14/5-66-ofp_flow_monitor_request.packet.json
 create mode 100644 
ryu/tests/unit/ofproto/json/of14/5-67-ofp_flow_monitor_reply.packet.json
 create mode 100644 
ryu/tests/unit/ofproto/json/of14/5-68-ofp_table_status.packet.json
 create mode 100644 
ryu/tests/unit/ofproto/json/of14/5-69-ofp_bundle_add_msg.packet.json
 create mode 100644 
ryu/tests/unit/ofproto/json/of14/5-69-ofp_bundle_ctrl_msg.packet.json
 create mode 100644 
ryu/tests/unit/ofproto/json/of14/5-70-ofp_requestforward.packet.json

-- 
1.8.5.2


------------------------------------------------------------------------------
Subversion Kills Productivity. Get off Subversion & Make the Move to Perforce.
With Perforce, you get hassle-free workflows. Merge that actually works. 
Faster operations. Version large binaries.  Built-in WAN optimization and the
freedom to use Git, Perforce or both. Make the move to Perforce.
http://pubads.g.doubleclick.net/gampad/clk?id=122218951&iu=/4140/ostg.clktrk
_______________________________________________
Ryu-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ryu-devel

Reply via email to