分享
2023年网络协议识别技术综述.docx
下载文档

ID:2144575

大小:47.67KB

页数:30页

格式:DOCX

时间:2023-04-25

收藏 分享赚钱
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,汇文网负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
网站客服:3074922707
2023 网络 协议 识别 技术 综述
网络协议识别技术综述 冯文博 洪征 吴礼发 付梦琳 摘 要:网络流量的协议类型识别是进行协议分析和网络管理的前提,为此研究综述了网络协议识别技术。首先,描述了网络协议识别的目标,分析了协议识别的一般流程,探讨了协议识别的现实需求,给出了评估协议识别方法的标准;然后,从基于数据包的协议识别和基于数据流的协议识别两个类别分析了网络协议技术的研究现状,并对协议识别的各类技术进行了比较分析;最后,针对目前协议识别方法的缺陷和应用需求,对协议识别技术的研究趋势进行了展望。 关键词:应用层协议;网络流量;协议识别;特征工程;网络管理 中图分类号: TP393.02计算机网络与结果文献标志码:A Review of network protocol recognition techniques FENG Wenbo1, HONG Zheng1x, WU Lifa2, FU Menglin1 (1. College of Command and Control Engineering, Army Engineering University of PLA, Nanjing Jiangsu 210007, China; 2. College of Computer Science and Technology, Nanjing University of Posts and Telecommunications, Nanjing Jiangsu 210023, China) Abstract: Since the protocol classification of network traffic is a prerequisite for protocol analysis and network management, the network protocol recognition techniques were researched and reviewed. Firstly, the target of network protocol recognition was described, and the general process of protocol recognition was analyzed. The practical requirements for protocol recognition were discussed, and the criteria for evaluating protocol recognition methods were given. Then, the research status of network protocol techniques was summarized from two categories: packet-based protocol recognition methods and flow-based protocol recognition methods, and the variety of techniques used for protocol recognition were analyzed and compared. Finally, with the defects of current protocol recognition methods and the practical application requirements considered, the research trend of protocol recognition techniques was forecasted. Key words: application-level protocol; network traffic; protocol recognition; feature engineering; network management 0 引言 網络协议是通信实体在互联网环境中进行数据交换的根底,是计算机网络及数据通信不可缺少的组成成分。网络协议描述了特定网络环境下通信设备之间的通信过程,规定了通信报文的格式、处理方式和交互时序,其质量关乎网络通信的平安性、可靠性和稳定性。常用的协议解析工具如Wireshark等[1]根据协议标准可以对协议实现快速准确识别。 网络协议识别是指通过人工或自动化手段分析网络协议或者应用所产生的网络流量,提取出能够标识网络协议的关键特征,然后以这些特征为根底标识网络流量所隶属的应用层协议[2]。网络协议识别技术是管理和优化网络资源的重要根底,能够对网络流量的组成进行精确分析,为网络管理与维护、网络内容审计、网络平安防御等多个研究领域提供技术支撑。随着网络规模的不断扩大、网络应用种类的迅速增加,对网络协议识别的效率和准确性的要求越来越高,研究能够提高协议识别准确率和自动化程度的方法具有重要的现实意义。 1 问题描述与定义 网络协议识别技术的研究主要从序列载荷的内容特征和通信行为的外部特征两个方面展开。基于序列载荷内容特征的协议识别可以理解为微观、具体的方法。这类方法需要了解各层协议数据单元的字段结构和字节取值分布,如采用传输控制协议(Transmission Control Protocol, TCP)层的端口信息进行协议区分,基于特定协议字段的取值进行协议区分。基于通信行为外部特征的协议识别可以视为宏观、抽象的方法。不同协议通常具有不同的传输特性和不同的统计分布规律,可以依据协议的各种宏观统计信息来推断流量所属的网络协议。为了剖析网络协议识别的本质,分析现有方法的优势与缺乏,本文将首先论述协议识别目标、协议识别需求和主要判别指标三方面的根底内容。 1.1 协议识别目标 协议实体的通信通常是一个复杂的交互过程。出于简单化处理的考虑,协议设计时通常采用分层思想,将不同的通信功能在不同层次上实现。 TCP/IP协议族是使用最为广泛的四层协议系统,其层次系统自下而上分为:链路层、网络层、传输层和应用层。链路层负责处理与传输媒介相关的问题;网络层负责处理分组在网络中传输;传输层为两个传输节点提供端到端通信;应用层负责处理特定应用程序与用户的交互细节。链路层、网络层和传输层都定义了各自的协议格式,根据RFC(Request For Comments)文档便可以分析通信过程。而应用层协议是根据应用需求进行定制,种类繁多。区分应用层协议是网络协议识别的主要目标。 网络协议识别往往会以协议的分层为根底,首先依据协议解析工具识别出帧头格式,如以太网帧、点对点协议(Point to Point Protocol, PPP)帧,确定数据包中的网络层首部和传输层首部,进而提取出应用层协议数据进行分析。 网络协议识别需要将连续的网络流量按照一定粒度进行划分,常见的粒度包括Bit-level、Packet-level、Flow-level、Stream-level四类。Bit-level关注网络流量的内容特征,从比特流中挖掘用于区分协议的特征序列,适用于无任何先验知识下的网络协议识别。Packet-level关注数据包的内容特征及其交互行为,如数据包内容、大小分布、时间间隔等,适用于早期的互联网流量的协议识别,现在多作为网络协议识别的辅助分析手段。Flow-level关注数据流的内容特征与交互行为,如数据流内容、大小分布、到达时间等,这种以流为单位分析网络传输数据的方法目前使用最为广泛。Stream-level关注通信主机交互产生的流量,通过长期收集来统计通信特性,适用于研究粗粒度且时间跨度较长的骨干网流量。 同一种协议通信产生的网络流量之间存在一定的相似性,可以利用这种相似性区分不同协议产生的网络流量。网络协议识别的本质就是利用网络流量的内容信息或统计信息,建立一种函数映射关系f:X→C,将网络流量映射为具体的协议类型,其中:X表示待分类的网络流量集合,C表示协议类型集合, 1.2 协议识别需求 网络协议识别技术有助于对网络流量的组成结构进行分析,保障网络的正常运转。网络协议识别的应用需求主要表达在以下领域: 1)网络管理与优化。协议识别技术通过对网络流量的分类识别与统计分析有助于了解流量分布情况和网络运行状态,通过细粒度的协议分析提高网络监控效能,通过配置合理的管理策略提供差异化的网络效劳。 2)网络内容监管。面对海量的通信内容,依赖人工识别的传统内容监管方法难以为继,网络协议识别技术可以自动获取流量所承载的内容,能够针对性地过滤非法信息,有效降低监管本钱,提高网络内容监管的效率和水平。 3)网络平安防御。网络流量是网络行为的表达,通过深层次分析网络中传输的内容,可以发现通信流量中包含的病毒攻击代码和敏感信息,及时进行告警并提供应对方案,从而防范平安威胁,提高网络平安防御水平。 1.3 主要判别指标 目前,衡量网络协议识别方法,主要采用以下一些判別指标: 1)准确性。衡量协议识别方法的预测值与真实值之间接近程度,主要包括总体识别衡量指标(总体分类准确率Accuracy)和单类识别衡量指标(精确率Precision、召回率Recall和F值F-Measure)。在实际应用中,需要考虑流量种类的不平衡性,因为流量占比较高的协议更容易被识别。 2)实时性。评估协议识别方法是否能够实时对网络流量进行类型判别,较早识别出协议类型有利于后续处理,例如及时对恶意流量进行过滤拦截。 3)鲁棒性。网络数据传输过程中会发生一些特殊情况,如数据包乱序、丧失等。评估协议识别方法应该具备处理这些特殊情况的能力,包容这些异常并且保证协议识别结果的准确率。 4)扩展性。评估协议识别方法在不同粒度划分下的准确率变化以及面对不同吞吐量的性能表现,扩展性好的方法能够保证协议识别结果的准确率和效率。 5)平安性。衡量协议识别方法对于传输内容的保护能力,平安性高的方法在进行协议识别的同时能够有效保护用户隐私、防止隐私数据泄露。 6)协议无关性。协议识别方法除了能够对协议实现准确识别,在实际应用中,还可能会遇到新出现的未知协议产生的流量或经过加密的流量,协议无关性好的方法应该能够识别出未知协议的网络流量。 2 网络协议识别流程 网络协议的识别流程大体可分为五个阶段:数据采集、数据预处理、特征提取、分类模型的建立和模型验证,如图 1所示。每个阶段相对独立,又互相关联。模型验证的结果与数据预处理、特征提取和分类模型建立密切相关。数据预处理是模型验证的数据原因,合理、有效的预处理有助于提高协议识别的准确率;特征提取阶段提取出的特征是模型验证的特征原因,完备的特征集有利于提高协议识别的检测效率;分类模型建立是模型验证的模型原因,简单、高效的分类模型有利于提高协议识别的准确率和检测效率。数据采集和数据预处理阶段的工作相对固定,本章将进行重点介绍。特征提取和分类模型的建立是协议识别领域的研究重点,将在后续章节结合研究进展进行介绍。 2.1 数据采集 网络协议识别的第一步就是获取网络数据样本。目前,协议识别的研究数据主要包括本地流量集和公开数据集。下面对两类数据集进行介绍。 2.1.1 本地数据集 本地流量集是指协议分析人员根据实际需求捕获的网络流量,然后将网络流量构造为研究所用的数据集。一些机器学习算法要求建立训练数据集,其中的训练数据需要进行标注。数据集标注的好坏会直接影响算法的学习性能,目前的标注方法主要包括人工标注方法和自动标注方法两类。人工标注方法往往要求在实验环境中模拟目标程序运行,依据端口等信息对目标程序产生的流量进行协议类型的标注。自动标注方法利用深度包检测(Deep Packet Inspection, DPI)方法或基于DPI的工具自动地标记流量,如L7-filter[3]、nDPI[4]、Libprotoident[5]等。DPI技术不仅检测端口等信息,

此文档下载收益归作者所有

下载文档
你可能关注的文档
收起
展开