我有一个网络应用程序,需要以每秒60次的速度发送消息。这些消息通常是300-400字节,但可以高达1500字节.SO_SNDBUF的默认设置太小,如果网络延迟大于100 is,则限制可以发送的消息数量。
天真的解决方案就是将SO_SNDBUF的大小提高到大的地方。但是,取决于延迟时间和数据包大小,可能在64K到8MB之间。
Vista的一个新特性是TCP自动调优。自动调优监视tcp连接,并动态调整缓冲区大小以实现最佳通信。
我想在我们的windows机器上使用自动调优,所以我不需要猜测我的缓冲区大小应该是什么。
是否有方法在windows上安装microsoft或第三方tcp自动调谐器?
发布于 2010-06-03 20:12:50
听起来可能是通过TCP发送数据,而这些数据应该通过UDP、RTSP/RTP或SCTP发送。TCP不是用于实时敏感数据流的,它的目的是保证传递(最终;或者至少报告一个传递失败)。
https://serverfault.com/questions/147982
复制相似问题