[ovs-dev] [openflow-dev] [code] OFTest for OVS

Dan Talayco dan.talayco at bigswitch.com
Fri Oct 26 16:24:54 UTC 2012


Hi Ben--

Thanks for working on this!

I know there are still some rough edges with OFTest, but there are a number
of changes that have improved things (the control-C issue is a lot better
than it was, but still present in some situations) and we continue to make
progress (especially with contributions like yours).

Locally, we've been working on a port virtualization tool that allows
things like virtual connections across UDP sockets, etc.  What we have is
not quite ready for prime time, but I expect your domain socket approach
should provide some push forward in that.

One more note:  We are also reviewing how to better compartmentalize and
specify for execution sets of tests ("suites").  There are a number of
things (like the "emergency flow cache" tests) that have been put in but
generally aren't implemented by anyone (as the feature was mostly
discredited before it went into 1.0 and then remove by 1.1).

As the number of contributed tests is growing, there have been calls for a
base set of "compliance" tests.  While defining compliance is not in the
scope of OFTest, I'd like to have a default set of tests that maximally
satisfies (1) as much coverage as possible; and (2) agreement that the
tests cover implemented and useful features.

Easy definition, maintenance and selection of other test suites is the next
goal.

-Dan



On Thu, Oct 25, 2012 at 11:14 PM, Ben Pfaff <blp at nicira.com> wrote:

> On Thu, Oct 25, 2012 at 05:12:21PM -0700, Ben Pfaff wrote:
> > It passes a few tests; I've only tried a few.
> >
> > Now that I look at it, there are some bugs here that will prevent
> > traffic from actually passing through, but they are not fundamental to
> > the approach.  I'm mostly passing this along in case anyone wants to
> > comment on the idea; I've already spent more time on it than I should
> > have.
>
> I'm attaching updated dummy.py and start-sandbox scripts.  With these
> versions, the command
>
>     OVS_RUNDIR=/home/blp/nicira/ovs/_build/sandbox ./oft -P dummy \
>     --log-file=oft.log --verbose -T all
>
> yields:
>
>     runTest (load.PacketInLoad) ... ok
>     runTest (load.PacketOutLoad) ... ok
>     runTest (port_stats.MultiFlowStats) ... (<class 'socket.error'>,
> error(9, 'Bad file descriptor'), <traceback object at 0xa3f802c>)
>     ok
>     runTest (port_stats.SingleFlowStats) ... ok
>     runTest (basic.EchoWithData) ... ok
>     runTest (basic.DescStatsGet) ... ok
>     runTest (basic.PacketOutMC) ... ok
>     runTest (basic.PacketOut) ... ok
>     runTest (basic.TableStatsGet) ... ok
>     runTest (basic.Echo) ... ok
>     runTest (basic.PortConfigMod) ... ok
>     runTest (basic.FlowMod) ... ok
>     runTest (basic.PortConfigModErr) ... ok
>     runTest (basic.BadMessage) ... ok
>     runTest (basic.PacketIn) ... ok
>     runTest (openflow_protocol_messages.ModifyStateModify) ... ok
>     runTest (openflow_protocol_messages.ModifyStateDelete) ... FAIL
>     runTest (openflow_protocol_messages.ReadState) ... ok
>     runTest (openflow_protocol_messages.BarrierRequestReply) ... ok
>     runTest (openflow_protocol_messages.PacketOut) ... ok
>     runTest (openflow_protocol_messages.ConfigurationRequest) ... ok
>     runTest (openflow_protocol_messages.EchoWithoutBody) ... ok
>     runTest (openflow_protocol_messages.PacketIn) ... ok
>     runTest (openflow_protocol_messages.FeaturesRequest) ... ok
>     runTest (openflow_protocol_messages.ModifyStateAdd) ... FAIL
>     runTest (openflow_protocol_messages.Hello) ... ok
>     runTest (flow_expire.FlowExpire) ... FAIL
>     runTest (actions.ModifyL4Dst) ... ok
>     runTest (actions.Announcement) ... ok
>     runTest (actions.NoAction) ... ok
>     runTest (actions.AddVlanTag) ... ok
>     runTest (actions.ModifyL2Src) ... ok
>     runTest (actions.ModifyTos) ... ok
>     runTest (actions.ForwardLocal) ... ok
>     runTest (actions.ForwardAll) ... ok
>     runTest (actions.ModifyL4Src) ... ok
>     runTest (actions.ForwardTable) ... ok
>     runTest (actions.ForwardController) ... ok
>     runTest (actions.ForwardFlood) ... ok
>     runTest (actions.ModifyL2Dst) ... ok
>     runTest (actions.ForwardInport) ... ok
>     runTest (actions.ModifyL3Dst) ... ok
>     runTest (actions.VlanPrio2) ... ok
>     runTest (actions.VlanPrio1) ... ok
>     runTest (actions.ModifyL3Src) ... ok
>     runTest (actions.ModifyVlanTag) ... ok
>     runTest (detailed_contr_sw_messages.EmerFlowTimeout) ... FAIL
>     runTest (detailed_contr_sw_messages.DeleteNonexistingFlow) ... ok
>     runTest (detailed_contr_sw_messages.StrictVsNonstrict) ... FAIL
>     runTest (detailed_contr_sw_messages.HardTimeout) ... FAIL
>     runTest (detailed_contr_sw_messages.IdleTimeout) ... FAIL
>     runTest (detailed_contr_sw_messages.OverlapChecking) ... FAIL
>     runTest (detailed_contr_sw_messages.ModifyAction) ... ok
>     runTest (detailed_contr_sw_messages.SendFlowRem) ... FAIL
>     runTest (detailed_contr_sw_messages.FlowTimeout) ... FAIL
>     runTest (detailed_contr_sw_messages.NoOverlapChecking) ... FAIL
>     runTest (detailed_contr_sw_messages.Outport2) ... FAIL
>     runTest (detailed_contr_sw_messages.Outport1) ... FAIL
>     runTest (detailed_contr_sw_messages.DeleteEmerFlow) ... FAIL
>     runTest (detailed_contr_sw_messages.StrictModifyAction) ... FAIL
>     runTest (detailed_contr_sw_messages.IdenticalFlows) ... FAIL
>     runTest (detailed_contr_sw_messages.MissingModifyAdd) ... FAIL
>     runTest (flow_stats.SingleFlowStats) ... FAIL
>     runTest (flow_stats.TwoFlowStats) ... ok
>     runTest (flow_stats.AggregateStats) ... ok
>     runTest (flow_stats.EmptyFlowStats) ... ok
>     runTest (flow_stats.EmptyAggregateStats) ... ok
>     runTest (pktact.ModifyL4Dst) ... ok
>     runTest (pktact.ModifyL2Src) ... ok
>     runTest (pktact.AllPlusIngress) ... ok
>     runTest (pktact.DirectArpPackets) ... ok
>
> and presumably more, but now I'm going to bed.
> _______________________________________________
> openflow-dev mailing list
> openflow-dev at lists.stanford.edu
> https://mailman.stanford.edu/mailman/listinfo/openflow-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openvswitch.org/pipermail/ovs-dev/attachments/20121026/d5207c15/attachment-0003.html>


More information about the dev mailing list