天天看点

Smokeping 网络性能监控 安装使用说明

目录

  • 简介
    1. -smokeping介绍
    2. -组成部分
    3. -Web服务器软件
    4. -Smokeping主服务
    5. -探针
    6. -rrdtool
  • 安装配置smokeping

2.1--环境依赖包安装

2.2--RRDtool 1.2.x或更高版本安装

2.3--FPing安装

2.4--EchoPing安装

2.5--Webserver安装

2.6--Perl 5.10.1 或更高版本安装

2.7--开始安装smokeping

三、初始化smokeping

3.1--创建文件夹

3.2--复制配置文件

3.3--修改配置文件

3.4--绘图支持中文显示

3.5--权限验证

3.6--手动启动smokeping

3.7--写入smokeping自启动文件

3.8--修改Apache配置文件

3.9--配置监控目标

四、关闭Selinux

4.1 关闭Selinux

4.2 smokeping搭建完成

五、 开始使用smokeping

5.1 smokeping 配置文件解释

5.2 报警规则

5.3数据库

5.4定义显示规则

5.5配置探针模块

5.6主从配置

5.7定义监控目标各项参数

5.8独立监控目标文件配置

  • 部署监控内容

6.1 主机对比

6.2功能点

6.3原理

6.4整体如何看图

6.5细节图:

6.6 实际分析:

6.7 注意项:

七、告警配置

7.1告警配置

一、简介

选择机房时,需要知道机房的网络请况,就需要用到网络监控软件smokeping。

1.1--smokeping介绍

smokeping由Perl语言写成,底层依赖于rrdtool和fping。

主要是监视网络性能,包括常规的ping,用echoping监控www服务器性能,监控dns查询性能和监控ssh性能等。底层时以rrdtool做支持,使用画图来表示网络丢包和延迟。

从监控图上的延时与丢包能分辨出你机房的网络是否稳定,是否为多线,是否为BGP机房,到各城市的3个运营商之间的网络,各是什么情况,如果出现问题,如何有针对性的解决。而且如果选择新机房的时候,可以根据smokeping的监控结果来判断这个机房是否适合。

1.2--组成部分

smokeping整个系统正常运行需要:web服务器软件、smokeping主服务、探针,rrdtool。

1.3--Web服务器软件

smokeping拥有直观高效且漂亮的webUI,因此需要借助第三方web服务,默认使用的是apache服务,同时需要启用cgi模块。

1.4--Smokeping主服务

smokeping主服务即smokeping工作进程,负责在后台(也可以前台)执行监测任务。

1.5探针

smokeping实际使用的监测工具即探针。默认探针是fping,常用探针例如:

  1. fping 默认探针,使用icmp协议,可并发检测目标RTT(Round-Trip Time)数值
  2. echoping echo服务检测,使用tcp/udp协议,默认端口号7
  3. tcpping tcp端口检测,使用tcp协议监测端口连通性和时延

1.6 --rrdtool

rrdtool(Round Robin Database Tool)即轮询调度数据库工具,使用C语言写成,是一种强大的绘图引擎,兼有时序数据库和绘图两种功能。rrdtool被许多监控平台所使用,如smokeping、cacti、open-falcon等。

二 安装配置smokeping

查看系统版本

[[email protected] ~]# cat /etc/redhat-release

查看系统信息

CentOS Linux release 7.2.1511 (Core)

[[email protected] ~]# uname -r

3.10.0-327.el7.x86_64

2.1环境依赖包安装(输入命令等待下载安装完成)

[[email protected] ~]# yum -y install wget vim curl

[[email protected] ~]# yum -y install gcc gcc-c++ popt-devel

2.2RRDtool 1.2.x 或更高版本安装

[[email protected] ~]# yum install rrdtool perl-rrdtool openssl-devel -y

2.3FPing安装

[[email protected] ~]# wget http://www.fping.org/dist/fping-4.2.tar.gz

[[email protected] ~]# tar -xzf fping-4.2.tar.gz

[[email protected] ~]# cd fping-4.2

[[email protected] fping-4.2]# ./configure

[[email protected] fping-4.2]# make && make install

