思考聚类算法下网络应用协议识别系统的实现

2013-09-03 06:32张甲侯磊
中国信息化·学术版 2013年7期
关键词:网络流量网络应用聚类

张甲 侯磊

【摘 要】一直以来,网络应用协议识别都是网络技术研究的难点与热点问题,属于网络安全系统的核心。在当前,主流的网络应用协议识别方法主要为基于网络流行为的网络应用识别方法及基于载荷的网络应用协议识别方法,这两种网络应用协议识别系统都存在着一定的局限性,为更好地分析真实网络中存在的网络数据,对有效区分应用协议网络流特征向量进行统计与挖掘,提出建立聚类算法下网络应用协议识别系统。本文从网络应用协议识别系统的研究现状出发,提出建立聚类算法下网络应用协议识别系统,并对几种聚类算法进行简述,最终通过实际试验证明了聚类算法下网络应用协议识别系统具备良好的识别效果。

【关键词】聚类算法 网络应用协议识别系统

【中图分类号】G250.72【文献标识码】A【文章编号】1672-5158(2013)07-0143-01

随着互联网应用技术的不断发展,互联网网络应用日新月异,层出不穷,致使网络流量日趋复杂化。在互联网发展之初,仅仅存在着简单的几种协议,如HTTP、FTP、SMTP,伴随着即时通信、视频、P2P等技术的发展与应用,让互联网中承载的内容日趋多样,尤其是P2P资源共享技术,实现了用户之间对等的资源共享。随着网络应用种类的不断增加,为网络管理与运行带来了极大的挑战。加上当前人们对网络应用的依赖程度越来越高,对网络的实时性提出了更高的要求,从而推动了网络带宽技术的进步。然而,面对庞大的网络流量,网络安全系统需要进行更大数据量的处理,更是对流量实时处理提出了更高的性能要求。

一、网络应用协议识别系统研究现状

网络应用协议识别系统属于网络安全系统的核心,通过网络应用识别系统,可以快速准确地识别出网络流中所应用的业务,并控制各类网络应用协议的使用带宽,限制非授权网络应用宽带需求,满足授权网络应用的带宽要求,通过这种方式,分配网络容量,深化网络流量安全检测,进一步提高网络服务的质量,为用户带来更好的网络体验。

在当前,网络应用协议中网络流呈现出静态特征与动态特征。根据网络应用协议识别方法的使用特征,大致可以分为三个种类,分别为基于网络流行为的网络应用识别方法、基于载荷的网络应用协议识别方法与基于端口的网络应用协议识别方法。

(一)网络应用协议中网络流特征

在不同的网络应用协议中,存在着不同的流量特征,这些流量特征是建立网络应用协议识别的基础。主要的流量特征包括流行为统计特征、端口特征及应用层负载数据字符特征等,这些网络流表现出静态特征与动态特征。

1.网络应用协议的静态特征

静态特征,在所有网络协议中都不会随着时间与空间因素的变化而发生改变,具备固有特征。静态特征主要是对数据报所携带的数据内容进步处理分析,最终对不同网络应用协议特征进行区分,静态特征主要包括应用层负载数据字符特征与端口特征两种。

静态特征中应用层负载数据字符特征主要指的是应用层中用户的数据会存在特定的特殊字段,如在P2P网络应用的控制报文中,报文应用层所携带的数据会具备一些特定存在的字符。通过网络流检测技术,针对报文中所携带的特定字符判断出报文是否属于P2P文件共享应用所发报文,然后进行网络流的管理与控制。随着网络应用领域不断扩大,人们对信息传递的安全性提出了更高要求,更是将加密机制应用在网络应用之中,在防止信息泄露的同时,也隐藏了网络流数据字符特征,导致网络流数据特征不能快速及时地识别出网络应用协议。

2.动态特征

动态特征,指的是在某一种网络应用协议中,随着时间与空间因素的变化而出现不同结果,动态特征又被称之为网络应用行为特征,需要一定的连续时间与空间积累才可以将动态特征显示出来。

(二)网络应用协议识别方法研究现状

1. 基于网络流行为的网络应用识别方法

基于网络流行为的网络应用识别方法主要是对数据报中行为特征进行统计,并将统计结果抽象成多维向量,结合机器学习方式,对多维向量间大小关系进行识别,最终对网络流应用协议进行判断。这种方法扩展性良好,可以发现新特征流,局限性是难以通过简单匹配的方式完成应用协议识别。

2.基于载荷的网络应用协议识别方法

