[发明专利]多核网络设备报文按接口保序方法及系统有效
申请号: | 201210361423.7 | 申请日: | 2012-09-25 |
公开(公告)号: | CN102891809A | 公开(公告)日: | 2013-01-23 |
发明(设计)人: | 陈海滨 | 申请(专利权)人: | 汉柏科技有限公司 |
主分类号: | H04L12/863 | 分类号: | H04L12/863 |
代理公司: | 北京路浩知识产权代理有限公司 11002 | 代理人: | 王莹 |
地址: | 300384 天津市华*** | 国省代码: | 天津;12 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 多核 网络设备 报文 接口 方法 系统 | ||
1.一种多核网络设备报文按接口保序方法,其特征在于,包括以下步骤:
S1:多核CPU的各个CPU接收当前报文后,获取所述当前报文的入接口信息,对所述当前报文进行入接口判断并按报文的入接口分组;
S2:当前报文对应的线程对所述当前报文在对应入接口组内进行排序,处理所述当前报文;
S3:在当前报文被处理后,判断同一入接口的前一个报文是否已经被转发,若是,则将所述处理后的当前报文进行转发,否则等待所述前一个报文被转发后,再将所述处理后的当前报文进行转发。
2.如权利要求1所述的方法,其特征在于,在所述步骤S1之前还包括创建与每个入接口对应的入接口循环链表的步骤。
3.如权利要求2所述的方法,其特征在于,所述步骤S1中对所述当前报文进行入接口判断并按报文的入接口分组的步骤具体为:根据当前报文的入接口信息对当前报文所属的入接口进行判断,并找到与所述入接口对应的入接口循环链表。
4.如权利要求3所述的方法,其特征在于,所述步骤S2中对所述当前报文在对应入接口组内进行排序的步骤具体为:在所述找到的入接口循环链表上获取当前节点,将当前报文记录到所述当前节点中,并将所述当前节点信息记录到当前报文中,然后将该入接口循环链表的当前节点从新赋值为当前节点的下一个节点。
5.如权利要求4所述的方法,其特征在于,所述步骤S3具体为:在当前报文被处理后,查找此报文在对应入接口循环链表中对应的节点,查看该节点的上一个节点中记录的报文是否为空:
若为空,则直接将当前报文进行转发,并将对应的节点信息清空;
若不为空,则将当前报文的发送信息存入此节点中,退出此报文处理流程,等待上一个节点中记录的报文为空后再发送。
6.如权利要求4或5所述的方法,其特征在于,所述入接口循环链表中每个节点均具有状态标志位,所述状态标志位用于反映节点所对应的报文是否已经被转发的状态;
所述步骤S3中,通过所述状态标志位来判断所述入接口循环链表中的前一个报文对应的报文是否已经被转发。
7.一种多核网络设备报文按接口保序系统,其特征在于,所述系统包括:
报文按接口分组模块,用于在多核CPU的各个CPU接收报文后,获取报文的入接口信息,对报文进行入接口判断并按报文的入接口分组;
报文处理模块,用于通过对应的线程对同一入接口的报文进行排序,处理所述报文;
转发模块,用于在当前报文被处理后,判断同一入接口的前一个报文是否已经被转发,若是,则将所述处理后的当前报文进行转发,否则等待所述前一个报文被转发后,再将所述处理后的当前报文进行转发。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于汉柏科技有限公司,未经汉柏科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210361423.7/1.html,转载请声明来源钻瓜专利网。