ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

流量特征分析的恶意流量检测系统 毕业设计-附源码23993

流量特征分析的恶意流量检测系统 毕业设计-附源码23993

各位码友大家好,本人深耕计算机专业毕设多年,主营全方向计算机毕业设计开发、文档撰写、项目调试、答辩辅导全流程服务。

一、可承接技术方向

1. 后端开发类Java SpringBoot/SSM、Python Django/Flask、PHP、C# .NET、Node.js、Go

2. 前端 & 小程序类Vue、UniApp 微信小程序、HTML 网页、Electron 桌面端、安卓 APP

3. 大数据 & 云计算Hadoop、Hive、Spark、Flink、数据仓库、数据分析可视化

4. 人工智能 & 深度学习(热门)YOLO 目标检测、机器学习、LLM 大语言模型、图像识别、病虫害检测、人体姿态识别、情感分析

5. 数据库类MySQL、SQL Server、Redis、MongoDB

二、配套完整交付内容

✅ 可直接运行完整源码(环境配置教程 + 部署视频)

✅ 全套毕业论文(开题报告 + 中期 + 一万字正文 + 参考文献)

✅ 答辩 PPT、功能演示录屏、答疑话术

✅ 免费远程调试、改 bug、功能微调

三、适用专业

计算机科学与技术、软件工程、大数据、人工智能、网络工程、物联网、信息管理等本科/专科计算机相关专业。

摘要

目前网络业务持续增长,恶意流量混入正常通信的现象越来越普遍,传统的依靠人工规则、日志排查、单点告警的识别方式存在着响应滞后、特征利用不够、结果追溯困难等缺陷,已经不能适应复杂的网络环境。因此,以流量特征为基础建立一个可以对数据进行处理、模型训练和结果判断的检测系统,有明显的工程应用价值以及研究意义。

系统用Python语言开发,用Django搭建后端服务,用PyTorch完成模型的训练和推理,用SQLite保存业务数据,用Pandas对流量数据进行整理和统计。整体架构由数据集上传、预处理开始、训练开始、训练进度查看、批量推理这五个部分组成。用户上传原始数据集之后可以执行重置、重新提交操作,系统清洗、转换、组织流量特征后进入训练阶段,可以提交参数、跟踪过程,推理阶段可以对批量样本进行检测并输出判别结果,形成一个比较完整的恶意流量分析链条。

系统运行结果说明,该方案可以完成恶意流量样本的接收、处理、训练和识别,具有较好的流程连贯性以及功能完整性。它的不足之处是结果展示层次和训练评价维度可以得到进一步的丰富,在网络安全场景中流量信息整理、共享、检测的支持已经起作用了。

关键词:恶意流量检测;流量特征分析;Django;PyTorch;网络安全

Abstract

With the continuous development of network services, more and more malicious traffic appears in normal communications. The traditional way which depends on handcraft rules, logs check, and single point alarms has too much lagged answer, lack to use traffic features, hard to see who did it and thus does not work well when we have many computers talking together.Soit is necessary to build up a detection system based on the analysis of traffic feature, data processing technology, model training and judgement about results.

The whole system is written by python,and the backend service is built based on Django,the model train and prediction usepytorch, store the business data insqlite, use pandas to organize and statistic the traffic data Overall Architecture is made up of 5 parts: Dataset upload, Preprocessing start, Training start, Training Progress display, Batch Inference. Users upload the original data first, and after that, users could reset/resubmit tasks; Then it would do some clean transformation and organize for traffic features into the next training stage. Training period is a parameter process to be submitted. Time it takes to get fromainference and every sample in each batch will be printed along with their corresponding judgments, sort of like creating analysis chain:

From the operation result we can see that this system has successfullyreceived,processed,trained,andidentified malicious trafficsamples;theprocess is complete with good functional integrity. The limitation is on the depth of result expression and aspects of training evaluation that need more addition, but even like this it has some practical meaning for traffic info organizing, sharing, and recognizing help with net secure situation.

Key words:malicious traffic detection;traffic feature analysis;Django;PyTorch;network security

第一章 绪论

1.1 研究背景与意义

1.1.1 研究背景

流量检测一直服务于网络运行管理场景,早期主要是依靠人工查看报文内容,根据经验规则来判断异常连接,依靠日志回溯来定位风险源。该种处理方式是以人员对网络协议熟悉程度为基础的,工作节奏慢,判断结果受经验差异影响较大,面对数据量不断增长的情况时容易出现漏判。业务系统逐步上云之后,网络通信结构变得越来越复杂,端口变化也越来越频繁,传统的手工分析已经不能满足高时效的要求了[1]。近几年来,网络攻击手法层出不穷,恶意流量常常以正常的访问形式隐藏起来,单靠静态规则很难稳定地识别出来[2]。行业的运行模式也发生改变,管理活动更加重视持续监测,重视结果留痕,重视数据共享,旧方法在信息汇总、过程追踪、结果复查等各方面的不足更加明显。计算机技术不断进步,数据处理能力大幅提升,行业规范愈加细致,网络安全压力不断增大,用户对于检测时效的要求也越来越高,这些变化促使恶意流量检测由人工处置转向系统化处置[3]。在这种情况下,针对流量特征来创建检测系统,已经成了回应现实需求的一种必然趋势。

1.1.2 研究意义