2.4EchoPing安装

[[email protected]~]#wget https://fossies.org/linux/misc/old/echoping-6.0.2.tar.gz

[[email protected] ~] tar xzf echoping-6.0.2.tar.gz

[[email protected] ~]# cd echoping-6.0.2

[[email protected] echoping-6.0.2]# yum install -y popt-devel

[[email protected] echoping-6.0.2]# ./configure

[[email protected] echoping-6.0.2]# make && make install

2.5Webserver安装

[[email protected] ~]# yum install httpd httpd-devel -y

[[email protected] ~]# yum install mod_fcgid -y

[[email protected] ~]# systemctl enable httpd

[[email protected] ~]# systemctl start httpd

2.6 Perl 5.10.1 或更高版本安装

[[email protected] ~]# yum install perl-core -y

2.7开始安装smokeping

[[email protected]~]#  wget https://oss.oetiker.ch/smokeping/pub/smokeping-2.7.3.tar.gz

[[email protected] ~]# tar xzf smokeping-2.7.3.tar.gz

[[email protected] ~]# cd smokeping-2.7.3

[[email protected] smokeping-2.7.3]# ./configure --prefix=/opt/smokeping

** Ready to install Smokeping ******************************

   Settings:

     PERL5LIB = not set

     PERL = /usr/bin/perl

   The Smokeping Makefiles use GNU make functionality.

   Continue installation with

     /usr/bin/gmake install

[[email protected] smokeping-2.7.3]# /usr/bin/gmake install

三、初始化smokeping

3.1创建文件

[[email protected] ~]# cd /opt/smokeping

#从示例文件中,可以看到需要创建下面即可目录

[[email protected] smokeping]# cat etc/config.dist | grep '/opt/smokeping'

imgcache = /opt/smokeping/cache

datadir  = /opt/smokeping/data

piddir  = /opt/smokeping/var

smokemail = /opt/smokeping/etc/smokemail.dist

tmail = /opt/smokeping/etc/tmail.dist

template = /opt/smokeping/etc/basepage.html.dist

secrets=/opt/smokeping/etc/smokeping_secrets.dist

#创建需要的目录

[[email protected] smokeping]# mkdir data cache var

[[email protected] smokeping]# chown apache:apache cache data var

[[email protected] smokeping]# chmod 777 data cache var

#创建日志文件

[[email protected] smokeping]# touch /var/log/smokeping.log

[[email protected] smokeping]# chown apache:apache /var/log/smokeping.log

3.2复制配置文件

[[email protected] smokeping]# pwd

/opt/smokeping

# 查看有哪些文件

[[email protected] smokeping]# ls

bin  cache  data  etc  htdocs  lib  share  var

[[email protected] smokeping]# ls etc/

basepage.html.dist  config.dist  examples  smokemail.dist  smokeping_secrets.dist  tmail.dist

[[email protected] smokeping]# ls htdocs/

css  js  smokeping.fcgi.dist

#创建smokeping的配置文件

[[email protected] smokeping]# cp etc/config.dist etc/config

# 创建smokeping 页面启动文件

[[email protected] smokeping]# cp htdocs/smokeping.fcgi.dist htdocs/smokeping.fcgi

# 里面的内容如下,通过smokeping_cgi脚本配合config配置文件启动

[[email protected] smokeping]# cat htdocs/smokeping.fcgi

#!/bin/sh

exec /opt/smokeping/bin/smokeping_cgi /opt/smokeping/etc/config

# basepage.html 是webUI的模板页面,修改此文件可以对页面默认的颜色以及其他样式做定制

[[email protected] smokeping]# cp etc/basepage.html.dist etc/basepage.html

# 用于设定主从验证

[[email protected]n smokeping]# cp etc/smokeping_secrets.dist etc/smokeping_secrets

3.3修改配置文件

[[email protected] smokeping]# sed -i 's#cgiurl   = http://some.url/smokeping.cgi#cgiurl   = http://192.168.99.101/smokeping.cgi#g' /opt/smokeping/etc/config

# 图片url可以不做修改【不建议修改】

