Page 1 of 1
Networking speed
Posted: 15. Aug 2009, 22:22
by spock
Hi,
I'm using Virtualbox 3.0.4 with Windows 7 RC as the Host OS and Opensolaris (Live-CD) as the guest. My focus is on maximum disk I/O and network performance as the Opensolaris guest is intended to act as a file server. Disk performance inside the guest actually seems quite good, approaching the platter speed of the hard disk that is hosting the .vdi image. However I seem to be limited to 100Mbps for the network. I'm using a host-only adapter (Intel E1000) and the guest thinks it's connected at 1Gbps but Windows Task Manager (host) clearly shows the "VirtualBox Host-Only Network" adapter as connected at 100Mbps. The only way I've come up with to test the throughput with the current configuration is to run (from the host) "pscp bigfile jack@192.168.56.102:/dev/null" and it is almost exactly 100Mbps. However that is using the SCP protocol which does incur CPU overhead so it could be a coincidence.
I've seen people talking about getting gigabit performance from host<->guest, but I can't tell exactly what I'm doing wrong. Any suggestions would be appreciated. Also I'm looking for other ways to test the throughput.
Thanks!
Re: Networking speed
Posted: 15. Aug 2009, 22:27
by vbox4me2
Try settings the NIC properties fixed to 1gb.
Re: Networking speed
Posted: 15. Aug 2009, 23:38
by spock
I've looked for a setting like that but I can't find one anywhere

Any hints where it is supposed to be?
Re: Networking speed
Posted: 16. Aug 2009, 00:28
by Perryg
VirtualBox Users Guide
See Chapter 8. VBoxManage reference
VBoxManage modifyvm <uuid|name> [--nicspeed<1-N> <kbps>]
Also section 8.5.3. Networking settings
Re: Networking speed
Posted: 16. Aug 2009, 00:51
by spock
Interesting. I wasn't aware of the --nicspeed option (indeed, there isn't much mention of it in the manual nor on Google). Anyway I used the command:
Code: Select all
VBoxManage modifyvm "OpenSolaris LiveCD" --nicspeed1 1000000
Now here is the output of "VBoxManage showvminfo...":
Code: Select all
VirtualBox Command Line Management Interface Version 3.0.4
(C) 2005-2009 Sun Microsystems, Inc.
All rights reserved.
Name: OpenSolaris LiveCD
Guest OS: OpenSolaris (64 bit)
UUID: bea9b4c3-b05e-4e8d-9055-582a7babae9c
Config file: C:\Users\J\.VirtualBox\Machines\OpenSolaris LiveCD\OpenSolaris LiveCD.xml
Memory size: 1536MB
VRAM size: 17MB
Number of CPUs: 4
Boot menu mode: message and menu
Boot Device (1): Floppy
Boot Device (2): DVD
Boot Device (3): HardDisk
Boot Device (4): Not Assigned
ACPI: on
IOAPIC: on
PAE: off
Time offset: 0 ms
Hardw. virt.ext: on
Nested Paging: on
VT-x VPID: off
State: running (since 2009-08-15T22:37:44.441000000)
Monitor count: 1
3D Acceleration: off
Floppy: empty
SATA: disabled
IDE Controller: PIIX4
Primary master: I:\Virtual Machines\OpenSolaris.vdi (UUID: b9ab46f6-daca-4860-8c58-075ce73f0fb2)
DVD: Z:\temp\osol-0906-x86.iso (UUID: 2806c8b5-2a81-4747-a9a1-e1068f3ffcc3)
NIC 1: MAC: 080027C84503, Attachment: Host-only Interface 'VirtualBox Host-Only Ethernet Adapter', Cable connected: on, Trace: off (file: none), Type: 82540EM, Reported speed: 1000 Mbps
NIC 2: disabled
NIC 3: disabled
NIC 4: disabled
NIC 5: disabled
NIC 6: disabled
NIC 7: disabled
NIC 8: disabled
UART 1: disabled
UART 2: disabled
Audio: disabled
Clipboard Mode: Bidirectional
Video mode: 1280x1024x32
VRDP: disabled
USB: disabled
USB Device Filters:
<none>
Available remote USB devices:
<none>
Currently Attached USB Devices:
<none>
Shared folders: <none>
VRDP Connection: not active
Clients so far: 0
Guest:
Statistics update: disabled
However, Windows (host) Task Manager still shows 100Mbps and I get the same low throughput. The guest does think it's connected at 1Gbps, but the host doesn't. I'm going to try bridged networking, in case it's a problem with host-only.
Re: Networking speed
Posted: 16. Aug 2009, 01:39
by spock
OK bridged networking is somewhat more successful. I'm getting 400Mbps between the guest OS and another machine on my LAN. From the host OS to the same LAN machine I get 950Mbps so there is some overhead but we're getting closer. Strangely, transfers from the host OS to the guest OS on the same PC are still capped at 100Mbps. I'm starting to get suspicious...

Re: Networking speed
Posted: 16. Aug 2009, 02:05
by sej7278
spock wrote:OK bridged networking is somewhat more successful. I'm getting 400Mbps between the guest OS and another machine on my LAN. From the host OS to the same LAN machine I get 950Mbps so there is some overhead but we're getting closer. Strangely, transfers from the host OS to the guest OS on the same PC are still capped at 100Mbps. I'm starting to get suspicious...

never trust benchmarks, or progress bars - i really doubt you're getting 950mbps, the 400mbps is more realistic, especially if read/writing to disk and not null, fastest i've ever seen on consumer-grade hardware is about 700mbps and thats with nic bonding, i tend to average around 450mbps on various machines i have here for ssh/nfs/rsync etc.
of course host to guest transports are limited as you're reading and writing to the same disk (which at best will be half of 120mbps using today's disks, unless raid striping) that's more likely to be the bottlekneck, not the network speed - i think the 100 vs 1000 is cosmetic anyway, it just runs as fast as the host can manage.
try ftp instead of ssh for lower cpu/protocol overhead btw.
Re: Networking speed
Posted: 16. Aug 2009, 02:28
by spock
Hi sej,
Thanks for the advice. I am using http now instead of ssh/scp, and that's where I got 950Mbps (verified by timing it). I'm reading the input file from the system cache on the server and writing it to /dev/null on the client, so there are no disks involved. I'm not using NIC bonding or fancy hardware (Intel Pro/1000MT gig-E cards IIRC). For the host->guest transfers I'm also using system cache and /dev/null so there's no disk limit there either. Unfortunately my application has a performance requirement of at least 600Mbps so I need to keep trying...
BTW disks are more like 120MBps not 120Mbps, so a single disk can easily flood a Gig-E network.