基于载荷的网络应用协议识别方法采取还原技术与协议分析的方法,针对数据报采取深度检测,获取应用层所携带的数据内容,并对其数据中包含的内容进行分析,最终呈现出协议正则表达式,通过协议正则表达式判断网络流中所应用的网络协议,对网络流进行管理与控制。这种识别方法精确度高,维护简单,其局限性在于不能实现隐私保护,对新型应用实用性较差等。

3.基于端口的网络应用协议识别方法

基于端口的网络应用协议识别方法主要应用于传统的互联网应用协议识别系统中,在传统互联网应用中,服务端口具备统一规范的特性,加上协议的数量较少,采取端口的网络应用协议识别方法十分有效,且技术实现简单,开销较小,能够优化网络性能,提高网络服务的质量。但随着端口自定义的出现及应用,庞大网络流量及网络协议种类不断增加,越发显示出基于端口的网络应用协议识别方法的落后。

二、基于聚类算法的网络应用协议识别系统及聚类算法

聚类算法,其核心为是将相似对象聚成为一个簇,对不同对象进行分类处理。基于聚类算法的网络应用协议识别系统,将网络流视为相似对象,通过有效区分网络流特征地提进行聚类,将相同网络协议的网络流聚成为一个簇,从而判断出网络流所使用的网络协议。

(一)基于聚类算法的网络应用协议识别系统实现的总体流程

基于聚类算法的网络应用协议识别系统实现的总体流程如下:对正在传递的网络流量进行抓取;对网络流量中数据报通过特殊网络流划分方式进行划分,获得不同的网络流;对每个网络流所携带数据进行提取,并将提取结果与每种网络应用协议中存在的匹配正则表达式作匹配处理;通过匹配处理分析出网络流使用的网络协议;如通过匹配处理分析出网络流使用的网络协议,则进行网络流管理与控制;如不能通过匹配处理分析出网络流使用的网络协议,则提取网络流中特征向量,将网络流特征向量及标识存储到网络流信息数据中;采用聚类算法对网络流特征进行处理;通过判断每簇所含有的网络应用协议,判断出网络应用协议的类型。

(二)聚类算法

1.K-means聚类算法

当前,最为经典的聚类算法就是K-means聚类算法,其算法实现的思想是:随机的选择出空间中某个点作为中心,进行聚类,划分出不同的簇,然后使用迭代方式,对各类聚成中心值进行更新,最终实现良好的聚类结果。

2.网格密度聚类方法

网格密度聚类方法可以发现任意形状的聚类簇,通过网格密度聚类方法,对低密度区域进行过滤,发现样本密集处,最终发现任意形状的聚类簇。这种计算方法的目的是明确密度相连对象的最大集合,并对结果进行分析。

3.EM聚类算法

EM聚类算法可以实现对非完整数据集中计算,属于一种简单实用的学习方法。通过迭代最大化完整数据对数似然函数期望进行最大化不完成数据对数似然函数,最终获取模型估计参数。

三、结束语

随着互联网科学技术的进步与网络的普及,人们对网络的依赖程度越来越高,各种网络应用,为互联网网络带宽资源的优化配置带来了极大挑战。通过对网络应用协议识别,可以有效实现对网络应用流量的管理与控制,限制不合理网络应用,优化网络带宽配置,提高网络服务质量。当前主要的网络应用识别协议为基于网络流行为的网络应用识别方法及基于载荷的网络应用协议识别方法,这两种方法存在着一定的局限性,本文提出建立基于聚类算法的网络应用协议识别系统,并通过实际试验,证明聚类算法的网络应用协议识别效果显著,值得推广应用。

参考文献

[1] 梁波. 基于聚类算法的网络应用协议识别系统的研究与实现[D].山东大学,2012

[2] 杨爽.基于双重特征的网络应用协议识别系统[D].北京交通大学,2012

[3] 刘炯,徐同阁. 基于NetFlow的应用协议半监督识别算法[J].计算机技术与发展,2010,07:9-12+16

[4] 谭骏,陈兴蜀,杜敏.基于BPSO与神经网络的实时P2P协议识别算法[J].中南大学学报(自然科学版),2012,06:2190-2197

猜你喜欢
网络流量网络应用聚类
泰国·曼谷
基于模糊聚类和支持向量回归的成绩预测
基于流形学习的自适应反馈聚类中心确定方法
基于密度的自适应搜索增量聚类法
一种用于敏感图像快速加密的图像注入技术仿真
基于小波神经网络的网络流量预测研究
谈网络在中学生物探究学习中的应用
民航空管气象网络安全建设方案设计与实现
基于时间序列分析的网络流量预测模型研究
PocketPC网络应用全接触