[发明专利]一种发送速率自适应控制的文件传输方法及其系统有效
| 申请号: | 200910092785.9 | 申请日: | 2009-09-17 |
| 公开(公告)号: | CN101656756A | 公开(公告)日: | 2010-02-24 |
| 发明(设计)人: | 王劲林;齐向东;刘学;李良斌;尤佳莉 | 申请(专利权)人: | 中国科学院声学研究所;北京中科移讯技术有限公司 |
| 主分类号: | H04L29/08 | 分类号: | H04L29/08;H04L29/06;H04L1/00 |
| 代理公司: | 北京法思腾知识产权代理有限公司 | 代理人: | 杨小蓉 |
| 地址: | 100190北京市海淀区*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 发送 速率 自适应 控制 文件传输 方法 及其 系统 | ||
1.一种发送速率自适应控制的文件传输方法,其特征在于:该方法采用UDP协议发送文件数据,其他指令全部由TCP协议完成;所述的文件数据以“块”为每次传输和验证完整性的基本单位,并通过采用动态调整发送“块”的大小细粒度调整发送速率;该方法的步骤包括:
1)客户端发起文件下载请求时,把能接收的块的最大值MaxBlock发给服务器端,服务器端的块信息同步模块在MaxBlock范围内取一个块的大小预计算文件片段切分的块的总数BlockNum,并把块信息发送给客户端;
2)服务器端通过文件分片模块完成大文件的切分,把每一个大文件按上述的块的大小,切分成1~N个文件片段;每个文件片段由1~M个块组成,每个块都由1~L个报文组成,每个块和报文都有一个标识,块的标识在所属的文件片段中具有唯一性,报文标识在所属的块中也具有唯一性;
3)服务器端通过UDP发送线程完成文件数据的发送,利用UDP协议按照报文的序号从小到大的顺序将每个文件片段的块信息发送给客户端;
4)客户端根据块的大小预设接收时长,在设定时延后,验证一个接收块的完整性;如果块完整,将写入临时文件;如果块不完整,将根据块中报文丢失情况利用TCP协议向服务器请求重传整个块或缺少的报文;
5)服务器端接收到重传整个块或缺少的报文的请求时,将请求重发的块编号或报文编号通知给发送线程管理模块,通过发送线程管理模块找到发送该块或缺少的报文的UDP发送线程,通知该UDP发送线程重新发送;
6)服务器端通过块调整模块调整发送“块”的大小来细粒度调整发送速率,所述的块调整模块定时到重发管理模块查询这段时间内客户端的重发请求记录,然后到发送线程管理模块查询这段时间内已发送给客户端的块或报文的记录,根据请求重发和已发送的比率决定是否调整块的大小,当服务器端调整了块的大小时,把调整结果通知TCP收发线程,由TCP收发线程重新发送块信息通知客户端;
7)客户端接收到所有的文件片段时,通过文件合并模块将根据文件片段描述信息重新组织文件。
2.根据权利要求1所述的发送速率自适应控制的文件传输方法,其特征在于:所述的块的大小是根据请求重发和已发送的比率进行调整,请求重发的比例高,说明网络拥塞,服务器端要缩小块的大小;请求重发的比例低,表明网络丢包率低或服务器端和客户端处理能力强,服务器端就可以增加块的大小。
3.根据权利要求1所述的发送速率自适应控制的文件传输方法,其特征在于:该方法还进一步包括客户端可根据本地资源请求服务器调整发送线程数目的步骤:
在初始条件下,客户端请求服务器端启动一个UDP发送线程进行发送;然后,服务器端的发送线程管理模块根据接收到的中心调度模块增加或减少线程的指令,开启或挂起UDP发送线程;
当客户端探测自身还有能力开启一个或多个接收线程时,将请求服务器再开启其他线程进行发送其他文件片段,在同一时刻,所有的工作的发送线程发送的块的大小一致;
当客户端资源紧张时,将通知服务器减少一个或多个接收线程,服务器按照线程开启时间倒序停止线程发送。
4.根据权利要求3所述的发送速率自适应控制的文件传输方法,其特征在于:所述的客户端的本地资源包括:自身的计算资源、网络资源和/或内存资源利用率。
5.根据权利要求1所述的发送速率自适应控制的文件传输方法,其特征在于:所述的块信息包括:块所属的文件片段编号(FilePieceID)、块在文件片段中的唯一编号(BlockID)和块包括的报文数(PackageNum)。
6.根据权利要求5所述的发送速率自适应控制的文件传输方法,其特征在于:所述的块信息指令被封装在TCP中,其数据结构为“文件片段总数+第一个文件片段所包括的块信息+第二个文件片段所包括的块信息+...+第N个文件片段所包括的块信息”,文件片段所包括的块信息数据结构为“文件片段编号+起始块编号+结束块编号+块包含的报文数+最后块编号+最后块包括的报文数”。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院声学研究所;北京中科移讯技术有限公司,未经中国科学院声学研究所;北京中科移讯技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910092785.9/1.html,转载请声明来源钻瓜专利网。





