Skip to content

A simple testing suite to compare Open vSwitch networking to standard bridging

Notifications You must be signed in to change notification settings

toddllm/Open-vSwitch-Testing

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

This package contains a simple set of scripts to aid in testing
Open vSwitch. In particular, to compare to standard Linux 
bridging.

Requirements
------------

1. A working Open vSwitch Installation. 

2. Currently there is only support for KVM, but other platforms,
such as Xen should be able to be supported. Patches welcome :)

Instructions for working with KVM and Open vSwitch have been 
committed. 
See: INSTALL.KVM (in a release > 1.0.0) or
http://openvswitch.org/cgi-bin/gitweb.cgi?p=openvswitch;a=blob_plain;f=INSTALL.KVM;hb=6cdd6a87ac43b4d7cc4cfe99f2ae4435afd38951

3. Primary testing has been done on Ubuntu 10.04. 

Dependencies include:

 - nbd-client

Install
-------

./install.sh /full/path/to/pre-compiled/openvswitch/source/directory


Usage
-----

At minimum you'll need:

1) A base guest disk image in qcow2 format, which you can create
with qemu-img -f qcow2 and then install into it or you can use a 
tool such as ubuntu-vm-builder, Stacklet, or other guest image 
creation tool to make a base image. You can also convert a raw 
disk image to qcow2 with qemu-img convert. Be sure to install
an SSH server that starts at boot in the images.

See also the section below "Other Notes" that describes the
files included in the default install.

2)A file named mac_addr that is stored in:
/usr/local/etc/ovs-testing/guests/<guest name>/ that contains a
valid MAC address (e.g 00:11:22:BB:AA:DD)

Two simple examples are included (guest1 and guest2), but a base
qcow2 is still needed. Since when the guests are started, they 
will get a temporary copy on write disk image based on that base 
image.

Beyond that, to run benchmarks (such as iperf, netperf, and 
netpipe-tcp) you'll need to have them available and be able
to install them on the appropriate systems and guests.

It is easiest to setup ssh keys for the user that will run
the tests, but if you choose not to you will be prompted for
ssh passwords

To generate graphs, you'll need gnuplot.

Example usage:

ovst-setup-network ovs eth0 br0 10.0.0.100
ovst-start-guest ovs /path/to/base/image.qcow2 guest1
ovst-start-guest ovs /path/to/base/image.qcow2 guest2
ovst-run-net-test netpipe guest1_ip guest2_ip guest1-guest2-netpipe.out
ovst-generate-graph guest1-guest2-netpipe.out

Other Notes
-----------

During install, a symlink to the openvswitch source tree is made
Other scripts, such as ovst-setup-network set that OVS_ROOT as 
/usr/local/src/ovs-src (the symlink). That can be overridden at
runtime by setting OVS_ROOT on the command line.

Example: export OVS_ROOT=/root/src/open-vswitch-1.x.x; ovst-setup-network ovs eth0 br0 10.0.0.100

To copy any custom files into the guest, you can add them here:
/usr/local/etc/ovs-testing/guests/<guest_name>/copy_into_filesystem/

Included in the default install are /etc/network/interface files that
hard code the guest1 and guest2 ip addresses to 10.0.0.201 and .202
respectively

About

A simple testing suite to compare Open vSwitch networking to standard bridging

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages