预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

(19)中华人民共和国国家知识产权局(12)发明专利申请(10)申请公布号CN107172037A(43)申请公布日2017.09.15(21)申请号201710329006.7(22)申请日2017.05.11(71)申请人华东师范大学地址200241上海市闵行区东川路500号(72)发明人文颖叶慎林(74)专利代理机构上海蓝迪专利商标事务所(普通合伙)31215代理人徐筱梅张翔(51)Int.Cl.H04L29/06(2006.01)H04L12/26(2006.01)权利要求书1页说明书5页附图3页(54)发明名称一种多路多通道高速数据流的实时分包解析方法(57)摘要本发明公开了一种多路多通道高速数据流的实时分包解析方法,该方法包括步骤:a)根据远程硬件设备的数据流传输速度,动态地初始化大环形缓存区和小环形缓存区的容量大小;b)对大环形缓存区的所有写线程使用互斥锁进行保护;c)解析线程对大环形缓存区的多路数据进行实时分包得到复帧,并解析得到每一通道的子帧,线程池把子帧写入相应通道的小环形缓存区中;d)轮询线程对所有通道的小环形缓存区进行轮询,把帧数量达到规定值的通道数据读出并送入计算单元。本发明既节省了内存也保证了解析出来的数据帧的有序性。并使用轮询线程对所有通道内的有效数据进行监听,保证数据不发生沾包或者丢包的问题。CN107172037ACN107172037A权利要求书1/1页1.一种多路多通道高速数据流的实时分包解析方法,其特征在于,该方法包括以下具体步骤:步骤1:根据远程硬件设备的数据流传输速度,动态地初始化大环形缓存区和小环形缓存区的容量大小;其中,大环形缓存区的容量大小为多路数据流传输速率之和的三倍;小环形缓存区为大环形缓存区的容量大小除以通道个数;步骤2:对大环形缓存区的所有写线程使用互斥锁进行保护;步骤3:解析线程对大环形缓存区的多路数据进行实时分包得到复帧,并解析得到每一通道的子帧,线程池把子帧写入相应通道的小环形缓存区中;步骤4:轮询线程对所有通道的小环形缓存区进行轮询,把帧数量达到规定值的通道数据读出并送入计算单元。2.根据权利要求1所述的多路多通道高速数据流的实时分包解析方法,其特征在于,所述步骤1具体包括:a1:根据数据流传输速度初始化大环形缓存区的容量大小,若传输速率为Vmbps,则大环形缓存区的容量为(3*V)MB;根据数据流中数据的通道数量初始化小环形缓存区的个数,若每一路数据流中有Q个通道的信号数据,则初始化Q个环形小缓存区;a2:把大环形缓存区和所有小环形缓存区的首、尾指针归零。3.根据权利要求1所述的多路多通道高速数据流的实时分包解析方法,其特征在于所述步骤2具体包括:b1:多个线程各自监听一个独立的端口来接收一路数据流;b2:对大环形缓存区使用互斥锁;b3:一个写线程收到M字节数据后,申请互斥锁;若获得互斥锁,则向大环形缓存区写入M字节,M是单次接收的数据流的字节数;首指针向后移动M位,释放互斥锁;处于等待状态的写线程开始申请互斥锁。4.根据权利要求1所述的多路多通道高速数据流的实时分包解析方法,其特征在于,所述步骤3具体包括:c1:解析线程根据复帧的帧结构,大环形缓存区的尾指针位置开始对数据流进行分包;c2:解析线程每找到一个复帧的首、尾位置,并把该复帧的位置信息传递给线程池,将大环形缓存区的尾指针向后移动复帧的长度个字节;c3:线程池获取到该复帧位置后,解析出该复帧中所有子帧;进一步解析出子帧包含的回传数据帧的通道号和有效数据部分的起始位置;根据通道号把有效数据部分的内容写入对应的小环形缓存区,小环形缓存区的首指针向后移动一个单位,该小环形缓存有效数据量的计数加1。5.根据权利要求1所述的多路多通道高速数据流的实时分包解析方法,其特征在于,所述步骤4具体包括:d1:轮询线程从第一个小环形缓存开始,查询当前环形小缓存的有效数据量;若当前环形小缓存的有效数据量小于N,则轮询线程去访问下一个小环形缓存;其中,N是预设值,表示可以一次性取走的数据量;d2:若当前小环形缓存取出N个单位的数据,当前环形小缓存的尾指针向后移动N个单位。2CN107172037A说明书1/5页一种多路多通道高速数据流的实时分包解析方法技术领域[0001]本发明属于高速数据流分级缓存技术领域,是一种二级环形实时分包解析技术,尤其是一种多路多通道高速数据流的实时分包解析方法。背景技术[0002]数据流解析是软硬件交互的一个重要过程。远程设备通过TCP协议以较高的传输速率的传输原始数据流到服务器某端口,服务器异步或者同步接收到原始数据流后,实时地通过数据帧协议的固定结构去把原始数据流进行分包成帧,把有用的帧内部的有效数据提取出来,并送到相关的计算单元进行计算。原始数据流传输速度很快,在内部数据帧处于多重帧结构的情