ping 不再计算微秒

ping 不再计算微秒

今天我决定el5用 yum 更新我多年前的旧内核。我不知道的是,当时运行的内核是定制的,更新并重启后,网络驱动程序开始加载失败,因此我决定从旧内核启动比尝试修复定制内核更能节省时间。

先前的自定义内核是2.6.39,而当前降级的内核是2.6.18-308.11.1(两者x64)。

降级后,网络驱动程序再次正确加载,但现在ping不再以微秒为单位进行测量。相反,它只会向上/向下舍入到最接近的毫秒整数,如下所示:

PING 10.10.10.1 (10.10.10.1) 56(84) bytes of data.
64 bytes from 10.10.10.1: icmp_seq=1 ttl=64 time=1.00 ms
64 bytes from 10.10.10.1: icmp_seq=2 ttl=64 time=0.000 ms
64 bytes from 10.10.10.1: icmp_seq=3 ttl=64 time=2.00 ms
64 bytes from 10.10.10.1: icmp_seq=4 ttl=64 time=1.00 ms
64 bytes from 10.10.10.1: icmp_seq=5 ttl=64 time=0.000 ms

内核中是否存在任何已知设置会导致这种情况发生?我在 Google 上搜索了一下,但没有找到任何遇到同样问题的人。

答案1

不幸的是,看起来高分辨率计时器(亚毫秒)直到 2.6.21 版本才完全进入内核。

您可能需要将内核重新升级为过去 8.9 年内发布的版本。:-)

http://elinux.org/High_Resolution_Timers或者在 Google 上搜索“Linux 高分辨率计时器”,或者查看 time(7) 手册页。

相关内容