论文部分内容阅读
随着互联网的飞速发展,网络用户数量急速增加,网络带宽不断增长,各种网络应用层出不穷,网络行为日益复杂,传统的基于报文层次的网络分析在获取流量宏观和微观变化规律方面已经不再适用。近年来,众多以网络流为基本处理单位的网络流分析技术则应运而生,而网络流识别则是网络流分析技术的基础步骤和瓶颈环节,虽然目前已有一定数量的网络流识别策略被广泛地应用于网络安全管理、性能管理、计费管理、流量分类、软件定义网络、流量矩阵估计、负载均衡管理以及复杂网络结构分析等领域,但这些策略在网络流识别效率或精度上仍有一定的提升空间。因此,本论文将以提升网络流识别的精度和效率为目的展开研究,为网络流分析技术提供更加适用的网络流识别算法。本论文围绕网络流识别展开研究,首先以网络流属性为研究对象,基于大量的IP trace数据和互联网流属性,研究对比了同一地域内不同网络中网络流的各属性特征以及不同地域间网络流属性特征的差异和共性,为研究新的网络流识别算法提供依据和参考。然后,基于网络流属性特征,量化分析了网络流超时策略的合理性,并提出了一种保障网络流完整性的超时阈值选择算法,为高精度的网络流识别提供可参考的合理超时阈值。而且在网络流特征的研究中,可以看到单包流不仅大量存在,而且单包流比例较早期研究结果更高,于是围绕单包流识别优化问题展开研究,基于TCP连接的有效性分析和高区分度网络流属性提出了一种TCP单包流快速过滤算法,提升了网络流的整体识别效率。最后,针对TCP网络流,量化了TCP网络流属性对网络流识别的贡献度,基于传输控制协议TCP的严格规范性,使用有限状态自动机原理,提出了一种针对TCP网络流的识别算法,提升了TCP网络流的识别性能。本论文的主要贡献和创新点如下:(1)以网络流属性为研究对象,使用不同地域间的实测IP trace流量数据,基于对其中海量网络流属性特征的提取,研究了网络流各属性特征在时间维度上的变化趋势,并对比分析了不同地域间网络流属性的特征差异和共性。通过对网络流属性特征的研究,一方面能够使相关研究者更加全面地把握当前网络流各属性在时间和地域上的特征,另一方面也为研究更加准确和高效的网络流识别算法提供了有益的数据参考和突破点。在分析网络流属性特征之后,提出了一种基于网络流属性识别能力分析网络流超时策略合理性的方法,并以提升网络流识别精度为研究出发点,提出了一种保障网络流完整性的超时阈值选择算法,旨在从提高网络流识别精度的角度设计一种超时阈值选择算法,然后基于大量的实测IP trace流量数据针对不同的网络流量类型进行了实验,并获取了当前网络环境下能够保障网络流完整性的合理超时阈值经验值。(2)针对单包流的大量存在以及现有网络流识别算法在单包流识别优化方面的不足,深入研究了TCP单包流特性,发现数据包状态、数据包到达间隔和数据包大小与TCP单包流具有高相关性,然后基于高区分度属性提出了TCP单包流的快速过滤算法。该算法效率高并且实现相对简单,可作为网络流识别的前端过滤机制,快速识别出满足识别条件的TCP单包流,由于识别出的单包流不再长时间地占有内存空间和消耗计算资源,从而有效地提升了网络流的识别性能。(3)考虑到TCP流量在网络流量中的主导地位,针对TCP网络流展开研究,首先基于信息熵提出了属性识别度概念,利用属性识别度量化了TCP网络流属性对TCP网络流识别的贡献度,发现了数据包到达间隔的识别度最高,TCP传输控制状态的识别度仅次之,数据包大小虽然也对TCP网络流的识别有一定的贡献,但其识别度却很低,而生存时间、源端口、目的端口、服务类型等属性的识别度则极低,可视为对TCP网络流识别无贡献的属性。鉴于数据包到达间隔和TCP传输控制状态的高识别度以及传输控制协议TCP在其连接建立、数据传输和连接释放过程中的严格规范性,利用有限状态自动机原理构建了TCP双向流自动机,使用TCP双向流自动机识别TCP网络流,提出了基于自动机的TCP网络流识别算法,该算法是针对TCP网络流的专用型识别算法,实验结果表明该算法在综合性能上优于网络流识别的经典算法和现有同类代表性算法。