[发明专利]一种处理分片报文的方法和装置有效
申请号: | 201710557080.4 | 申请日: | 2017-07-10 |
公开(公告)号: | CN109246036B | 公开(公告)日: | 2021-02-09 |
发明(设计)人: | 唐美芹;朱道松;朱海英;祝海凤 | 申请(专利权)人: | 深圳市中兴微电子技术有限公司 |
主分类号: | H04L12/953 | 分类号: | H04L12/953;H04L12/951;H04L12/883 |
代理公司: | 北京天昊联合知识产权代理有限公司 11112 | 代理人: | 姜春咸;冯建基 |
地址: | 518055 广东省深*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 处理 分片 报文 方法 装置 | ||
1.一种处理分片报文的方法,其特征在于,包括:
预先创建正确队列链表、错误队列链表和空闲地址链表,分别用于存储正确的分片的地址、错误的分片的地址以及空闲的分片地址;并创建正确链头指针、正确链尾指针、正确虚尾指针、错误链头指针、错误链尾指针和错误虚尾指针,所述正确链头指针和错误链头指针分别指向正确队列链表和错误队列链表的头节点,所述正确链尾指针和错误链尾指针分别指向正确队列链表和错误队列链表的尾节点;
当有新分片到达时,从空闲地址链表中为新分片分配地址,将新分片存入所分配的地址,将新分片的地址分别存入正确队列链表和错误队列链表的尾节点,将正确虚尾指针和错误虚尾指针分别指向新分片的地址;
检查新分片是否正确且新分片是否为尾分片;
如果新分片正确且新分片为尾分片,将正确链尾指针更新为正确虚尾指针的值,将错误虚尾指针更新为错误链尾指针的值;
如果新分片错误,将正确虚尾指针更新为正确链尾指针的值,将错误链尾指针更新为错误虚尾指针的值。
2.根据权利要求1所述的方法,其特征在于,所述检查新分片是否正确且新分片是否为尾分片,具体包括:
检查所述新分片是否是尾分片且所述新分片的分片号与上一分片的分片号是否连续;
如果所述新分片不是尾分片且所述新分片的分片号与上一分片的分片号连续,则暂时判定所述新分片正确且所述新分片不是尾分片,等待下一新分片到达后继续判定;
如果所述新分片不是尾分片且所述新分片的分片号与上一分片的分片号不连续,则检查所述新分片是否是首分片,如果是首分片,则判定该首分片之前到达报文的新分片错误;如果不是首分片,则判定所述新分片错误;
如果所述新分片是尾分片且所述新分片的分片号与上一分片的分片号连续,则判定所述新分片正确且新分片是尾分片;
如果所述新分片是尾分片且所述新分片的分片号与上一分片的分片号不连续,则判定所述新分片错误。
3.根据权利要求2所述的方法,其特征在于,所述检查新分片是否正确且新分片是否为尾分片,还包括:
当判定某一新分片错误时,在该新分片之前到达的与该错误新分片属于同一重组报文的新分片或在该新分片之后到达的与该错误新分片属于同一重组报文的新分片也判定为错误。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
检查所述正确队列链表的头分片是否被调度;
如果所述正确队列链表的头分片被调度,将所述被调度的头分片的地址存入所述空闲地址链表,将所述正确链头指针更新为所述被调度的头分片的地址所指向的下一分片的地址。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
检查所述错误队列链表的头分片的地址是否被回收;
如果所述错误队列链表的头分片的地址被回收,将所述被回收的头分片的地址存入所述空闲地址链表,将所述错误链头指针更新为所述被回收的头分片的地址所指向的下一分片的地址。
6.一种处理分片报文的装置,其特征在于,包括链表模块、分配模块、检查模块,其中:
链表模块,用于预先创建正确队列链表、错误队列链表和空闲地址链表,分别用于存储正确的分片的地址、错误的分片的地址以及空闲的分片地址;并创建正确链头指针、正确链尾指针、正确虚尾指针、错误链头指针、错误链尾指针和错误虚尾指针,所述正确链头指针和错误链头指针分别指向正确队列链表和错误队列链表的首分片的地址,所述正确链尾指针和错误链尾指针分别指向正确队列链表和错误队列链表的尾节点;
分配模块,用于当有新分片到达时,从链表模块的空闲地址链表中为新分片分配地址,将新分片存入所分配的地址,将新分片的地址分别存入链表模块的正确队列链表和错误队列链表的尾节点,将正确虚尾指针和错误虚尾指针分别指向新分片的地址,通知检查模块;
检查模块,用于接收到分配模块的通知,检查新分片是否正确且新分片是否为尾分片;如果新分片正确且新分片为尾分片,将正确链尾指针更新为正确虚尾指针的值,将错误虚尾指针更新为错误链尾指针的值;如果新分片错误,将正确虚尾指针更新为正确链尾指针的值,将错误链尾指针更新为错误虚尾指针的值。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳市中兴微电子技术有限公司,未经深圳市中兴微电子技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710557080.4/1.html,转载请声明来源钻瓜专利网。