如此多的重传NSX启用vSphere的vDS

我目前正在testingVMware NSXnetworking环境并遇到了一些麻烦。

我的环境是:

  • 具有3个主机和NSX组件的pipe理集群位于2个专用主机上
  • 计算2个主机的集群
  • 单个1Gbps交换机
  • vSphere版本6.0和NSX版本6.2
  • 每个用于pipe理和iSCSI的所有主机(VLAN标记)
  • 每个用于Transitnetworking的主机都有一个专用的UTP线路(用于VMstream量)
  • 每个外部networkingpipe理主机一个专用的UTP线路

Host H上的VM V通过NSXnetworking向Host I上的VM W发送数据时,发生严重的传输。 我在下面testing了很多情况:

有问题的案例:

  1. V在单个会话中发送大约20MB到W :大约19MB的重传
  2. V在单个会话中发送大约50MB到W :仅19MB的重传
  3. V在30个并发会话中向W发送约2MB:随机位置的重传。

当发现这种情况时,我发现从Hvmnic (上行链路)的数据包转储发现一些数据包顺序不匹配(可能是重传的原因),并且延迟的数据包是uniq(以前不在转储中),但是从vDS下行转移到VM VV sfw ,它们发生两次(原始数据包和重新发送的数据包)。 所以我认为,问题是在发送方堆栈上丢失了一些数据包,特别是在VM V和Host H的物理网卡之间。

为了将数据path/堆栈分成两个扇区并独立检查,我在同一主机H上testing了与另一个目标VM X相同的情况。 然后我得到干净的转储,我发现同一主机上的虚拟机之间没有重传问题。 (所以我认为,vDS本身和以上都没有错误点。)

接下来,我testing了下面的案例来检查问题是与大量数据stream量还是过滤和/或封装有关:

  1. Network I/O Control启用相同的testing:同样的问题
  2. 同样的testing没有Network I/O Control :一些差异相同的问题。
  3. 同样的testing,但减缓与NI/OC Limit throuput:同样的问题
  4. TSO相同的testing禁用V (e1000驱动程序)的vnic :同样的问题
  5. vDS MTU 9000相同的testing:同样的问题与更多的问题

一些不同的事情是:

当启用Network I/O Control ,首先RTT在再传输之前增加,然后在重传完成之后, RTT值处于稳定范围内。

但是,当Network I/O Control被禁用时,在传输之后的RTT也像启动一样再次启动。

一个奇怪的是,虽然我把MTU设置为9000,但是embeddedVxLAN包的UTP包的大小在1600以下,所以MTU 9000的影响不受影响。

我有麻烦了 我能得到一些帮助吗? 谢谢。


编辑—

如果虚拟机处于正常状态,禁用NSX ,则vDS一切正常。


编辑*在OpenvSwitch有没有类似的问题?