【技术实现步骤摘要】
应用于DPU的报文传输方法及相关装置
[0001]本申请涉及计算机网络
,尤其涉及一种应用于DPU的报文传输方法及相关装置。
技术介绍
[0002]软件定义网络(Software Defined Network,SDN)是一种新型网络创新架构,与其相关的OpenFlow技术可以将原本由交换机/路由器控制的数据包转发过程,转化为由OpenFlow交换机(OpenFlow Switch)和控制服务器(Controller)分别完成的独立过程,从而实现了网络流量的灵活控制。
[0003]OpenFlow交换机利用流表(Flow Table)来存储数据包的转发规则。流表包括匹配域(用于匹配数据包的关键字段key)和动作域(用于指示对数据包进行操作的操作指令action)。目前智能网卡(如DPU(Data Processing Unit,数据处理单元))可以实现流表的卸载,即利用卸载到智能网卡中的硬件流表对后续流量进行快速查找和转发处理,提升数据转发的效率。智能网卡中存储的硬件流表可以包括将多个流表串接起来组成的多级流表,多级流表中的每张表都有序号,数据包通过跳转指令按照流表序号递增的方向在多个流表之间进行匹配。
[0004]现有的多级流表中每个流表的匹配域是固定的,因而分配给流表匹配域的存储空间也是固定的,但有时流表匹配域中实际有效的字段并没有占用所有的存储空间,可能会产生内存空洞,因此会导致宝贵的硬件存储空间的浪费。
技术实现思路
[0005]为解决上述问题,本申请实施例公开了一种应用 ...
【技术保护点】
【技术特征摘要】
1.一种应用于DPU的报文传输方法,其特征在于,所述方法包括:通过硬件模块接收第一数据报文,确定所述第一数据报文的业务类型;在确定所述硬件模块存储的流表中不存在与所述第一数据报文匹配的流表项的情况下,通过所述硬件模块将所述第一数据报文和所述第一数据报文的业务类型发送至软件模块;通过所述软件模块获取所述第一数据报文对应的第一格式的流表,并根据所述第一数据报文的业务类型确定所述第一数据报文的有效匹配字段,所述第一格式的流表的第一匹配域占用的空间大小为预设数值;通过所述软件模块根据所述第一数据报文的有效匹配字段,将所述第一格式的流表转换为第二格式的流表,其中,所述第二格式的流表的第二匹配域包括所述第一数据报文的业务类型和所述第一数据报文的有效匹配字段,所述第二匹配域占用的空间小于所述第一匹配域占用的空间;通过所述软件模块将所述第一数据报文对应的第二格式的流表传输给所述硬件模块;通过所述硬件模块根据所述第一数据报文对应的第二格式的流表,传输所述第一数据报文所属的数据流。2.如权利要求1所述的方法,其特征在于,所述通过硬件模块接收第一数据报文,确定所述第一数据报文的业务类型,包括:获取所述第一数据报文的标识信息,所述第一数据报文的标识信息包括所述第一数据报文的有效匹配字段;根据所述标识信息,确定所述第一数据报文的业务类型。3.如权利要求1或2所述的方法,其特征在于,所述通过所述硬件模块根据所述第一数据报文对应的第二格式的流表,传输所述第一数据报文所属的数据流,包括:在接收到第二数据报文的情况下,通过所述硬件模块确定所述第二数据报文的业务类型,所述第二数据报文所属的数据流与所述第一数据报文所属的数据流相同;根据所述第二数据报文的业务类型,查找所述硬件模块中存储的流表,所述硬件模块中存储的流表包括所述第一数据报文对应的所述第二格式的流表;根据所述第一数据报文对应的所述第二格式的流表,对所述第二数据报文执行相应操作。4.如权利要求1或2所述的方法,其特征在于,所述方法还包括:在确定所述第一数据报文对应的第二格式的流表与所述软件模块中的第三数据报文对应的流表满足流表合并条件的情况下,通过所述软件模块将所述第一数据报文对应的第二格式的流表与所述第三数据报文对应的流表合并,获得目标流表;其中,所述流表合并条件包括:两个流表各自的匹配域具有重复字段,且合并后得到的流表占用的空间小于预设的单流表所占空间;所述通过所述软件模块将所述第一数据报文对应的第二格式的流表传输给所述硬件模块,包括:通过所述软件模块将所述目标流表传输给所述硬件模块;所述通过所述硬件模块根据所述第一数据报文对应的第二格式的流表,传输所述第一数据报文所属的数据流,包括:
通过所述硬件模块根据所述目标流表,传输所述第一数据报文或所述第三数据报文所属的数据流。5.如权利要求4所述的方法,其特征在于,所述目标流表的动作域中包括分隔标志,所述通过所述硬件模块根据所述目标流表,传输所述第一数据报文或所述第三数据报文所属的数据流,包括:在接收到第四数据报文的情况下,通过所述硬件模块确定所述第四数据报文的业务类型和所述第四数据报文的有效匹配字段,所述第四数据报文所属的数据流与所述第一数据报文所属的数据流或所述第三数据报文的所属的数据流相同;根据所述第四数据报文的业务类型查找所述硬件模块中存储的流表,所述硬件模块中存储的流表包括所述目标流表;确定所述目标流表为所述第四数据报文匹配的流表;在所述第四数据报文的有效匹配字段与所述目标流表中的匹配域包括的匹配字段完全相同的情况下,根据所述目标流表中的动作域,对所述第四数据报文执行相应操作;在所述第四数据报文的有效匹配字段与所述目标流表中的匹配域包括的匹配字段部分相同的情...
【专利技术属性】
技术研发人员:李保国,黄祥祥,孙路遥,
申请(专利权)人:深圳星云智联科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。