通过多个套接字传输文件比仅使用一个套接字更快吗?

4 sockets network-programming tcp winsock

在这个旧项目中(从2002年开始),它说如果你将文件分成多个块然后使用不同的套接字传输每个块,它将比使用一个套接字整体传输它快得多.我还记得(许多年前)读过一些下载管理器也使用这种技术.这有多准确?

Bri*_*ite 6

鉴于具有大窗口或小型RTT的单个TCP连接可以使任何网络链路饱和,我看不出您期望从多个TCP会话中获得什么好处.每个新的部分都将以慢启动开始,因此传输速率低于已建立的连接.

TCP已经具有高吞吐量,高延迟连接(" 窗口缩放选项 ")和处理数据包丢失的代码.尝试通过并行连接对此进行改进通常会因更多故障情况和增加的数据包丢失(由于单个连接上的TCP可以管理的拥塞)而产生负面影响.

多个TCP会话仅在您同时从不同对等方进行提取且网络瓶颈在本地网络之外(如bittorrent)或服务器正在为每个连接进行带宽限制时(此时您正在优化服务器,不是TCP或网络).

  • @Steve:也许他只是不知道自己在说什么? (2认同)
  • 一种可能性是服务器很忙,因此通过打开多个连接,他有效地获取了“多块带宽蛋糕”。也许他或服务器的 TCP 实现很差;那是2002年。 (2认同)