Linux性能优化-网络篇-网络延迟

文章目录


前言

很多时候,我们听到大家抱怨,网好卡啊,请求好慢啊,这些其实都是网络延迟比较大的原因。这篇文字带你了解网络延迟是什么,如何测试网络延迟,如何排查网络延迟的问题。


一、网络延迟

网络延迟

通常,我们常用的是双向的往返通信延迟,即从原地址到目的地址,然后又从目的地址返回响应,这个往返全程所用的时间。

应用程序延迟

另外一个指标是应用程序延迟,即从应用程序接受到请求,再到发回响应,全程所用的时间。应用程序延迟,是网络数据传输时间加上数据处理时间的和。

二、网络延迟测试

1.ping命令

我们通常使用ping,命令来测试远程主机的连通和延迟。

ping基于ICMP协议,通过计算ICMP的响应报文和ICMP的请求报文的时间差,获取往返延迟。

bash 复制代码
# -c3 表示发送三次ICMP包后停止。
[root@test-90 data]# ping -c3 www.163.com
PING www.163.com.w.kunluncan.com (125.38.11.222) 56(84) bytes of data.
64 bytes from no-data (125.38.11.222): icmp_seq=1 ttl=128 time=10.0 ms
64 bytes from no-data (125.38.11.222): icmp_seq=2 ttl=128 time=11.9 ms
64 bytes from no-data (125.38.11.222): icmp_seq=3 ttl=128 time=9.98 ms

--- www.163.com.w.kunluncan.com ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2003ms
rtt min/avg/max/mdev = 9.981/10.677/11.952/0.906 ms

# 上面示例显示,发送了三个网络包,收到3个响应,没有丢包。平均往返延迟(RTT)结果是10.677ms

2.hping3命令

当网络服务禁止了ICMP,就无法再通过ping命令测试网络可用性和延时,还可以使用hping3命令。

hping3 安装,Centos7可以使用 yum install hping3安装,使用epel源。

bash 复制代码
[root@test-90 data]# hping3 -c 3 -S -p 80 www.163.com
HPING www.163.com (ens33 125.38.11.222): S set, 40 headers + 0 data bytes
len=46 ip=125.38.11.222 ttl=128 id=18320 sport=80 flags=SA seq=0 win=64240 rtt=9.5 ms
len=46 ip=125.38.11.222 ttl=128 id=18321 sport=80 flags=SA seq=1 win=64240 rtt=12.2 ms
len=46 ip=125.38.11.222 ttl=128 id=18322 sport=80 flags=SA seq=2 win=64240 rtt=12.1 ms

--- www.163.com hping statistic ---
3 packets transmitted, 3 packets received, 0% packet loss
round-trip min/avg/max = 9.5/11.3/12.2 ms

3. traceroute 命令

bash 复制代码
# --tcp 表示使用tcp协议, -p 表示端口号  -n 表示不对结果中的IP地址执行反向域名解析。
[root@test-90 data]# traceroute --tcp -p 80 -n  www.163.com
traceroute to www.163.com (125.38.11.222), 30 hops max, 60 byte packets
 1  192.168.37.2  0.893 ms  0.898 ms  0.674 ms
 2  125.38.11.222  7.729 ms  9.204 ms  8.071 ms

相关推荐
orion578 小时前
Missing Semester Class1:course overview and introduction of shell
linux
用户1204872216114 小时前
Linux驱动编译与加载
linux·嵌入式
程序员老赵16 小时前
服务器文件不想 SFTP 上传?Docker 跑个 File Browser,浏览器就能管理
服务器·docker·开源
vivo互联网技术20 小时前
从 10 分钟到 1 秒:ES 深度分页任意跳页的三轮优化实战
服务器·数据库·redis·elasticsearch·深度分页
用户8055336980320 小时前
Input 子系统架构:Core、Handler、Driver 三层是怎么协作的
linux·嵌入式
用户8055336980320 小时前
RK-Forge外设系列开篇 - 把板子从「能启动」变成「能用」:Ethernet/SPI/MMC 三个纯接线外设
linux·github·嵌入式
七歌杜金房1 天前
我终于又有了自己的 Linux 电脑
linux·debian·mac
tntxia2 天前
linux curl命令详解_curl详解
linux
扛枪的书生2 天前
Linux 网络管理器用法速查
linux