[发明专利]一种高性能无阻塞数据发送方法及装置有效
| 申请号: | 202210586230.5 | 申请日: | 2022-05-27 |
| 公开(公告)号: | CN115208830B | 公开(公告)日: | 2023-09-08 |
| 发明(设计)人: | 张俊杰;许旭晗;曹炳尧;杨丹;陈彦昊;陈天杨;张倩武;宋英雄;陈健;李迎春 | 申请(专利权)人: | 上海大学 |
| 主分类号: | H04L47/12 | 分类号: | H04L47/12;H04L47/19 |
| 代理公司: | 上海宛林专利代理事务所(普通合伙) 31361 | 代理人: | 张明 |
| 地址: | 200444*** | 国省代码: | 上海;31 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 性能 阻塞 数据 发送 方法 装置 | ||
1.一种高性能无阻塞数据发送方法,其特征在于,包括以下步骤:
TOE的后级数据处理模块建立连接后,将新建连接并发号放入建链队列中,触发建链事件;
多并发空间长度记录缓冲池从建链队列中取走所述新建连接并发号,并将所述多并发空间长度记录缓冲池中所述新建连接并发号的长度更新为连接数据缓冲区的大小;
应用层有待发送数据时,发送数据对应连接的并发号至所述多并发空间长度记录缓冲池,触发查询时间,所述多并发空间长度记录缓冲池返回当前连接缓冲区剩余容量至所述应用层;
所述应用层将不大于缓冲区剩余容量的数据发送至多并发数据缓冲池,将不大于缓冲区剩余容量的数据的数据长度以及并发号发送给所述多并发空间长度记录缓冲池,触发写入事件;
所述多并发数据缓冲池收到写入数据的并发号以及数据长度后,根据长度信息减少多并发空间长度记录缓冲池中所述并发号记录的剩余空间容量;
TOE收到正确的确认应答序列号后,所述后级数据处理模块将并发号以及确认的数据长度放入应答队列中,触发应答事件;
所述多并发空间长度记录缓冲池从应答队列中取出并发号、确认的数据长度,增加所述多并发空间长度记录缓冲池中对应并发号记录的剩余空间容量。
2.如权利要求1所述的一种高性能无阻塞数据发送方法,其特征在于,所述多并发数据缓冲池由DDR构建,每个并发连接分配一个大小为2Nbyte的空间作为数据缓冲区,其中,N为缓冲区深度可参数化设计。
3.如权利要求2所述的一种高性能无阻塞数据发送方法,其特征在于,所述多并发数据缓冲池仅能接收长度不大于该数据所述数据缓冲区剩余容量大小的数据。
4.如权利要求1所述的一种高性能无阻塞数据发送方法,其特征在于,所述多并发空间长度记录缓冲池在数据进入TOE后减少记录长度,在确认数据到达接收端后增加记录长度。
5.如权利要求4所述的一种高性能无阻塞数据发送方法,其特征在于,所述多并发空间长度缓冲池由双端口RAM构建,包括端口A和端口B,所述端口A用来查询记录长度,端口B用来更新记录长度,以每一个连接的并发号为地址,记录每一个连接的缓冲区剩余容量。
6.如权利要求2所述的一种高性能无阻塞数据发送方法,其特征在于,所述应用层触发查询操作和更新操作,所述查询操作由查询事件触发,所述更新操作由所述写入事件、所述应答事件和所述建链事件触发。
7.如权利要求6所述的一种高性能无阻塞数据发送方法,其特征在于,所述查询事件设置为用户层发送并发号给所述多并发空间长度记录缓冲池,所述多并发空间长度记录缓冲池返回该数据缓冲区的剩余空间容量;
所述写入事件设置为所述应用层在收到缓冲区剩余容量后,发送并发号和待发送数据长度到所述多并发空间长度记录缓冲池,并将待发送数据发送至所述多并发数据缓冲池,所述多并发空间长度记录缓冲池收到并发号和数据长度后,减少对应并发号记录的缓冲区剩余容量;
所述建链事件设置为所述后级数据处理模块完成建立连接后,将该连接的并发号放入建链队列中,所述多并发空间长度记录缓冲池取走该并发号后,将多并发空间长度记录缓冲池中该并发号记录的长度设置为数据缓冲区深度;
所述应答事件设置为TOE 收到正确的确认应答序列号后,后级数据处理模块将并发号以及确认的数据长度放入应答队列中,在多并发空间长度记录缓冲池从队列中取走该并发号后,增加多并发空间长度记录缓冲池中该并发剩余空间长度。
8.如权利要求7所述的一种高性能无阻塞数据发送方法,其特征在于,所述写入事件、所述应答事件、所述建链事件均由仲裁模块进行仲裁调度,优先级设置为建链事件应答事件写入事件。
9.如权利要求6所述的一种高性能无阻塞数据发送方法,其特征在于,当所述查询操作和所述更新操作同时触发时,如果操作的并发号不同,则所述查询操作与所述更新操作互不影响,反之则遵循先查询后更新的顺序。
10.如应用于权利要求1-9任一所述的一种高性能无阻塞数据发送方法的装置,其特征在于,包括多并发空间长度记录缓冲池、多并发数据缓冲池和仲裁模块,其中,所述多并发空间长度记录缓冲池负责记录、更新每一条连接的数据缓冲区剩余空间,所述多并发数据缓冲池负责缓存未发送的数据以及未收到正确应答的数据,所述仲裁模块负责对空间长度记录缓冲池不同触发事件进行仲裁。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海大学,未经上海大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210586230.5/1.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置





