您好,欢迎来到尚佳旅游分享网。
搜索
您的当前位置:首页基于机器学习的多片FPGA的高速网络流量分类方法设计

基于机器学习的多片FPGA的高速网络流量分类方法设计

来源:尚佳旅游分享网
D技术

IGITCW分析

Technology Analysis

基于机器学习的多片FPGA的高速网络流量分类方法设计

曾小宝,李晓锋,宋 锐,叶 倩

(张家界航空工业职业技术学院,张家界 427000)

摘要:随着网络的迅速崛起,特别是移动互联网的快速发展,网络带宽不断升级,随之网络安全问题凸显,给网络信息的安全和管理带来了巨大的挑战。网络流量分类是网络安全的基础,传统以通用CPU为主的流量分类方法无法满足高速网络需求。本文提出一种以多片FPGA的高带网络流量分类方法,并在多片FPGA上运行机器学习算法,可达到线速处理和较高的准确率。

关键词:网络流量;FPGA;机器学习;分类方法doi:10.3969/J.ISSN.1672-7274.2019.04.068中图分类号:TN915.08,TP3,TN929.5     文献标示码:A     文章编码:1672-7274(2019)04-096-01

1 引言

传统的基于通用CPU的软件方式处理方法已无法满足当前快速发展的网络带宽需求。FPGA是一种现场可编程的逻辑阵列,一种硬件电路,并非软件。FPGA硬件的并行性、可编程性、高速性等特征,能满足高速网络处理的需求。例如它的可编程性可以灵活的满足实时改变的要求,为更新升级带来便利。部分FPGA芯片内部还集成了嵌入式软核和硬核,FPGA不但可以处理高速的逻辑运算还可实现较为复杂的软件功能,采用FPGA将对下一代网络的研究提供一个重要的手段,现在较火热的SDN技术的底层部分就需要FPGA硬件的支撑,FPGA在下一代网络的自适应性、可控性、可管性等方面都将发挥重要的作用,在网络流量分类用FPGA处理将是一个发展方向。

2 基于多片FPGA的高速网络流量分类方法设计

基于多片FPGA的高速网络流量分类方法的设计框图如图1所示,首先从网络流数据的采集,送给流量转发策略模块,此模块根据最后分类结果经机器学习模块来高速转发策略。转发策略根据数据流字节长度不同转发到不同的分类器,所有的分类器、转发策略模块、机器学习模块都是基础于FPGA硬件实现,可以线速处理需求。

列,相反接收引擎需要移去前导码,另外需要进行差错检测。(2)网络流量转发策略模块:接收网络数据采集模块的网络流以及机器学习模块给出的调整参数去更新转发策略表,再对调整后的策略下发到各个分类器,各个分类器之间也可以相互通信,以达到负载均衡的目的,有效的调整各个分类器的工作任务,各分类器利用FPGA实现可达线速处理。(3)分类器组模块:各分类器是工作在并行方式下,可有效提高处理效率,各分类器接收的流量依据数据流长度,字节长度等进行调配。各分类器都是采用FPGA来实现,由于FPGA硬件的并行性,可满足线速处理要求。(4)机器学习模块:首先在机器学习模块中建立有最优参数库,在累积学习的过程中不断的优化,经验不断的累积,与分类器组构成一个闭环控制系统,开环控制是FPGA实现的分类器组的硬件加速,反馈环节是由机器学习模块实现的软件处理方式,采用这种软硬件协同工作方式,可达到较好的分类效果。

4 结束语

本文设计了基于机器学习的多片FPGA的网络流量分类系统,采用多片FPGA分别实现多个分类器,各分类器是硬件并行工作方式,有利于满足万兆网需求。采用软硬件协同方式,硬件负责线速处理,软件方式负责数据量较大,需要存储空间大的模块,机器学习不断累积达到最优的分类效果。随着FPGA性能的提升完全能够适应带宽的不断升级,将达到较好的分类效果。参考文献

[1] JABER M,CASCELLA R G,BARAKAT C. Can we trust the inter-packet time for traffic classification? [C]//Communications (ICC),Japan Kyoto:IEEE,2011:1-5.

[2] 谢文亮,唐屹,王大星.基于FPGA技术的网络包头分类的研究[J].广州大学学报.

[3] 周飞燕,金林鹏,董军.卷积神经网络研究综述[J].计算机学报,2017,40(6):1-23..

[4] LENCUN Y,BENGIO Y,HINTON G. Deep learning[J]. Nature,2015,512:436-444..

[5] 徐鹏,林森.基于C4.5决策树的流量分类方法[J].软件学报,2009,20(10):2692-2704

[6] 李志强,杨波,孙涛,陈贞翔.一种基于FPGA的面向网络应用的开发平台设计[J].山东科学,2010,23(5):28-32.

图1 多片FPGA分类器实现框图

3 各模块具体设计

(1)网络数据采集模块:负责从网络上采集网络数据,接收

到以太网帧数据,先在帧数据前端添加前导码,如果需要则向帧末添加填充字节以保证满足最小帧长的要求,然后添加帧校验序

作者简介:曾小宝,男,1984年生,江西省峡江县人,研究生学历,副教授,研究方向为嵌入式技术、网络信息处理。

基金项目:湖南省自然科学基金项目《基于FPGA的高速网络流量还原方法研究》 ,项目编号:2017JJ053;湖南省教育厅科技项目《基于FPGA的网络流量分类

方法研究》,项目编号:15C1406。

96DIGITCW2019.04

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- shangjiatang.cn 版权所有 湘ICP备2022005869号-4

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务