基于应用的SOE:
分类见应用度量中
基于用户SOE:
终端用户(网络使用体验),网络管理员(网络OAM体验)
基于规模SOE:
单点网络SOE(接入层,汇聚层,核心层),整网SOE,
要求
该数据能够基于不同时间间隔定期更新(基于秒(最短5),分钟,小时,天,周,月5个尺度)
最终度量数据和实际值(暂定以MOS为衡量标准)误差小于5%
以整网为单位,比如校园网,可以在5秒内实时计算出2万个用户的SOE(展示可能是一个比例,比如70%用户满意,不是具体数据)
数据来源
参数 |
含义 |
单位 |
采样时长 |
说明 |
drop |
丢包率 |
无 |
耗时约5s |
Ping目标IP地址10次,统计成功率。 注:发送足够多报文才有统计意义,但这样会影响设备端性能 |
Jitter |
抖动 |
Ms毫秒 |
耗时约5s |
对基于应用的目的IP进行ping若干次,计算延迟时间差值的平均值;比如,ping 某IP的时延为136, 184, 115, 148, 125,则其差值为136 to 184, diff = 48;184 to 115, diff = 69;115 to 148, diff = 33;148 to 125, diff = 23;(这里只有4个差值). Jitter为173 / 4 |
Delay |
延迟 |
Ms毫秒 |
耗时约5s |
包括转发延迟和传播延迟,交换机上转发延迟在纳秒级别,这里只计算传播延迟。 对基于应用的目的IP进行ping若干次,计算耗时间值的平均值 如ping 3次,15,10,5,则为(15+10+5)/3=10ms,最小值为1ms 这个不需多次,对性能影响不大 |
Access |
接入时间 |
S秒 |
实时获取 |
对于免认证用户,接入时间就是0 对于1x认证,接入时间为认证成功+获取到ip时间 对于web认证 |
根据前期论文搜索分析,最常见方法有两种
1. 通过用户主观打分作为训练样本标签,利用神经网络或决策树进行拟合预测
2. 根据应用特征和业务经验推出关系
由于方法1需要大量人力才能得到,所以考虑使用2方法中的结论结合业务经验进行公式推导
应用 |
计算公式 |
目的IP选择 |
备注 |
接入 |
5,access<=1 4,1<=Access<2 3,2<=Access<3 2,3<=Access<10 1,10<=Access |
NA |
Access为接入时间,参考安全模块给出推荐值 AuthenRate为认证频率 |
网络浏览 |
公式2 a*e^(b*delay)+c a=5.008 b=-0.0045 c=0.03 通过试验,系数修整为 a=4.908 b=-0.005166 c=0.3007 |
知名网站IP地址如新浪或百度 知名DNS如8.8.8.8或114.114.114.114 |
公式1参考资料6,7,8 网页的平均容量参考资料9,是320KB,windows默认MTU是1.5k,故假设需发送200个报文/页, delay是延迟,单位是ms, 这里有个问题,按平均打开时间4.9s计算,处在3分以下, 公式2参考资料14数据进行拟合重新计算系数 |
办公生产 |
同web浏览 |
内网服务器,如邮件服务器 |
delay是延迟,单位是ms, 参考资料11中结论,邮件MOS曲线和web浏览曲线接近 |
在线视频 |
公式1 Max(1,5-f(drop)-g(jitter)-0.348*f(drop)*g(jitter)) f(drop)= 2.734*(1-1/2^drop) g(jitter)= 0.055*jitter 公式2 C*e^(-drop)/(jitter + a*delay)+b a=(e-1)/4e b=(e-5)/(e-1) 公式3 假定同一时刻只观看一个视频,将包含视频的连续时间点组成一个时间序列,计算该序列时间段内平均视频下载速度,按累计算法来转换为消耗速度,具体算法见脚本 通过采样试验,公式修正为 e^(-drop)/(0.0317*jitter+0.01235*delay)+1.844 |
视频网站如优酷 |
drop为丢包率 jitter为抖动,单位是ms delay是延迟,单位是ms 公式1参考资料1 公式2参考资料2,映射到SOE区间 |
在线游戏 |
公式1 max(4.33-a*(x^3)+b*(x^2)-c*x,1) a=3.08*(10^(-9)) b=1.18*(10^(-5)) c=1.15*(10^(-2)) x = min(delay+0.686*jitter,650) 公式2 -0.00000587x^3+0.00139 x^2–0.114x+4.37 x = 0.104*delay+ jitter 通过采样试验,公式修正为 5.2696-6.8749*10^(-9)*x^3+2.3495*10^(-5)*x^2-0.0222*x x=delay+9.8371*jitter |
游戏网站 |
delay是延迟,单位是ms jitter为抖动,单位是ms 公式1参考资料5 公式2参考资料12 |
VOIP |
公式1 Max(1,5-0.003*delay-16.14*drop) 公式2 3.01*e^(-4.473*drop)+1.065 公式3 =(x+/y)/2 x=5,delay<100 x=4,100<delay<150 x=3,150<delay<250 x=2,250<delay<300 x=1,x>300 y=5,jitter<20 y=4,20<jitter<40 y=3,40<jitter<75 y=2,75<jitter<90 y=1,jitter>90 |
VOIP服务器或VOIP网关 |
Drop为丢包率,这里作为ULP的近似,参考资料3中计算公式 Delay是延迟,单位是ms 公式1参考资料3,系数选择参考资料4即G729为准 公式2参考资料6,7 公式3参考资料10 |
文件下载 |
Max(min(4.298*e^(-0.347*x)+1.390+1,5),1) x= delay*200/1000 经过采样试验,公式不变 |
内网服务器,如FTP服务器 |
参考资料11,下载MOS比web浏览高,故取网络浏览soe+1 delay是延迟,单位是ms, |
社交应用 |
同web浏览 |
社交应用服务器,如qq或微信服务器 |
终端用户soe= Σ(不同应用权重×基于应用的soe),
权重有两种选法,一种是根据业务重要性,例如
客户\应用 |
接入 |
网络浏览 |
办公生产 |
在线视频 |
在线游戏 |
VOIP |
文件下载 |
校园网 |
50% |
0% |
30% |
10% |
|||
企业网 |
20% |
70% |
|||||
另外一种是根据不同应用占用带宽比例来区分,这个数据可以通过应用度量来完成
网络管理员soe计算,涉及参数:vty登录时间,配置命令数(或者是前后对比配置变化量),并参考前后流量变化
Web应用的度量验证
通过访问20个不同网站,通过PING采集延时数据(drop,min,aver,max列),并计算出抖动和延时(jitter,delay列),根据上节公式计算出web的soe(web soe列),对边界修正后(修正soe),并同主观打分的MOS列对比,计算出平均误差率为7.7%,误差的标准差为0.35
drop |
min |
aver |
max |
jitter |
delay |
web soe |
修正soe |
MOS |
误差率 |
web soe2 |
修正soe2 |
误差率2 |
0 |
18 |
18 |
19 |
0.5 |
18 |
4.648346 |
4.648346 |
4 |
-0.14994 |
4.772892 |
4.772892 |
-0.1762 |
0 |
0 |
1 |
4 |
2 |
1 |
5.015515 |
5 |
5 |
0 |
5.183411 |
5 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
5.038 |
5 |
4 |
-0.22222 |
5.2087 |
5 |
-0.22222 |
0 |
187 |
187 |
188 |
0.5 |
187 |
2.188767 |
2.188767 |
2 |
-0.09013 |
2.168619 |
2.168619 |
-0.0809 |
0 |
383 |
383 |
385 |
1 |
383 |
0.923631 |
1 |
2 |
0.666667 |
0.979309 |
1 |
0.666667 |
0 |
1 |
1 |
2 |
0.5 |
1 |
5.015515 |
5 |
4 |
-0.22222 |
5.183411 |
5 |
-0.22222 |
0 |
18 |
18 |
20 |
1 |
18 |
4.648346 |
4.648346 |
4 |
-0.14994 |
4.772892 |
4.772892 |
-0.1762 |
0 |
337 |
342 |
358 |
10.5 |
342 |
1.104696 |
1.104696 |
1 |
-0.09949 |
1.139398 |
1.139398 |
-0.13032 |
0 |
53 |
53 |
54 |
0.5 |
53 |
3.975347 |
3.975347 |
3 |
-0.27966 |
4.033164 |
4.033164 |
-0.2938 |
0 |
226 |
231 |
237 |
5.5 |
231 |
1.800988 |
1.800988 |
3 |
0.499486 |
1.788832 |
1.788832 |
0.50583 |
0 |
466 |
478 |
486 |
10 |
478 |
0.61277 |
1 |
3 |
1 |
0.716114 |
1 |
1 |
0 |
21 |
22 |
25 |
2 |
22 |
4.56596 |
4.56596 |
4 |
-0.13214 |
4.681427 |
4.681427 |
-0.15698 |
0 |
296 |
297 |
300 |
2 |
297 |
1.345922 |
1.345922 |
1 |
-0.29491 |
1.358896 |
1.358896 |
-0.30429 |
0 |
269 |
281 |
292 |
11.5 |
281 |
1.444163 |
1.444163 |
2 |
0.322771 |
1.450079 |
1.450079 |
0.318788 |
0 |
202 |
263 |
303 |
50.5 |
263 |
1.563477 |
1.563477 |
3 |
0.629574 |
1.562084 |
1.562084 |
0.630377 |
0 |
17 |
21 |
27 |
5 |
21 |
4.586418 |
4.586418 |
4 |
-0.13659 |
4.704116 |
4.704116 |
-0.16179 |
0 |
41 |
41 |
41 |
0 |
41 |
4.194252 |
4.194252 |
4 |
-0.04741 |
4.27187 |
4.27187 |
-0.06573 |
0 |
377 |
377 |
377 |
0 |
377 |
0.948088 |
1 |
1 |
0 |
1.000673 |
1.000673 |
-0.00067 |
0 |
74 |
75 |
78 |
2 |
75 |
3.603469 |
3.603469 |
4 |
0.104303 |
3.63218 |
3.63218 |
0.096386 |
0 |
35 |
35 |
36 |
0.5 |
35 |
4.308219 |
4.308219 |
5 |
0.148639 |
4.396887 |
4.396887 |
0.128364 |
接下来,对公式中系数进行微调,使得更符合主观打分值,具体方法是利用matlab中的拟合工具,将delay作为x,MOS作为y代入,固定公式为a*exp(-b*x)+c,采用信赖域算法,得出最佳拟合曲线,并得到新的系数,具体计算值在web soe2列中,其对比MOS的平均误差率下降到6.7%,误差标准差仍为0.35
下载应用的度量验证
drop |
min |
aver |
max |
jitter |
delay |
website |
web soe |
修正soe |
MOS |
误差率 |
web soe2 |
修正soe2 |
误差率2 |
0 |
18 |
18 |
20 |
1 |
3.6 |
sina |
3.622384 |
3.622384 |
4 |
0.099081 |
4.069823 |
4.069823 |
-0.0173 |
0 |
39 |
39 |
39 |
0 |
7.8 |
csdn |
2.67695 |
2.67695 |
3 |
0.113811 |
2.631892 |
2.631892 |
0.130723 |
0 |
28 |
28 |
29 |
0.5 |
5.6 |
sohu |
3.005667 |
3.005667 |
3 |
-0.00189 |
3.032306 |
3.032306 |
-0.01071 |
0 |
21 |
21 |
22 |
0.5 |
4.2 |
pchome |
3.390751 |
3.390751 |
4 |
0.164868 |
3.643741 |
3.643741 |
0.093216 |
0 |
436 |
438 |
442 |
3 |
87.6 |
sourceforge |
2.39 |
2.39 |
1 |
-0.82006 |
2.434 |
2.434 |
-0.83518 |
0 |
392 |
396 |
399 |
3.5 |
79.2 |
github |
2.39 |
2.39 |
2 |
-0.17768 |
2.434 |
2.434 |
-0.19576 |
0 |
74 |
76 |
82 |
4 |
15.2 |
newhua |
2.41201 |
2.41201 |
4 |
0.495317 |
2.438789 |
2.438789 |
0.484939 |
0 |
44 |
44 |
45 |
0.5 |
8.8 |
crsky |
2.592818 |
2.592818 |
2 |
-0.25815 |
2.55368 |
2.55368 |
-0.24318 |
0 |
71 |
86 |
101 |
15 |
17.2 |
crsky |
2.400996 |
2.400996 |
3 |
0.221813 |
2.435751 |
2.435751 |
0.207606 |
0 |
23 |
24 |
26 |
1.5 |
4.8 |
pconline |
3.202655 |
3.202655 |
3 |
-0.06534 |
3.328641 |
3.328641 |
-0.10386 |
通过和web相同的方式采样拟合,拟合后曲线的平均误差率为0.04,比原来平均误差率0.02更大,故公式系数不调整
游戏应用的度量验证
游戏应用度量原公式有两个,将采样数据带入公式拟合后对比
公式1更符合采样数据,然后进一步对公式1的系数做拟合
得到公式为
soe=5.2696-6.8749*10^(-9)*x^3+2.3495*10^(-5)*x^2-0.0222*x
x=delay+9.8371*jitter
平均误差为0.03,而原公式平均误差为0.11
视频应用的度量验证
视频度量原公式有两个,直接拟合效果都不好,原因是按原公式代入拟合,一直无法获取到正数系数,也就是不是基于单参数的单调函数,故需要考虑其他方法拟合。
原始数据如下
drop |
min |
aver |
Max |
jitter |
delay |
MOS |
|
0 |
22 |
22 |
24 |
1.414214 |
22 |
youku |
5 |
0 |
7 |
11 |
23 |
8.944272 |
11 |
qiyi |
5 |
0 |
5 |
6 |
8 |
1.581139 |
6 |
Bili |
5 |
0 |
5 |
6 |
9 |
2.236068 |
6 |
mtime |
5 |
0 |
7 |
7 |
8 |
0.707107 |
7 |
lesi |
5 |
0 |
320 |
320 |
321 |
0.707107 |
320 |
bbc |
3 |
0 |
37 |
37 |
38 |
0.707107 |
37 |
Tw |
4 |
0.25 |
38 |
39 |
40 |
1 |
39 |
Tw |
2 |
0.25 |
320 |
320 |
321 |
0.707107 |
320 |
bbc |
2 |
0 |
65 |
66 |
67 |
1 |
66 |
Hlj |
3 |
0.25 |
66 |
67 |
69 |
1.581139 |
67 |
Hlj |
2 |
0 |
208 |
212 |
215 |
3.535534 |
212 |
bbc |
2 |
0 |
67 |
67 |
68 |
0.707107 |
67 |
Hlj |
3 |
0 |
72 |
75 |
84 |
6.708204 |
75 |
Hrb |
3 |
考虑到使用ping测试获取数据,drop的随机性较大,先过滤掉drop非0的项
drop |
min |
aver |
max |
jitter |
delay |
MOS |
|
0 |
22 |
22 |
24 |
1.414214 |
22 |
youku |
5 |
0 |
5 |
6 |
8 |
1.581139 |
6 |
bili |
5 |
0 |
5 |
6 |
9 |
2.236068 |
6 |
mtime |
5 |
0 |
7 |
7 |
8 |
0.707107 |
7 |
lesi |
5 |
0 |
320 |
320 |
321 |
0.707107 |
320 |
bbc |
3 |
0 |
37 |
37 |
38 |
0.707107 |
37 |
tw |
4 |
0 |
65 |
66 |
67 |
1 |
66 |
hlj |
3 |
0 |
208 |
212 |
215 |
3.535534 |
212 |
bbc |
2 |
0 |
67 |
67 |
68 |
0.707107 |
67 |
hlj |
3 |
这样只剩下jitter和delay两个参数,参考原来视频度量公式2,先构建以delay为参数的公式a/delay+b,即对影响因素更大的delay参数先做拟合,并去掉样本数据中离预期曲线较大的项
drop |
min |
aver |
max |
jitter |
delay |
MOS |
|
0 |
22 |
22 |
24 |
1.414214 |
22 |
youku |
5 |
0 |
37 |
37 |
38 |
0.707107 |
37 |
tw |
4 |
0 |
65 |
66 |
67 |
1 |
66 |
hlj |
3 |
0 |
208 |
212 |
215 |
3.535534 |
212 |
bbc |
2 |
0 |
67 |
67 |
68 |
0.707107 |
67 |
hlj |
3 |
通过拟合得到72.52/delay+1.844=1/(0.0138*delay)+1.844,再重新构建公式1/(0.0138*delayx+b*jitter)+1.844,对jitter拟合,得到jitter系数为0.00628,这时再将drop参数纳入,得到最终公式为soe=e^(-drop)/(0.00628*jitter+0.0138*delay)+1.844,均方差为7.2%
测试验收
单位时间内,运行某类应用,结束后记录类型值和主观打分值,然后到系统查看是否准确。
可以用各种自动化脚本或工具,若没有自动化就手动反复操作
l 网页浏览,可以用一些浏览器插件,每个若干分钟自动刷新网页,相当于触发流量
l 办公,比如自动邮件发送,vbs脚本,远程登录一直产生流量,svn,定时上传下载
l 视频,选择时长1小时的播放
l 游戏,有没有按键精灵可以操作,或者游戏脚本等
l voip,一直通话
l 下载,下载充分大文件,保证下载超过一小时,或者用wget反复下载
l 社交软件,qq,微信,尽量收发多消息