为什么容器networking吞吐量低

我使用Docker创build了两个容器,并通过Netperf来测量networking性能。 然而吞吐量结果很低,约为563.81 Mb / s。 不是通过主存储器完成的2个容器/过程之间的通信? 有没有人有一个想法,为什么我有这么低的吞吐量。 我需要一个特定的configuration吗?

谢谢,Genc

docker-user邮件列表上已经提出了这个问题,经过一番调查,我们发现内核3.8的虚拟机的性能performance“不是很好”,内核3.10显着提升了性能。

换一种说法:

  • 如果你使用裸机运行容器,那么无论你使用的是什么内核版本,你都可以(并且看到容器之间的传输速度非常快)。
  • 如果在虚拟机中运行容器(使用Xen,VirtualBox和KVM进行testing),那么如果使用内核最高为3.8运行,则容器到容器的传输速度可能会大幅下降。
  • 如果运行内核3.10或更高版本,无论设置如何,性能都会很好。

不过,我们还没有确定问题的根源。

Interesting Posts