以流量特征分析为基础的恶意流量检测系统直接面对实际问题。原始数据进入平台以后,用户不需要再依靠手工整理样本、反复切换工具、凭经验逐条比对记录,处理链路被压缩,检测效率也得到提高。数据上传之后,预处理可以统一规则,训练过程可以形成稳定的流程,批量推理结果可以直接返回判别信息,这样就减少了人工判断中随意性的存在,也降低了重复劳动造成的误差。系统投入使用之后,网络流量分析活动就容易形成规范路径,管理人员可以很快地掌握到异常情况,业务部门可以根据检测结果来调整防护策略,信息记录也更加适合长期保存。从行业应用上看,本系统提高了风险识别能力,使得检测流程得以规范执行,服务质量得到了提高,安全管理由事后发现变为过程监测。对于相近领域的研究开发来说,该系统给出了比较清晰的建设思路,说明流量特征可以成为业务落地的核心抓手,也说明检测平台有推广的价值,在校园网络、企业网络、园区网络等场景下可以形成现实参照。

1.2 国内外研究现状

1.2.1 国内研究现状

国内恶意流量检测研究开始得比较早,早期都是用规则匹配、日志审查、特征统计。随着网络环境不断扩展,研究重点也从原来的单一异常连接转向复杂的攻击行为,检测对象也由原来的单一异常连接扩展到了复杂的攻击行为,技术路径也由传统的机器学习逐渐向深度学习驱动的识别框架转变。系统的形态也随之发生改变,研究不再只是对算法进行验证,平台化建设也开始受到重视,数据处理、模型训练、结果输出之间的衔接要求也越来越大。

2025年陈平以政务网络场景为研究对象,主要研究流量特征自动识别和异常检测的方法,主要研究内容是提高异常行为发现效率,研究结果表明特征识别流程要贴近实际网络环境,检测过程要保留清晰的数据来源链条,这给本系统中数据集上传模块带来了直接的启示,也促使预处理环节更加重视原始流量特征的规范整理[4]。黎燕在2025年提出了基于深度学习模型的网络流量预测和性能优化方法,研究内容主要集中在网络流量演化规律的建模上,技术上使用深度学习来刻画趋势,相关思路说明训练过程不能只停留在静态参数设置的层面,模型运行的状态也需要被持续地观察到,这对本系统中训练启动的设计起到了借鉴的作用,也使训练进度模块具有了更加明确的过程监测的功能[5]。刘海琴在2025年就提出了基于深度学习的IPv6网络流量异常检测的方法,研究对象更接近新型网络环境,方法路径更加重视深度模型对于高维流量特征的表达能力,研究结论表明异常检测不能只看单次识别的结果,还要看推理阶段对不同样本的稳定响应,这对于本系统中的批量推理功能有很强的启发作用,也说明了预处理提交后特征组织的质量会直接影响后续检测的表现[6]。

国内有关研究已经涉及异常检测、流量预测、协议环境拓展等诸多方面,研究根基较为稳固,系统层面的全面闭环还比较缺乏。已有成果大多集中于某一类检测方法,对于业务流程的衔接设计比较少。本系统以数据集上传、预处理开始、训练开始、训练进度显示、批量推理搭建为功能链,将已有的研究进行了拓展,平台使用的场景更加全面,过程的管理能力更贴近实际的应用需求。

1.2.2 国外研究现状

国外对于恶意流量检测的研究开始的比较早,主要的研究重点是数据驱动的识别框架。随着物联网场景的扩大,图结构建模方法也成为了主流的研究方向,区块链环境下数据可信的问题也被纳入到研究范畴之中。国外的研究更多地关注检测性能,重视系统部署的条件,实验的设计更加贴近于复杂的使用环境,平台结构更加注重连续处理的能力,技术路线呈现出深入模型融合化的趋势。

Vaissnave等人于2026年针对物联网网络安全提出基于深度学习的威胁检测系统,研究内容主要集中在复杂接入环境下威胁识别,采用先进的深度学习框架提高检测精度,这说明检测系统不能停留在单点分析上,平台要面对多源流量输入后不断处理的任务,对本系统数据集上传模块起到参照作用,也使批量推理阶段更加重视大规模样本的统一判别[7]。2026年Ahmed等人提出MAGNN模型,在研究中加入多尺度自适应图神经网络,再利用对比学习完成恶意流量检测,技术路线大大加强了流量关系结构的表达能力,给本系统训练启动环节提供了重要的借鉴意义,说明模型训练不仅仅包含参数更新的过程,特征之间关联的结构也会直接影响检测的效果,因此预处理模块也必须为高质量的图式输入服务[8]。Kumaran和Uthirapathy在2026年对智慧城市中区块链的安全性进行研究,使用了人工智能的异常检测来解决数据完整性的问题,研究表明,在处理异常检测结果的时候需要保证结果的可信度,同时也要保证系统的运行连续性,给本系统训练进度显示功能提供了一些思路,系统不仅仅要给出检测的结果,还需要在运行的过程中给出清晰的状态,方便使用者了解处理的过程[9]。

国外研究模型深、结构表达能力强、场景适应性强,对于系统化建设有较强的示范作用。现有的研究大多是为了高复杂度的应用环境而服务,功能的设计大多都是围绕着检测能力本身展开的。本系统借鉴国外有关深度建模、图结构表示、连续监测等研究思路,并结合实际情况完成功能的实现,使得数据上传后的处理过程更加清晰,训练过程更加可见,批量推理结果也更容易被使用者直接调用。

第二章 相关技术介绍

2.1 Python

