应用层协议识别技术研究

2015-02-23 04:09彭文峰杜中军
现代计算机 2015年8期
关键词:有效载荷应用层数据包

彭文峰,杜中军

(四川大学计算机学院,成都 610065)

应用层协议识别技术研究

彭文峰,杜中军

(四川大学计算机学院,成都610065)

0 引言

应用层协议识别,也称为网络流量分类或网络流量识别,指在基于TCP/IP的网络体系中,按照应用层协议类型将网络通信过程中产生的TCP流或UDP流进行分类,从而达到清楚认识网络传输的基本信息、提高网络用户的服务质量、加强网络安全设备对非法入侵和攻击的检测能力等目的。能够准确地识别Internet上每个流所使用的应用层协议对于网络管理员、技术研究人员、网络服务提供商、政府管理部门以及普通用户都具有重要的意义,其是研究区分服务、QoS、流量监控、安全审计、资源调度、计费管理以及用户行为分析的重要前提和基础。

1 应用层协议识别的主要方法

1.1基于端口映射的识别方法

互联网发展初期,对数据流的应用层协议识别主要是依据应用层协议绑定知名端口号的惯例来实现,它通过检查网络数据包包头的源端口号和目的端口号来识别应用层协议类型。例如,DNS协议对应的端口号为53,Telnet协议对应的端口号为23等。

基于端口号的识别方法简单快捷,计算量小,但随着网络应用不断增加,很多网络应用都不再强制应用程序与端口号绑定,而采用随机生成的端口号,或者在数据传输过程中协商端口号方式来进行。例如FTP协议(PASV模式)允许通信双方主动写上数据流参数,随机更改端口号以达到隐藏协议特征的目的。这些问题导致基于端口号的方法能够正确识别的协议数量逐步减少。有研究表明,基于端口号的识别方法只能获得小于70%的识别准确率,该方法已不再适应当前网络的实际状况。

1.2基于有效载荷特征的识别方法

为了解决基于端口号的识别方法存在的问题,研究者提出了基于数据包有效载荷特征的识别方法[1]。这种方法通过深包检测技术(DPI),对网络数据包的有效载荷中匹配已知的应用层协议特征库,从而判定该数据包所属网络流对应的应用层协议。例如,如果一个网络数据包的有效载荷以字符串“+OK”或“-ERR”开始,那么就可以判断它是由POP3协议产生的数据包。在不考虑计算效率的情况下,其识别率接近100%。

基于有效载荷特征的识别方法凭借其高准确率和可识别协议多的优点,经常被当作判别其他识别方法准确性和完备性的度量真值。此外,该方法的更新升级(向系统中添加新的协议特征或修改已有协议的识别方法或其正则表达式)很方便,且易于软硬件实现,是目前网络工程界应用最广泛的方法。然而,该方法仍然存在以下不足:一是在有效载荷特征匹配和分析的过程中可能扫描部分或全部有效载荷,需要很大的计算量,系统开销大;二是若数据包在传输过程中经过了二次封装或加密,则该方法失效;三是分析数据包有效载荷的过程,窥探了用户隐私,可能涉及法律和道德问题。

1.3基于流动态行为特征的协议识别方法

流动态行为特征识别技术又称DFI(深度/动态流检测)识别技术[2~3]或基于机器学习的识别技术[4]。该技术利用统计学原理,通过分析协议流特征如IP地址、端口数量、报文长度、流生成周期等统计状态来达到协议识别的目的。例如,FTP协议进行数据传输时,平均数据包长度都比较大;而使用MSN聊天所产生的网络流的平均数据包长度都比较小,即不同网络应用所产生的网络流在统计特征上会呈现出不同的规律。类似的,每个流中数据包的平均到达间隔、数量和大小、不同所产生的数据流的持续时间等也不尽相同,这些都可以作为区分不同应用层协议的统计特征。该方法通常使用机器学习、特征统计或基于隐式马尔可夫模型等方法对流进行分类,首先从训练的流量数据集(即样本)中提取协议特征,然后将这些特征用于训练来产生分类器,最后,用生成的分类器对随后的未知流量进行识别。

基于流量动态行为特征的网络协议识别技术的优点在于:一是降低了人工分析的难度,自动化程度较高;二是不依赖于数据包有效载荷的内容,其识别准确率主要取决于统计特征、分类模型和训练样本的选取,在一定程度上可识别加密、异常或未知的流量。三是协议的升级更新对此识别技术的影响不大;四是计算和存储开销小,维护工作量低,效率和安全性更高。同时,该识别技术也具有以下的一些缺陷:一是样本数据采集繁琐,多数情况下很难找到与真实情况接近的样本;二是对算法要求较高,相同的样本数据,相同的流量行为特征,基于不同的算法,协议识别的效果也不同;三是识别的准确率不如基于有效载荷特征的识别方法高,且只能识别大概的应用类别,很难精确到具体应用层协议。例如,这类方法能够区分基于P2P协议的流量与其他流量,但无法分辨具体是哪种P2P协议;四是网络流特征的采集需要传输的网络流量达到一定程度,因此识别延迟较大,很难达到在线实时分类和处理的要求。

