On Fri, 13 Dec 2013 17:25:24 +0900 Yuichi Ito <ito.yuic...@gmail.com> wrote:
> What this patch implements: > > This patch implements a tool which performs OpenFlow conformance testing. > The tool can: > - install various flow entries of OpenFlow 1.3 as follows: > * all 'action' except SET_QUEUE and GROUP > * all 'match' except IN_PHY_PORT > - confirm whether the datapath works correctly according to the > installed flow entries. > > Required test environment: > > The tool requires the test environment that includes 2 switches and 2 > links as follows: > > +-----------+ > +----------| target sw | The OpenFlow switch to be tested > | +-----------+ > +------------+ (1) (2) > | controller | | | > +------------+ (1) (2) > | +-----------+ > +----------| tester sw | OpenFlow Switch > +-----------+ > > (X) : port number > > How does the tool work: > > The tool will: > - install the flow entries into the target switch. > - transmit a packet from the tester switch to the target switch. > * According to the installed flow entries, the target switch outputs > a packet towards the tester switch. > * The tester switch sends a PacketIn message to the tool. > - examine the packet that is included in the PacketIn message and > output the result. > * The tool supports also the table-miss examinations. > > The tool processes test files in the specified directory sequentially. > > By forming the result, you can create the list as: > http://osrg.github.io/ryu-certification/switch/ovs.html > http://osrg.github.io/ryu-certification/switch/LINC.html > http://osrg.github.io/ryu-certification/switch/ofsoftswitch13.html > > Required test file format: > > [ > "test name", > { > test pattern #01 > }, > { > test pattern #02 > }, ... > ] > > Each test pattern has the following internal format: > > { > "description": description of this test pattern, > "prerequisite": [ > FlowMod messages used by this test pattern > ], > "tests": [ > "ingress": inbound packet data, > "egress": outbound packet data, > "PACKET-IN": packet data sent by PacketIn message, > "table-miss": table id in which table-miss occurs > ] > } > > The extensions of the test files have to be '.json'. > > How to run: > > Do the following command: > ryu-manager ryu/tests/switch/tester.py > > The following options can be used: > - --test-switch-target (target sw dp-id) > - --test-switch-tester (tester sw dp-id) > - --test-switch-dir (test files directory) > > ex) > ryu-manager --test-switch-target 0000000000000005 --test-switch-dir > /home/ryu/tests ryu/tests/switch/tester.py > > Signed-off-by: WATANABE Fumitaka <watanabe.fumit...@nttcom.co.jp> > Signed-off-by: Yuichi Ito <ito.yuic...@gmail.com> > --- > ryu/flags.py | 8 + > ryu/tests/switch/tester.py | 898 > ++++++++++++++++++++++++++++++++++++++++++++ > 2 files changed, 906 insertions(+) > create mode 100644 ryu/tests/switch/tester.py Applied, thanks! ------------------------------------------------------------------------------ Rapidly troubleshoot problems before they affect your business. Most IT organizations don't have a clear picture of how application performance affects their revenue. With AppDynamics, you get 100% visibility into your Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro! http://pubads.g.doubleclick.net/gampad/clk?id=84349831&iu=/4140/ostg.clktrk _______________________________________________ Ryu-devel mailing list Ryu-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/ryu-devel