原文标题:Flow Sequence-Based Anonymity Network Traffic Identification with Residual Graph Convolutional Networks

原文作者:Ruijie Zhao, Xianwen Deng, Yanhao Wang, Libo Chen, Ming Liu, Zhi Xue, Yijun Wang

原文链接:https://doi.org/10.1109/IWQoS54832.2022.9812882

发表会议:IWQoS

笔记作者:宋坤书@安全学术圈

主编:黄诚@安全学术圈

编辑:张贝宁@安全学术圈

1、研究背景

随着人们对个人网络数据保护需求的提升,匿名网络受到越来越多的关注。它们通过加密和混淆通信内容,有效地隐藏了用户身份和传输内容,保护了用户隐私。然而,匿名网络在保护用户隐私的同时,也为违法犯罪活动提供了便利,因此需要一个高效的流量分析系统对其进行监管。基于规则(如端口号和特征值)的传统流量识别方法因为随机端口的使用和加密技术的应用而被极大削弱。近年来,得益于人工智能技术的发展,特别是机器学习和深度学习的使用,极大提升了流量分析方法的准确性和适应能力。

现有研究表明,网络流量数据之间具有明显的时空相关性。一些研究尝试构建流序列来提升识别性能,但它们都忽略了流之间的关键关系,从而错误地将流序列中不相关的流作为流量识别的线索。为此,本文提出一种基于残差图卷积网络(Residual Graph Convolutional Network, ResGCN)的流序列识别框架,将每个流视为图中的节点,依据属性关系和时间关系设定边的权重,并借助残差结构提取流间特征。该框架还结合LightGBM算法进行特征选择,以提升模型性能和效率。

2、匿名网络流量识别框架

匿名网络流量识别框架首先对原始流量数据进行预处理,包括流划分、流序列构建、流关系图构建以及基于LightGBM的特征选择。随后该框架采用基于RESGCN的分类器对包含八个连续流的流序列进行特征交互和信息传递,最后通过多层感知机(MLP)实现对匿名流量的分类。该框架充分利用流间的属性和时间关系,实现了高效准确的匿名流量分类。匿名网络流量识别框架的结构如下图:

2.1 数据预处理

  • 流划分:网络避免长时间的单个流影响分类效率,本文采用基于时间或基于大小的流划分方案,将原始流量分割成多个更短的流单元,然后将分割后的流数据进行规范化处理,提取初步的流特征,为后续分析提供结构化数据基础。

  • 流序列构建:一些关于流量分类的研究表明,使用流序列可以显著提高分类性能。然而,包含太少流的流序列信息不足,无法达到理想的分类性能;太多流则会带来更大的计算负担,降低效率。因此,本文将每个流序列设置为包含8个连续流。

  • 流关系图构建:图生成是GCN成功应用的关键,为了充分利用流之间的关联信息,本文构建了属性关系图(ARG)和时间关系图(TRG)两种关系图。ARG基于流的索引、发送字节数和接受字节数确定正反两个方向流之间的关系,TRG则根据流生成时间构建邻接关系,流生成时间越近,权重越高。通过对这两类图的邻接矩阵进行归一化和融合,可以得到反映流序列内部关系的融合图。不同流之间的关系如下图:

  • 基于LightGBM的特征选择:为了选择最优的特征组合,本文采用基于LightGBM的特征选择方法,避免了不重要的特征降低分类器的性能和效率。具体做法是利用LightGBM计算每个样本的梯度,并以此评估特征的重要性。对于每个特征,通过遍历其所有可能的划分点,计算对应的节点方差增益,并选择使增益最大的划分点进行分裂,以获得该特征的最大信息增益。

2.2 ResGCN分类器

本文采用基于流序列的RESGCN分类器,用于提升网络流量分类的性能。与以往研究不同,RESGCN可以通过在融合图上利用GCN对相关流进行信息传递。分类器输入是8个经过特征选择后的连续流,每个流作为图中的一个节点,通过图卷积网络(GCN)进行处理。

分类器模型由4个ResGCN块和一个三层MLP构成,其中,每个ResGCN块包含两个GCN单元,中间通过ReLU激活函数连接,并引入残差结构以缓解深层网络的退化问题。GCN单元包括两个模块:一是GFI(生成特征交互模块),通过无偏置的全连接层对每个流特征进行线性变换,从而允许不同的特征进行交互;;二是RFI(相关流交互模块),它可以使相关流能够基于关系图交换信息。在四个ResGCN块进行信息交互后,通过Dropout层增强模型的泛化能力,防止过拟合。最后将输出展平,并输入到一个三层MLP中进行最终分类。ResGCN分类器的结构如下图:

