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