Joe*_*oel 3 debian tcp packetloss
我有一台带宽为 100 Mbps 的 debian 服务器。我的客户大多使用 3G 网络连接,平均持续时间为 3000 万。很多都有丢包,很少,但是每次丢一个包,tcp 链接都会停顿 30 秒或更长时间,然后一切才能恢复正常。
服务器使用大约 5% 的 CPU、内存和带宽。
我遇到了 debian 和调整 tcp 堆栈的选项列表:http : //www.linuxinsight.com/proc_sys_net_ipv4.html
我想知道哪个参数可以让服务器或客户端在数据包丢失时停顿更少的时间。任何的想法 ?
很难排除数据包丢失的问题——TCP 真的不喜欢它,并且非常强烈地假设它是使用容量过剩的标志,而不是不可靠的网络。使用 3G 链接...并非总是如此。
http://linuxgazette.net/135/pfeiffer.html记录了如何选择替代的拥塞控制算法,并有关于 Linux 内核中一些可用选项的说明。
您几乎肯定想要tcp_frto
启用,因为它旨在与无线电网络等间歇性丢失环境一起工作,并且与 Internet 不同。
tcp_maxreordering
如果您在窗口很大时遇到损失,您可以考虑将其提高到默认值以上。
确保 SACK 和类似功能处于开启状态;我怀疑您是否已将它们关闭,但以防万一……
除此之外,没有那么多东西可以真正帮助您。拥塞控制响应,尤其是恢复是提高性能的关键。但是,不要指望奇迹,无论您做什么,都不要假设没有彻底测试就可以使生活变得更好!
归档时间: |
|
查看次数: |
1752 次 |
最近记录: |