我们正在从 Solaris 迁移到 Redhat Linux,并尝试复制我们的低延迟设置,在 Solaris 上,该设置包括与 TCP NO DELAY 和 NAGLE ALGORITHM 相关的 ndd 设置。我感觉这些参数并非全系统可配置,但仍然找到了一些信息。
我们已将我们的应用程序配置为不使用 nagle 算法运行,但这还不够。
我们发现了一个有趣的 RH文章谈论展示 tcp_delack_min 参数,但是,当浏览 /proc/sys/net/ipv4/ 时,我在那里找不到它。是否可以安全地假设只需“添加”文档中所述的参数就足够了,或者更确切地说,该版本不支持该选项(很奇怪,因为 RH 指定它“可以在标准 Red Hat Enterprise Linux 安装上执行”)?
还有其他想法/建议可以进一步改善延迟吗?
谢谢
答案1
TCP_NODELAY 和 Nagle 在 Linux 上都是基于每个套接字的。
运行实时内核可能会有帮助。
答案2
tcp_delack_min 是一个 tcp 参数,仅在 RHEL 的 MRG“版本”(实时内核)中可用,尽管他们的文档说这是在攻击更多“实时”任务之前应该执行的优化。