[发明专利]报文保序方法及系统有效
| 申请号: | 201010190599.1 | 申请日: | 2010-05-27 |
| 公开(公告)号: | CN101854302A | 公开(公告)日: | 2010-10-06 |
| 发明(设计)人: | 曹彪;刘志远;赵丰收 | 申请(专利权)人: | 中兴通讯股份有限公司 |
| 主分类号: | H04L12/56 | 分类号: | H04L12/56 |
| 代理公司: | 北京康信知识产权代理有限责任公司 11240 | 代理人: | 余刚;吴孟秋 |
| 地址: | 518057 广*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 报文 方法 系统 | ||
1.一种报文保序方法,其特征在于,包括以下步骤:
多个线程竞争原子锁;
得到所述原子锁的线程对保序队列中的预定个数的报文进行处理,并在处理之后,释放所述原子锁。
2.根据权利要求1所述的方法,其特征在于,
判断所述保序队列中的当前节点的状态;
在所述当前节点的状态为有效的情况下,所述多个线程竞争所述原子锁。
3.根据权利要求1所述的方法,其特征在于,
判断当前报文的序列号和期望序列号是否相同;
在相同的情况下,得到所述原子锁的线程对所述当前节点的报文进行保序处理。
4.根据权利要求1至3中任一项所述的方法,其特征在于,得到所述原子锁的线程对所述预定个数的报文进行处理包括:
获取所述原子锁的线程判断所述保序队列中的当前节点的状态,在所述当前节点的状态为有效的情况下,得到所述原子锁的线程对所述预定个数的报文进行处理。
5.根据权利要求1至3中任一项所述的方法,其特征在于,得到所述原子锁的线程对所述预定个数的报文进行处理包括:
得到所述原子锁的线程比较当前报文的序列号和期望序列号,在两者相同的情况下,将所述当前报文发送至对应的端口;
在将所述当前报文发送至对应的端口之后,得到所述原子锁的线程进行下一个报文的处理或者释放所述原子锁。
6.根据权利要求1所述的方法,其特征在于,还包括:
每个线程在接收报文之前,判断该线程的共享变量的值,在该线程的共享变量的值不是初始值的情况下,确定上一个报文的序列号丢失,并将丢失的报文序列号送入保序单元释放所述丢失的报文序列号;其中,所述每个线程均对应一个共享变量;
在该线程的共享变量的值是初始值的情况下,接收报文,并将接收到的所述报文的序列号赋给该线程的共享变量,在接收到的所述报文进入所述保序单元之后,将所述共享变量的值恢复为初始值。
7.根据权利要求1所述的方法,其特征在于,未得到所述原子锁的线程返回。
8.一种报文保序系统,其特征在于,包括:
竞争模块,用于使多个线程竞争原子锁;
处理模块,用于使得到所述原子锁的线程对保序队列中的预定个数的报文进行处理,并在处理之后,释放所述原子锁。
9.根据权利要求8所述的系统,其特征在于,
所述处理模块,还用于使得到所述原子锁的线程比较当前报文的序列号和期望序列号,在两者相同的情况下,将所述当前报文发送至对应的端口;并在将所述当前报文发送至对应的端口之后,获取所述原子锁的线程进行下一个报文的处理或者释放所述原子锁。
10.根据权利要求8或9所述的系统,其特征在于,还包括:
异常处理模块,用于使所述多个线程中的每个线程在接收报文之前,判断该线程的共享变量的值,在该线程的共享变量的值不是初始值的情况下,确定上一个报文的序列号丢失,并将丢失的报文序列号送入保序单元释放所述丢失的报文序列号;其中,所述每个线程均对应一个共享变量;在该线程的共享变量的值是初始值的情况下,接收报文,并将接收到的所述报文的序列号赋给该线程的共享变量,在接收到的所述报文进入所述保序单元之后,将所述共享变量的值恢复为初始值。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中兴通讯股份有限公司,未经中兴通讯股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010190599.1/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种盲均衡器及盲均衡处理方法
- 下一篇:告警同步方法、装置和系统





