[发明专利]一种数据传输的方法和装置有效
申请号: | 201110100493.2 | 申请日: | 2009-02-05 |
公开(公告)号: | CN102170341A | 公开(公告)日: | 2011-08-31 |
发明(设计)人: | 陈家君;李沛昭;邹代柱 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | H04L1/18 | 分类号: | H04L1/18;H04L1/16 |
代理公司: | 北京三高永信知识产权代理有限责任公司 11138 | 代理人: | 何文彬 |
地址: | 518000 广东省深*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据传输 方法 装置 | ||
本申请是腾讯科技(深圳)有限公司于2009年02月05日申请的、申请号为200910008497.0、发明名称为″一种数据传输的方法和设备″的发明专利申请的分案申请。
技术领域
本发明涉及通讯技术领域,特别涉及一种数据传输的方法和装置。
背景技术
随着网络技术的发展,网络即时通讯工具(IM,Instant Messager)发展到今天,已经被大多数的用户所接受,成为用户必不可少的软件工具,不但在平时的休闲娱乐中,而且在用户的工作中得到广泛的使用。因此,用户对IM软件的易用性,稳定性,安全性等方面提出了较高的要求。其中,文件传输作为网络即时通讯工具所支持的一种功能,在IM基础服务中具有举足轻重的低位,如何传输的更快更高效,是一个需要长期研究的问题。
目前,实现文件传输是采用基于UDP(User Datagram Protocol,用户数据报协议)滑动窗口机制的方法:发送方将整个待传输的文件,划分成多个文件块,其中,每个文件块采用文件标识SEQ(Sequence,序列)进行唯一标记,且SEQ按递增分配;然后,将多个连续文件块标识SEQ信息记录到滑动窗口内,并依次发送SEQ信息对应的文件块,当收到接收方返回的一个文件块的确认信息则认为该文件块已成功发送;当滑动窗口内已成功发送的最小文件块的SEQ信息变更时,滑动窗口向后移动(相当于文件传输进度更新),同时读取新的未发送文件块信息并发送,这样该滑动窗口不断向后滑动,直到所有文件块发送完毕,则该文件传输成功。
由于网络的不稳定性、承载传输的资源的有限性等原因,在网络中进行文件传输时,会存在不同程度丢包的情况,因此,现有技术提出一种丢包恢复机制,其中,发送方在滑动窗口内每个文件块发送出去后,根据发送该文件块的时刻以及接收到该文件块的确认信息的时刻,计算出RTT(Round Trip Time,环路时间)(即文件块从发出到收到确认信息的时间间隔),再根据多个RTT计算RTO(Retransmission Time-Out,超时重传时间),如果滑动窗口内某个文件块发送出去后,等待接收确认信息的时间超过RTO,则认为该文件块发送失败,需要重发,其中,对文件块进行重发首先缩小滑动窗口的宽度,清空滑动窗口,然后读取最小的几个未成功发送的文件块放进滑动窗口并进行发送,这样等这些重发的文件块收到确认信息并移动窗口时,之前旧的滑动窗口发送的其他文件块也应该收到确认信息了,从而避免重复发送。
发明人在实现本发明的过程中,发现上述现有技术至少存在以下缺点和不足:一方面,文件块的等待时间只要超过RTO,则发送方认为该文件块发送失败,需要进行文件块的重发,而文件块的等待时间超过RTO,可能由于接收方反馈的确认信息包丢失,即接收方实际已经收到了某个文件块,但由于反馈的确认信息丢失,而造成发送方误认为该文件块发送失败,导致该文件块的重发送,影响了传输进度,浪费了网络传输资源;
另一方面,在进行文件块的重发时,需要首先缩小滑动窗口的宽度,清空滑动窗口,再进行未成功发送的文件块的发送,由于需要清空滑动窗口,导致重发效率低;由于需要缩小滑动窗口的宽度,特别是针对网络不稳定的情况下,重发文件块的机率变大,于是出现需要对滑动窗口宽度的调整的概率变大,导致窗口宽度不断的剧烈波动,进而造成不必要的超时。
发明内容
为了对文件传输进行优化,有效提高文件块的重发效率,本发明实施例提供了一种数据传输的方法和装置。所述技术方案如下:
一方面,本发明实施例提供了一种数据传输的方法,所述方法包括:
发送方定时扫描滑动窗口内的各文件块信息,获取当前扫描时刻各文件块信息的等待确认信息时间值;
获取所述滑动窗口的超时重传时间值;
当所述滑动窗口存在等待确认信息时间值大于超时预警值的文件块信息,则调整所述滑动窗口的宽度,移除已发送文件块信息;其中,所述超时预警值小于超时重传时间值;
利用所述调整宽度后的滑动窗口读取待发送文件块对应的文件块信息并立即发送;
利用调整宽度后的滑动窗口重发文件块,所述重发的文件块为等待确认信息时间值大于超时预警值的文件块信息对应的文件块;
当所述调整宽度后的滑动窗口内位于第一位置的文件块信息对应的文件块成功发送后,则从所述调整宽度后的滑动窗口前部移除连续已发送文件块信息,向后移动所述调整宽度后的滑动窗口。
其中,所述获取所述滑动窗口的超时重传时间值,包括:
根据滑动窗口发送文件块信息对应的文件块的时刻、接收所述文件块的确认信息的时刻,计算出所述文件块的环路时间值;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110100493.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:具有双绝缘线圈组件的电机
- 下一篇:产业用擦拭用布