[[email protected] smokeping]# sed -i 's#imgurl   = cache#imgurl   = http://192.168.99.101/cache#g' /opt/smokeping/etc/config

# 默认检测时间300秒修改60秒(注意IP地址需自行更改)

[[email protected] smokeping]# sed -i 's#step     = 300#step     = 60#g' /opt/smokeping/etc/config

# 默认ping20次,修改为60秒ping60次

[[email protected] smokeping]# sed -i 's#pings    = 20#pings    = 60#g' /opt/smokeping/etc/config

# 修改详情图detail显示高度,默认为200(第二处height)

[[email protected] smokeping]# sed -i 's#height = 200#height = 600#g' /opt/smokeping/etc/config

# 修改概览图overview显示高度,默认为50(第一处height)

[[email protected] smokeping]# sed -i 's#height = 50#height = 200#g' /opt/smokeping/etc/config

# 修改默认模板页面

[[email protected] smokeping]# sed -i 's#template = /opt/smokeping/etc/basepage.html.dist#template = /opt/smokeping/etc/basepage.html#g' /opt/smokeping/etc/config

# 修改主从默认密码验证

[[email protected] smokeping]#  sed -i 's#secrets=/opt/smokeping/etc/smokeping_secrets.dist#secrets=/opt/smokeping/etc/smokeping_secrets#g' /opt/smokeping/etc/config

# 修改fping默认位置,先找到fping位置:whereis fping | awk '{print $2}',进行一键替换

[[email protected] smokeping]# sed -i 's#binary = /usr/sbin/fping#binary = '`whereis fping | awk '{print $2}'`'#g' /opt/smokeping/etc/config

# 查看config中自己修改后的内容

[[email protected] smokeping]# egrep "cgiurl|imgurl|step|pings|height|template|secrets|binary" etc/config

imgurl   = http://192.168.99.101/cache

cgiurl   = http://192.168.99.101/smokeping.cgi

step     = 60

pings    = 60

# consfn mrhb steps total

template = /opt/smokeping/etc/basepage.html

height = 200

height = 600

binary = /usr/local/sbin/fping

secrets=/opt/smokeping/etc/smokeping_secrets

3.4 绘图支持显示中文

# 图片浏览器支持中文显示,防止中文乱码

# 中文支持修改第1处,安装字体

[[email protected] smokeping]# yum -y install wqy-zenhei-fonts.noarch

# 中文支持修改第2处,在presentation添加utf-8中文字符集,解决图乱码问题

[[email protected] smokeping]# vim /opt/smokeping/etc/config

# 省略

*** Presentation ***

# 添加这一行

charset = utf-8

# 省略

# 中文支持修改第3处,【实际测试可以不用加】

[[email protected] smokeping]# vim /opt/smokeping/lib/Smokeping/Graphs.pm

# 大概在150行左右

    if ($mode =~ /[anc]/){

        my $val = 0;

        for my $host (@hosts){

            my ($graphret,$xs,$ys) = RRDs::graph

            ("dummy",

            '--start', $tasks[0][1],

            '--end', $tasks[0][2],

            # 添加下面这行

            '--font TITLE:20:"WenQuanYi Zen Hei Mono"',

            "DEF:maxping=$cfg->{General}{datadir}${host}.rrd:median:AVERAGE",

            'PRINT:maxping:MAX:%le' );

            my $ERROR = RRDs::error();

            return "<div>RRDtool did not understand your input: $ERROR.</div>" if $ERROR;

            $val = $graphret->[0] if $val < $graphret->[0];

        }

        $val = 1e-6 if $val =~ /nan/i;

        $max = { $tasks[0][1] => $val * 1.5 };

    }

3.5权限验证

# 设置网页的登录用户名为smokeping,密码是自己输入的为smokeping

[[email protected] smokeping]# htpasswd -c /opt/smokeping/htdocs/htpasswd smokeping

New password:

Re-type new password:

Adding password for user smokeping

# 可以看到用户名和加密后的密码记录到该文件中了

[[email protected] smokeping]# cat /opt/smokeping/htdocs/htpasswd

smokeping:$apr1$ZdYplPrW$8Z6JcIMv2TI6wCMsX32d.0

