本文主要介绍微软的测试工具Psping,该工具功能主要包括:ICMP Ping、TCP Ping、延迟测试、带宽测试ide
须要说明一种应用场景:因为Windows Azure数据中心禁ICMP,使用Psping的TCP Ping的功能来测试联通性或者故障排查就很是有用了。工具
工具下载地址: http://technet.microsoft.com/en-us/sysinternals/jj729731测试
下载完PSTools.zip包以后,放到任意本地磁盘内,解压以后以下:网站
使用CMD命令行工具进入PSTools所在的文件夹路径,单独输入psping,可见psping四个主要功能的帮助命令,四个功能分别是ICMP Ping、TCP Ping、延迟测试、带宽测试。spa
【Part.1】ICMP ping功能命令行
输入psping -? i获取ICMP ping相关参数 3d
psping -4 -n 10 -w 2 -h 10 180.76.76.76orm
-4表明强制使用IPv4联机xml
-n表明正式ping包的个数,或者定义使用秒s做为单位blog
-w表明热身ping包的个数,即正式测试前先进行多少次热身测试链接
-h表明最小与最大延迟毫秒数
另外几个参数解释以下:
-i表明间隔秒数,快ping则设置为0
-l表明ping包大小,默认单位是byte。使用 k为单位表明kilobytes(KB),使用m为单位表明megabytes(MB)
-q表明ping过程当中不一个个输出值
-t表明长ping不停
-6表明强制使用IPv6联机
psping -i 0 -4 -n 10 -w 2 -h 10 -q 180.76.76.76
因为设置了-i 0这个参数,瞬间出结果
设置了-q则再也不显示中间的输出过程,直接输出结果
-l和-t和-6不在此演示了。
【Part.2】TCP Ping功能
使用psping -? t获取帮助信息
psping -n 10 -w 2 -h 10 42.159.27.213:443
与ping功能相同的参数定义:
-n表明正式ping包的个数,或者定义使用秒s做为单位
-w表明热身ping包的个数,即正式测试前先进行多少次热身测试链接
-h表明最小与最大延迟毫秒数
-i表明间隔秒数,快ping则设置为0
-l表明ping包大小,默认单位是byte。使用 k为单位表明kilobytes(KB),使用m为单位表明megabytes(MB)
-q表明ping过程当中不一个个输出值
-t表明长ping不停
-4表明强制使用IPv4联机
-6表明强制使用IPv6联机
【Part.3】延迟测试
使用psping -? l获取延迟测试时的帮助信息。
我使用Azure VM搭建了网站部署在8081端口,42.159.27.213:8081
psping -l 1500 -n 300 -h 10 42.159.27.213:8081
-l 1500表明我发送的数据包大小为每一个1500 Bytes,TCP联机在Layer 2 Ethernet中的MTU (Maximum Transmission Unit)一般以1500 Bytes为一个单位
-n 300表明放松300个封包
那么300*1500Bytes=450000Bytes,绝大多数在5ms内响应
【Part.4】带宽测试
psping -? b
psping -b -l 1500 -n 15000 42.159.27.213:8081
-b表明将进行带宽测试
-l 1500表明使用大小1500Bytes的数据包
-n 15000表明使用15000个数据包
输出结果显示我测试个人PC与Azure VM之间带宽为470KB/s,实际上是由于个人工位的PC被公司IT限速为500KB/s了,因此压到了我PC带宽的极限。