Achieving High Throughput by Transparent Network Interface Virtualization on Multi-core Systems

Huiyong Zhang, Yuebin Bai, Zhi Li, Niandong Du, Wentao Yang
{"title":"Achieving High Throughput by Transparent Network Interface Virtualization on Multi-core Systems","authors":"Huiyong Zhang, Yuebin Bai, Zhi Li, Niandong Du, Wentao Yang","doi":"10.1109/CloudCom.2010.62","DOIUrl":null,"url":null,"abstract":"Though with the rapid development, there remains a challenge on achieving high performance of I/O virtualization. The Para virtualized I/O driver domain model, used in Xen, provides several advantages including fault isolation, live migration, and hardware independence. However, the high CPU overhead of driver domain leads to low throughput for high bandwidth links. Direct I/O can achieve high performance but at the cost of removing the benefits of the driver domain model. This paper presents software techniques and optimizations to achieve high throughput network I/Ovirtualization by driver domain virtualization model on multicore systems. In our experiments on multi-core system with a quad-port 1GbE NIC, we observe the overall throughput of multiple guest VMs can only be 2.2Gb/s, while the link bandwidth is 4Gb/s in total. The low performance results from the disability of driver domain to concurrently serve multiple guest VMs running bandwidth-intensive applications. Consequently, two approaches are proposed. First, a multi task let net back is implemented to serve multiple net fronts on currently. Second, we implement a new event channel dispatch mechanism to balance event associated with networkI/O over VCPUs of driver domain. To reduce the CPU overhead of the driver domain model, we also propose two optimizations: lower down event frequency in netback and implement LRO in net front. By applying all the above techniques, our experiments show that the overall throughput can be improved from the original 2.2Gb/s to 3.7Gb/s and the multi-core CPU resources can be utilized efficiently. We believe that the approaches of our study can be valuable for high throughput I/O virtualization in the coming multi-core era.","PeriodicalId":130987,"journal":{"name":"2010 IEEE Second International Conference on Cloud Computing Technology and Science","volume":"2007 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2010-11-30","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"3","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2010 IEEE Second International Conference on Cloud Computing Technology and Science","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/CloudCom.2010.62","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 3

Abstract

Though with the rapid development, there remains a challenge on achieving high performance of I/O virtualization. The Para virtualized I/O driver domain model, used in Xen, provides several advantages including fault isolation, live migration, and hardware independence. However, the high CPU overhead of driver domain leads to low throughput for high bandwidth links. Direct I/O can achieve high performance but at the cost of removing the benefits of the driver domain model. This paper presents software techniques and optimizations to achieve high throughput network I/Ovirtualization by driver domain virtualization model on multicore systems. In our experiments on multi-core system with a quad-port 1GbE NIC, we observe the overall throughput of multiple guest VMs can only be 2.2Gb/s, while the link bandwidth is 4Gb/s in total. The low performance results from the disability of driver domain to concurrently serve multiple guest VMs running bandwidth-intensive applications. Consequently, two approaches are proposed. First, a multi task let net back is implemented to serve multiple net fronts on currently. Second, we implement a new event channel dispatch mechanism to balance event associated with networkI/O over VCPUs of driver domain. To reduce the CPU overhead of the driver domain model, we also propose two optimizations: lower down event frequency in netback and implement LRO in net front. By applying all the above techniques, our experiments show that the overall throughput can be improved from the original 2.2Gb/s to 3.7Gb/s and the multi-core CPU resources can be utilized efficiently. We believe that the approaches of our study can be valuable for high throughput I/O virtualization in the coming multi-core era.
通过透明网络接口虚拟化实现多核系统的高吞吐量
随着I/O虚拟化的快速发展,实现高性能的I/O虚拟化仍然是一个挑战。Xen中使用的Para虚拟化I/O驱动程序域模型提供了几个优点,包括故障隔离、实时迁移和硬件独立性。但是,驱动域的高CPU开销导致高带宽链路的吞吐量较低。直接I/O可以实现高性能,但代价是取消了驱动程序域模型的好处。本文介绍了在多核系统上利用驱动域虚拟化模型实现高吞吐量网络I/ o虚拟化的软件技术和优化方法。在我们使用四端口1GbE网卡的多核系统实验中,我们观察到多个来宾虚拟机的总吞吐量只能达到2.2Gb/s,而链路带宽总共为4Gb/s。导致性能低下的原因是驱动域无法同时服务多个运行带宽密集型应用的客户虚拟机。因此,提出了两种方法。首先,实现了一种多任务的让网后台服务于当前多个网络前端。其次,我们实现了一种新的事件通道调度机制来平衡与驱动域vcpu上的网络i /O相关的事件。为了减少驱动域模型的CPU开销,我们还提出了两种优化方法:降低网络后端的事件频率和实现网络前端的LRO。实验表明,采用上述技术后,整体吞吐量由原来的2.2Gb/s提高到3.7Gb/s,多核CPU资源得到了有效利用。我们相信我们的研究方法对于即将到来的多核时代的高吞吐量I/O虚拟化是有价值的。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信