# 修改密码权限为root只读

[[email protected] smokeping]# chmod 600 /opt/smokeping/etc/smokeping_secrets

[[email protected] smokeping]# cat /opt/smokeping/etc/smokeping_secrets

host1:mysercert

host2:yoursercert

boomer:lkasdf93uhhfdfddf

3.6手动启动smokeping

[[email protected] smokeping]# bin/smokeping --logfile=/var/log/smokeping.log

WARNING: Hostname 'james.address' does currently not resolve to an IPv6 or IPv4 address

Note: logging to syslog as local0/info.

Daemonizing bin/smokeping ...

#warning不影响接下来的进程

# 可以在日志里看到启动成功

[[email protected] smokeping]# cat /var/log/smokeping.log

Wed Apr  1 21:08:52 2020 - Smokeping version 2.007003 successfully launched.

Wed Apr  1 21:08:52 2020 - Not entering multiprocess mode for just a single probe.

Wed Apr  1 21:08:52 2020 - FPing: probing 1 targets with step 60 s and offset 27 s.

# 如果要停止smokeping进程

[[email protected] smokeping]#  ps -aux | grep smoke | grep -v grep

root     101594  0.0  2.8 331248 28212 ?        Ss   21:14   0:00 bin/smokeping [FPing]

[[email protected] smokeping]# ps -aux | grep smoke | grep -v grep | awk '{print $2}'

101594

# 然后使用kill -9 进程号 即可

[[email protected] smokeping]# kill -9 101594

3.7写入smokeping自启动文件

[[email protected] smokeping]# vim /etc/systemd/system/smokeping.service

[Unit]

Description=Smokeping Network performance monitoring

After=syslog.target network.target

[Service]

ExecStart=/opt/smokeping/bin/smokeping --logfile=/var/log/smokeping.log

ExecReload=/bin/kill -HUP $MAINPID

StandardError=syslog

Type=forking

PIDFile=/opt/smokeping/var/smokeping.pid

[Install]

WantedBy=multi-user.target

# 设置完之后重启daemon

[[email protected] smokeping]# systemctl daemon-reload

# 结束之前用命令启动的smokeping,然后用systemctl去启动

[[email protected] smokeping]# kill -9 `ps -aux | grep smoke | grep -v grep | awk '{print $2}'`

kill: usage: kill [-s sigspec | -n signum | -sigspec] pid | jobspec ... or kill -l [sigspec]

[[email protected] smokeping]# ps -aux | grep smoke | grep -v grep | awk '{print $2}'

# 启动smokeping并查看状态

[[email protected] smokeping]# systemctl start smokeping

[[email protected] smokeping]# systemctl status smokeping

● smokeping.service - Smokeping Network performance monitoring

   Loaded: loaded (/etc/systemd/system/smokeping.service; disabled; vendor preset: disabled)

   Active: active (running) since Wed 2020-04-01 21:20:27 PDT; 8s ago

  Process: 102007 ExecStart=/opt/smokeping/bin/smokeping --logfile=/var/log/smokeping.log (code=exited, status=0/SUCCESS)

 Main PID: 102076 (/opt/smokeping/)

   CGroup: /system.slice/smokeping.service

           └─102076 /opt/smokeping/bin/smokeping [FPing]

#同时查看  [[email protected] smokeping]# tail -f /var/log/smokeping.log  日志也会相应的变化

3.8修改Apache配置文件

[[email protected] smokeping]# vim /etc/httpd/conf/httpd.conf

# 在下面一行之后添加以下内容

DocumentRoot "/var/www/html"

Alias /cache "/opt/smokeping/cache/"

# Alias /cropper "/opt/smokeping/htdocs/cropper/"

Alias /css "/opt/smokeping/htdocs/css/"

Alias /js "/opt/smokeping/htdocs/js/"

Alias /smokeping "/opt/smokeping/htdocs/smokeping.fcgi"    

