1© 2014 VMware Inc. All rights reserved.
OVS Kernel testingJoe Stringer, Andy Zhou
{joe,azhou}@ovn.org
OVScon 2015-11-17
Dive in, Try it out!# $EDITOR tests/system-traffic.at
# make check-kernel
2
User space unit testing
• Current unit testing framework– Based on AutoTest framework– Currently has ~1718 tests– Good coverage for OVS user space features– Experience of a good test framework• Fast• Repeatable• Easy to write and troubleshoot
OVScon 2015-11-17
3
Expanding datapath testing
• Until recently, OVS testing has been userspace-only– Pretend user/kernel datapaths are the same– Rely on out of band datapath testing
• So, we started building out a kernel datapath testsuite– Kernel datapath is getting more complex– Philosophy: Any testing is better than no testing– First major user: Connection tracking
OVScon 2015-11-17
4
OVS kernel test topology
OVScon 2015-11-17
Kernel
OVSNetworkNamespace
NetworkNamespace
veth pair
veth pair
Virt
ual M
achi
ne
5
Connection Tracking Example
OVScon 2015-11-17
Kernel
OVS + Conntrack
Flows
WgetHTTP/FTP
Client
tests/test-l7.pyHTTP/FTP
Server
6
Suggestions? Patches?
Improve testing infrastructure
• Vagrant boxes for testing• Kernel compatibility• Dealing with kernel crashes• Integration with CI tools
Expanding to system tests
• Interactions between features• DPDK datapath testing• Performance testing• Scale testing
OVScon 2015-11-17