首页 > 网络 > 云计算 >

openstack环境下服务器网络时延情况

2017-02-06

openstack环境下服务器网络时延情况:openstack环境下的虚拟机之间通信时时延较大,比实体机多零点几毫秒。我同事Walter和我做了一些测试和研究(主要是他)。得出以下结果。

openstack环境下服务器网络时延情况:openstack环境下的虚拟机之间通信时时延较大,比实体机多零点几毫秒。我同事Walter和我做了一些测试和研究(主要是他)。得出以下结果。

由于采用了虚拟化的技术,虚拟机之间的通信会有一定的延迟增大现象。

其原因主要来自两方面:

1) 虚拟化带来的延迟。例如:a)采用virtio-network模块带来的从物理网卡到虚拟机的转发开销, b)采用OpenVswitch带来的数据包做tag的开销。

2) 宿主机资源利用率过高导致的竞争。主要是由于Hypervisor CPU等资源被占用导致的竞争开销。

基于这些,我们尝试了以下改进措施。以下测试场景都是用一台宿主机上的同一个网段的两台虚拟机之间做延迟测试(ping)。

1 )把虚拟机迁移到更好的宿主机。把虚拟机的宿主机从R720更换成R730。

结果可以看到:平均延迟从0.595ms降低到0.398ms

2 )对宿主机进行优化,降低资源利用率。

结果进一步取得优化:平均延迟从0.398ms降低到0.308ms

3 )优化虚拟机的配置,优化虚拟化的参数。『修改虚拟机的grub配置文件(比如在rhel72的 /boot/grub/grub.conf一百行左右的linux16 /boot/vmlinuz-3.10.0-327.el7.x86_64.......后面),添加intel_idle.max_cstate=0 idle=poll』

结果延迟进一步降低:平均延迟从0.308ms降低到0.142ms

综上,由于采用虚拟化技术,网络延迟是不可以避免的。通过一系列的优化,可以大大降低延迟(从0.593ms降低到0.142ms)。

对宿主机和虚机机的定制化措施是以降低通适性和经济性为代价的,考虑到虚拟机主要应用的场景不是对性能要求很高的生产环境和性能测试环境,不推荐全部采用。

相关文章
最新文章
热点推荐