为什么在Windows 2003上的IIS和FTP服务器应用程序之间看到不同的TCP行为?

我正在比较一个10MB文件下载文件的Wireshark痕迹:

  1. FileZilla FTP服务器和
  2. IIS(使用HTTP)在同一台Windows 2003服务器上。

FTP下载执行得更快,并且跟踪显示服务器按预期工作,每接收到一个ACK就向客户端发送更多的数据:

FTP TCPTrace部分 链接到全尺寸的图像

HTTP服务器跟踪显示更多突发模式。 发送突发的时间有时与从客户端收到的任何ACK无关(以红色圈出):

HTTP TCPTrace部分 链接到全尺寸的图像

任何人都有一个build议,为什么IISstream量是这样的?

更新:我们已经尝试修改http.sysregistry设置 (build议将MaxBytesPerSend设置为256k,将MaxBufferedSendBytes设置为64k)。 更改MaxBytesPerSend似乎通过增加飞行数据量来提高性能,但我们仍然看到相同的突发模式。

我怀疑这可能与Windows内部的QoS准入控制有关。 IIS可能会表示服务质量,FileZilla可能会直接与networking通话。

可能是SACKing。 如果我正确地阅读,HTTP正在踢出FTP传输速度明智的垃圾。

客户端的确认看起来不是特别好的。 客户是什么?