【发布时间】:2009-08-07 08:17:52
【问题描述】:
我有一个小型服务器/客户端测试程序,我正在使用 TCP/IP 的无线电链路上运行,我注意到使用 wireshark 由于高延迟,我收到了很多重传。如何增加程序在尝试重传之前等待 ACK 的窗口?
操作系统更新: 服务器运行 Linux,客户端运行 Windows
【问题讨论】:
-
什么是操作系统?该机制可能因操作系统而异。
标签: c networking tcp
我有一个小型服务器/客户端测试程序,我正在使用 TCP/IP 的无线电链路上运行,我注意到使用 wireshark 由于高延迟,我收到了很多重传。如何增加程序在尝试重传之前等待 ACK 的窗口?
操作系统更新: 服务器运行 Linux,客户端运行 Windows
【问题讨论】:
标签: c networking tcp
在 Linux 中,您可以尝试使用 TCP_WINDOW_CLAMP 和 http://lxr.linux.no/linux+v2.6.30/include/linux/tcp.h#L85 中的其他选项。我认为可以使用setsockopt(man 3 setsockopt)来设置它们。
【讨论】:
这个问题确实需要澄清一下。
IMO,最好的解决方案应该是切换到异步套接字。这样超时处理就交给你了。
【讨论】: