使用并行TCP连接的数据传输速度较慢



我使用TCP AsyncSocket使用本地连接(使用host作为本地IP地址)将大文件从一台机器传输到另一台机器。

首先,我设置了单个TCP套接字连接,感觉数据传输速率很慢。大约1mb/秒。

为了使它更快,我创建了10个TCP套接字(连接在不同线程的不同端口上),并开始同时读取文件分区。但这并没有什么区别。传输速率几乎与单个TCP套接字连接相同(甚至更慢)。

你知道吗?为什么多个TCP套接字不并行传输数据?有什么方法或建议可以通过TCP快速传输文件吗?

并行I/O操作只有在I/O通道未饱和且任务是单核绑定时才有帮助。

很可能,添加额外的I/O通道实际上会减慢速度,因为您现在有多个客户端竞争稀缺资源。

你需要弄清楚的是你的瓶颈在哪里?只有当您量化了性能问题的实际原因之后,您才能修复它。

最新更新