一种减少下载结束拖尾的方法和系统技术方案

技术编号:11520300 阅读:103 留言:0更新日期:2015-05-29 11:47
本发明专利技术公开了一种减少下载结束拖尾的方法和系统,该方法包括如下步骤:当线程完成当前一次传输后;对线程各次传输的数据量采样得到单一线程平均每次传输的数据量;累加所有线程已传输的数据量得到已传输的数据总量;需要传输的数据总量与已传输的数据总量取差得到剩余需要传输的数据量;根据剩余需要传输的数据量、单一线程平均每次传输的数据量、当前线程数确定是否结束本线程。本发明专利技术使得下载数据量更加准确,不会超过指定数据量太多,符合用户的期望。对于下载指定数据量来说,缩短了下载时间,减少了拖尾时间。

【技术实现步骤摘要】
一种减少下载结束拖尾的方法和系统
本专利技术涉及一种减少下载结束拖尾的方法和系统,属于通信

技术介绍
在对无线网络优化时,通常需要通过移动终端多线程FTP下载文件测试无线网络。测出下载的峰速和平均速率,如平均速率果偏低,再进行网络优化。现在的一些移动终端通过多线程FTP下载时,一般指定下载的数据量大小(如1024K字节)和线程数量。下载过程中,每个线程打开一个FTP连接,进行下载,将各个线程下载的数据量进行累计,一旦达到指定数量(如1024K),则各个线程都关闭连接,然后退出。但是,使用多线程进行FTP下载时,下载结束瞬间各个线程关闭连接和退出的速度并不相同。例如,10个线程下载,退出时,从10个线程到9个线程,再到8个线程,最后,所有线程逐步退出,整个过程,线程逐步减少。这种下载结束时,多个线程逐渐退出的过程称为下载拖尾。从线程的角度看,会有这种拖尾现象。从网络连接关闭的过程看,也是有这种拖尾现象。例如:从10个连接,至全部连接断开。历时几秒,连接陆续断开。这里下载达到指定的数据量到连接全部关闭、线程全部退出的时间称之为拖尾时间。现有的一些移动终端在多线程FTP下载过程中,每个线程都通过调用CFRunLoop(启动事件循环,监控任务的输入源,不停的调度工作以及处理输入事件)。如果没有事件发生,则休眠,一旦有事件,则处理相应事件;如果有数据包过来,则也会有相应事件触发,然后处理该数据包。目前,移动终端在下载完成后,线程退出的方法,主要有3种:方法一:方法二:第1个发现数据量已经达到的线程,通知其他线程,告诉其他线程数据量已经达到,其他线程收到通知后,调用[NSThreadexit]退出线程。方法三是:使用标志位方法,即最先发现数据量已经达到的线程,调用线程cancel方法,但这方法实际上只是设置一个标志位,需要在各种事件处理过程中判断这个标志位,根据这个标志位决定是否退出。对于方法一和方法三:从用户指定的数据量下载完,到全部线程都退出,一般会经历几秒钟,一般都会有拖尾现象。并且,常常会超出用户指定的目标下载数据量比较多,因为各个线程各自独立下载,部分线程不能及时发现已经下载完成,不能及时关闭连接。即使发现了下载数据量超过目标,但是已经收到的数据还得继续处理,即将这些收到的数据继续累加到下载数据总量中,如果不处理这些超过目标下载量的数据,则会影响一些测量指标的正确性,如下载数据总量等,因而不得不处理,由于处理需要时间,因此拖尾时间就更长了。对于方法二,主要有以下缺陷,其一,线程正在忙时,响应通知时间不确定,不能准确预料。其次,线程退出时,也许会在将一个数据包累计到T(总数据量)前一瞬间退出,导致数据包没有加进去,影响测量指标的准确性。总之,退出时机不可预料和准确控制,影响指标测量的准确性。同时,其也不能避免拖尾现象。网络优化中的FTP下载,并不要求保证文件下载的完全正确,而是通过下载产生流量,从而测试网络速度。由于拖尾现象存在,使得下载平均速率会相应降低,影响测量指标。
技术实现思路
本专利技术要解决的技术问题是:解决现有网络测试中下载拖尾导致网络测试不准确的问题。为实现上述的专利技术目的,本专利技术提供了一种减少下载结束拖尾的方法和系统。一方面,本专利技术提供一种减少下载结束拖尾的方法,包括如下步骤:当线程完成当前一次传输后;对线程各次传输的数据量采样得到单一线程平均每次传输的数据量;累加所有线程已传输的数据量得到已传输的数据总量;需要传输的数据总量与已传输的数据总量取差得到剩余需要传输的数据量;根据剩余需要传输的数据量、单一线程平均每次传输的数据量、当前线程数确定是否结束本线程。其中较优地,所述对线程各次传输的数据量采样得到平均每次传输的数据量的步骤具体包括:对线程各次传输的输数据量采样,对采样的线程各次传输的数据量取平均值得到单一线程平均每次传输的数据量。其中较优地,所述线程各次传输的数据量是线程接收到各次流有可读数据的事件后,从流读取到的数据量。其中较优地,所述根据剩余需要传输的数据量、单一线程平均每次传输的数据量、当前线程数确定是否结束本线程的步骤包括:如果当前线程数满足以下条件,则结束本线程:S/D×n×p>1其中,S表示单一线程平均每次传输的数据量,D表示剩余需要传输的数据量,n表示当前线程数、p表示线程传输概率。其中较优地,所述线程传输概率为1/3。其中较优地,所述表示线程传输概率是根据实际经验设定的。另一方面,本专利技术还提供一种减少下载结束拖尾的系统,包括:传输数据量采样单元、完成传输数据总量计算单元、剩余需要传输的数据量计算单元,线程管理单元;所述传输数据量采样单元,用于线程完成当前一次传输后,对线程各次传输的数据量采样得到单一线程平均每次传输的数据量;所述完成传输数据总量计算单元,用于累加所有线程已传输的数据量得到已传输的数据总量;所述剩余需要传输的数据量计算单元,用于需要传输的数据总量与已传输的数据总量取差得到剩余需要传输的数据量;所述线程管理单元,用于根据剩余需要传输的数据量、单一线程平均每次传输的数据量、当前线程数确定是否结束本线程。其中较优地,所述传输数据量采样单元还包括传输数据量计算单元:所述传输数据量计算单元,用于对线程各次传输的输数据量采样,对采样的线程各次传输的数据量取平均值得到单一线程平均每次传输的数据量。其中较优地,所述线程管理单元执行以下步骤:如果当前线程数满足以下条件,则结束本线程:S/D×n×p>1其中,S表示单一线程平均每次传输的数据量,D表示剩余需要传输的数据量,n表示当前线程数、p表示线程传输概率。其中较优地,所述线程传输概率为1/3。其中较优地,所述表示线程传输概率是根据实际经验设定的。其中较优地,所述线程各次传输的数据量是线程接收到各次流有可读数据的事件后,从流读取到的数据量。本专利技术提供的一种减少下载结束拖尾的方法和系统,在对无线网络优化下载测试时,使部分线程提早及时退出,具有以下优点:1:使得下载数据量更加准确,不会超过指定数据量太多,符合用户的期望。2:对于下载指定数据量来说,缩短了下载时间,减少了拖尾时间。附图说明图1是本专利技术减少下载结束拖尾的方法流程示意图;图2是本专利技术减少下载结束拖尾的系统结构示意图。具体实施方式下面结合附图和实施例,对本专利技术的具体实施方式作进一步详细描述。以下实施例用于说明本专利技术,但不用来限制本专利技术的范围。通过仔细研究现有技术,存在拖尾现象的主要原因如下:当下载数据量逐步接近指定数据量时,最终,有一个线程在将自己刚刚获取的数据量累加进总数据量T时,会首先发现任务已经完成。但是此时,其他线程还并不知道。也许还在休眠中,等待数据包的到来,也许还正在接受数据包。因而会造成拖尾现象。如图1所示,为避免上述问题出现,本专利技术提供一种减少下载结束拖尾的方法,包括如下步骤:当线程完成当前一次传输后;对线程各次传输的数据量采样得到单一线程平均每次传输的数据量;累加所有线程已传输的数据量得到已传输的数据总量;需要传输的数据总量与已传输的数据总量取差得到剩余需要传输的数据量;根据剩余需要传输的数据量、单一线程平均每次传输的数据量、当前线程数确定是否结束本线程。下面对本专利技术提供的减少下载结束拖尾的方法展开详细的说明。本文档来自技高网
...
一种减少下载结束拖尾的方法和系统

