是否可以判断应用程序是否已禁用Nagle算法?

时间:2010-08-21 11:38:14

标签: performance tcp reverse-engineering

给出在Linux PC上运行的二进制应用程序。是否可以确定它是否禁用Nagle的算法。

一种方法是在wireshark中查看输出并根据时间差异。你能告诉我一个从wireshark输出中找到它的可靠方法吗?

有更直接的方法吗?我可以跟踪设置tcp_nodelay选项的系统调用吗?

目标应用程序可以是Web服务器,应用程序服务器,数据库侦听器或任何其他服务器进程。

1 个答案:

答案 0 :(得分:2)

最直接的方法是跟踪setsockopt系统调用。

从外面看,你只能注意到它禁用Nagle并且表现不好(快速发送大量小碎片)。如果它禁用Nagle并且表现良好,则无法从外部注意到。