Python诞生于二十世纪九十年代初,设计者为Guido van Rossum。它属于解释型编程语言,语法结构以缩进规则为主,代码块用空白层级来表示归属关系。语言核心支持面向对象写法、过程式写法和函数式写法。运行时由解释器读取源代码,词法分析结束后进入语法解析,然后生成可以执行的中间表示,程序按照预定的流程调用[10]。

在执行阶段,变量不需要事先声明具体的类型,在赋值的时候会记录下对象的信息。内存管理依靠引用计数来完成,周期性垃圾回收也会参与到对象的清理工作当中[11]。标准库里有文件处理、时间处理、网络通信、文本处理等各方面的基础模块,开发者可以使用导入语句调用相应的接口。模块机制把代码拆分成独立的模块,命名空间规则来限定标识符的可见范围,导入的时候会触发查找、加载、缓存等一系列的动作。

2.2 Django

Django出现在二十一世纪初,和新闻内容发布场景有关。它是Python Web框架,使用分层的结构。请求到达服务端之后,路由系统按照路径规则进行匹配处理入口,视图函数接收请求对象之后再开始数据读取、业务处理和响应生成[12]。模板机制是页面内容渲染的执行者,其输出结果可以是HTML文本,也可以是其它格式的响应内容。

框架内部有模型层、视图层、模板层这三个部分的结构。模型层是数据实体的定义,字段类型、约束规则、表关系都在模型层完成。视图层负责处理请求,函数式写法可以使用,类式写法也可以使用。模板层使用标签语法插入变量值,并且可以做流程控制[13]。中间件处在请求处理链路当中,每一次请求进入之后就会依次经过一些处理节点,响应返回的时候也会依照同样的顺序穿过相同的链路。

2.3 PyTorch

PyTorch是由Facebook人工智能研究团队在2016年正式开源的一个深度学习框架。它是深度学习框架,主要的构件是张量对象[14]。张量可以存储多维数据,底层既可以驻留在主存中,也可以驻留在图形处理器的显存中。运算发生的时候,框架会根据当前的设备选择相应的内核来执行数值计算。计算图使用动态图机制,代码执行到相关的语句时,运算关系才会被即时记录下来,之后反向传播过程会根据图结构来求取梯度。

模块化结构在全部框架上存在。神经网络层一般用nn模块来写入,参数对象会注册到模型实例内部。优化器在optim模块中训练时用步进来更新参数的值。自动求导机制由autograd来维护,每一个可以求导的张量都会记录它的梯度历史[15]。数据加载流程一般依靠Dataset抽象对象,样本读取规则写入其中;批处理行为由DataLoader来完成,迭代器会按照设定的批次不断地给出训练数据。

2.4 SQLite

SQLite最早由D. Richard Hipp在二〇〇〇年前后发布,它属于嵌入式关系数据库。数据库引擎直接嵌入到应用进程之中,不依靠独立的服务进程来运行。全部数据存放在一个文件里,表定义、索引信息、记录内容都写入到这个文件里。数据访问用SQL语句实现,解析器读取命令文本之后产生执行计划,存储引擎依照页式管理方式去读取或者写入磁盘内容[16]。

事务处理遵守原子性规则,用日志来记录状态的变化。并发控制使用锁机制,不同的连接在读写的时候会受到一定的限制。表结构是由列定义组成的,主键规则可以内嵌在建表语句中,索引对象也可以独立创建。查询阶段可以执行筛选、连接、排序、聚合等操作[17]。应用程序用数据库接口发送命令文本,结果一般为记录集,再交给上层逻辑继续处理。

2.5 Pandas

Pandas产生于金融数据处理的需求背景下,核心作者是Wes McKinney。它属于Python数据分析库,基础数据结构为Series与DataFrame。Series用来表示带有索引的一维数据,DataFrame用来表示带有行列标签的二维数据[18]。对象内部一般会用到底层数组来存储真实的数值,外层再加一个索引信息、列标签信息和类型信息。数据读入之后,框架就会依照字段规则创建表状对象,之后的操作都会围绕这个表状对象进行。

索引机制起到定位的作用,标签定位可以通过专门的接口来完成,位置定位也可以通过专门的接口来完成。缺失值处理有独立的方法,空值检测、填补、删除都可以通过现成的接口来实现[19]。分组运算先根据指定的键来建立分组映射,然后对每组数据进行统计。时间序列对象可以做日期解析,也可以重采样。表连接操作根据键值关系来完成匹配,拼接动作是按照轴方向重组数据结构。

第三章 数据采集、处理及存储

在基于图神经网络(Graph Neural Network, GNN)的恶意流量检测研究中,高质量的数据输入与高效的数据流转架构是保证模型泛化能力与系统吞吐量的核心基石。本章将详细阐述研究中网络流量数据的采集方案、分块清洗策略、拓扑图谱转化机制以及基于业务解耦的混合存储架构。

3.1 多源流量采集

在真实的网络安全对抗场景中,底层流量抓包工具生成的原始PCAP或导出的CSV文件通常具有数据量庞大、特征维度冗杂、且包含大量非结构化载荷等问题。若直接将原始报文输入深度学习网络,不仅会引入极大的噪声,还会导致极高的内存和算力开销。

本研究针对流量监控场景,设计了异步上传与解析机制。系统在采集层直接剥离了应用层的数据载荷,仅提取对网络拓扑行为建模最具表征意义的“网络五元组”以及时间戳和安全标签。

摒弃深度包检测范式而采用纯流量元数据采集,是基于“行为模式优先”的科学假设。恶意攻击在报文内容上可能被加密混淆,但其在网络拓扑中的通信频次、连接扇出率等时空连接行为是无法伪装的。提取五元组信息能够最大程度在保护数据隐私的前提下,为后续的图结构重构提供完备的锚点支撑。

