测试Linux 下网络延迟的方法(linux测试网络延迟)
Linux系统下测试网络延迟一般使用Ping命令,是最常见的方法。Ping命令以ICMP(Internet Control Message Protocol)报文形式将封包发送,然后等待对端的回复。通过Ping命令可以测试当前网络的基本状况,也可以了解当前的网络延迟。
使用的主要的命令格式如下:
ping -c -t
* -c: 指定发送封包的次数;
* -t: 指定发送封包的 TTL(Time To Live)值;
以百度Baidu.com为例,指定发送50次, TTL设置为5:
ping -c 50 -t 5 www.baidu.com
之后会在终端显示每次发送封包的时间结果:
64 bytes from 1.2.3.4: icmp_seq=0 ttl=54 time=59.3ms
64 bytes from 1.2.3.4: icmp_seq=1 ttl=54 time=58.0ms
64 bytes from 1.2.3.4: icmp_seq=2 ttl=54 time=60.2ms
即可得到这次Ping命令的延迟,单位是毫秒(ms)。
除了常规的Ping命令外,还可以通过MTR(My Trace Route)来检测网络中任意多跳节点间的延迟及包传输情况。MTR将Ping和Traceroute技术进行了结合,可以向任意指定的网站发送数据,并实时显示传输路径上各跳节点的延迟,这样可以很容易发现网络中每一跳节点的状况,从而更快的定位网络问题的存在位置。
MTR的主要命令格式如下:
mtr -r -c
* -r: 以报表形式输出结果;
* -c: 指定发送封包的次数;
以百度Baidu.com为例,指定发送5次:
mtr -r -c 5 www.baidu.com
MTR会根据发送的封包数显示报表,大致内容如下
HOST Loss% Snt Last Avg Best Wrst StDev
Mrg.v.sina.com.cn 0.0% 5 0.4 0.4 0.4 0.4 0.0AS4134.v.sina.com.cn 0.0% 5 0.8 1.4 0.8 2.3 0.8
202.108.22.5 0.0% 5 0.8 0.7 0.6 1.7 0.5IMR-BB-BJ.v.sina.com.cn.163.3 0.0% 5 0.8 0.7 0.5 0.8 0.1
221.183.43.5 0.0% 5 0.7 0.9 0.7 1.5 0.5114.114.114.114 0.0% 5 0.9 0.8 0.8 0.9 0.0
可以从中得到各个节点的延迟、丢包率等信息,便于及时的定位网络问题。
在Linux系统中,通过Ping和MTR命令易于测试网络延迟,查看网络的基本状况和各跳节点的丢包率等信息,也是网络故障定位时的重要工具。