[发明专利]报文处理方法和装置有效
申请号: | 201911193982.X | 申请日: | 2019-11-28 |
公开(公告)号: | CN110932998B | 公开(公告)日: | 2022-11-01 |
发明(设计)人: | 孟令山;孙军伟;任晓瑶 | 申请(专利权)人: | 杭州迪普科技股份有限公司 |
主分类号: | H04L47/62 | 分类号: | H04L47/62;H04L47/629 |
代理公司: | 北京博思佳知识产权代理有限公司 11415 | 代理人: | 王茹 |
地址: | 310051 浙江省杭*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 报文 处理 方法 装置 | ||
本说明书提供一种报文处理方法和装置,该方法应用于网卡,在网卡收到报文后,利用自定义的字段区分出目标接收者和其他用户,然后将报文投入公共队列中,每个用户在访问公共队列时,便可以根据自己所对应的字段的值来判断该报文是否是发给自己的,从而实现多用户对网卡基于共享队列的使用方案,解决了现有技术中相同报文的重复拷贝以及各个用户独立队列的内存占用的问题。
技术领域
本说明书涉及计算机技术领域,尤其涉及一种报文处理方法和装置。
背景技术
随着网络技术的不断创新,以太网接口技术也经历了飞速发展。从早期主流的10Mbit/s与100Mbit/s,发展到千兆网(1Gbit/s)。到如今,万兆(10Gbit/s)网卡技术成为数据中心服务器的主流接口技术,近年来还推出了40Gbit/s、100Gbit/s的超高速网络接口技术。虽然通用网卡的速率可以满足现阶段的使用要求,但是面对越来越复杂的业务需求时又显得不够灵活。
现有的网卡满足多个用户的使用是基于独占收发队列实现的,每个用户都有自己的独立的收发通道,收发数据不能共享。这就导致,当同一个报文满足多个用户的需求时,网卡不得不重复发送给多个用户,浪费了大量的硬件资源,降低了硬件性能。
发明内容
为克服相关技术中存在的问题,本说明书提供了一种报文处理方法和装置。
根据本说明书实施例的第一方面,提供一种报文处理方法,所述方法应用于网卡,所述方法包括:
在初始化时,获取在所述网卡上已注册的用户各自配置的接收队列个数的最小值,分配所述最小值的队列为公共队列;在报文中自定义的标识字段中,确定所述用户对应的指定字段,所述指定字段的值用于表征所述用户是否为所述报文的目标接收者;
当接收到报文后,根据所述指定字段的值,将所述报文分配到所述公共队列中,以使所述目标接收者从所述公共队列中读取所述报文。
在某些例子中,上述方法还包括:在初始化时,将所述指定字段的值设置为表征所述报文的目标接收者为所有用户。
在某些例子中,上述将所述报文分配到所述公共队列中的步骤包括:
当接收到报文后,根据所述指定字段的值,确定存在目标接收者时,将所述报文分配到指定队列中,以使将同一发送者发送的报文或者指向同一目标接收者的报文分配到同一公共队列中。
在某些例子中,上述指定字段的值根据所述报文的五元组的哈希值确定。
在某些例子中,根据所述指定字段的值,确定不存在目标接收者时,将所述报文丢弃。
在某些例子中,上述方法还包括:
在初始化时,获取在所述网卡上已注册的用户各自配置的发送队列个数的最小值,将所述最小值数量的队列作为第二公共队列;
所述用户发送报文时,将所发送的报文分配到所述第二公共队列中并加锁。
在某些例子中,上述方法还包括:接收将所述网卡设置为指定模式的配置指令。
在某些例子中,上述方法还包括:在所述目标接收者接收所述报文后,所述目标接收者对应的指定字段的值被修改为表征所述报文已被接收的状态。
根据本说明书实施例的第二方面,提供一种报文处理装置,所述装置应用于网卡,所述装置包括:
获取模块,用于在初始化时,获取在所述网卡上已注册的用户各自配置的接收队列个数的最小值,分配所述最小值的队列为公共队列;
设置模块,用于在报文中自定义的标识字段中,确定所述用户对应的指定字段,所述指定字段的值用于表征所述用户是否为所述报文的目标接收者;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州迪普科技股份有限公司,未经杭州迪普科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911193982.X/2.html,转载请声明来源钻瓜专利网。