hping3网络延迟检测工具——筑梦之路
网络延迟(Network Latency),人们通常认为它是指网络数据传输所需的时间。但是,这里的“时间”是指双向流量,即数据从源发送到目的地,然后从目的地地址返回响应的往返时间:RTT(Round-Trip Time)。
除了网络延迟之外,另一个常用的指标是应用延迟(Application Latency),它是指应用接收请求并返回响应所需的时间。通常,应用延迟也称为往返延迟,它是网络数据传输时间加上数据处理时间的总和。
通常人们使用 ping
命令来测试网络延迟,ping
是基于 ICMP 协议的,它通过计算 ICMP 发出的响应报文和 ICMP 发出的请求报文之间的时间差来获得往返延迟时间。这个过程不需要特殊的认证,从而经常被很多网络攻击所利用,如,端口扫描工具 nmap
、分组工具 hping3
等。
因此,为了避免这些问题,很多网络服务都会禁用 ICMP,这使得我们无法使用 ping 来测试网络服务的可用性和往返延迟。在这种情况下,您可以使用 traceroute
或 hping3
的 TCP 和 UDP 模式来获取网络延迟。
# -c: 3 requests
# -S: Set TCP SYN
# -p: Set port to 80
$ hping3 -c 3 -S -p 80 google.com
HPING google.com (eth0 142.250.64.110): S set, 40 headers + 0 data bytes
len=46 ip=142.250.64.110 ttl=51 id=47908 sport=80 flags=SA seq=0 win=8192 rtt=9.3 ms
len=46 ip=142.250.64.110 ttl=51 id=6788 sport=80 flags=SA seq=1 win=8192 rtt=10.9 ms
len=46 ip=142.250.64.110 ttl=51 id=37699 sport=80 flags=SA seq=2 win=8192 rtt=11.9 ms
--- baidu.com hping statistic ---
3 packets transmitted, 3 packets received, 0% packet loss
round-trip min/avg/max = 9.3/10.9/11.9 ms
traceroute类似的:
$ traceroute --tcp -p 80 -n google.com
traceroute to google.com (142.250.190.110), 30 hops max, 60 byte packets1 * * *2 240.1.236.34 0.198 ms * *3 * * 243.254.11.5 0.189 ms4 * 240.1.236.17 0.216 ms 240.1.236.24 0.175 ms5 241.0.12.76 0.181 ms 108.166.244.15 0.234 ms 241.0.12.76 0.219 ms...
24 142.250.190.110 17.465 ms 108.170.244.1 18.532 ms 142.251.60.207 18.595 ms
traceroute
会在路由的每一跳(hop)发送三个数据包,并在收到响应后输出往返延迟。如果没有响应或响应超时(默认 5s),将输出一个星号 *
wrk
(https://github.com/wg/wrk)
$ wrk --latency -c 100 -t 2 --timeout 2 http://192.168.0.30/
Running 10s test @ http://192.168.0.30/2 threads and 100 connectionsThread Stats Avg Stdev Max +/- StdevLatency 9.19ms 12.32ms 319.61ms 97.80%Req/Sec 6.20k 426.80 8.25k 85.50%Latency Distribution50% 7.78ms75% 8.22ms90% 9.14ms99% 50.53ms123558 requests in 10.01s, 100.15MB read
Requests/sec: 12340.91
Transfer/sec: 10.00MB--------------------------------------------------$ wrk --latency -c 100 -t 2 --timeout 2 http://192.168.0.30:8080/
Running 10s test @ http://192.168.0.30:8080/2 threads and 100 connectionsThread Stats Avg Stdev Max +/- StdevLatency 43.60ms 6.41ms 56.58ms 97.06%Req/Sec 1.15k 120.29 1.92k 88.50%Latency Distribution50% 44.02ms75% 44.33ms90% 47.62ms99% 48.88ms22853 requests in 10.01s, 18.55MB read
Requests/sec: 2283.31
Transfer/sec: 1.85MB从以上两个输出可以看出,官方 Nginx(监听 80 端口)的平均延迟为 9.19ms,而案例 Nginx(监听 8080 端口)的平均延迟为 43.6ms。从延迟分布上来看,官方 Nginx 可以在 9ms 内完成 90% 的请求;对于案例 Nginx,50% 的请求已经达到 44ms
参考资料:
有了这款 Linux 网络延迟排查方法,再也不用加班了
hping3网络延迟检测工具——筑梦之路相关推荐
- iperf3 网络测速工具 —— 筑梦之路
操作系统: centos 7#安装 yum install iperf3 -y#环境规划server : 192.168.80.100 clinet : 192.168.80.200#服务端启动ipe ...
- 通过浏览器检测硬件 —— 筑梦之路
在线硬件检测工具: # 测试网址1 主要检测显卡显示效果 volumeshader_bm # 测试网址2 可以检测cpu GPU 屏幕等 精大师在线显卡测试_首页 | 网页版GPU性能测试工具
- tcp 测试工具_6款免费网络延迟测试工具
作为网络管理员或网络工程师,时刻关注网络的交付速度至关重要.不仅需要确保自己有良好的响应时间,还需要确保网络的速度足以满足用户通信所需的每一条路径.而手动测试每个路径将占用你所有的时间.所以需要获得一 ...
- 微秒级别的网络延迟检测
2019独角兽企业重金招聘Python工程师标准>>> 写了一个工具用来做微秒级别的网络延迟检测,需要在配置文件中简单描述需要测试的网络连接: [s1] SRC_HOST = sam ...
- 绝地求生服务器延迟检测源码,绝地求生不停网络延迟检测怎么办 绝地求生网络问题解决办法...
每个游戏玩家在游戏中都会遇到延迟卡顿的现象,最近许多朋友在玩绝地求生的时候出现一直网络延迟检测,这是怎么回事呢?下面小编介绍一下解决的办法,让你们畅快的吃鸡. 1.首先设置游戏的启动项:-USEALL ...
- CentOS 8 安装freePBX 软交换电话软件——筑梦之路
简单介绍: Freepbx是一个集成了Asterisk的工具,提供GUI (graphical user interface)用户图形界面.通过Freepbx可以十分方便的配置各类电话系统.由于Ast ...
- 时间同步设置NTP和Chrony两种方式—— 筑梦之路
之前写的:Chrony时间同步服务器的搭建--筑梦之路_筑梦之路的博客-CSDN博客_搭建chrony服务器 linux 下部署NTP服务器 时间同步_筑梦之路的博客-CSDN博客 操作系统:cent ...
- Nginx SSL漏洞(SWEET32)扫描和修复 —— 筑梦之路
1.扫描nmap -sV --script ssl-enum-ciphers -p 443 www.baidu.comnmap --script="ssl-enum-ciphers" ...
- K8S中使用显卡GPU(N卡) —— 筑梦之路
前些年做AI项目的时候经常用到显卡,大多数时候都是传统部署,对于资源的利用率并不高,而显卡也不便宜,K8S集群内调用显卡可以更加细致地进行显卡计算资源的分配,提高资源利用率. 之前记录和显卡相关的一些 ...
最新文章
- 分享15个堪称神器的资源网站,让你万事无忧!
- LeetCode 多线程 1114. 按序打印
- du命令、df命令用法
- Codeforces Round #496 (Div. 3 ) E1. Median on Segments (Permutations Edition)(中位数计数)
- 没有找到**.dll的解决方案
- [转载]谁来拯救云计算
- docker安装redis,使用jedis轻松操作redis
- Windows XP十五周年:由爱生恨的系统霸主
- 当当笔试java_20170921 当当和今日头条笔试题
- android 主流分辨率是多少,Android程序开发设计主流屏幕分辨率介绍
- 消息摘要(Message Digest)及其算法
- mac上解决Resource temporarily unavailable
- 简单有效解决onenote无法设置或修改默认的英文字体“Calibri”(简单实用)
- bytearray函数
- React-Redux使用方法
- 服务器千兆网卡和万兆网卡有什么区别
- 模拟量使用计算机电缆,计算机电缆如何选型?附计算机电缆型号大全
- SiamMask 测试程序分析
- uniapp语音识别(讯飞语音)转文字
- 独立游戏开发者游戏素材网站推荐
热门文章
- aws lambda使用_我们通过使用AWS Lambda服务机器学习模型学到了什么
- 玩客云刷armbian后,面板led模拟硬盘灯
- RapidJSON v1.1.0 发布简介
- Clickhouse的多种连接方式
- 机器学习中的数学——共轭梯度法(Conjugate Gradient)
- 《那些年啊,那些事——一个程序员的奋斗史》——127
- CosyPose: Consistent multi-view multi-object 6D pose estimation
- 先锋机器人3(Pioneer3)的基础操控
- Cakewalk Z3TA Plus 2 Presets/Banks Bundle 合成器预设合集
- 如何查看OutputDebugString的输出?[英]How to view output of OutputDebugString?