<Directory "/opt/smokeping">

    AllowOverride None

    Options All

    AddHandler cgi-script .fcgi .cgi

    Order allow,deny

    Allow from all

    # 密码认证

    AuthName "Smokeping"

    AuthType Basic

    AuthUserFile /opt/smokeping/htdocs/htpasswd

    Require valid-user

    DirectoryIndex smokeping.fcgi

</Directory>

# 设置完成后重启Apache服务

[[email protected] smokeping]# systemctl restart httpd

浏览器访问 http://服务器IP地址/smokeping 就需要输入刚才设置的帐密,也就是账号smokeping  密码******

3.9配置监控目标

修改配置文件,在后面注释掉Test段落,添加自己的节点

# 省略

*** Targets ***

probe = FPing

menu = Top

title = Network Latency Grapher

remark = Welcome to the SmokePing website of xxx Company. \

         Here you will learn all about the latency of our network.

#+ Test

#menu= Targets

##parents = owner:/Test/James location:/

#++ James

#menu = James

#title =James

#alerts = someloss

#slaves = boomer slave2

3host = james.address

#++ MultiHost

#menu = Multihost

#title = James and James as seen from Boomer

#host = /Test/James /Test/James~boomer

# 添加监测源的IP库,加入到config中,修改后重启smokeping才会生效

# 添加监控节点示例:注意+是第一层,++是第二层,+++ 是第三层

# 注释掉上面的,添加下面的监控节点

+ NetMonitor

menu = 三大网络监控

title = 监控统计

++ dianxin

menu = 电信网络监控

title = 电信网络监控列表

host = /NetMonitor/dianxin/dianxin-bj

+++ dianxin-bj

menu = 北京电信

title = 北京电信

alerts = someloss

host = 202.96.199.133

+++ dianxin-sc

menu = 四川电信

title = 四川电信

alerts = someloss

host = 61.139.2.69

++ liantong

menu = 联通网络监控

title = 联通网络监控列表

host = /NetMonitor/liantong/liantong-bj

+++ liantong-bj

menu = 北京联通

title = 北京联通

alerts = someloss

host = 61.135.169.121

+++ liantong-gz

menu = 广东联通

title = 广东联通

alerts = someloss

host = 221.5.88.88

++ yidong

menu = 移动网络监控

title = 移动网络监控列表

host = /NetMonitor/yidong/yidong-sc

+++ yidong-sc

menu = 四川移动

title = 四川移动

alerts = someloss

host = 218.201.4.3

+++ yidong-gz

menu = 广东移动

title = 广东移动

alerts = someloss

host = 211.136.192.6

注意,在host中需要指定每一组节点信息例如host = /第一层/第二层/第三层,否则,浏览器访问指定该名称时会报错。添加监控节点后需要重启smokeping服务

[[email protected] smokeping]# systemctl restart smokeping

四、关闭Selinux

4.1 关闭Selinux

主要是页面上访问会提示创建目录失败,也就是无权限

Software error:

ERROR: creating  /opt/smokeping/cache/NetMonitor: No such file or directory

解决办法是关闭Selinux

# 临时关闭

[[email protected] smokeping]# getenforce

Enforcing

[[email protected] smokeping]# setenforce 0

[[email protected] smokeping]# getenforce

Permissive

# 如果需要永久关闭 vim /etc/sysconfig/selinux ,SELINUX=enforcing 改为 SELINUX=disabled 然后重启

4.2 smokeping搭建完成

smokeping到此就搭建完毕了,可以通过浏览器访问 http://你的IP地址/smokeping 查看你搭建的smokeping啦!!!

五、 开始使用smokeping

5.1 smokeping 基础配置信息

可以更改所有者(owner)、联系方式(contact)、邮件服务器(mailhost)、主站cgi地址(cgiurl,此选项对主从架构很重要)、syslog消息类型(syslogfacility)。同时,通过@include字段引用了同目录下的pathnames。

5.2 报警规则

缺省条件下,采用sendmail邮件报警的方式,to 即接收方,from 即发送方。someloss是预定义的一个默认检测器,检测器不仅仅是一个阈值,它可以定义一组RTT从旧到新的变化过程,pattern 的值以一个运算符开始,按照从旧到新的状态变化,示例中,>0% 表示有丢包,*12* 表示在该组中最大忽略匹配12个数值,因此这段定义的意义是:匹配一组数据是否满足丢包次数大于等于3次。