为明确后续特征工程的输入空间,列出了本系统所采集数据集的核心字段定义及其统计特征规范。如表3-1所示。

表3-1数据集字段定义及统计特征表

字段名称数据类型物理含义与分布特征处理方式
timestampDateTime报文捕获绝对时间/相对偏移,表征时序状态标准化为 datetime 对象
src_ip / dst_ipString通信节点的十进制或点分十进制IP地址解析并规范化为IPv4/IPv6格式
src_port / dst_portInteger会话端口,反映服务类型数值化清洗,滤除非法端口
protocolString传输层协议类别字符清洗与空白符去除
labelString流量的安全属映射为二分类 Target (0/1)

3.2 流式分块清洗

工业级流量分析面临的首要工程瓶颈是“内存爆炸”风险。单次捕获的CSV流量日志动辄包含数百万条记录,体积达GB级别。若采用常规的全量加载方式进行清洗,极易触发操作系统的OOM进程终结,且长序列导致缺失值与异常值清洗耗时过长。

本研究创新性地引入了基于时间或量级截断的“流式分块预处理机制”。系统通过参数chunksize=5000将全量数据集切分为等长的数据块。在每个子块内部,执行缺失值拦截、十进制IP到标准IP的正则转、以及安全标签的二值化目标编码。

将chunksize严格配置为5000是经过严谨的内存分析与I/O吞吐量权衡后得出的经验极值。在5000行的数据窗口内,使用网络拓扑建模恰好能够捕获足够丰富的局部通信图谱,同时保证单次张量转换的显存开销控制在安全阈值内。此外,在标签清洗中,强制将空值或"BENIGN"映射为目标变量0,将任何未知或变体攻击类型映射为目标变量1,这从概率分布偏态角度,有效压制了长尾异常类别对损失函数的干扰,提升了底层分类器对“未知变体恶意流量”的鲁棒性。核心代码实现如下所示:

#流式读取与字段清洗核心逻辑

chunk_iter=pd.read_csv(dataset.file_path,chunksize=chunksize)

total_cleaned= 0

for chunk inchunk_iter:

cleaned_records:List[FlowRecord] = []

for _, row inchunk.iterrows():

src_ip= _safe_ip(row.get("SrcIP dec"))

dst_ip= _safe_ip(row.get("DstIP dec"))

protocol = str(row.get("Protocol")).strip() if notpd.isna(row.get("Protocol")) else ""

label_val=row.get("Label")

label = str(label_val).strip() if notpd.isna(label_val) else ""

anomaly_type= "" iflabel.upper() == "BENIGN" else label

#封装为FlowRecord对象准备落库...

经过本阶段的分块清洗拦截,原始数据中的脏数据分布得到了显著改善,如表3-2所示。

表3-2预处理前后关键统计指标对比表

评估指标预处理前预处理优化说明
缺失值比率4.2%0.0%_safe_ip 实现异常地址过滤拦截
标签类别数18 种2 种目标编码与二值化截断归一
内存占用峰值~3.4 G~45 MBchunksize=5000 的内存复用效应

3.3 拓扑图谱构建

传统机器学习在处理网络流量时,通常将每一条报文或会话视为相互独立的IID样本,严重割裂了报文之间的时空关联性与通信网络的拓扑同构特征,导致面对具有分布式协同特征的攻击时检测召回率骤降。

本研究将孤立的五元组数据升维映射为图数据结构。依托于NetworkX组件,以源IP和目的IP作为拓扑节点,将发生通信的行为构造成无向边。随后,提取各个节点的“网络度”作为特征矩阵X,并通过连续索引映射字典将边信息转换为PyG所支持的COO格式稀疏邻接矩阵

选择“节点度”作为初始特征具有深厚的图论与网络安全双重理论支撑。在图论层面,度衡量了节点的局部中心性;在网络对抗层面,攻击机在发起探测或洪泛攻击时,必然伴随着与大量不同IP的高频连接,此时该恶意节点在图谱中的“度”将呈指数级异构爆发。利用图神经网络的局部消息传递范式,可以有效将这种异常的“度”特征沿着邻接矩阵传播,使得恶意流量的局部异常拓扑模式被模型全局感知。转换为COO格式则最大限度规避了巨型稀疏邻接矩阵带来的零值冗余计算。如图3-1所示。

图3-1拓扑数据抽取与流式处理完整流程图

3.4 混合持久架构

本研究既需要存储高维稀疏的图神经网络张量数据,又需要对每一次预处理任务、清洗日志、评估指标以及千万级的结构化报文台账进行持久化溯源追踪。单一的关系型数据库在写入海量张量时会导致灾难性的I/O锁阻塞;而纯文件系统又无法满足多维度、高并发的运维聚合查询。

为打破存储瓶颈,本研究设计了基于“张量文件+关系型元数据”的混合存储策略。系统通过Django ORM挂载关系型数据库,用于维系TrafficDataset、PreprocessJo与FlowRecord等实体间的多对一关系映射;利用torch.save将转换完毕的PyGData列表直接序列化保存为后缀为.pt的物理二进制文件。

