多队列技术已经在今天的原生操作系统中得到广泛应用,如 Linux 操作系统在 2.6.24 版本的内核中就引入了该项技术。它利用硬件提供的多个网络包发送队列和接收队列特性,将重要进程的网络操作直接绑定到一个或多个网络包处理队列上,从而由硬件保证网络带宽。
一个典型的多队列网卡具有硬件网络包分发功能,可以基于不同的策略将收到的包分发给不同的队列,每一个队列可以有独立的 DMA 引擎,以及独立的中断处理资源。这意味着拥有独立队列的客户机在网络包处理过程中可以减少虚拟机监控器的介入,从而实现网络 I/O 的高性能,例如英特尔公司的 VMDq 网卡。
http://www.intel.com/content/www/us/en/virtualization/vmdq-technology-paper.html