1.4基于主机行为的识别方法

随着行为学在网络行为方面的应用,研究者开始关注网络行为模式,试图利用网络数据包的五元组(源IP、目的IP、源端口号、目的端口号、传输层协议)信息来分析主机之间的交互行为,不同的网络应用表现出来的交互行为不尽相同。此识别方法通过采取观测网络中单个主机在传输层的行为模式、捕捉主机在全网范围内交互行为的流量传播图、利用连接同质性即公共主机之间所产生的流属于同一个应用的趋向性等为重点来进行应用层协议识别。

基于主机行为的识别方法的优点在于不依赖于网络数据包有效载荷里的内容,具有良好的可扩展性,且能很好地保护用户私隐。然而,这类方法往往需要手动设定一些阈值,例如BLINC方法需要设置28个阈值参数才能达到最好的识别效果。其次,描述主机之间的交互需要收集许多网络流的信息,这使得此类方法的实时性较差。第三,这类方法会因为网络环境的不同而导致识别性能发生显著的变化,通用性较差。第四,网络地址转换等网络安全技术的干扰很容易令此类方法失效。

2 结语

应用层协议识别技术进一步研究可以向三个方向发展:一是基于有效载荷特征的识别方法如何在保证用户隐私不受侵犯或少受侵犯的前提下,降低系统消耗并提高识别准确率。二是基于流量动态行为特征的协议识别技术本质上属于模式识别问题,可以使用支持向量机SVM方法对流量进行分类识别,它在解决小样本、非线性及高维模式识别中表现出许多其特有的优势。三是进一步研究如何更好地结合各类算法,使其优势互补,提高协议识别系统的可扩展性、覆盖全面性和识别准确率。

[1]Dreger H,Feldmann A,Mai M,Paxson V,Sommer R.Dynamic Application-Layer Protocol Analysis for Network Intrusion Detection [C].USENXI Security Symposium(USENIX Security),2006

[2]孙海波.基于协议行为特征的协议识别方法.全国网络与信息安全技术研讨会,2007

[3]王岩,刘乃安.应用层协议识别技术研究.西安电子科技大学2012学位论文

[4]Karagiannis T,Papagiannaki K and Faloutsos M.BLINC:Multilevel Traffic Classification in the Dark.In Proceedings of ACM SIGCOMM,229~240,Philadelphia,Pennsylvania,USA.August 21~26,2005

Protocol Identification;Port Mapping;Payload Characteristic;Flow Dynamic Behavior Characteristics;Host Behavior

Research on the Application Layer Protocol Identification Technology

PENG Wen-feng,DU Zhong-jun
(College of Computer Science,Sichuan University,Chengdu 610065)

1007-1423(2015)08-0068-03

10.3969/j.issn.1007-1423.2015.08.016

彭文峰(1984-),男,重庆南岸人,硕士研究生,研究方向为计算机应用

2015-03-01

2015-03-10

应用层协议识别作为当前网络测量管理与网络安全研究领域的热点问题,其相关技术研究对整个互联网的可管理性、安全性和规范性具有重要的理论意义和应用价值。重点介绍基于端口映射、基于有效载荷特征、基于流动态行为特征、基于主机行为等几种主要的协议识别方法,总结分析它们的工作原理和优缺点,并对进一步研究学习方向提出建议。

协议识别;端口映射;有效载荷特征;流动态行为特征;主机行为

As the current network measurement management and hot issues in the field of network security research,the related technology research on application layer protocol identification has important theoretical significance to the entire Internet manageability,security,and normative.Mainly introduces several layer protocol identification methods based on the port mapping,payload characteristic and flow dynamic behavior characteristics,and based on the host behavior identification.Analyzes and summarizes the working principle and advantages,proposes the suggestions for the further research.

猜你喜欢
有效载荷应用层数据包
理念牵引 机制创新 人才驱动 做有效载荷创新发展领跑者
二维隐蔽时间信道构建的研究*
面向有效载荷数字化研制的标准化工作转型初探
民用飞机飞行模拟机数据包试飞任务优化结合方法研究
卫星有效载荷研制流程的策划与推进
2020.3.21~2020.4.20中国运载火箭发射记录表
C#串口高效可靠的接收方案设计
基于分级保护的OA系统应用层访问控制研究
物联网技术在信息机房制冷系统中的应用
Current advances in neurotrauma research: diagnosis, neuroprotection, and neurorepair