Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 13 May 2011 05:55:19 +0000 (UTC)
From:      Janne Snabb <snabb@epipe.com>
To:        "Justin T. Gibbs" <gibbs@FreeBSD.org>
Cc:        freebsd-xen@FreeBSD.org, Laurent Cligny <laurent.cligny@steadinet.fr>
Subject:   Re: [FreeBSD 8.2 amd64 XENHVM] DomU terrible network performance trought NAT
Message-ID:  <alpine.BSF.2.00.1105130514350.62994@tiktik.epipe.com>
In-Reply-To: <4DCC3FAA.9030608@FreeBSD.org>
References:  <4DCBEEE0.9060705@steadinet.fr> <alpine.BSF.2.00.1105121536270.62994@tiktik.epipe.com> <4DCC3FAA.9030608@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, 12 May 2011, Justin T. Gibbs wrote:

> Do you recall which path was slow (rx or tx from the perspective of
> the FreeBSD driver) and what the relative difference in performance
> was between the two approaches?

No, which is really stupid (that is why I haven't published these
numbers before). The numbers are as follows, for simple iperf TCP
test, with all networking, kernel, etc. settings on default values:

			input (Mbit/s)	output (Mbit/s)
Xen FreeBSD (rtl)	  724		  200
Xen FreeBSD (xn)	   44		 1700
Xen Linux (xn)		 8570		 2340
KVM FreeBSD (e1000)	  475		  495
KVM FreeBSD (rtl)	 1100		   85
KVM Linux (e1000)	  785		  890
KVM Linux (virtio)	  585		  715
dom0 <-> dom0		18500		18500

The table above will probably not render correctly, but hopefully
it is somewhat readable. The first column indicates the hypervisor
used, the guest OS and the network driver in the guest. dom0 was
running Debian's 2.6.32-5-amd64 Linux kernel. Xen was Debian's
4.0.1. Linux guests were running Debian's 2.6.32-5-amd64. FreeBSD
was 8.2 amd64 with the "too many frags" and "panic: do something
smart" patches to make it usable with Xen at all.

I did not test multiple concurrent connections, multiple virtual
machines transferring data simultaneously, mixtures of different
kinds of data, CPU load nor anything like that which is also relevant.
Only the raw TCP speed was measured to figure out if there is any
significant difference: and yes there was as can be seen from the
numbers above.

Unfortunately I have no recollection and forgot to write down if
input was input from dom0's perspective or domU's perspective. They
should be the same way around for all the tests though.

My lesson was that it does make sense to select your network drivers
carefully in a virtualized environment.

I also tried two different virtio patches for FreeBSD with KVM, but
one of them did not work at all and the another one gave worse
results than any sensible emulated hardware.

--
Janne Snabb / EPIPE Communications
snabb@epipe.com - http://epipe.com/



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?alpine.BSF.2.00.1105130514350.62994>