[发明专利]一种组播报文处理方法和装置及设备有效
| 申请号: | 202010882589.8 | 申请日: | 2020-08-28 |
| 公开(公告)号: | CN112015555B | 公开(公告)日: | 2023-09-15 |
| 发明(设计)人: | 焦利涛 | 申请(专利权)人: | 瑞斯康达科技发展股份有限公司 |
| 主分类号: | G06F9/50 | 分类号: | G06F9/50;H04L47/625;H04L45/16;H04L45/02 |
| 代理公司: | 北京同达信恒知识产权代理有限公司 11291 | 代理人: | 李琴 |
| 地址: | 100094 北京市海淀区*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 报文 处理 方法 装置 设备 | ||
1.一种组播报文处理方法,其特征在于,包括:
根据中央处理器CPU收包队列中报文个数及CPU负载情况,确定所述CPU的负载低于或等于对应的预设门限值,且所述CPU收包队列中报文的个数低于对应的预设门限值,将组播的报文放置到CPU收包队列;否则,将所述组播的报文放置到组播收包队列;其中,所述CPU收包队列用于存储非组播的报文和组播的报文,所述组播收包队列用于存储组播的报文;
根据所述组播收包队列和CPU收包队列中的报文个数以及CPU负载情况,确定组播收包队列中存在报文且组播处理队列存在时,确定先将组播收包队列中的报文放置到组播处理队列;确定组播收包队列中存在报文且组播处理队列不存在时,判断CPU负载、组播收包队列中报文及CPU处理队列中报文的个数,是否均低于对应的预设门限值;
若是,将所述组播收包队列中的组播报文放置到CPU处理队列的头部,否则,创建一个组播处理队列,将所述组播收包队列中的组播报文,放置到新创建的组播处理队列,再将CPU收包队列中的报文放置到CPU处理队列;
确定所述CPU的负载低于或等于对应的预设门限值,按照预设比例轮询处理所述组播处理队列和CPU处理队列中的报文;确定所述CPU的负载高于对应的预设门限值,先处理组播处理队列中的报文,再处理CPU处理队列中的报文。
2.根据权利要求1所述的方法,其特征在于,将所述组播的报文放置到组播收包队列,包括:
若所述组播收包队列中报文个数超过最大阈值,对所述组播收包队列进行扩容,将所述组播的报文放置到组播收包队列。
3.根据权利要求1所述的方法,其特征在于,将所述组播的报文放置到组播收包队列,包括:
确定所述组播的报文为组播成员离开leave报文时,判断所述组播收包队列中是否存在leave报文;
若是,将所述组播的报文在所述组播收包队列中紧挨所述存在的leave报文之后插入,否则,将所述组播的报文放置在所述组播收包队列的队尾。
4.根据权利要求1所述的方法,其特征在于,若是,将所述组播收包队列中的组播报文放置到CPU处理队列的头部,否则,创建一个组播处理队列,将所述组播收包队列中的组播报文,放置到新创建的组播处理队列之后,还包括:
若所述组播收包队列为扩容后的队列,将所述组播收包队列中报文个数的最大阈值恢复为默认值。
5.根据权利要求1所述的方法,其特征在于,还包括:
根据CPU收包队列/组播收包队列/CPU处理队列中报文个数的最大阈值和CPU处理速度,分别确定所述CPU收包队列/组播收包队列/CPU处理队列中报文的个数分别对应的预设门限值。
6.根据权利要求2所述的方法,其特征在于,对所述组播收包队列进行扩容,包括:
将所述组播收包队列按照扩容比例进行扩容,所述扩容比例不小于单次接收报文的总数的最大值与当前组播收包队列中报文个数的比例。
7.根据权利要求1所述的方法,其特征在于,还包括:
确定收到非组播的报文时,将所述非组播的报文放置到CPU收包队列。
8.一种组播报文处理的设备,其特征在于,包括存储器和处理器,其中:
所述存储器用于存储计算机程序;
所述处理器用于读取所述存储器中的程序并执行权利要求1~7任一所述的组播报文处理方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于瑞斯康达科技发展股份有限公司,未经瑞斯康达科技发展股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010882589.8/1.html,转载请声明来源钻瓜专利网。





