Multiqueue networking
Multiqueue networking
Posted Jul 18, 2008 9:56 UTC (Fri) by willp (guest, #52971)Parent article: Multiqueue networking
(Virtualization) Will this help widen the networking bottleneck that exists for a host OS that runs many virtual machines (since it's currently a many:one sharing of one queue)...?
This is discussed elsewhere at ACM: http://www.acmqueue.org/modules.php?name=Content&pa=showpage&pid=527 as a problem that needs a solution... "The use of multiqueue network interfaces in this way should improve network virtualization performance by eliminating the multiplexing and copying overhead inherent in sharing I/O devices in software among virtual machines." for instance...
Perhaps this is a path for KVM development?
Posted Jul 24, 2008 0:10 UTC (Thu)
by efexis (guest, #26355)
[Link]
Multiqueue networking
Virtual machine networking performance can be improved by virtualising tcp offloading
functions often found in hardware network cards. Instead of the virtual machine doing all the
tcpy stuff then ethernetty stuff and passing the packet to the host machine which then has to
do some processing on it as well, the virtual machines asks its hardware accelerator functions
to take care of it... this can put it more quickly into the hosts actual hardware and save a
chunk of double processing.
I'm not sure about multiple hardware queues. The hardware, drivers, and virtual machine would
have to be designed for it, allowing each virtual machine direct access to a hardware queue,
with the hardware potentially having to do virtual memory mapping so the virtual machine can't
use it to grab data from the hosts memory, and then the hardware deciding how to schedule
packets from each machine over each other. Aside from all of this, giving a virtual machine
direct access to the real hardware somewhat defeats the purpose of it.
