KVM USB Passthrough Performance

hostapdkvm-virtualization

I have a CentOS 6.4 KVM host. I also have an ESXi 5.1 host. Under ESXi I am running a Ubuntu 12.04 guest with a USB TP-Link WN722N Wifi dongle. The Ubuntu guest runs an access point using hostapd. The setup under ESXi works swimmingly. Using the same .vmdk from ESXi (copy of course) on KVM with the same USB device passed through, I get very strange performance.
Upload speeds are near maximum, but downloading when connected to this access point yields a maximum of 300K. I never had performance like this under ESXi, so I suspect the problem lies in KVM somewhere.

In the guest, syslog, hostapd logs and dmesg produce nothing out of the ordinary, so I am having a hard time tracking down the problem.

Looking for advice to track down the problem or resolve it. I am certainly baffled by the near maximum speeds uploading, but polar opposite for downloading, I would think both up and downstream would suffer if there was a problem in KVM emulating the device.

Best Answer

Being the new guy to KVM I crossed signals about how I should construct the network on the KVM host. What I was doing wrong was I create a bridge but named it virbr0 which is the same as the host internal networking bridge. Somehow it managed to still pass on network data as if I was using the correct bridge, but of course with the terrible speeds I was seeing.

I reconstructed the host bridge using the standard notation br0. All is well now.

Related Topic