5.3描述rrd数据库的属性。

更改数据库配置文件无法对现有的rrd起作用,更改数据库配置文件后,需要清理现有的rrd缓存以使程序正常工作,默认rrd目录为:/opt/smokeping/data/,也就是自己配置的data目录。step 表示基本操作间隔,即smokeping探测目标主机的间隔,默认300秒,pings表示在一次探测动作中,发出探测包的数量,step 和 pings 的值均可以被后续的探针设置所覆盖。此配置也包含数据库归档合并的规则,共4列:合并方法、允许未知数值比例、步进,存储总行数。每一行表示一条RRA(循环归档)存储规则,预定义了多条AVERAGE、MIN,MAX规则。以AVERAGE为例,第一条AVERAGE,步进1,行数1008,按照缺省step=300的条件下,表示5分钟一条,最大1008条,共存储3.5天数据,这是以此精度绘图的最大时间范围,如果超出范围,将会继续匹配合适的RRA,比如第二条AVERAGE,存储的时间范围是180天,但是精度是1小时。

5.4定义显示规则

template 即webUI使用的网页模板,默认指向/opt/smokeping/etc/basepage.html,模板中包含各种表单关键字。charset 即文档编码,默认使用UTF-8

5.5配置探针模块

smokeping支持很多探针模块,最常用的就是内联的fping。

5.6主从配置

在使用主从结构时,需要一个验证文件,即secrets指定的值,默认为 /opt/smokeping/etc/smokeping_secrets,对于每一个从节点,还需要指定显示名称 display_name,显示颜色 color(此颜色指的是概述图上的线色,非细节图),颜色代码采用RRGGBB形式。

5.7定义监控目标各项参数

Target是搭建snokeping主要配置的部分。menu定义了条目的菜单名称,title定义了条目的标题名称,host 定义了目标主机名,alerts定义了使用的报警器,probe定义了使用的探针,slaves定义了需要使用的从服务器列表。同样,子条目的参数会继承父条目,也可以进行覆盖。

5.8独立监控目标文件配置

可以将监控的节点独立出来,然后使用@include xxx指定这个文件即可。也就是可以不用在config配置文件中加上监控IP的配置,直接独立出来即可。

在config同一目录下创建一个文件

六、部署监控内容

6.1 主机对比

Smokeping 网络性能监控 安装使用说明

转存失败重新上传取消

Smokeping 网络性能监控 安装使用说明

转存失败重新上传取消

6.2功能点:

监控 本机房到xxx网络 状态和稳定性,通过图表展示。

每一个绿色的短横线都是一个测试回合300秒内向目标设备发送20个测探测数据包【参考probe项】。绿色画出的是中间数的位置,一个回合中的其它值都在它附近被以灰度的形式被刻画;灰度的范围越小越好,灰色的范围像是烟雾一样笼罩在中间数附近。在中间数附近的烟越小越好,说明网络很平稳。RTT曲线的起伏还显示了网络的负载情况。

可应用范围:

服务器部署:

监控各大ISP运营商

监控服务器当地网络运营商网络情况

监控远程考试点的网络情况(考试点到服务器)

考试点部署:

考试点发起到服务器的网络情况监控

考试点出口到各大ISP供应商网络状况

6.3原理:

smokeping绘制每轮测量的数据包中间值(中线),和通过灰色阴影(烟雾)来展示测试时间段的网络情况。同时用不同的中线颜色区分不同的丢包情况。

通过中线颜色(丢包情况)、和烟雾大小图形化表明网络的健康状况。

对于每轮测量,smokeping发送几个数据包。然后它对不同的往返时间进行排序并选择中值(即中间的)。这意味着当有10个时间值时,选择并绘制值5。其他值在背景中绘制为连续较浅的灰色阴影(烟雾)。

有时会发送测试数据包但不会返回。这称为丢包。中线的颜色根据丢失的数据包的数量而变化。

所有这些信息一起表明了网络健康状况。例如,丢包是不应该发生的事情。这可能意味着链路中间的设备过载或某处的路由器配置错误。

