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

相关推荐
唯独失去了从容38 分钟前
WebRTC服务器Coturn服务器的管理平台功能
运维·服务器·webrtc
PassLink_5 小时前
[Kaggle]:使用Kaggle服务器训练YOLOv5模型 (白嫖服务器)
运维·服务器·yolo
朴拙数科5 小时前
MongoDB Atlas与MongoDB连接MCP服务器的区别解析
服务器·数据库·mongodb
程序猿(雷霆之王)6 小时前
Linux——进程间通信
linux·运维·服务器
一颗星星辰6 小时前
路由交换网络专题 | 第八章 | GVRP配置 | 端口安全 | 端口隔离 | Mux-VLAN | Hybrid
网络·安全
自由鬼6 小时前
高性能的开源网络入侵检测和防御引擎:Suricata介绍
网络·安全·网络安全·开源·系统安全·入侵检测
老六ip加速器6 小时前
如何获取静态IP地址?完整教程
网络·网络协议·tcp/ip
riveting7 小时前
SD2351核心板:重构AI视觉产业价值链的“超级节点”
大数据·linux·图像处理·人工智能·重构·智能硬件
易保山8 小时前
MIT6.S081 - Lab10 mmap(文件&内存映射)
linux·操作系统·c
NoneCoder8 小时前
HTML 模板技术与服务端渲染
服务器·servlet·html