We did a bunch of similar tests to determine the overhead caused by
kvm and limitations of the nova network architecture. We found that
VMs themselves were able to consistently saturate the network link
available to the host system, whether it was 1GE or 10GE, with
relatively modern node and network hardware. With the default
VLANManager network setup, there isn't much you can do to scale your
outbound connectivity beyond the hardware you can reasonably drive
with a single node, but using multi-host nova-network, we were able to
run a bunch of nodes in parallel, scaling up our outbound bandwidth
linearly. We managed to get 10 nodes, with a single VM per node, each
running 4 TCP streams, up to 99 gigabits on a dedicated cross country
link. There was a bunch of tuning that we needed to do, but it wasn't
anything particularly outlandish compared with the tuning needed for
doing this with bare metal. We've been meaning to do a full writeup,
but haven't had time yet.