码迷,mamicode.com
首页 > 其他好文 > 详细

使用mtr测试网络丢包率和平均延时的脚本实例

时间:2017-06-10 00:30:23      阅读:457      评论:0      收藏:0      [点我收藏+]

标签:int   com   linux   路由   network   x86_64   lis   win   网络测试   

mtr(a network diagnostic tool)是一个神奇的指令,能按要求对路由中所有节点进行批量测试。简单敲一个“mtr qq.com”将会有意外收获!

当需要进行产品级的网络测试时,可在服务器上运行一段时间的mtr测试形成报告。如下脚本

#!/bin/bash
# 测试网络丢包率和平均延时,注意变量clr和cdt的赋值,不同版本的mtr对应的字段位置不同
# 脚本在CentOS 6.2 Linux 2.6.32-220.el6.x86_64 mtr v0.75 上测试通过
urllist="
www.qq.com
www.kingsoft.com
www.xunlei.com
www.taobao.com
www.163.com
www.sina.com.cn
www.weibo.com
www.sohu.com
www.china.com
www.renren.com
www.baidu.com
www.g.cn
8.8.8.8
www.cctv.com
www.youku.com
www.tudou.com
cn.yahoo.com
www.1tpan.com
www.115.com
www.12306.com
"
urlarr=($urllist)
date

for ((i=0; i<${#urlarr[@]}; i++))
do
echo -n ${urlarr[$i]}‘,,‘
done
echo
for ((j=0; i< 10000; j++))
do
for ((i=0; i<${#urlarr[@]}; i++))
do
mtr -r -n ${urlarr[$i]} | sed‘s/%//g‘| awk‘BEGIN{
lossrate=0;
delaytime=0;
}{
if(NR!=1 && $1!="???"){
clr=$3;
cdt=$6;
(clr<100.0&&lossrate<clr)?(lossrate=clr):true;
delaytime<cdt?(delaytime=cdt):true;
}
}END{
printf("%s,%s,",lossrate,delaytime);
}‘
done
echo
done

脚本的执行效果图如下:

#!/bin/bash
# 测试网络丢包率和平均延时,注意变量clr和cdt的赋值,不同版本的mtr对应的字段位置不同
# 脚本在CentOS 6.2 Linux 2.6.32-220.el6.x86_64 mtr v0.75 上测试通过
urllist="
www.qq.com
www.kingsoft.com
www.xunlei.com
www.taobao.com
www.163.com
www.sina.com.cn
www.weibo.com
www.sohu.com
www.china.com
www.renren.com
www.baidu.com
www.g.cn
8.8.8.8
justwinit.cn
jackxiang.com
boosh.com.cn
www.cctv.com
www.youku.com
www.tudou.com
cn.yahoo.com
www.1tpan.com
www.115.com
www.12306.com
"
urlarr=($urllist)
date

for ((i=0; i<${#urlarr[@]}; i++))
do
echo -n ${urlarr[$i]},,
done
echo
for ((j=0; i< 10000; j++))
do
for ((i=0; i<${#urlarr[@]}; i++))
do
mtr -r -n ${urlarr[$i]} | seds/%//g| awkBEGIN{
lossrate=0;
delaytime=0;
}{
if(NR!=1 && $1!="???"){
clr=$3;
cdt=$6;
(clr<100.0&&lossrate<clr)?(lossrate=clr):true;
delaytime<cdt?(delaytime=cdt):true;
}
}END{
printf("%s,%s,",lossrate,delaytime);
}done
echo
done

脚本会对网址列表进行1万次遍历,打印每次的丢包率和平均延时时间。网址可以随意添加,生成csv文件用Excel处理生成图表。希望对你也有用!

来自:http://www.51testing.com/html/28/116228-808230.html

使用mtr测试网络丢包率和平均延时的脚本实例

标签:int   com   linux   路由   network   x86_64   lis   win   网络测试   

原文地址:http://www.cnblogs.com/what-/p/6974244.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!