【技术保护点】
一种减少下载结束拖尾的方法,其特征在于,包括如下步骤:当线程完成当前一次传输后;对线程各次传输的数据量采样得到单一线程平均每次传输的数据量;累加所有线程已传输的数据量得到已传输的数据总量;需要传输的数据总量与已传输的数据总量取差得到剩余需要传输的数据量;根据剩余需要传输的数据量、单一线程平均每次传输的数据量、当前线程数确定是否结束本线程。

【技术特征摘要】
1.一种减少下载结束拖尾的方法,其特征在于,包括如下步骤:当线程完成当前一次传输后;对线程各次传输的数据量采样得到单一线程平均每次传输的数据量;累加所有线程已传输的数据量得到已传输的数据总量;需要传输的数据总量与已传输的数据总量取差得到剩余需要传输的数据量;根据剩余需要传输的数据量、单一线程平均每次传输的数据量、当前线程数确定是否结束本线程;所述根据剩余需要传输的数据量、单一线程平均每次传输的数据量、当前线程数确定是否结束本线程的步骤包括:如果当前线程数满足以下条件,则结束本线程:S/D×n×p>1其中,S表示单一线程平均每次传输的数据量,D表示剩余需要传输的数据量,n表示当前线程数、p表示线程传输概率。2.如权利要求1所述的方法,其特征在于,所述对线程各次传输的数据量采样得到平均每次传输的数据量的步骤具体包括:对线程各次传输的输数据量采样,对采样的线程各次传输的数据量取平均值得到单一线程平均每次传输的数据量。3.如权利要求1所述的方法,其特征在于,所述线程各次传输的数据量是线程接收到各次流有可读数据的事件后,从流读取到的数据量。4.如权利要求1所述的方法,其特征在于,所述线程传输概率为1/3。5.如权利要求1所述的方法,其特征在于,所述线程传输概率是根据实际经验设定的。6.一种减少下载结束拖尾的系统,其特征在于,包括:传输数据量采样单元、完成...

【专利技术属性】
技术研发人员:余再跃
申请(专利权)人:上海大唐移动通信设备有限公司大唐移动通信设备有限公司
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1