Linux 使用tcpping工具查看延迟

Tcpping 介绍

测试网络延迟最常用方法是使用ping工具,它使用ICMP协定。在某些情况下ICMP是被防火墙阻挡,这使得Ping在这情况下是无法使用的。此 时为了能够继续监控的话,就必需使用TCP / UDP的方式,TCPPING为更容易绕过普通的防火墙规则的第3层测试工具。

这样的一个第3层的测试工具TCPPING 。为了测量延迟, TCPPING采取所谓的半开连接技术,基于TCP三次握手的优势。也就是说,它发送一个TCP SYN包的端口号(默认为80 )远程主机。如果远程主机正在侦听的端口,它会响应的TCP ACK数据包。否则,它会响应的TCP RST包。无论哪种方式, TCPPING可以测量往返时间远程主机( RTT)的延迟,通过定时传出SYN数据包和输入的ACK (或RST )数据包。

相同的半开连接技术已经实现了tcptraceroute工具。所以TCPPING只是依靠tcptraceroute执行延迟测量。

为了TCPPING安装在Linux上,你首先需要安装tcptraceroute和bc,然后从下载TCPPING脚本。

# yum -y install tcptraceroute bc

下载tcpping

# cd /usr/bin
# wget http://www.vdberg.org/~richard/tcpping
# chmod +x tcpping

命令使用

# tcpping www.gugexueshu.com 80
seq 0: tcp response from li664-19.members.linode.com (106.186.119.19) <syn,ack> 0.065 ms
traceroute to www.gugexueshu.com (106.186.119.19), 255 hops max, 60 byte packets
seq 1: tcp response from li664-19.members.linode.com (106.186.119.19) <syn,ack> 0.077 ms
traceroute to www.gugexueshu.com (106.186.119.19), 255 hops max, 60 byte packets
seq 2: tcp response from li664-19.members.linode.com (106.186.119.19) <syn,ack> 0.077 ms
traceroute to www.gugexueshu.com (106.186.119.19), 255 hops max, 60 byte packets
seq 3: tcp response from li664-19.members.linode.com (106.186.119.19) <syn,ack> 0.076 ms
traceroute to www.gugexueshu.com (106.186.119.19), 255 hops max, 60 byte packets
seq 4: tcp response from li664-19.members.linode.com (106.186.119.19) <syn,ack> 0.086 ms