【技术实现步骤摘要】
一种SDN网络环境下的流量分类方法及系统
[0001]本专利技术涉及软件定义网络通信
,具体涉及一种SDN网络环境下的流量分类方法及系统。
技术介绍
[0002]传统网络是没有中心化的控制节点的分布式网络,每个网络节点、设备都使用自己的配置和路由算法,来处理数据和转发报文。近年来,软件定义网络(Software Defined Networking,SDN)得到了很大的发展,并已成功在多个大型企业、云服务提供商、ISP等机构落地。SDN技术将网络中的控制平面与数据平面分离,独立工作,并提供了平面间的数据交互接口。其中,SDN控制器负责执行所有算法,也负责在SDN数据平面设备上下发流表项,来引导数据平面的转发行为。SDN网络中的数据平面网络设备(一般为SDN交换机)负责根据自身的流表项处理接收到的数据包。通过使用SDN,云网络的管理者就能够更方便地控制和管理整个网络中的所有网络设备。且SDN网络中的控制器为软件开发者们提供了丰富的编程接口(API)。开发者们可以借此开发不同的上层应用,来实现定制化的网络功能,满足业务层需 ...
【技术保护点】
【技术特征摘要】
1.一种SDN网络环境下的流量分类方法,其特征在于,包括以下步骤:(1)收集初始数据集对SDN网络内流量数据包与数据流进行收集;(2)标记初始数据集分析由步骤(1)收集的数据各层报头字段,人工对这些数据打上标签,标记原则采用了数据包属性特征和数据流属性特征作为神经网络的输入项;(3)构建神经网络模型为了体现读写流程中连续多个数据包的顺序特性,设计一种基于数据包时域的BP神经网络,在该神经网络中,含有一个输入层、两个隐藏层和一个输出层;输入层分为两个区域,包括流特征输入域、载荷特征输入域,前置处理器对提交到控制器的数据包进行过滤和缓存,在同一对源和目的IP的数据包中,如果相应端口也匹配,则认为是同一个数据流,分类到同一个会话,提取每个数据包的各项特征;隐藏层采用2层,每层10个节点;输出层为4个节点,分别表示分类为读数据流、写数据流、OSD变动数据流和不明数据流,用1和0表示;(4)模型训练将收集到的流量与会话数据特征进行预处理,作为训练神经网络的输入,然后采用BP神经网络的正向计算和反向传播,循环更新参数梯度,最终输出一个分类;训练结束后,将模型序列化保存;以后,可加载该模型来进行流量的分类。2.一种SDN网络环境下的流量分类系统,其特征在于:包括双向数据流配对模块、流表慢下发模块和基于BP神经网络的网络流量分类模块,所述流表慢下发模块用于保证神经网络模型收集足够的数据包信息,所述双向数据流配对技术用于将通信双方之间多个数据包在逻辑上合并为同一个数据流来进行下一步处理,所述基于BP神经网络的网络流量分类模块用于对收集的流数据进行特征提取,并给出分类结果。3.根据权利要求2所述的一种SDN网络环境下的流量分类系统,其特征在于:所述双向数据流配对模块的运行步骤如下:步骤一、SDN控制器在收到一个数据包时,首先判断该数据包的有效性,即需要忽略TCP报文中SYN=1或FIN=1的非携带数据握手报文,对于该类报文,则直接执行Packet
‑
Out指令,将其快速转发;对于携带有效数据的报文,则先读取源地址、目的地址、源端口、目的端口、协议字段。步骤二、双向数据流匹配模块会将源地址、源端口作为一个整体记作端点1,将目的地址、目的端口作为一个整体记作端点2;之后将会查找现有的会话表项,只要端点1、端点2同时与现有会话表项中{源地址、源端口}或{目的地址、目的端口}中的任一组匹配,且协议类型匹配,则认为该流数据包匹配成功;步骤三、若步骤二匹配成功,则提取该数据包的载荷,并复制载荷按照载荷项的结构体重新构造,并放入链表中;若步骤二匹配失败,则说明该报文为一个新流,此时双向数据流匹配模块会为该流生成一个长度为32bit的会话id,然后按照会话表项的结构提取报文信息,在会话表中创建一个新流;最后,无论匹配是否成功,报文本身都按照流表正常转发。4.根据权利要求2所述的一种SDN网络环境下的流量分类系统,其特征在于:所述流表慢下发模块的运行步骤如下:步骤一、当某个新会话流进入SDN交换机时,SDN交换机将该流第一个数据包上交控制
器;步骤二、控制器在路径计算完成后并不立即下发流表,而是向SDN...
【专利技术属性】
技术研发人员:覃匡宇,谢霄阳,唐海洋,王勇,何倩,
申请(专利权)人:桂林电子科技大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。