6.4整体如何看图:

av md: 平均中位数

average median 可以理解为:ping质量测试的响应速度平均值

av ls:平均损失

average loss可以理解为:ping质量测试的丢包率

av sd:平均标准偏差

在每一轮的多次测量的平均标准偏差

the average standard deviation of the multiple measurements in each round

am/as:平均中位数 和 平均标准差的 比率

the ratio of average median and average standard deviation

线:

直线表示稳定,曲线表示网络抖动。

根据网络抖动判断:

像曲线有明显抖动,抖动范围超过10ms的都属于有网络不稳定。

更详细的可以点击进去查看详细报告看每天是否都是有规律的网络抖动。

6.5细节图:

轴:

Y轴: 表示ping的时间值

X轴: 表示时间轴

看线条颜色曲线:

横向线条颜色描绘了丢失数据包的数量。图2为拉长按天来看,就可以看到在一些时间段存在不同颜色(丢包)的情况。

竖向 黑色,绿色 或 蓝色 等 线标示的是中间数的值(media rtt);不同颜色代表丢包情况,造成 median rtt 取值的偏差(参考下面 median rtt的解释)。

看烟雾(灰色块):

阴影部分表示有抖动20个测试数据包里有部分时间值高但不丢包。

浅蓝表示20个数据包里有1个丢包。

线条周围的暗区域显示了各个探测器之间的变化量。灰度范围越小越好,起伏太大说明网络不稳定。

看数据:

RTT (Round-TripTime)(往返时间):值的剧烈波动也表明网络过载。这在图上显示为烟雾; 烟雾越多,波动越大。

sd:standard deviation of the median中间数的标准偏差

am/s:ratio of average median vs standarddeviation平均中值和标准偏差的比值

计量 数值 时间区间 分析

平均 avg rtt 9.1ms 全图时间7:55 - 10:50 它是每一个测试回合中所有的RTT算术平均值。

最大 max rtt 79.9ms 9:25 - 9:30

最小 min rtt 4.7ms -

sd rtt 16.1ms 全图时间 标准差中位数

am/s rtt 564.7ms 全图时间 平均中位数 和 标准差的 比率

median rtt (中间数)

它是中间数并不是平均值。探针在默认的设置下,每 300 秒向目标设备发送 20 测探测数据包。假如这 20个数据包都返回的话,它就记录下了 20 个 rtt,那么media rtt 就是第十个包的 RTT;如果有5 个包丢失的话,那么media rtt 就是第八个返回的包的 rtt 值。

packetloss  (丢包率)

通过ping包进行测试的进行测算。通过loss color进行展示。

loss color:

丢包情况从绿色 安全色 到 红色 警告色。

如果是绿色的短横线,说明一个300秒的周期内所有的包都返回都有RTT的时间记录下来;如果是蓝色的短横线则说明有2个包丢失。

probe:20 ICMP Echo Pings every 60s

我们设置的是每60秒向目标设备发送20个探测数据包

6.6 实际分析:

准确性?

同时监控下图4个不同的IP【(网址)分布在不同的服务器】,在 2019/08/06 9:20的时间,网络产生了波动。波动曲线接近相同。而这个波动影响源为本地这个时段的网络波动。所以不管smokeping监控那个服务器,从本地这个点发起,到达各个服务器都受到了影响。

结论: smokeping监控网络为点对点的ping数据。会受到当前网络波动影响。

怎么利用这个特点:

点对点的网络数据,而我们考试场景基本为 “学校 - 服务器”点对点。

受到当前网络健康情况影响。我们无法干扰运营商的网络波动,但是本身考试现场可以减少非考试机器的网络使用干扰。

延时性?

记录数据时间和当前时间存在几分钟的延迟。所以通过图表看到的数据为一个趋势。

可以通过设置probe来改变探测包发送频率。

6.9 注意项:

如果不出现图像,连续不出现绿块,说明smokeping没有和对方建立连接,检查本地网络问题。

七、告警配置

7.1告警配置

smokeping告警配置

自定义smokeping告警(邮件+短信)

继续阅读