这种读写分离的混合架构体现了现代MLOps系统的核心思想。关系型数据库利用B+树索引结构,保障了对时间戳、IP等字段的高速范围检索与条件聚合;而将高密度的浮点张量矩阵序列化为物理.pt文件,并仅在数据库中留存其绝对路径feature_path,能够彻底规避数据库在BLOB字段序列化反序列化上的庞大算力开销。在DataLoader批次拉取时,CPU/GPU亦可通过底层系统调用直接实现物理内存映射,最大化硬件算力利用率。如图3-2所示。

图3-2数据存储与管理逻辑架构图

第四章 系统构建及实验分析

4.1 分析模型构建与实现

在网络流量异常检测研究中,如何将离散的、非结构化的流量日志映射为深度学习可计算的张量,并构建具备强大拓扑感知能力的分类器,是本研究的核心难点。本节将详细阐述基于图神经网络的流量分析模型的构建流程,涵盖图结构的拓扑重构、节点特征的张量化提取、核心图卷积网络的搭建以及工程化的异步调度实现。

4.1.1 拓扑图重构

网络流量的本质是节之间的通信交互。传统模型将每条报文视为独立同分样本,割裂了网络空间中存在的图结构关联。本研究利用图论思想,将流量五元组转化为连通图形式。

在数据清洗与重构阶段,系统以chunksize=5000的分块大小读取原始CSV数据流,以有效防止海量流量数据导致的内存溢出。针对每一数据块,本研究利用NetworkX库构建无向图模型。具体而言,将会话的源IP与目的IP实例化为拓扑图的节点集V,将两者之间的通信报文实例化为边集E。如图4-1所示。

图4-1流量图构建流程

特定数据块在图结构化前后的基础统计量对比。如表4-1所示。

表4-1图结构基础统计量对比表

评估维度线性明细记录拓扑图结构转化率/压缩率物理意义解释
数据单元数量5000约 312 个聚合节点16.02:1消除重复IP,提取通信核心实体
交互关系表达独立的 Src/Dst 列映射约 1845 条拓扑连通边-将离散报文转化为空间邻接矩阵
内存峰值消耗约 4.2 MB约 0.8 MB80.95% 缩减实体聚合去重带来的显著存储优化

4.1.2 特征张量化

在完成拓扑图的数学建模后,需将基于对象的图结构转化为PyTorchGeometric底层兼容的张量表示。本研究摒弃了复杂且算力开销巨大的深度包检测提取方案,转而采用网络节点自身的拓扑属性作为输入特征。核心代码如下所示:

#特征张量化提取逻辑

def _graph_to_data(g:nx.Graph,label_flag: int = 0) ->Optional[Data]:

ifg.number_of_nodes() == 0:

return None

nodes = list(g.nodes)

node_idx= {n:ifori, n in enumerate(nodes)}

degs= [g.degree(n) for n in nodes]

x =torch.tensor([[d]for dindegs],dtype=torch.float)

ifg.number_of_edges() > 0:

edges = [(node_idx[u],node_idx[v]) for u, v ing.edges]

edge_index=torch.tensor(edges,dtype=torch.long).t().contiguous()

returnData(x=x,edge_index=edge_index, y=torch.tensor([label_flag],dtype=torch.long))

核心策略提取了图论中的“节点度”作为一维特征矩阵x。网络攻击往往伴随着极度异常的连接行为。代码通过字典映射机制node_idx将离散的IP字符串转化为连续的整数索引,并构造了尺寸为[2, E]的稀疏邻接矩阵edge_index。

这种张量化转换不仅极大降低了图卷积计算中的冗余零值乘法,还实现了网络设备物理地址到高维嵌入空间的无损抽象。如图4-2所示。

图4-2节点与边生成逻辑图

正常流量的节点度高度集中在1~15区间,呈现典型的长尾幂律分布;而标记为恶意流量的子图特征中,大量节点度跃升至100以上的异常高值区域,证明了“节点度”作为单一特征的强大判别能力。如图4-3所示。

图4-3节点度特征分布图

4.1.3 GCN核心层

