首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >hping3报告的延迟比ping高。

hping3报告的延迟比ping高。
EN

Unix & Linux用户
提问于 2019-01-08 17:39:02
回答 1查看 2K关注 0票数 2

我只是使用不同的工具来检查网络延迟,例如使用hping3

代码语言:javascript
复制
sudo hping3 -A -n -p 80 www.google.ro
HPING www.google.ro (ppp0 172.217.20.3): A set, 40 headers + 0 data bytes
len=40 ip=172.217.20.3 ttl=59 id=14578 sport=80 flags=R seq=0 win=0 rtt=23.7 ms
len=40 ip=172.217.20.3 ttl=59 id=60364 sport=80 flags=R seq=1 win=0 rtt=23.2 ms
len=40 ip=172.217.20.3 ttl=59 id=28510 sport=80 flags=R seq=2 win=0 rtt=22.8 ms
len=40 ip=172.217.20.3 ttl=59 id=38493 sport=80 flags=R seq=3 win=0 rtt=22.4 ms
len=40 ip=172.217.20.3 ttl=122 id=35817 sport=80 flags=R seq=4 win=0 rtt=25.7 ms
len=40 ip=172.217.20.3 ttl=122 id=8842 sport=80 flags=R seq=5 win=0 rtt=20.5 ms
^C
--- www.google.ro hping statistic ---
6 packets transmitted, 6 packets received, 0% packet loss
round-trip min/avg/max = 20.5/23.1/25.7 ms

对于ping

代码语言:javascript
复制
ping www.google.ro
PING www.google.ro (172.217.20.3) 56(84) bytes of data.
64 bytes from bud02s28-in-f3.1e100.net (172.217.20.3): icmp_seq=1 ttl=56 time=16.3 ms
64 bytes from bud02s28-in-f3.1e100.net (172.217.20.3): icmp_seq=2 ttl=56 time=17.1 ms
64 bytes from bud02s28-in-f3.1e100.net (172.217.20.3): icmp_seq=3 ttl=56 time=16.9 ms
64 bytes from bud02s28-in-f3.1e100.net (172.217.20.3): icmp_seq=4 ttl=56 time=16.5 ms
64 bytes from bud02s28-in-f3.1e100.net (172.217.20.3): icmp_seq=5 ttl=56 time=16.3 ms
64 bytes from bud02s28-in-f3.1e100.net (172.217.20.3): icmp_seq=6 ttl=56 time=16.3 ms
^C
--- www.google.ro ping statistics ---
6 packets transmitted, 6 received, 0% packet loss, time 5007ms
rtt min/avg/max/mdev = 16.365/16.613/17.105/0.341 ms

在使用了这2条命令的几个系列之后,我注意到hping3总是报告比ping更高的延迟。为什么会发生这种情况,怎么才能解决呢?

PS:使用Ubuntu16.04.5LTS(直接连接到互联网)和UFW (ver )。0.35)

EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2019-01-08 17:49:24

您不会看到同一个测试用不同的工具运行。hping3在端口80上使用TCP协议运行一个"ping“;ping正在运行一个ICMP回送请求,这是一个完全不同的测试。

ICMP是IP协议1(参见RFC792);TCP是IP协议6(在RFC793中描述)。TCP (和UDP一样)有端口,ICMP没有端口,而是类型和代码。

一般来说,ICMP回送请求将是一个“更轻的提升”,因为它是一个“更轻的”协议(例如,寻址不需要指定源或端点端口),这意味着,在所有条件相同的情况下,由于比类似的TCP数据包更少的处理需求,它更有可能有更短的响应时间。

仅用于ICMP分组的分组报头的大小为52字节(以太网、IP和ICMP分别为24、20和8字节),而TCP数据包的单独数据包报头的大小为64 btyes (以太网、IP和TCP分别为24、20和20字节)。

票数 4
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/493292

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档