我正在使用QEMU虚拟化KVM VPS。我已经关闭了主机网络接口上的gso,tso,tx,rx之类的所有内容,并且我的VPS使用VirtIO作为NIC。当我在主机上进行速度测试时,通常会导致大约800 Mbps的下行链路和600 Mbps的上行链路。但是,当我在VPS内进行相同的测试时,只能获得300/200 Mbps,就好像速度限制在300 Mbps。但是,在我检查了所有内容之后,没有找到导致网络性能不佳的原因。
有什么方法可以进一步提高KVM VPS的网络性能?我的主机正在使用双至强E5530(8个核心16线程),并具有64 GiB的物理内存和大约100 VPS(主要是256 MiB内存/ 1核心)正在运行。主机的平均负载约为3.0。主机和VPS都在主机上使用相同的NIC,并且网桥已正确设置。
最佳答案
在从Xen到KVM的迁移中,我遇到了一些问题,研究了我们得出以下结论的情况。
1.-我们获得了最佳性能,是将一些新的NIC插入服务器,并将pci设备分配给VPS。
您将获得与未虚拟化相同的性能。
问题:
您需要链接到新的外部NIC控制器的VPS.Pci直通。
您要配置的每个端口都需要一个网络控制器。搜索iommu信息。
忘记在分配了pci的主机之间进行实时迁移。
2.-使用virtio驱动程序和性能调整。
我们获得了更好的性能,但无法与pci直通比较。
来自KVM的一些研究表明,它们可以达到出色的性能,我不能说这不是真的,但是我无法复制该性能。
http://www.linux-kvm.org/page/Using_VirtIO_NIC
调音:
遵循下一个指南,您可以找到一些技巧以获得最佳性能。
我们注意到多队列virtio-net方法有一个重要的改进,但我想如果您的VPS仅使用一个内核,这对您将无用。
https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/Virtualization_Tuning_and_Optimization_Guide/chap-Virtualization_Tuning_Optimization_Guide-Networking.html#sect-Virtualization_Tuning_Optimization_Guide-Networking-General_Tips
关于linux - 如何提高KVM VPS的网络性能,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38682850/