利用流特征对应用使用机器学习进行分类

应用分类


服务器上对sflow采样报文进行分析,结合arp表,识别出网络中存在的终端设备,以及终端设备在进行哪些网络应用。

具体步骤:

1.      服务器通过SNMP获取网关下终端列表,即mac地址和ip地址映射关系表

2.      网段内流量信息通过sflow采样发送到服务器

3.      服务器根据预先确定的算法对流进行应用分类

体验度量

服务器对各接入层节点通过RPING采集达到各类应用的目标地址的QOS数据。

目标地址从应用层面分为7类:web  office        video         game        voip  download sns,从用户角度分为2类:通用目标地址(预先指定的,比如上网就是sina,sohu,视频就是优酷),基于用户目标地址(从sflow采样中分析出来某个用户针对某个应用访问的目标地址,比如用户A正在web浏览IP地址为6.6.6.6的网页)。

如果用户有采样到在使用某类应用,则体验度量优先采纳基于用户目标地址的度量值,如果没有采样到使用某类应用,则使用通用目标地址的度量值。

具体步骤:

1.             从应用分类中,可以识别出终端用户在使用某类应用的具体ip地址,通过RPING获取访问该ip地址的qos参数,根据该应用度量公式计算出该用户这类应用的度量值

2.             如果没有捕捉到终端用户对某类应用的使用,则使用通用目标地址作为qos参数获取的对象,根据度量公式计算出该用户这类应用的度量值

3.             根据不同类型对应公式计算出各应用的体验分数

4.             对于体验不好的应用,针对其qos参数和目标地址,分析出线路瓶颈,包括延时(参考traceroute机制)和抖动。


总结

1 采样点1交换机发送sflow报文到服务器,服务器使用tshark监听udp的6343端口,保存sflow报文

  不同采样点采样比例不同,有线网络报文量大,采样比例为128,无线流量小,比例为8~16   

2 服务器每分钟汇总一次sflow报文,保存为txt形式文件1

  服务器上采样命令为

  Wireshark\tshark.exe -i 2 -aduration:50 -f"udp dst port 6343 and src host %2" -V > \probe%1\sflow_org%3.log

3 服务器脚本1处理文件1,得到单位时间内<用户ip,目标ip,应用类型>的列表结果

  脚本根据模型1中的应用分类算法实现

4 服务器脚本2获取这一分钟目标ip的ping结果列表,存为文件2

  并行ping各目标ip,视为网关到目标ip的qos参数

5 服务器脚本3获取这一分钟到各用户ip的ping结果,存为文件3

  并行ping终端ip,视为网关到终端的qos参数

6 前端页面根据文件1,2,3综合判断用户执行什么应用,体验如何,体验不佳原因

  体验计算公式从相关论文上获取并拟合校正,视频和下载则直接使用下载速率来判断



猜你喜欢

转载自blog.csdn.net/b0207191/article/details/80941792