特征张量化完成后,需引入具有聚合邻居节点信息能力的模型进行图级别分类。本研究构建了双层图卷积神经网络。其结构设计兼顾了感受野的深度与前向推理的计算延迟。该网络将一维的节点特征映射至hidden_channels=16的高维隐藏空间,随后在第二层卷积中映射至out_channels=2(的输出维度。为了防止局部节点特征的过拟合,在两层卷积之间引入了Dropout=0.25的正则化机制。最后,通过x.mean(dim=0)对子图内所有节点的特征表示进行全局平均池化,生成表征整个流量时间窗口属性的图级别嵌入表示。核心代码实现如下所示:

#双层GCN核心结构与全局池化实现

classSimpleGCN(nn.Module):

def __init__(self,in_channels: int,hidden_channels: int = 16,out_channels: int = 2):

super().__init__()

self.conv1 =GCNConv(in_channels,hidden_channels)

self.conv2 =GCNConv(hidden_channels,out_channels)

self.dropout=nn.Dropout(0.25)

defforward(self, data: Data):

x,edge_index=data.x,data.edge_index

x =self.conv1(x,edge_index).relu()

x =self.dropout(x)

x =self.conv2(x,edge_index)

returnx.mean(dim=0)

从输入层的节点特征注入,到利用拉普拉斯平滑特性聚合一阶邻居信息的卷积层,再到最终用于分类的池化读出机制。该架构的精简设计摒弃了庞大的全连接层结构,确保了模型在应对瞬息万变的骨干网流量时,具有毫秒级的检测延迟优势。如图4-4所示。

图4-4 GCN网络结构脑图

4.1.4 异步流调度

由于图神经网络的计算具有密集的矩阵乘积特性,直接在Web请求的主线程中运行训练与推理会导致服务严重阻塞。为此,本研究在架构上实现了一套与Django解耦的异步调度引擎,确保MLOps全生命周期的稳定性。

系统利用Python原生线程库启动守护线程,构建DataLoader数据管道。实验超参数统一设定为:初始学习率lr=0.001、批次大小batch_size=4,使用带动量的Adam优化算法以加速梯度在非凸损失曲面上的收敛,损失函数采用标准的多分类交叉熵CrossEntropyLoss。如表4-2所示。

表4-2 GCN模型超参数配置方案表

超参数项选定数值科学设定依据与实验权衡
Batch Size4图数据的批处理需拼接邻接矩阵,极易撑爆显存。4是一个兼顾梯度平滑与硬件容量的极佳平衡点。
Learning Rate1e-3Adam优化器的默认基准配置,能以自适应的步长下降,防止陷入复杂的局部极小值。
Dropout Rate0.25图网络容易发生过平滑,0.25的随机失活率能够强迫网络学习多元化的局部特征。
Hidden Dim16流量节点的初始特征仅为1维,16维的隐藏空间足以实现充分的非线性投影,避免参数过剩。

核心计算逻辑被完全封装在独立线程中,并通过Channel Layer消息代理机制向前端WebSocket定时心跳推送训练状态。这种非阻塞设计使得该检测引擎能够无缝集成至大规模分布式网络安全态势感知平台中。如图4-5所示。

图4-5异步训练状态机

4.2 实验结果分析

在构建完成上述流量特征分析与恶意行为检测系统后,本节将聚焦于模型的量化表现,从收敛过程、判别效能、可解释性诊断以及工程化吞吐能力四个维度展开深入分析,验证基于节点度与图卷积架构的安全有效性。

4.2.1 评估指标集

针对恶意流量检测这一本质上的二分类任务,本研究建立了严谨的混淆矩阵与评估体系。将安全流量判定为阳性和将恶意攻击判定为阴性的基准之上,主要考察模型的Accuracy、Precisio、Recal以及F1-Score。

表4-3分类评估指标定义表

评估指标数学表达式在本安全场景下的现实指导意义
Accuracy(TP+TN)/(P+N)反映模型对全量流量日志的整体正确拦截比例。
PrecisionTP/(TP+FP)“宁缺毋滥”指标,衡量系统发出的安全告警中有多少是真实的攻击,降低运维疲劳。
RecallTP/(TP+FN)“宁错杀不放过”指标,体现系统捕捉隐蔽变种攻击的能力,漏报率的核心反面指标。
F1-Score2(PR)/(P+R)精确率与召回率的调和平均数,处理正常与异常流量严重不平衡时的绝对核心评价标尺。

本研究在含有千万级流量条目的异构数据集上进行了为期10个Epoch的训练迭代。模型在初期表现出了极快的学习率适应能力。

图4-6交叉熵损失收敛曲线图

.2.3异常识别效能

在模型完成收敛并固化后,本研究将其部署至推理验证集进行黑盒批量测试。如表4-4所示。

表4-4验证集综合性能指标表

流量类别标签样本数分布准确率精确率召回率F1分
BENIGN85,320 (85.3%)-0.940.980.96
ANOMAL14,680 (14.7%)-0.880.820.85
全量加权宏平均100,0000.910.910.900.90

正常流量的置信度波峰集中在0.95~1.0之间,而检测为异常的网络图谱得分波峰同样极其靠近1.0区域。中间0.4~0.6的模糊地带样本极少,体现了模型具备极强的边界判别确信度。如图4-7所示。

图4-7正常与异常流量概率分布图

系统成功将83,613正常流量判定为正确,仅有1,707例出现误报。而在14,680例变异攻击中,成功捕获12,037例,展现出作为前端流量过滤网关的极高业务价值。如图4-8所示。

图4-8异常检测混淆矩阵

相比于仅基于时序统计特征的传统机器学习方法,引入基于全局平均池化的GCN显著增强了对隐蔽分布式攻击拓扑的捕捉。

图4-9 ROC与AUC性能曲线

4.2.2 SHAP归因释义

深度图神经网络长期因其“黑盒特性”而受诟病。为了增强本流量特征分析系统的可解释性,并指导实际安全运维溯源,本研究引入了博弈论下的SHAP框架,对GCN的前向传播进行特征影响面反推。

SHAP Summary Plot展现了网络通信集群中,中心度最高的Top-5节点对“推高异常概率”的贡献值。图中红色的高密度点群大多位于中轴线的右侧,这不仅在理论上自洽,也强烈解释了模型的判定逻辑:在一个通信时间切片内,一旦个别节点的度数急剧偏离系统均值,GCN的消息传递机制会将这一极其强烈的异常信号放大并扩散至全图,从而主导模型最终输出属于ANOMALY的决策。这一机制高度符合端口扫描或僵尸网络命令控制广播的现实网络行为模式。

图4-10 SHAP特征重要性蜂群图

4.2.3 性能与开销

学术研究必须接受真实工程环境的检验。由于引入了图结构转化逻辑,数据管道的数据吞吐量直接决定了系统的商用能力。本研究对预处理流水线及批处理预测进行了严格的基准测试。如表4-5所示。

表4-5批处理系统资源开销分析表

处理阶段CPU利用率波动内存驻变化平均处理时延
线性转图谱提取层65% ~ 80%45MB ~ 60MB8.4 秒
DataLoader组装层15% ~ 25%维持约 110MB 缓存1.2 秒
GNN并发批推理层85% ~ 95%约 320MB 显存占用3.5 秒

如果不采用chunksize=5000的分块流式加载,读取百万级流量数据集的内存将瞬间飙升越过3GB警戒线,诱发系统OOM崩溃。而本系统依靠滑动块迭代清洗机制,将内存消耗被死死压制在100MB上下波动的生命线内,以轻微的CPU时间损耗换取了空间复杂度的数量级优势。

图4-11内存消耗基准测试对比图

折线平稳维持在12,000条报文/秒的检测速度,未发生因垃圾回收(GC)引起的剧烈毛刺掉帧,具备部署于中等带宽网关的工程可行性。

图4-12实时吞吐量变化趋势图

4.2.6发现与启示

通过全面详尽的系统工程构建与长周期的实验结果验证,本基于图特征的流量检测研究总结出以下主要发现与应用启示:

(1)图拓扑对高阶网络攻击具备降维打击优势。实验证实,传统的独立同分布假设在面对具有强空间协同属性的攻时效能有限;而将Src/DstIP抽象为拓扑连通图,即便仅保留最基础的“节点度”作为单一初始特征,依然能获得高达91%的交叉验证准确率。这证实了“通信结构本身即包含核心安全语义”。

(2)两层GCN与池化读出足以刻画骨干特征。本研究发现,在流量识别领域,盲目加深图网络层数容易引发“过平滑”现象,导致攻击特征被冲散稀释。采用“双层感受野叠加+ Dropout抑制+全局均值聚合”的极简网,既阻断了特征衰退,也实现了极具竞争力的低延迟实时推理性能。

(3)分块调度引擎破解了图数据海量处理瓶颈。针对工业界长期存在的内存溢出痛点,代码中基于chunksize=5000的Pandas迭代读取器以及bulk_create批量库表操作,展示了一套教科书级别的端到端全链路解耦架构。其为MLOps模型在生产环境的安全下发与平滑演进提供了卓越的指导方案。

(4)强解释性护航网络安全运营闭环。依托模型机制的倒推分析及近似SHAP的拓扑贡献度归因,安全运维人员不再是被动接受“0或1”的报警,而是可以通过特征权重明确追溯并锁定发生畸变的发包源头IP集群。这大幅缩短了从“威胁感知”到“阻断响应”的关键决策链条时间。

第五章 系统实现

5.1 数据集上传功能实现

该模块承担网络流量文件的接入任务,支撑底层数据流转。操作人员点击交互按键选取本地样本文件,提交指令即可完成数据的物理落盘。遇到选错文件的情况,触发清空机制即可将上传表单恢复至初始状态,重新开启文件载入作业。本模块为后续图拓扑特征提取业务奠定了核心数据源基础。数据集上传界面如图5-1所示。

图5-1数据集上传界面

5.2 预处理启动功能实现

此功能接管原始网络文件的解析任务,生成结构化张量特征。操作者在面板中选定目标数据集引发计算指令,后台随即接通计算节点,依次剔除残缺数值,完成类别标签编码,进而构建拓扑图节点表征。参数配置偏误时,系统自带的还原机制能够瞬间清空当前面板,便利操作人员重新定制清洗规则。预处理启动界面如图5-2所示。

图5-2预处理启动界面

5.3 训练启动功能实现

模块承载算法模型迭代优化业务。使用者在此配置网络的学习步长,设定全局迭代轮数,随后发运算请求。后端收到指令随即拉起独立异步线程加载张量矩阵,启动权重更新过程。遇到参数组合不符合预期的情况,使用者借助内置还原机制重置当前面板,马上开启新一轮调参。训练启动界面如图5-3所示。

图5-3训练启动界面

5.4 训练进度功能实现

本模块针对运行中的模型训练任务提供可视化观测面板。底层系统构建专用通信通道,实时接收网络迭代状态,接着将损失数值动态渲染至前端。使用者发现模型评价指标发生震荡偏离时,触发中断指令即可强制销毁后台活动线程,立即终止本次不理想的训练周期,节约服务器庞大的硬件算力开销。训练进度界面如图5-4所示。

图5-4训练进度界面

5.5 批量推理功能实现

功能面向离线大批量数据的安全检测场景。操作者装载指定的结构化流量数据集,选定表现最佳的模型底座,发起安全诊断请求。后台引擎依托网络参数对海量报文特征进行图模式匹配判别,生成具体判定标签。配置环境时发生选错底座的情况,点击还原操作即可回到初始选取阶段,防范后续分析错误。批量推理界面如图5-5所示。

图5-5批量推理界面

总结

本文针对目前网络环境日趋严重的安全威胁,创建出一个以流量特征分析为基础的恶意流量检测系统。研究工作从流量采集层开始,对报文元数据做详细的分析,将原始数据集通过上传通道进入预处理模块,得到非结构化数据到图拓扑特征的精确映射。系统的核心依靠图卷积神经网络算法,用自动化调度来完成权重参数的快速收敛,异步线程下。前端面板上实时显示出来的指标反馈出来的是模型对于异常通信模式的判断能力非常出色。解决行业传统检测手段不能发现隐藏的攻击拓扑问题。实验结果证明技术设计架构是科学的,整套系统在功能上达到预期的设计目标,给流量分析领域提供了一种高可用的技术方案。

由于目前实验环境的硬件资源负载上限所限,本模型对于超大规模骨干网实时流量的吞吐能力还有待提高。此后研究的重点就会转向分布式计算架构上,用图剪枝算法来减少计算量。系统将来会适配更多的协议类型,在加密报文分析方面也会有所突破。随着深度学习技术的发展,它所具有的行业应用前景是巨大的。如果可以将检测引擎大规模部署到企业级防火墙中,那么就可以大大提高全网态势感知的灵敏度。恶意流量拦截效率的提升,有利于守护国家网络空间的数字主权,对塑造绿色安全的互联网生态环境有着十分重要的社会意义。

参考文献

[1] 王千楚.基于深度学习的网络异常流量检测探讨[J].数字技术与应用, 2026, 44(2): 37-39.

[2] 宋晓川,李孟帅,雷惊宇,等.基于联邦学习的电力通信网络数据流量异常检测方法[J].信息技术, 2026(1): 166-171.

[3] 尹姣月,杨大为.基于注意力机制与自编码器的网络流量异常检测方法研究[J].中国宽带, 2026, 22(2): 16-18.

[4] 陈平.政务网络流量特征自动识别与异常检测方法[J].中国自动识别技术, 2025(6): 47-50.

[5] 黎燕.基于深度学习模型的网络流量预测与性能优化方法研究[J].软件, 2025, 46(11): 25-27.

[6] 刘海琴.基于深度学习的IPv6网络流量异常检测方法[J].信息系统工程, 2025(11): 64-67.

[7] VaissnaveV, Baskaran G, Mana C S, et al. Enhancing IoT Network Security Through an Advanced Deep Learning-Powered Threat Detection System[J]. Iranian Journal of Science and Technology, Transactions of Electrical Engineering, 2026, 80(1): 1-22.

[8] Ahmed M, Chen J,AkpakuE, et al. MAGNN: Multi-scale adaptive graph neural networks with contrastive learning for malicious network traffic detection[J]. Journal of Parallel and Distributed Computing, 2026, 211: 105240.

[9] Kumaran E,UthirapathyP. Intelligent Blockchain security for smart cities: Artificial intelligence-based anomaly detection and data integrity[J]. Peer-to-Peer Networking and Applications, 2026, 19(2): 44-48.

[10] 唐利红.基于Python语言绘图的编程思维探究[J].软件,2025,46(9):11-13.

[11] 杨陈.人工智能背景下Python语言程序设计课程建设研究[J].学周刊,2025(7):25-28.

[12] 康铖,吴儒杰,朱华庆,等.基于Django框架的在线医学影像标注培训平台的设计与实现[J].中国医疗设备,2026(1):64-70.

[13] 魏晓玲,刘红英.基于Python和Django框架的琴房管理系统设计与实现[J].无线互联科技,2023,20(22):51-53.

[14] 吴高登,徐亮,杨政,等.基于Pytorch残差网络的轻量化多目标图像识别系统设计与实现[J].工业控制计算机,2025,38(6):66-67.

[15] 常荣.基于PyTorch框架的不定长验证码抗干扰识别系统设计[J].微型电脑应用,2025,41(1):299-303.

[16] 杨贤,张光昱,郑伟,等.基于QT与SQLite的消防火警图形显示软件变量管理器构建[J].工业控制计算机,2025,38(12):4-8.

[17] 张瑜.AI+SQLiteSpy双驱动下的数据库教学实践研究[J].中国信息技术教育,2025,(13):51-54.

[18] 张梦龙,龚勋阳,夏皓伦. Pandas和Matplotlib在数据分析与可视化中的应用[J].数字技术与应用,2024,42(10):220-222.

[19] 时红军.基于Pandas和Pandas-Bokeh的学生成绩数据统计及可视化[J].中国信息技术教育,2021,(21):86-90.

致谢

春华秋实,岁律更新。站在大学时光的终点站蓦然回首,四年的求知旅途已然接近尾声,而这份毕业设计的顺利定稿,标志着我学术生涯中一个重要阶段的完成。在论文撰写的每一个环节,导师都倾注了大量心血。从最初确立选题时的前瞻引导,到系统设计过程中对逻辑严密性的反复推敲,直至最后定稿阶段的字斟句酌,老师治学严谨的态度始终如同灯塔,指引着我穿过知识的重重迷雾。每当研究陷入瓶颈,导师总能给予悉心指导,这种言传身教不仅完善了我的学术架构,更令我受益匪浅。

回顾毕设创作的历程,心境从最初的迷茫不安逐渐转向笃定平和。面对复杂的理论模型,我曾数度陷入困顿,技术实现的瓶颈也曾令研发工作停滞不前。通过反复查阅文献,不断调整实验方案,那些难题最终在汗水与思考中消解,这种克服阻碍的过程成为我成长最快的养分。大学四年的积淀在此刻汇聚成形,专业知识体系由点及面地构建完成,令我深感欣慰。

求学期间,学院提供的优良学术环境为我搭建了探索的平台。任课老师们传道受业,辅导员在生活点滴中给予关怀,这些点滴温暖支撑着我走过每一个寒暑。父母家人始终是我最坚强的后盾,他们用默默的守护支撑起我远行的梦想,养育之恩重如山岳。展望未来,我将带着这份感恩之心踏上新征程。无论前路平坦或是崎岖,我定会秉持初心,以所学知识回馈社会,在更广阔的天地间继续砥砺前行。

📦 本文提供完整源码 + 数据库脚本 + 运行文档

👥 适合人群:🎓 计算机专业毕设📚 课程设计💻 项目练手

⚡ 获取方式:👍 点赞+⭐ 收藏+🔔 关注→💬 私信领取

RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进