[发明专利]一种数据处理装置、方法和FPGA板卡有效
申请号: | 201811585061.3 | 申请日: | 2018-12-24 |
公开(公告)号: | CN109525495B | 公开(公告)日: | 2022-03-11 |
发明(设计)人: | 杨琳琳 | 申请(专利权)人: | 广东浪潮大数据研究有限公司 |
主分类号: | H04L69/22 | 分类号: | H04L69/22;H04L45/74 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 罗满 |
地址: | 510620 广东省广州市天河区*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据处理 装置 方法 fpga 板卡 | ||
本发明实施例公开了一种基于Openflow的数据处理装置、方法和FPGA板卡,预处理模块解析接收到的各数据报文的数据包头,并按照流表中表项的数据格式对解析出的数据信息重组,得到重组包头;流表控制模块分别与预处理模块、行为处理模块以及接口模块连接,用于判断预先建立的流表中是否存在与目标重组包头相匹配的目标表项;若是,则触发行为处理模块执行目标表项相对应的操作;若否,则触发接口模块,将与目标重组包头相对应的目标数据报文发送至Openflow控制器。在该技术方案中,将Openflow交换机的功能从CPU卸载到FPGA上,释放了CPU的资源,提高了处理数据包的速度。
技术领域
本发明涉及云计算技术领域,特别是涉及一种基于Openflow的数据处理装置、方法和FPGA板卡。
背景技术
随着云计算技术的发展,虚拟化技术也得到了迅速发展,而虚拟交换机对于虚拟机之间的通信有着至关重要的作用。
现有的openflow交换机,大都是基于软件实现的,需要消耗很多的CPU资源。CPU除了为openflow交换机的功能提供资源外,还需要为其它应用提供服务,CPU负载较大,导致数据包的处理速度往往较低。
可见,如何提升openflow交换机上数据处理速度,是本领域技术人员亟待解决的问题。
发明内容
本发明实施例的目的是提供一种基于Openflow的数据处理装置、方法和FPGA板卡,可以提升openflow交换机上数据处理速度。
为解决上述技术问题,本发明实施例提供一种基于Openflow的数据处理装置,应用于FPGA,所述装置包括与Openflow交换机连接的预处理模块、流表控制模块、行为处理模块和与Openflow控制器连接的接口模块;
所述预处理模块,用于解析接收到的各数据报文的数据包头,并按照流表中表项的数据格式对解析出的数据信息重组,得到重组包头;
所述流表控制模块分别与所述预处理模块、所述行为处理模块以及所述接口模块连接,用于判断预先建立的流表中是否存在与目标重组包头相匹配的目标表项;若是,则触发所述行为处理模块;若否,则触发所述接口模块;其中,所述目标重组包头为所有所述重组包头中的任意一个重组包头;
所述行为处理模块,用于执行所述目标表项相对应的操作;
所述接口模块,用于将与所述目标重组包头相对应的目标数据报文发送至Openflow控制器。
可选的,所述预处理模块还包括提取子模块、判断子模块和删除子模块;
所述提取子模块,用于提取各所述数据报文的特征信息;
所述判断子模块,用于在所述判断预先建立的流表中是否存在与目标重组包头相匹配的目标表项之前,判断目标特征信息是否满足预设条件;其中,所述目标特征信息为与所述目标重组包头相对应的特征信息;若是,则触发所述流表控制模块;若否,则触发所述删除子模块;
所述删除子模块,用于删除所述目标特征信息所对应的数据报文。
可选的,预先建立的流表包括全局流表和通配符流表;
相应的,所述流表控制模块包括第一判断子模块、第一作为子模块、第二判断子模块和第二作为子模块;
所述第一判断子模块,用于判断预先建立的全局流表和通配符流表中是否均存在与目标重组包头相匹配的表项;若是,则触发所述第一作为子模块;若否,则触发所述第二判断子模块;
所述第一作为子模块,用于将全局流表中匹配到的表项作为所述目标重组包头的目标表项;
所述第二判断子模块,用于判断通配符流表中是否存在与目标重组包头相匹配的表项;若是,则触发所述第二作为子模块;若否,则触发所述接口模块;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广东浪潮大数据研究有限公司,未经广东浪潮大数据研究有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811585061.3/2.html,转载请声明来源钻瓜专利网。