栏目头部广告

Linux使用PaPing进行TCP端口连通性/网络平均延迟探测

1. 背景阐述

通常,我们测试数据包能否通过 IP 协议到达特定主机时,都习惯使用 ping 命令。工作时 ping 向目标主机发送一个 IMCP Echo 请求的数据包,并等待接收 Echo 响应数据包,通过响应时间和成功响应的次数来估算丢包率和网络时延。但是如果ICMP 包无法通过防火墙或者特殊调度线路时,我们该如何探测(S)源服务器到(D)目标服务器之间的线路网络质量呢?

一般我们可以使用PsPing 或 PaPing两种工具。PsPing 是微软 PSTools 工具套件中的其中一个命令。除了ICMP ping 测试,它主要用来测试 TCP 端口的连通性,还可以测试 TCP/UDP 网络时延和带宽。不过, PsPing 只能在 Windows 中运行。如果您需要在 Linux 中发起 TCP 端口连通性和网路时延的测试,可以使用 PaPing 。PaPing 是一个跨平台的开源工具。它的功能相对 PsPing 而言更简单,只支持 TCP 端口的相关测试,不支持 UDP 端口的测试。

我们以UCloud GlobalSSH主机远程管理加速产品为例进行测试,下面让我们来看看GlobalSSH的架构图:

Linux使用PaPing进行TCP端口连通性/网络平均延迟探测(图1)

(1)由于跨国访问,受国际互联网线路的波动影响,会出现访问速度慢、大延迟或者严重丢包等情况,所以我们时常在国内打开国外的网站都很慢,体验极差。

(2)GlobalSSH加速域名(ip地址.ipssh.net)通过DNS调度,将用户访问海外云主机的请求链路,调度到UCloud大陆数据中心,然后通过UCloud大陆与海外数据中心之间的物理专线,进行转发,保障跨国访问链路的稳定性。

(3)由于GlobalSSH加速域名解析出来的IP地址是UCloud大陆数据中心的入口IP,所以通过ping测无法探测使用GlobalSSH之后,大陆访问海外云主机的网络链路质量情况。那么我们这里就可以使用PaPing进行测试。

2. PaPing参数解读

参数说明
-p,–port NTCP端口号(必须)
–nocolor屏蔽彩色输出
-t, --timeout N设定超时时长(ms),默认值1000
-c, --count N指定测试次数

3. PaPing网络质量探测

#国内探测国外云主机,走国际互联网线路:

[root@ansible ~]# ./paping -p 22 107.155.48.73 -c 5

Linux使用PaPing进行TCP端口连通性/网络平均延迟探测(图2)

#国内探测国外云主机,走GlobalSSH加速线路:

[root@ansible ~]# ./paping -p 1622 107.155.48.73.ipssh.net -c 5

Linux使用PaPing进行TCP端口连通性/网络平均延迟探测(图3)

#带时间戳实时输出链路质量情况

[root@ansible ~]# ./paping -p 80 baidu.com -c 6 | awk '{print strftime("%Y-%m-%d %H:%M:%S",systime())"\t"$0}'

Linux使用PaPing进行TCP端口连通性/网络平均延迟探测(图4)

PaPing工具包下载:Linux使用PaPing进行TCP端口连通性/网络平均延迟探测(图5)1-210403135302453.gz

作者:UStarGao
链接:https://www.starcto.com/nettool/120.html

来源:STARCTO
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

UCloud云平台推荐


UCloud新用户专属注册连接

UCloud CDN超值特惠专场

UCloud全球云主机(UHost/VPS)大促页面

UCloud快杰云主机大促页面

文章页广告

随便看看

栏目底部广告
`