[发明专利]一种基于GPU的SDN网络包分类方法及系统有效
申请号: | 202010227607.9 | 申请日: | 2020-03-27 |
公开(公告)号: | CN111475290B | 公开(公告)日: | 2023-02-14 |
发明(设计)人: | 王君君;陆以勤;金冬子;覃健诚 | 申请(专利权)人: | 华南理工大学 |
主分类号: | G06F9/50 | 分类号: | G06F9/50;G06F16/906 |
代理公司: | 广州市华学知识产权代理有限公司 44245 | 代理人: | 李斌 |
地址: | 510640 广*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 gpu sdn 网络 分类 方法 系统 | ||
1.一种基于GPU的SDN网络包分类方法,其特征在于,包括下述步骤:
SDN交换机创建二维数组,将规则集、匹配内核、计算内核和二维数组发送到GPU;
GPU接收并存储SDN交换机的规则集、匹配内核、计算内核和二维数组;
SDN交换机接收SDN网络包,并解析出SDN网络包中的包头字段,将所述包头字段发送到GPU;
GPU内多个线程并行计算,进行匹配内核和计算内核步骤;
所述匹配内核具体步骤为:对所述包头字段和所述规则集的字段进行匹配,将匹配结果保存到二维数组中;
所述计算内核具体步骤为:对二维数组中每一行的数据进行逻辑运算,筛选运算结果后得到规则集编号;
筛选优先级最高的规则集编号发送到SDN交换机;
根据优先级最高的规则集编号对应的数据处理规则,SDN交换机对SDN网络包进行数据处理。
2.根据权利要求1所述的基于GPU的SDN网络包分类方法,其特征在于,所述SDN网络包包括源IP、目的IP、源端口号、目的端口号、传输类型和用户请求的网络数据内容,所述规则集为SDN网络中的流表,包括源IP、目的IP、源端口号、目的端口号和传输类型数据。
3.根据权利要求2所述的基于GPU的SDN网络包分类方法,其特征在于,所述匹配内核步骤中,二维数组的行号对应规则集的编号,二维数组的列对应于规则集中的字段,进行源IP、目的IP、源端口号、目的端口号和传输类型数据的匹配,输出匹配结果。
4.根据权利要求1-3任一项所述的基于GPU的SDN网络包分类方法,其特征在于,所述匹配内核步骤中,SDN网络包同时与多个规则集进行匹配。
5.根据权利要求1所述的基于GPU的SDN网络包分类方法,其特征在于,所述匹配内核和计算内核步骤按照设定的先后顺序执行。
6.根据权利要求1所述的基于GPU的SDN网络包分类方法,其特征在于,所述对二维数组中每一行的数据进行逻辑运算,具体采用并行运算的方式,对二维数组中每一行的匹配结果进行逻辑与运算。
7.根据权利要求1所述的基于GPU的SDN网络包分类方法,其特征在于,所述根据规则集编号对应的数据处理规则,所述数据处理规则包括转发或者丢弃数据包。
8.一种基于GPU的SDN网络包分类系统,其特征在于,包括SDN交换机和GPU;
所述SDN交换机包括:二维数组创建模块、初始数据发送模块、SDN网络包解析模块和数据处理模块;
所述GPU包括:初始数据接收存储模块、匹配内核模块、计算内核模块和规则集编号筛选模块;
所述二维数组创建模块用于创建二维数组;
所述初始数据发送模块用于将规则集、匹配内核、计算内核和二维数组发送到GPU;
所述SDN网络包解析模块用于解析出SDN网络包中的包头字段,将所述包头字段发送到GPU;
所述数据处理模块用于根据优先级最高的规则集编号对应的数据处理规则,对SDN网络包进行数据处理;
所述初始数据接收存储模块用于接收并存储SDN交换机的规则集、匹配内核、计算内核和二维数组;
所述匹配内核模块用于对所述包头字段和所述规则集的字段进行匹配,将匹配结果保存到二维数组中;
所述计算内核模块用于对二维数组中每一行的数据进行逻辑运算,筛选运算结果后得到规则集编号;
所述规则集编号筛选模块用于筛选优先级最高的规则集编号发送到SDN交换机。
9.根据权利要求8所述的基于GPU的SDN网络包分类系统,其特征在于,在所述匹配内核模块中,SDN网络包同时与多个规则集进行匹配。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华南理工大学,未经华南理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010227607.9/1.html,转载请声明来源钻瓜专利网。