3、实验设置和评估

本文采用SJTU-AN21( )和ISCXVPN2016( )两个数据集对模型进行评估,实验围绕处理真实世界原始流量的效果、识别不同网络服务的表现以及与现有方法的性能对比这三个研究问题进行展开。实验环境基于Python 3.7和PyTorch 1.9.0,运行在搭载RTX3090 GPU的高性能主机上。实验采用准确率、召回率和F1分数等指标来评估模型性能,同时还采用了浮点运算次数(FLOP)来评估模型复杂度。超参数配置方面,使用随机梯度下降(SGD)优化器对交叉熵损失进行100次迭代优化。初始学习率设置为0.01,批次大小为80,动量为0.9。

3.1 原始流量数据处理方案的有效性

本文围绕流划分策略和特征选择方法对数据预处理方案的有效性进行了评估,在流划分方面,比较了6种方案:基于时间的(5s、10s、15s)和基于大小的(5MB、10MB、15MB)策略。实验结果表明,10秒为单位的时间划分方案在两个数据集上都获得了最佳分类性能,而15MB的大小划分方案的表现最差。分析发现,基于15MB的划分会导致部分流持续时间过长,削弱了流之间的时空相关性,进而影响分类效果。

在特征选择方面,本文评估了PCA、XGBoost和LightGBM三种方法的性能。XGBoost和LightGBM都属于基于梯度提升树(GBDT)的算法,通过计算特征在树中的增益来评估重要性,而PCA则通过最大化方差来降低数据维度。实验结果表明,LightGBM方法在两个数据集上都取得了最高准确率,且在保持准确率的同时具有较好的计算效率。不同流分割方案和特征选择方法的分类对比如下图:

下表反映了不同特征选择方法的性能:

3.2 RESGCN分类器性能

为了全面评估RESGCN的分类性能,研究分析了其在测试集上的混淆矩阵。结果表明,RESGCN能够有效区分不同匿名服务所产生的流量。在AnonymityNet数据集上,模型成功识别了I2P、Tor和JonDoNym三类匿名网络流量,但对I2P网络上的服务识别存在一定的误分类。在ISCXVPN2016数据集中,模型在区分FTP和Chat服务时存在一些分类错误,由ISCXVPN2016数据集的官方描述可知,两者均包含由Skype应用生成的流量,这是导致误分类的主要原因。模型在测试数据集上分类结果的混淆矩阵如下图:

3.3 与现有研究方法的性能比较

为全面评估RESGCN模型的性能,本文与多种现有方法和最新模型进行了对比实验,实验结果表明,RESGCN在两个数据集上几乎所有评估指标中取得最佳表现。尤其在处理复杂匿名网络流量方面,RESGCN模型具有显著优势。相比之下,传统机器学习方法效果较差,而2D/3D-CNN虽尝试从图像角度处理流量,但其分类性能有限。基于LSTM的网络虽然引入了自注意力机制或重构损失以提升性能,但受限于模型结构和参数规模,其计算效率非常低。

此外,本文通过FLOPs、参数量、模型大小和处理速度对模型复杂度进行了综合评估。结果显示,RESGCN在保证高准确率的同时具备较小的模型体积和较高的推理速度,优于依赖卷积和门结构的模型。特别是在实时分析和部署资源受限的设备中,RESGCN展现出更强的实用性与灵活性,体现了其结构设计的优势。RESGCN模型与其他方法的性能比较如下图:

4、本文贡献

  • 提出了RESGCN模型用于流量识别:本文提出利用流之间的属性关系和时间关系对网络流量进行识别,同时还提出了一种基于GCN的新型模型RESGCN,以实现对不同网络服务的识别。

  • 设计了实用的原始流量处理方案:为提升分类效果,本文提出了一套完整的原始流量数据处理流程,包括基于时间或大小的流划分策略,以及基于LightGBM的特征选择方法,提升了模型的分类性能和效率。

  • 在真实数据集上进行全面评估:本文在两个真实世界的流量数据集上对所提方法进行了系统评估。实验结果表明,RESGCN在分类准确率、效率和通用性方面均优于现有研究方法,适用于多种网络服务的识别任务

安全学术圈招募队友-ing

有兴趣加入学术圈的请联系 secdr#qq.com

声明:本文来自安全学术圈,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。