0

I'm trying to develop a system with Virtualbox that involves streaming uncompressed high resolution video (1440p) from the guest to the host with as close to zero latency as possible. I've been using iperf to measure network bandwidth between the guest and the host with a few different configurations.

Test 1: Host to host, ~40Gbits/s

Test 2: Guest to host, NAT, ~2.5Gbits/s

Test 3: Guest to host, Bridged Adapter, ~20Gbits/s

Test 4: Guest to host, NAT, using settings found here, less than 1Gbits/s

From what I calculated, the task I'm trying to accomplish would require about 5-6 Gbits/s. All of the configurations I've tried with the NAT adapter don't have enough bandwidth, and the Bridged Adapter is not ideal because it introduces a lot of extra latency by going through physical networking hardware. I don't really understand why the NAT adapter can't run at speeds similar to the localhost loopback on the host machine. I'm not very experienced with low level networking and I've searched all over the web for a solution.

TL;DR: Does anyone know how I can achieve a high bandwidth connection from the guest to the host without using a bridged adapter?

4
  • What ethernet adapter type do you have selected for your virtual machine?
    – Layne B
    Commented Feb 12, 2021 at 3:32
  • I've tried PCnet-FAST III and the Paravirtualized Network (virtio-net). The latter was a bit faster but not much. Commented Feb 12, 2021 at 3:35
  • Hmm, wish I could be of more help. You might try the suggestions presented in the Oracle documentation here -> virtualbox.org/manual/ch06.html#network_performance But it sounds like you've already gone through most of what is presented there.
    – Layne B
    Commented Feb 12, 2021 at 3:40
  • Do you happen to have latency measurements for these different cases? I'm just curious to know how bad the latency was in the bridged case compared to other cases. I don't think the bridged case should have to round-trip through any Ethernet hardware.
    – Spiff
    Commented Feb 12, 2021 at 4:00

1 Answer 1

0

Well, it looks like I solved my own problem. I added 2 network adapters to the virtual machine, a host-only adapter, and a NAT adapter. I was able to access the host machine using the ip address of the host-only adapter and got roughly four times the bandwidth of the NAT adapter. This brought me to 9-10 Gbits/s which is enough for me, but if you need more than that, I'm not sure it's possible.

I added the NAT adapter so the VM is still able to access the outside network as well as the host machine.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .