用于在经过高无线连通性区域时调整tcprto的方法和装置制造方法

文档序号:7991844阅读:237来源:国知局
用于在经过高无线连通性区域时调整tcp rto的方法和装置制造方法
【专利摘要】本文中描述了用于管理移动设备的传输的系统和方法。本文描述的移动设备的示例包括环境监视器模块、连通性跟踪器模块以及重传超时(RTO)管理器模块,环境监视器模块被配置成执行对与移动设备相关联的局部环境的一个或多个观察,连通性跟踪器模块通信地耦合到环境监视器模块并被配置成确定该一个或多个观察是否指示移动设备的无线连通性已被恢复,RTO管理器模块通信地耦合到连通性跟踪器模块并被配置成在移动设备的无线连通性已被确定为恢复了的情况下复位移动设备的至少一个RTO值。
【专利说明】用于在经过高无线连通性区域时调整TCP RTO的方法和装
[0001]背景
[0002]无线通信设备在当今社会难以置信地普及。例如,人们使用诸如蜂窝电话、智能电话、个人数字助理、膝上型计算机、寻呼机、平板计算机等移动设备从不计其数的位置无线地发送和接收数据。此外,无线通信技术的进步已大大增加了当今无线通信设备的多样性,从而使得用户能够从单个便携式设备执行广泛的在常规情况下需要多个设备或较大的非便携式装备才能进行的任务。
[0003]传输控制协议(TCP)是被广泛部署和利用以经由因特网进行通信的协议。如TCP所规定的,通信设备被配置成提供对接收到的数据段的肯定确认。如果没有以及时的方式确认(各)段,则发送者重传未被确认的(各)段。该重传由被称为重传超时(RTO)的时间间隔来管控。
[0004]常规地,RTO对相继的重传利用指数式“退避”机制,以使得RTO对于每一次这样的重传呈指数地增大。然而,该RTO退避机制可能对移动设备的连通性产生不利影响。例如,移动设备可能遇到突发式连通性模式,例如当在高连通性区域与低连通性区域之间移动时,等等。在这种场景中,指数式RTO退避可能导致在进入高连通性区域之际重建通信的显著延迟。此外,如果RTO已退避到足够高的值,则在高连通性区域与低连通性区域之间转变的移动设备可能根本无法在给定的高通信区域内重建通信。
[0005]概述
[0006]移动设备的示例包括环境监视器模块,该环境监视器模块被配置成执行对与移动设备相关联的局部环境的一个或多个观察;连通性跟踪器模块,该连通性跟踪器模块通信地耦合到环境监视器模块并被配置成确定该一个或多个观察是否指示移动设备的无线连通性已被恢复;以及重传超时(RTO)管理器模块,该RTO管理器模块通信地耦合到连通性跟踪器模块并被配置成在移动设备的无线连通性已被确定为恢复了的情况下重置移动设备的至少一个RTO值。
[0007]该移动设备的实现可包括以下特征中的一者或多者。RTO管理器模块还被配置成通过将该至少一个RTO值设为接近于零来重置该至少一个RTO值。RTO管理器模块还被配置成标识与移动设备相关联的一个或多个活跃的传输控制协议(TCP)会话并重置与该一个或多个活跃的TCP会话相对应的RTO值。RTO管理器模块还被配置成对与该一个或多个活跃的TCP会话相对应的RTO值应用随机偏移。RTO管理器模块还被配置成标识与移动设备相关联的一个或多个活跃的应用并重置与关联于该一个或多个活跃的应用的TCP会话相对应的RTO值。环境监视器模块包括被配置成监视与移动设备的用户交互的用户活动跟踪器模块。RTO管理器模块还被配置成标识与该用户交互相关联的应用,并且在与该用户交互相关联的应用具有至少一个打开的TCP会话的情况下重置移动设备的该至少一个RTO值。环境监视器模块包括被配置成观察与移动设备相关联的局部链路层连通性的无线电链路层(RLL)观察模块。RTO管理器模块还被配置成在RLL观察模块指示与移动设备相关联的链路层连通性被恢复的情况下重置该移动设备的该至少一个RTO值。RTO管理器模块还被配置成在与移动设备相关联的至少一个TCP会话成功地完成传输或接收的情况下重置该移动设备的该至少一个RTO值。RTO管理器模块还被配置成在移动设备的无线连通性已被确定为恢复了的情况下重置与该移动设备的该至少一个RTO值相关联的重传定时器。
[0008]调整移动设备的TCP RTO值的方法的示例包括执行对与该移动设备相关联的局部环境的一个或多个观察;确定该一个或多个观察是否指示该移动设备的无线连通性已被恢复;以及在移动设备的无线连通性已被确定为恢复了的情况下重置该移动设备的至少一个RTO 值。
[0009]此方法的实现可包括以下特征中的一项或多项。将该至少一个RTO值设为接近于零。标识与移动设备相关联的一个或多个活跃的TCP会话,其中重置包括重置与该一个或多个活跃的TCP会话相对应的RTO值。对与该一个或多个活跃的TCP会话相对应的RTO值应用随机偏移。标识与移动设备相关联的一个或多个活跃的应用,其中重置包括重置与关联于该一个或多个活跃的应用的TCP会话相对应的RTO值。监视与移动设备的用户交互。标识与该用户交互相关联的应用,其中重置包括在与该用户交互相关联的应用具有至少一个打开的TCP会话的情况下重置移动设备的该至少一个RTO值。观察与移动设备相关联的局部链路层连通性。在与移动设备相关联的局部链路层连通性被指示为已被恢复的情况下重置移动设备的该至少一个RTO值。在与移动设备相关联的至少一个TCP会话成功地完成传输或接收的情况下重置该移动设备的该至少一个RTO值。在移动设备的无线连通性已被确定为恢复了的情况下重置与该移动设备的该至少一个RTO值相关联的重传定时器。
[0010]移动设备的另一示例包括用于执行对与该移动设备相关联的局部环境的一个或多个观察的装置;用于确定该一个或多个观察是否指示该移动设备的无线连通性已被恢复的装置;以及用于在该移动设备的无线连通性已被确定为恢复了的情况下重置该移动设备的至少一个RTO值的装置。
[0011]该移动设备的实现可包括以下特征中的一者或多者。用于将该至少一个RTO值设为接近于零的装置。用于标识与移动设备相关联的一个或多个活跃的TCP会话的装置,其中用于重置的装置包括用于至少部分地通过对与该一个或多个活跃的TCP会话相对应的RTO值应用随机偏移来重置与该一个或多个活跃的TCP会话相对应的RTO值的装置。用于监视与移动设备的用户交互的装置。用于标识与该用户交互相关联的应用的装置,其中用于重置的装置包括用于在与该用户交互相关联的应用具有至少一个打开的TCP会话的情况下重置移动设备的该至少一个RTO值的装置。用于观察与移动设备相关联的局部链路层连通性的装置。用于在与移动设备相关联的局部链路层连通性被指示为已被恢复的情况下重置移动设备的该至少一个RTO值的装置。用于在与移动设备相关联的至少一个TCP会话成功地完成传输或接收的情况下重置移动设备的该至少一个RTO值的装置。用于在移动设备的无线连通性已被确定为恢复了的情况下重置与该移动设备的该至少一个RTO值相关联的重传定时器的装置。
[0012]计算机程序产品的示例驻留在处理器可读介质上并且包括处理器可读指令,这些处理器可读指令被配置成使得处理器执行对与移动设备相关联的局部环境的一个或多个观察;确定该一个或多个观察是否指示移动设备的无线连通性已被恢复;以及在移动设备的无线连通性已被确定为恢复了的情况下重置该移动设备的至少一个RTO值。
[0013]此计算机程序产品的实现可包括以下特征中的一项或多项。被配置成使处理器将该至少一个RTO值设为接近于零的处理器可读指令。被配置成使处理器标识与移动设备相关联的一个或多个活跃的TCP会话的处理器可读指令,以及被配置成使处理器至少部分地通过对与该一个或多个活跃的TCP会话相对应的RTO值应用随机偏移来重置与该一个或多个活跃的TCP会话相对应的RTO值的处理器可读指令。被配置成使处理器监视与移动设备的用户交互的处理器可读指令。被配置成使处理器标识与该用户交互相关联的应用的处理器可读指令,以及被配置成使处理器在与该用户交互相关联的应用具有至少一个打开的TCP会话的情况下重置该移动设备的该至少一个RTO值的处理器可读指令。被配置成使处理器观察与移动设备相关联的局部链路层连通性的处理器可读指令。被配置成使处理器在与移动设备相关联的局部链路层连通性被指示为已被恢复的情况下重置移动设备的该至少一个RTO值的处理器可读指令。被配置成使处理器在与移动设备相关联的至少一个TCP会话成功地完成传输或接收的情况下重置移动设备的该至少一个RTO值的处理器可读指令。被配置成使处理器在移动设备的无线连通性已被确定为恢复了的情况下重置与移动设备的该至少一个RTO值相关联的重传定时器的处理器可读指令。
[0014]附图简述
[0015]图1是无线电信系统的示意图。
[0016]图2是图1中所示的移动站的组件的框图。
[0017]图3是用于管理移动设备的重传调度的系统的框图。
[0018]图4是用于基于用户交互数据来控制移动设备的RTO长度的系统的框图。
[0019]图5是用于基于链路层连通性数据来控制移动设备的RTO长度的系统的框图。
[0020]图6-7是基于环境观察来管理移动设备的RTO参数的各个过程的流程框图。
[0021]详细描述
[0022]本文描述了用于管理移动设备的重传调度(例如,如由TCP RTO参数所定义的重传调度)的技术。RTO是TCP中的使与失败传输(例如由于低连通性或无连通性以及其它因素)相关联的信息的重传延迟的网络拥塞避免参数。RTO利用指数式退避以使得重传之间的延迟对每一次相继的失败传输有所增大。然而,该RTO退避在各种情形中导致用户体验损失。例如,在移动设备在高无线连通性区域与低无线连通性区域之间快速移动的场景中,RTO退避可能导致与该移动设备相关联的TCP会话在该移动设备进入高连通性区域时发生延迟。在某些情形中,如果花费在高连通性区域中的时间小于现有RT0,则TCP会话可能根本无法继续。由此,本文的技术利用对与移动设备相关联的局部环境的观察,以便基于这些观察在检测到从低连通性区域转变至高连通性区域时重置RTO(例如,将RTO设为零或较小的非零值)以及根据RTO来操作的一个或多个定时器机制。
[0023]本文描述的项目和/或技术可提供以下能力中的一者或多者、以及未提到的其他能力。能够使得移动设备更适应于周围无线连通性的改变。能够改善设备响应性和用户体验。能够以提高的效率在移动设备处进行网络通信。常规TCP RTO参数可被修改来为移动用例提供适应性。尽管已描述了至少一个项目/技术-效果对,但是也借助除所提及的项目/技术以外的其他项目/技术来达成所提及的效果也是可能的,并且所提及的项目/技术可以并非必须产生所提及的效果。
[0024]参照图1,无线通信系统10包括各种设备,诸如,移动接入终端12 (AT)、设置在蜂窝小区16中的基收发机站(BTS)14、以及基站控制器(BSC)18。系统10可支持多个载波(不同频率的波形信号)上的操作。多载波发射机能同时在这多个载波上传送经调制信号。每个经调制信号可以是码分多址(CDMA)信号、时分多址(TDMA)信号、正交频分多址(OFDMA)信号、单载波频分多址(SC-FDMA)信号,等等。每个经调制信号可在不同的载波上发送并且可携带导频、开销信息、数据等。
[0025]BTS14可经由天线与AT12无线通信。每个BTS14也可被称为基站、接入点、接入节点(AN)、B节点、演进型B节点(eNB)等。BTS14被配置成在BSC18的控制下经由多个载波与AT12通信。每个BTS14可为相应地理区域(这里是相应蜂窝小区16)提供通信覆盖。BTS14的每个蜂窝小区16可根据基站天线被划分成多个扇区。
[0026]系统10可仅包括宏基站14,或者其可具有不同类型的基站14,例如宏基站、微微基站、和/或毫微微基站等。宏基站可覆盖相对较大的地理区域(例如,半径为数千米)并且可允许由具有服务订阅的终端不受限制地接入。微微基站可覆盖相对较小的地理区域(例如,微微蜂窝小区)并且可允许由具有服务订阅的终端不受限制地接入。毫微微或家用基站可覆盖相对较小的地理区域(例如,毫微微蜂窝小区)并且可允许由与该毫微微蜂窝小区具有关联性的终端(例如,家中的用户的终端)受限制地接入。
[0027]AT12可散布遍及蜂窝小区16中各处。AT12可被称为终端、移动站、移动设备、用户装备(UE)、订户单元等。图1中所示的AT12包括移动电话、个人数字助理(PDA)和车辆导航和/或通信系统,但也可包括无线路由器、其他手持式设备、上网本、笔记本计算机等。
[0028]还参考图2,AT12中的一示例AT包括计算机系统,该计算机系统包括处理器20、含软件24的存储器22、输入/输出(I/O)设备26 (例如,显不器、扬声器、小键盘、触摸屏或触摸板等)以及一个或多个天线28。天线28为AT12提供通信功能性并且方便与BTS14进行双向通信。天线28可基于来自发射机和/或接收机模块的指令来操作,这些指令可经由处理器20 (例如基于存储在存储器22上的软件24)和/或由AT12的其它组件用硬件、软件、或硬件和/或软件的组合来实现。
[0029]处理器20是智能硬件设备,例如中央处理单元(CPU)(诸如由Intel?公司或AMD?制造的那些中央处理单元)、微控制器、专用集成电路(ASIC)等。存储器22包括非瞬态存储介质,诸如随机存取存储器(RAM)和只读存储器(ROM)。存储器22存储软件24,软件24是计算机可读、计算机可执行的软件代码,该软件代码包含配置成在被执行时使处理器20执行本文所描述的各种功能的指令。替换地,软件24可能不可由处理器20直接执行,而是被配置成例如在被编译并执行时使计算机执行这些功能。
[0030]移动设备12可操作用于经由一个或多个网络或互联网(例如因特网)来与其它设备通信。移动设备12使用诸如TCP和网际协议(IP)等各种协议来进行往和/或来于其它设备的数据的通信。对于TCP,所述协议规定端点将提供对接收到的数据段的肯定确认。如果没有以及时的方式确认段,则这些段的发送者通过重传所述段来恢复。
[0031]TCP中对数据段的重传由被称为RTO的动态计算出的超时来管控。常规地,RTO是部分地使用针对相继重传的指数式退避机制来计算的。在TCP实现中被广泛使用的这一退避机制在网络变得过载的情况下促进网络稳定性。然而,在无线链路上操作的TCP端点(例如,通过无线网络通信的移动设备12)可能经历因除了网络拥塞之外的其他原因造成的分组丢失。例如,地铁中的移动设备在列车正在行进中时可能只在靠站时的相对较短的突发时段(例如大约60秒)中具有连通性,这些突发时段被显著的零连通性时段(例如数分钟)隔开。类似的突发式连通性模式可能在用户于建筑物内四处移动而进入和退出无线“死区”时等出现。
[0032]当连通性丢失数分钟时,TCP内提供的指数式退避机制使得RTO快速增大。在一些常规TCP实现中,在所尝试的重传的最大时段(例如127秒)后,RTO被允许达到或超过60秒。在实践中,在某些情况下甚至可能更快地达到长RT0。此外,虽然某些常规TCP实现将对RTO的限制定义在60秒的数量级上,但其它实现准许RTO变得显著大得多。
[0033]由于该RTO退避,在短时段内穿越高连通性区域的TCP端点(例如移动设备12)可能无法利用该连通性,因为该端点被配置成等待与RTO相关联的相当长的时段后才重传、接收确认并标识链路为再次有效。该相对较长的等待对于交互式应用产生减弱且非最优的用户体验。例如,当通过地铁行进时,当在设备显示器上指示了低信号强度时,或在类似情形中时等,用户一般预期连通性是糟糕的。然而,当在车站时,在观察到设备显示器上所指示的高信号强度之际,或在其它这样的场景时,由于RTO而导致缺乏TCP活动和应用响应性对于用户而言可能是困惑和/或很不方便的。
[0034]而且,在快速行进穿越高连通性区域和低连通性区域时RTO对应用响应性的影响是随机的且受制于随机机率。例如,RTO可使得重传定时器在TCP端点刚到达高连通性区域后就期满,或者RTO可改为在高连通性区域中的整个停留期间持续。由于给定设备处的每一个TCP会话维护各不相同的RT0,因此使用多个TCP连接的应用(例如,基于Ajax的web站点等)对用户而言可能看上去是部分运作且部分冻结的。这样的确定性缺乏在这种场景下使得用户体验进一步降级。
[0035]本文描述了以下技术:这些技术利用对与移动设备相关联的局部环境的观察以便在检测到从低连通性区域转变至高连通性区域之际重置RTO(例如,将RTO设为零或较小的非零值,诸如接近于I秒或任何其它合适的值)。另外,可以与该RTO相结合地重置与该RTO相关联的一个或多个重传定时器。由此,在无线移动环境中操作的TCP实现就能够利用情境知晓来调整RTO值以获得最优的用户体验。
[0036]图3示出了实现用于利用情境知晓来管理一个或多个RTO参数的系统的示例移动设备12。如上所述,天线20被实现为与一个或多个收发机30交互以便为移动设备12提供通信功能性。收发机30可控制传输和接收操作两者,或者可利用分开的专用发射机和接收机模块。此外,收发机30可以用硬件和/或软件来实现(例如,经由处理器20执行存储在存储器22上的指令)。
[0037]为了规制移动设备12与关联于移动设备12的网络中的其它实体之间的通信,收发机30与连通性跟踪器模块34和RTO管理器模块36交互。连通性跟踪器模块34基于由各种源和/或连通性跟踪器模块34自身提供的信息来监视移动设备12及其周围局部区域的连通性。例如,收发机30可以向连通性跟踪器模块34报告位置数据、观察到的信号强度数据、信道质量数据等。此外,收发机30可报告是否已经接收到响应于收发机30所发送的传输的确认。
[0038]RTO管理器模块36维护与移动设备12相关联的各个TCP会话或连接的RTO参数。TCP连接可以与移动设备12处的各个应用相关联;另外地或另选地,单个应用可利用多个TCP连接。RTO管理器模块36将这些TCP连接的RTO参数初始化为初始值,例如零或较小的非零值。当收发机30未能接收到对先前发送的数据的确认时,对该数据的重传被调度在由与该数据相关联的TCP连接的RTO参数指示的时间。当传送该数据相继失败时,RTO管理器模块36增大(例如,指数式地增大)对应的RTO参数。
[0039]为了缓解响应于RTO退避的移动设备12的无响应性,环境监视器模块32观察与移动设备12及其周围区域相关联的局部环境。例如,环境监视器模块32可跟踪与移动设备12的用户交互、移动设备12周围的区域中的链路层连通性,等等。环境监视器模块32向连通性跟踪器模块34提供与环境观察相关的数据,连通性跟踪器模块34将该数据用作目前连通性的指示符。基于从环境监视器模块32接收到的信息,如果连通性跟踪器模块34推断出移动设备处于高无线连通性区域中,则连通性跟踪器模块可指示RTO管理器模块36经历与该移动设备所利用的各个打开的TCP连接相关联的RTO重置规程。该规程可包括例如将对应的RTO参数设为预定值(例如,零或较小的非零值等)以及重置与这些RTO参数相关联的重传定时器。在完成与给定TCP连接相关联的RTO重置规程之际,RTO管理器模块36还可指示收发机重试在该TCP连接上进行通信,而不等待对应的重传定时器期满。在重试在该TCP连接上进行通信之际,如果收发机30仍然无法成功地传送以及接收确认,则RTO管理器模块36可将该连接的RTO参数从以下值增大:在重置之际赋予该RTO的初始值或者就在重置前与该RTO相关联的值。
[0040]通过如上所述地操作,RTO管理器模块36利用如由环境监视器模块32获取的、对与移动设备12相关联的局部环境的观察来调整给定RTO参数并将所述参数与各个动作相关联。环境监视器模块、连通性跟踪器模块和/或RTO管理器模块36可经由处理器20执行存储在存储器22上的指令来用软件实现、用硬件实现等等。例如,模块32-36中的一个或多个可以在移动设备12的操作系统内实现。其它实现也是可能的。
[0041]由环境监视器模块32获取的局部环境观察可包括与相关联的移动设备12的用户交互。一般而言,移动设备12的用户知道移动设备12附近的物理环境并且能够预测连通性。由此,对应于一个或多个TCP连接的RTO值可以在用户经由一个或多个I/O设备26(例如,通过按压小键盘或键盘上的按钮、操纵诸如触摸屏或触摸板等触敏表面等等)发起与移动设备12的交互时被重置。用户活动监视器模块40等可以实现在环境监视器模块32内以跟踪这样的用户交互,这些用户交互进而被提供给连通性跟踪器模块34,如上所述。
[0042]在穿越高连通性区域和低连通性区域时,移动设备12的用户一般自然倾向于摆弄移动设备12上运行的应用以便在连通性改善时重新激活。例如,在地铁上操作移动web浏览器的用户可能在进入地铁站之际由于该车站内的增大的无线连通性而按压与该浏览器相关联的刷新按钮。常规上,移动web浏览器将被要求等待由RTO控制的重传定时器流逝之后才被允许经由TCP连接来请求数据,而不管用户输入如何。与之形成对比的是,连通性跟踪器模块34由于用户输入而确定RTO退避的理由(例如连通性丢失)不再适用,并重置RTO0除了重置RTO之外,收发机30可以在连通性被标识为恢复时被启用,而不用等待当前RTO时段期满(例如,通过除了 RTO参数之外还重置相关联的重传定时器),从而改善用户体验。
[0043]RTO管理器模块36可调整所有打开的应用和/或打开的TCP会话的RTO参数,或者替换地可处理选定的一部分应用和/或会话。例如,可标识移动设备12上活跃的一个或多个应用以使得只调整与活跃的会话相关联的RTO值。此外,如果任何会话成功地恢复,则RTO管理器模块36可以类似地为一个或多个其它会话调整RT0。为了防止所有会话同时尝试重传,可基于随机分布和/或其它准则来将有所不同的RTO值赋予各个相应的会话。可标识活跃的或前台的应用(例如,由操作系统和/或移动设备12的其它组件),以使得只在该活跃的或前台的应用具有打开的TCP连接的情况下用户交互才被用作重置与移动设备12相关联的RTO值的基础。在这种情形中,无需知道活跃的应用的身份;相反,RTO管理器模块36可以基于是否有任何活跃的应用具有打开的TCP连接来进行操作。
[0044]另外,与移动设备12相关联的无线电链路层(RLL)知晓其局部无线环境并且能够检测数据连通性何时可用。由此,RLL观察模块50可以在环境监视器模块32内实现和/或与环境监视器模块32分开实现,以便在数据连通性恢复时减小RTO值,如图5所示。在一个实施例中,只要数据连通性恢复,RTO管理器模块36 (例如,如经由操作系统或其它装置实现)就将所有当前TCP会话的RTO设为较低值或最小值(例如接近于零)。如上所述,随机因素可被引入不同会话的RTO值中以使得所有会话不会同时尝试重传。如上文进一步描述的,RTO管理器模块36能够在某些情形中只为活跃的应用调整RT0。如果RLL观察模块50检测到有任何会话已经成功地恢复,则也可类似地调整所有其它会话的RT0。
[0045]RLL观察模块50可以在调制解调器或与移动设备12相关联的其它机构处实现。在这样的实现中,RLL观察模块50观察调制解调器处的链路层连通性并在观察到无线电信号的情况下指示RTO管理器模块减小RTO。RLL观察模块50的其它实现也是可能的。
[0046]参考图6,且进一步参考图1-5,基于环境观察来管理移动设备的RTO参数的过程60包括所示各阶段。然而,过程60仅是示例而非限定。例如,可通过添加、移除、重新安排、组合、和/或并发执行各阶段来改动过程60。对所示出和描述的过程60的其他改动也是可能的。
[0047]在阶段62,执行对与移动设备12相关联的局部环境的一个或多个观察。这些观察可由环境监视器模块32等来执行,该模块尤其可经由处理器20执行存储在存储器22上的指令来实现,并可以有其他实现。
[0048]在阶段64,基于在阶段62执行的观察来确定移动设备12的无线连通性是否已被恢复。如果已经确定无线连通性已被恢复,则在阶段66重置移动设备12的至少一个RTO值。阶段64和66处的操作可由连通性跟踪器模块34、RT0管理器模块36等来执行。所述模块34-36可经由处理器20执行存储在存储器22上的指令和/或通过任何其它合适的手段来实现。
[0049]参考图7,且进一步参考图1-5,基于环境观察来管理移动设备的RTO参数的另一过程70包括所示各阶段。然而,过程70仅是示例而非限定。例如,可通过添加、移除、重新安排、组合、和/或并发执行各阶段来改动过程70。对所示出和描述的过程70的其他改动也是可能的。
[0050]在阶段72,初始化对应于移动设备12的RTO值,并且在阶段74,确定与移动设备相关联的局部环境内是否存在初始无线连通性。如果不存在连通性,则根据现有RTO值来退避与RTO值相关联的任何所请求的通信,并且增大RTO值(例如,根据如本领域内公知的指数式RTO退避规程),如阶段76所示。
[0051]在如阶段76所示地退避RTO后,进行对移动设备12的局部环境的一个或多个观察,如阶段78和80所示。具体而言,在阶段78,例如使用用户活动跟踪器模块40来监视与移动设备12的用户交互(例如经由I/O设备26)。在阶段80,例如使用RLL观察模块50来跟踪移动设备12的通信射程内的无线电链路活动。用户活动跟踪器模块40和RLL观察模块能够以各种方式实现,诸如经由存储在存储器22上且由处理器20执行的软件24来实现7等等。
[0052]基于阶段78和/或80处的观察,在阶段82,确定所述观察是否指示连通性已被恢复。如果指示连通性已被恢复,或者如果在阶段74发现存在连通性,则在阶段84例如经由用软件和/或硬件实现的RTO管理器模块36来重置所议RTO值。否则,过程70返回到阶段76,其中进一步增大RTO并且再次执行观察。
[0053]阶段78和80所示的监视或观察操作可以连续进行(例如经由操作系统的后台进程等),或者替换地,所述操作可以按各自的时间间隔进行(例如,根据调度、响应于各种触发事件等)。另外,当在阶段82和/或阶段74处标识出连通性之际,一旦在阶段84重置RTO值,就可指示与该RTO值相关联的TCP会话忽略现有RTO值并重试传输。在另一示例中,可以用经重置的RTO来替换现有RT0,以使得在该RTO重置值为零或接近于零的情况下基本上立即重试传输。
[0054]图1、2、3、4、5、6和/或7中解说的组件、步骤、特征和/或功能中的一者或多者可以被重新安排和/或组合成单个组件、步骤、特征或功能,或可以实施在若干组件、步骤、或功能中。也可添加额外的元件、组件、步骤、和/或功能而不会脱离本发明。图1、2、3、4和/或5中解说的装置、设备、和/或组件可以被配置成执行图6和/或7中描述的方法、特征、或步骤中的一个或多个。本文中描述的新颖算法还可以高效地实现在软件中和/或嵌入在硬件中。
[0055]另外,注意到至少一些实现是作为被描绘为流图、流程图、结构图、或框图的过程来描述的。尽管流程图可能会把诸操作描述为顺序过程,但是这些操作中有许多能够并行或并发地执行。另外,这些操作的次序可以被重新安排。过程在其操作完成时终止。过程可对应于方法、函数、规程、子例程、子程序等。当过程对应于函数时,它的终止对应于该函数返回调用方函数或主函数。
[0056]此外,各实施例可由硬件、软件、固件、中间件、微代码、或其任何组合来实现。当在软件、固件、中间件或微码中实现时,执行必要任务的程序代码或代码段可被存储在诸如存储介质之类的机器可读介质或其它存储中。处理器可以执行这些必要的任务。代码段可表示规程、函数、子程序、程序、例程、子例程、模块、软件包、类,或是指令、数据结构、或程序语句的任何组合。通过传递和/或接收信息、数据、自变量、参数、或存储器内容,一代码段可被耦合到另一代码段或硬件电路。信息、自变量、参数、数据等可以经由包括存储器共享、消息传递、令牌传递、网络传输等的任何合适的手段被传递、转发、或传输。
[0057]术语“机器可读介质”、“计算机可读介质”和/或“处理器可读介质”可包括,但不限于,便携或固定的存储设备、光学存储设备、以及能够存储、包含或携带指令和/或数据的各种其他非瞬态介质。因此,本文中描述的各种方法可部分或全部地由可存储在“机器可读介质”、“计算机可读介质”和/或“处理器可读介质”中并由一个或多个处理器、机器和/或设备执行的指令和/或数据来实现。
[0058]结合本文中公开的示例描述的方法或算法可直接在硬件中、在能由处理器执行的软件模块中、或在这两者的组合中以处理单元、编程指令、或其他指示的形式实施,并且可包含在单个设备中或跨多个设备分布。软件模块可驻留在RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、可移动盘、CD-ROM、或本领域中所知的任何其他形式的存储介质中。存储介质可耦合到处理器以使得该处理器能从/向该存储介质读写信息。替换地,存储介质可以被整合到处理器。
[0059]本领域技术人员将可进一步领会,结合本文中公开的实施例描述的各种解说性逻辑块、模块、电路、和算法步骤可被实现为电子硬件、计算机软件、或两者的组合。为清楚地解说硬件与软件的这一可互换性,各种解说性组件、框、模块、电路、和步骤在上面是以其功能性的形式作一般化描述的。此类功能性是被实现为硬件还是软件取决于具体应用和施加于整体系统的设计约束。
[0060]本文中所描述的本发明的各种特征可实现于不同系统中而不脱离本发明。应注意,以上实施例仅是示例,且不应被解释成限定本发明。这些实施例的描述旨在解说,而并非旨在限定权利要求的范围。由此,本发明的教导可以现成地应用于其他类型的装置,并且许多替换、修改、和变形对于本领域技术人员将是显而易见的。
【权利要求】
1.一种移动设备,包括: 环境监视器模块,配置成执行对与所述移动设备相关联的局部环境的一个或多个观察; 连通性跟踪器模块,所述连通性跟踪器模块通信地耦合到所述环境监视器模块并被配置成确定所述一个或多个观察是否指示所述移动设备的无线连通性已被恢复;以及 重传超时(RTO)管理器模块,所述RTO管理器模块通信地耦合到所述连通性跟踪器模块并被配置成在所述移动设备的无线连通性已被确定为恢复了的情况下重置所述移动设备的至少一个RTO值。
2.如权利要求1所述的移动设备,其特征在于,所述RTO管理器模块还被配置成通过将所述至少一个RTO值设为接近于零来重置所述至少一个RTO值。
3.如权利要求1所述的移动设备,其特征在于,所述RTO管理器模块还被配置成标识与所述移动设备相关联的一个或多个活跃的传输控制协议(TCP)会话并重置与所述一个或多个活跃的TCP会话相对应的RTO值。
4.如权利要求3所述的移动设备,其特征在于,所述RTO管理器模块还被配置成对与所述一个或多个活跃的TCP会话相对应的RTO值应用随机偏移。
5.如权利要求1所述的移动设备,其特征在于,所述RTO管理器模块还被配置成标识与所述移动设备相关联的一个或多个活跃的应用并重置与关联于所述一个或多个活跃的应用的TCP会话相对应的RTO值。
6.如权利要求1所述的移动设备,其特征在于,所述环境监视器模块包括被配置成监视与所述移动设备的用户交互的用户活动跟踪器模块。
7.如权利要求6所述的移动设备,其特征在于,所述RTO管理器模块还被配置成标识与所述用户交互相关联的应用并且在与所述用户交互相关联的应用具有至少一个打开的TCP会话的情况下重置所述移动设备的所述至少一个RTO值。
8.如权利要求1所述的移动设备,其特征在于,所述环境监视器模块包括被配置成观察与所述移动设备相关联的局部链路层连通性的无线电链路层(RLL)观察模块。
9.如权利要求8所述的移动设备,其特征在于,所述RTO管理器模块还被配置成在所述RLL观察模块指示与所述移动设备相关联的链路层连通性被恢复的情况下重置所述移动设备的所述至少一个RTO值。
10.如权利要求1所述的移动设备,其特征在于,所述RTO管理器模块还被配置成在与所述移动设备相关联的至少一个TCP会话成功地完成传输或接收的情况下重置所述移动设备的所述至少一个RTO值。
11.如权利要求1所述的移动设备,其特征在于,所述RTO管理器模块还被配置成在所述移动设备的无线连通性已被确定为恢复了的情况下重置与所述移动设备的所述至少一个RTO值相关联的重传定时器。
12.—种调整移动设备的传输控制协议(TCP)重传超时(RTO)值的方法,所述方法包括: 执行对与所述移动设备相关联的局部环境的一个或多个观察; 确定所述一个或多个观察是否指示所述移动设备的无线连通性已被恢复;以及 在所述移动设备的无线连通性已被确定为恢复了的情况下重置所述移动设备的至少一个RTO值。
13.如权利要求12所述的方法,其特征在于,所述重置包括将所述至少一个RTO值设为接近于零。
14.如权利要求12所述的方法,其特征在于,还包括标识与所述移动设备相关联的一个或多个活跃的TCP会话,其中所述重置包括重置与所述一个或多个活跃的TCP会话相对应的RTO值。
15.如权利要求14所述的方法,其特征在于,所述重置还包括对与所述一个或多个活跃的TCP会话相对应的RTO值应用随机偏移。
16.如权利要求12所述的方法,其特征在于,还包括标识与所述移动设备相关联的一个或多个活跃的应用,其中所述重置包括重置与关联于所述一个或多个活跃的应用的TCP会话相对应的RTO值。
17.如权利要求12所述的方法,其特征在于,所述执行包括监视与所述移动设备的用户交互。
18.如权利要求17所述的方法,其特征在于,还包括标识与所述用户交互相关联的应用,其中所述重置包括在与所述用户交互相关联的应用具有至少一个打开的TCP会话的情况下重置所述移动设备的所述至少一个RTO值。
19.如权利要求12所述的方法,其特征在于,所述执行包括观察与所述移动设备相关联的局部链路层连通性。
20.如权利要求18所述的`方法,其特征在于,所述重置包括在与所述移动设备相关联的局部链路层连通性被指示为已被恢复的情况下重置所述移动设备的所述至少一个RTO值。
21.如权利要求12所述的方法,其特征在于,所述重置包括在与所述移动设备相关联的至少一个TCP会话成功地完成传输或接收的情况下重置所述移动设备的所述至少一个RTO 值。
22.如权利要求12所述的方法,其特征在于,还包括在所述移动设备的无线连通性已被确定为恢复了的情况下重置与所述移动设备的所述至少一个RTO值相关联的重传定时器。
23.—种移动设备,包括: 用于执行对与所述移动设备相关联的局部环境的一个或多个观察的装置; 用于确定所述一个或多个观察是否指示所述移动设备的无线连通性已被恢复的装置;以及 用于在所述移动设备的无线连通性已被确定为恢复了的情况下重置所述移动设备的至少一个重传超时(RTO)值的装置。
24.如权利要求23所述的移动设备,其特征在于,所述用于重置的装置包括用于将所述至少一个RTO值设为接近于零的装置。
25.如权利要求23所述的移动设备,其特征在于,还包括用于标识与所述移动设备相关联的一个或多个活跃的传输控制协议(TCP)会话的装置,其中所述用于重置的装置包括用于至少部分地通过对与所述一个或多个活跃的TCP会话相对应的RTO值应用随机偏移来重置与所述一个或多个活跃的TCP会话相对应的RTO值的装置。
26.如权利要求23所述的移动设备,其特征在于,所述用于执行一个或多个观察的装置包括用于监视与所述移动设备的用户交互的装置。
27.如权利要求26所述的移动设备,其特征在于,还包括用于标识与所述用户交互相关联的应用的装置,其中所述用于重置的装置包括用于在与所述用户交互相关联的应用具有至少一个打开的TCP会话的情况下重置所述移动设备的所述至少一个RTO值的装置。
28.如权利要求23所述的移动设备,其特征在于,所述用于执行一个或多个观察的装置包括用于观察与所述移动设备相关联的局部链路层连通性的装置。
29.如权利要求28所述的移动设备,其特征在于,所述用于重置的装置包括用于在与所述移动设备相关联的局部链路层连通性被指示为已被恢复的情况下重置所述移动设备的所述至少一个RTO值的装置。
30.如权利要求23所述的移动设备,其特征在于,所述用于重置的装置包括用于在与所述移动设备相关联的至少一个TCP会话成功地完成传输或接收的情况下重置所述移动设备的所述至少一个RTO值的装置。
31.如权利要求23所述的移动设备,其特征在于,还包括用于在所述移动设备的无线连通性已被确定为恢复了的情况下重置与所述移动设备的所述至少一个RTO值相关联的重传定时器的装置。
32.—种驻留在处理器可读介质上且包括处理器可读指令的计算机程序产品,所述处理器可读指令配置成使处理器: 执行对与移动设 备相关联的局部环境的一个或多个观察; 确定所述一个或多个观察是否指示所述移动设备的无线连通性已被恢复;以及 在所述移动设备的无线连通性已被确定为恢复了的情况下重置所述移动设备的至少一个重传超时(RTO)值。
33.如权利要求32所述的计算机程序产品,其特征在于,所述被配置成使处理器重置的处理器可读指令包括被配置成使所述处理器将所述至少一个RTO值设为接近于零的处理器可读指令。
34.如权利要求32所述的计算机程序产品,其特征在于,所述处理器可读介质还包括被配置成使所述处理器标识与所述移动设备相关联的一个或多个活跃的传输控制协议(TCP)会话的处理器可读指令,并且所述被配置成使处理器重置的处理器可读指令包括被配置成使所述处理器至少部分地通过对与所述一个或多个活跃的TCP会话相对应的RTO值应用随机偏移来重置与所述一个或多个活跃的TCP会话相对应的RTO值的处理器可读指令。
35.如权利要求32所述的计算机程序产品,其特征在于,所述被配置成使处理器执行所述一个或多个观察的处理器可读指令包括被配置成使所述处理器监视与所述移动设备的用户交互的处理器可读指令。
36.如权利要求35所述的计算机程序产品,其特征在于,所述处理器可读介质还包括被配置成使所述处理器标识与所述用户交互相关联的应用的处理器可读指令,并且所述被配置成使所述处理器重置的处理器可读指令包括被配置成使所述处理器在与所述用户交互相关联的应用具有至少一个打开的TCP会话的情况下重置所述移动设备的所述至少一个RTO值的处理器可读指令。
37.如权利要求32所述的计算机程序产品,其特征在于,所述被配置成使处理器执行所述一个或多个观察的处理器可读指令包括被配置成使所述处理器观察与所述移动设备相关联的局部链路层连通性的处理器可读指令。
38.如权利要求37所述的计算机程序产品,其特征在于,所述被配置成使处理器重置的处理器可读指令包括被配置成使所述处理器在与所述移动设备相关联的局部链路层连通性被指示为已被恢复的情况下重置所述移动设备的所述至少一个RTO值的处理器可读指令。
39.如权利要求32所述的计算机程序产品,其特征在于,所述被配置成使处理器重置的处理器可读指令包括被配置成使所述处理器在与所述移动设备相关联的至少一个TCP会话成功地完成传输或接收的情况下重置所述移动设备的所述至少一个RTO值的处理器可读指令。
40.如权利要求32所述的计算机程序产品,其特征在于,所述处理器可读介质还包括被配置成使所述处理器在所述移动设备的无线连通性已被确定为恢复了的情况下重置与所述移动设备的所述至少一个RTO值相关联的重传定`时器的处理器可读指令。
【文档编号】H04L1/18GK103782623SQ201280043327
【公开日】2014年5月7日 申请日期:2012年9月5日 优先权日:2011年9月6日
【发明者】M·W·派登, C·M·布朗 申请人:高通股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1