增大针对远程装置的传输速率的制作方法

文档序号:6002637阅读:115来源:国知局
专利名称:增大针对远程装置的传输速率的制作方法
技术领域
本发明一般涉及通过网络与远程装置进行的信息通信。
背景技术
为了能适应新兴技术以及客户越来越高的要求,通信产业正在迅速地发生变化。为了满足客户对新应用程序的要求以及提升现有应用程序的性能的要求,通信网络及系统的供应商不得不使用具有更高速度及容量(例如,更宽的带宽)的网络及系统。为了达到上述目的,许多通信供应商采用的一种常见方法是使用一种数据包交換技木。 传输控制协议(TCP)被广泛地应用于各种网络中,例如互联网,其用于在装置之间进行可靠的信息通信。该可靠性取决于从接收器接收响应于成功接收数据包的确认信息的发送器。TCP的性能同样也取决于是否接收到了已发送的数据包的确认信息。响应于确认信息,所述发送器TCP缓慢地増大其发送数据包的速率。相反地,如果所述发送器TCP没有接收到此类已发送的数据包的确认信息,则所述发送器TCP将基于网络拥塞引起数据包丢失的假设条件,减小其数据包传输速率(如,减小至一半)。需要注意的是,所述发送器TCP将响应于接收到已发送的数据包的确认信息而继续缓慢地増大其数据包的传输速率。

发明内容
除了其他内容,本发明公开了与响应于将向远程装置发送的先前信息的被检测到的丢失归因(attribute)为不是网络拥塞的结果而向远程装置传输信息的速率相关的方法、设备、计算机存储介质、机制以及手段。一个实施例包括一种设备,该设备包括ー个或多个处理元件以及存储器,配置为通过网络与远程装置进行信息通信,该通信包括响应于所述设备的先前传输信息的被检测到的丢失,并且响应于将先前传输信息的被检测到的丢失归因为不是由拥塞引起的,通过所述设备来増大信息传输速率。在一个实施例中,利用传输控制协议(TCP)执行信息通信,并且其中所述将先前传输信息的被检测到的丢失归因为不是由拥塞引起的包括測量从所述设备发送至所述远程装置的信息与相应于所述发送信息的被所述设备接收到的确认信息之间的多个测量往返行程延迟(measured roundtrip delay)。在一个实施例中,所述将先前传输信息的被检测到的丢失归因为不是由拥塞引起的包括估计出在所述设备及所述远程装置之间的网络内的队列延迟并未増大,所以并没有引起所述被检测到的丢失。在一个实施例中,基于测量往返行程延迟的最小量,測量往返行程延迟的平均量,和/或測量往返行程延迟的中值平滑滤波的最大量,对当前队列延迟进行确定。


所附权利要求特有地阐述了本发明的特征。结合下列附图以及下列详细说明内容,能更彻底地了解本发明及其优点。图I示出了根据ー个实施例进行操作的网络;
图2示出了应用于一个实施例中的设备或部件;图3示出了一个实施例中执行的进程;图4示出了一个实施例中执行的进程;图5示出了一个实施例 中执行的进程;以及图6A-B示出了一个实施例中执行的进程。详细说明除了其他内容,本发明公开了与响应于将向远程装置发送的先前信息的被检测到的丢失归因为不是网络拥塞的结果而向远程装置传输信息的速率相关的方法、设备、计算机存储介质、机制以及手段。本文中所述的实施例包括各种元件和限制,其中所有元件或限制都不被视为关键元件或限制。每项权利要求分别从整体上对本发明的ー个方面进行叙述。此外,除了其他内容,上述一些实施例可包括但不仅限于含有指令的系统、网络、集成电路芯片、嵌入式处理器,ASIC、方法以及计算机可读介质。一个或多个系统、装置、部件等可包括一个或多个实施例,其可包括由相同或不同的系统、装置、部件等执行的一项权利要求的一些元件和限制。一个处理元件可以为ー个通用处理器、一个任务特定处理器或其他用于执行相应处理的设施。下文所述的实施例包括了在本发明范围及精神内的各个方面及配置,附图示出了示例性及非限制性配置。需要注意的是,公开的用于执行方法及进程块操作的计算机可读介质以及手段(比如,处理器和存储器或其他设备,配置为执行此类操作)与本发明的可扩展范围及精神保持一致。需要注意的是,本文中使用的术语“设备(apparatus) ”始终为“器械(appliance)或装置(device) ”的普通定义。需要注意的是,通常情况下,附图示出了步骤、连接以及信号和信息的处理,其中所述附图包括但不仅限于任何方框图、流程图及消息顺序图;能以相同或不同的串联或并联顺序和/或通过不同的部件和/或进程、线程等,和/或通过不同的连接进行实施;并且还可与其他实施例中的其他功能相结合,除非这样会使该实施例失效或明示或暗示需要一种顺序(比如以下顺序读取数值、然后对所述读取数值进行处理,其中必须在进行处理之前获得所述读取数值,尽管ー些相关处理可能需要在进行读取操作之前、当时和/或之后执行)。还需要注意的是,在没有明示的情况下,本文档中所描述或引用的任何内容不得作为现有技术包含在本申请中。本文中使用的术语“ 一个实施例”是指ー个特定的实施例,然而每次提及的“ ー个实施例”可以指的是ー个不同的实施例。并且,在本文中的这个用于描述相关特征、元素和/或限制的术语的重复使用,也并不表示建立了每个实施例都必须包括的相关特征、元件和/或限制的累积集合,尽管ー个实施例通常可以包括所有这些特征、元件和/或限制。此夕卜,本文中的术语“第一”、“第二”等,通常是用于表示不同的単元(比如,第一元件、第二元件)。本文中这些术语的使用并不意味着ー种顺序,比如一个单元或事件需在另一个单元或事件之前存在或发生,相反的是,其提供了ー种能区分特定単元的机制。而且,短语“基于X”及“响应于X”用于表示项目“X”的最小集合,从所述项目“X”的最小集合中能导出或引起一些事物,其中,“X”具有可扩展性并且不需要描述用于执行操作的整个列表的项目。另外,短语“耦合干”是用于表示两个元件或装置之间的某种程度的直接或间接连接,其中耦合装置可以对耦合信号或通信信息进行修改或不进行修改。除此之外,本文中所使用的术语“或”是用于标识连续项目中的一个或多个之间的选择,所有项目也包括在内。而且,所述过渡术语“包括(comprise)”与“包含(include) ”、“包含(contain) ”或“其特征为(characterized by) ”的含义相同,是含有界限的或开放式的包括,其不排除额外的未叙述的元件或方法步骤。最后,在执行步骤的方法权利要求中,所述术语“特定机器”是指在35USC § 101机器法定类别中的特定机器。除了其他内容,本发明公开了与响应于将向远程装置发送的先前信息的被检测到的丢失归因为不是网络拥塞的结果而向远程装置传输信息的速率相关的方法、设备、计算机存储介质、机制以及手段。在一个实施例中,响应于与远程装置(例如,使用TCP)进行通信的设备的先前传输信息的被检测到的丢失,并且响应于将先前传输信息的被检测到的丢失归因为不是由拥塞引起的,通过所述设备来増大信息传输速率。通常情况下,数据包丢失的归因是基于发送信息与相应的接收到的确认信息之间的往返行程延迟而确定。往返行程延迟可被直接或间接地利用,例如,基于测量往返行程延迟估计网络队列延迟。
一个实施例包括一种设备,该设备包括一个或多个处理元件以及存储器,配置为通过网络与远程装置进行信息通信;其中与所述远程装置进行的所述通信包括响应于所述设备的先前传输信息的被检测到的丢失响应于将先前传输信息的被检测到的丢失归因为不是由拥塞引起的,通过所述设备来増大信息传输速率。在一个实施例中,所述信息通信是通过使用传输控制协议(TCP)执行的,并且其中所述将先前传输信息的被检测到的丢失归因为不是由拥塞引起的包括測量从所述设备发送至所述远程装置的信息与相应于所述发送信息的被所述设备接收到的确认信息之间的多个测量往返行程延迟。在一个实施例中,通过使用TCP与所述远程装置进行的所述通信包括由所述先前传输信息的被检测到的丢失触发的所述TCP通信的丢失恢复阶段,该丢失恢复阶段包括执行主动拥塞控制,该主动拥塞控制包括响应于基于从所述设备发送至所述远程装置的信息与相应于所述发送信息的被所述设备接收到的确认信息之间的多个测量往返行程延迟、将所述先前传输信息的被检测到的丢失归因为不是由拥塞引起的,通过所述设备来増大信息传输速率;并且其中所述丢失恢复阶段包括响应于将所述先前传输信息的被检测到的丢失归因为是由拥塞引起的而通过所述设备来减小信息传输速率。在一个实施例中,通过使用TCP与所述远程装置进行的所述通信包括使用拥塞窗ロ(cwnd)来对网络情况作出反应;其中所述增大信息传输速率包括增大所述拥塞窗ロ(cwnd);并且其中所述减小信息传输速率包括减小所述拥塞窗ロ(cwnd)。在一个实施例中,响应于基于从所述设备发送至所述远程装置的信息与相应于所述发送信息的被所述设备接收到的确认信息之间的多个测量往返行程延迟、将所述先前传输信息的被检测到的丢失归因为不是由拥塞引起的包括基于所述多个测量往返行程延迟确定多个队列延迟,并且,基于所述多个队列延迟将所述先前传输信息的被检测到的丢失归因为不是由拥塞引起的。在一个实施例中,响应于基于从所述设备发送至所述远程装置的信息与相应于所述发送信息的被所述设备接收到的确认信息之间的多个测量往返行程延迟、将所述先前传输信息的被检测到的丢失归因为不是由拥塞引起的包括基于所述多个测量往返行程延迟确定多个队列延迟,并且,基于所述多个队列延迟将所述先前传输信息的被检测到的丢失归因为不是由拥塞引起的。在一个实施例中,基于所述多个测量往返行程延迟的最小量以及所述多个測量往返行程延迟中的ー个或多个,对当前队列延迟进行确定。在一个实施例中,基于所述多个测量往返行程延迟中的所述ー个或多个与所述多个測量往返行程延迟的所述最小量之间的差值,对当前队列延迟进行确定。在一个实施例中,基于所述多个测量往返行程延迟的平均量、所述多个測量往返行程延迟的最小量以及所述多个測量往返行程延迟的中值平滑滤波的最大量,对当前队列延迟进行确定。在一个实施例中,将先前传输信息的被检测到的丢失归因为不是由拥塞引起的包括估计出在所述设备及所述远程装置之间的网络内的队列延迟并未増大,所以并没有引起所述被检测到的丢失。在一个实施例中,所述信息通信是通过使用传输控制协议(TCP)执行的。在一个实施例中,基于ー个或多个测量往返行程延迟与多个测量往返行程延迟的最小量之间的差值,对所述队列延迟中的当前队列延迟进行确定。在一个实施例中,基于多个测量往返行程延迟中的多个的平均量、所述多个測量往返行程延迟中的多个的最小量以及所述多个測量往返行程延迟中的多个的中值平滑滤波的最大量,对所述队列延迟中的当前队列延迟进行确定。一个实施例包括ー种方法,该法包括以下步骤通过网络由特定设备与远程装置 进行通信;其中与远程装置进行的所述通信包括响应于所述特定设备的先前传输信息的被检测到的丢失响应于基于根据从所述特定设备发送至所述远程装置的信息与相应于所述发送信息的被所述特定设备接收到的确认信息之间的多个测量往返行程延迟而确定的当前队列延迟、将所述先前传输信息的被检测到的丢失归因为不是由拥塞引起的,通过所述特定设备来増大信息传输速率。在一个实施例中,响应于所述特定设备的先前传输信息的被检测到的丢失响应于基于当前队列延迟、将所述先前传输信息的被检测到的丢失归因为是由拥塞引起的,通过所述特定设备来减小信息传输速率。在一个实施例中,通过网络与所述远程装置进行的通信包括使用传输控制协议(TCP)。在一个实施例中,通过使用TCP与所述远程装置进行的通信包括使用拥塞窗ロ(cwnd)来对网络情况作出反应;其中所述增大信息传输速率包括增大所述拥塞窗ロ(cwnd);并且其中所述减小信息传输速率包括减小所述拥塞窗ロ(cwnd)。一个实施例包括基于所述多个测量往返行程延迟的最小量以及所述多个測量往返行程延迟中的ー个或多个,对当前队列延迟进行确定。一个实施例包括基于所述多个测量往返行程延迟中的所述ー个或多个与所述多个測量往返行程延迟中的所述最小量之间的差值,对当前队列延迟进行确定。一个实施例包括基于所述多个测量往返行程延迟的平均量、所述多个測量往返行程延迟的最小量以及所述多个測量往返行程延迟的中值平滑滤波的最大量,对当前队列延迟进行确定。在一个实施例中,响应于所述特定设备的先前传输信息的被检测到的丢失响应于基于当前队列延迟、将先前传输信息的被检测到的丢失归因为是由拥塞引起的,通过所述特定设备来减小信息传输速率。在一个实施例中,所述基于当前队列延迟、将先前传输信息的被检测到的丢失归因为不是由拥塞引起的包括确定出平均队列延迟不大于先前确定的平均队列延迟,该先前測定的平均队列延迟不包括当前队列延迟。一个实施例包括响应于所述特定设备的先前传输信息的被检测到的丢失响应于基于当前队列延迟、将所述先前传输信息的被检测到的丢失归因为是由拥塞引起的,通过所述特定设备来减小信息传输速率。一个实施例包括一种设备,该设备包括一个或多个处理元件以及存储器,配置为使用传输控制协议(TCP)通过网络与远程装置进行通信;其中通过使用TCP与所述远程装置进行的所述通信包括使用拥塞窗ロ(cwnd)来对网络情况作出反应;其中通过使用TCP与所述远程装置进行的所述通信包括基于多个发送信息以及相应的接收到的确认信息的測量往返行程延迟,特征化(characterize)所述设备和所述远程装置之间的往返行程延迟;并且其中通过使用TCP与所述远程装置进行的所述通信包括响应于发送至所述远程装置的特定信息的识别出的丢失以及基于往返行程延迟的被保持的特征(characterization)的确定,增大所述拥塞窗ロ(cwnd)。在一个实施例中,所述基于往返行程延迟的被保持的特征的确定在由于网络拥塞引起的信息丢失和由于其他原因引起的信息丢失之间进 行区分。把注意力转向附图,图I示出了根据ー个实施例进行操作的网络。如图所示,网络装置101 (例如,设备、路由器、交換机、计算机、个人装置等)配置为(例如,但不仅限于,使用传输控制协议)通过网络102与网络装置103进行信息通信。网络装置101配置为响应于将信息的丢失归因为与拥塞无关,不管发送信息是否丢失都増大其信息传输速率。通常情况下,响应于数据包丢失,现有技术中的TCP的实施会因为任意原因而减小其信息传输速率,或者至少不増大其传输速率。需要注意的是,在一个实施例中,网络装置103同样也配置为响应于将信息的丢失归因为与拥塞无关,不管发送信息是否丢失都増大其信息传输速率。图2是ー个方框图,示出了与响应于将向远程装置发送的先前信息的被检测到的丢失归因为不是网络拥塞的结果而向远程装置传输信息的速率相关的ー个实施例中使用的设备或部件200。在一个实施例中,系统或部件200执行ー个或多个进程,其中所述进程对应于本文中示出的或以其他方式描述的流程图中的ー个。在一个实施例中,设备或部件200包括一个或多个处理元件201、存储器202、(一个或多个)存储装置203、(ー个或多个)专用部件205 (例如,比如用于执行操作的最优化硬件等)以及(ー个或多个)用于进行信息通信的接ロ 207 (例如,发送及接收数据包、用户接ロ、显示信息等),其中所述这些组件通常通过ー个或多个通信机构209与多条通信路径通信耦合,所述通信路径通常专用于满足应用需要。在一个实施例中,所述设备或部件200相当于图I中的网络装置101或其一部分。设备或部件200的各种实施例可包括或多或少的元件。通常情况下,利用存储器202以及(ー个或多个)存储装置203通过(ー个或多个)处理元件201来对设备或部件200的操作进行控制从而执行ー个或多个任务或进程。存储器202是ー种计算机可读介质/计算机存储介质,通常包括随机访问存储器(RAM)、只读存储器(ROM)、快闪存储器、集成电路和/或其他存储部件。存储器202通常存储由(ー个或多个)处理元件201执行的计算机可执行指令和/或由(ー个或多个)处理元件201操作的、用以实现一个实施例的功能的数据。(ー个或多个)存储装置203为另ー种计算机可读介质,通常包括固态存储介质、磁盘驱动器、磁盘、联网服务、磁带驱动器以及其他存储装置。(ー个或多个)存储装置203通常存储由(ー个或多个)处理元件201执行的计算机可执行指令和/或由(ー个或多个)处理元件201操作的、用以实现一个实施例的功能的数据。图3示出了一个实施例中执行的进程。进程从进程块300开始。在进程块302中,设备开始(例如,但不仅限于,使用TCP)与远程装置进行通信。如在进程块303中所确定,响应于(例如,基于接收到的确认信息)对发送信息的丢失的识别,进程进入到进程块311(将在下文中描述)。另外,如在进程块305中所确定,鉴于未检测到信息丢失,如果应当増大信息发送速率,则在进程块306中对其进行増大;否则,在进程块308中,保持当前信息传输速率。继续讨论进程块311,如其中(例如,但不仅限于,基于网络中队列延迟的估计值和/或发送信息与接收到相应的确认信息之间的测量往返行程延迟)确定的如果信息丢失不归因于网络中的拥塞,则在进程块314中,増大信息传输速率;否则,在进程块312中,通常减小信息传输速率,或者有时也保持信息传输速率。图3的流程图的进程回到进程块 303。图4示出了一个实施例中执行的进程。进程从进程块400开始。在进程块402中,设备(例如,但不仅限于,使用传输控制协议(TCP))与远程装置进行通信,包括測量在发送信息与相应的接收到的确认信息之间的往返行程延迟。在进程块404中,响应于所述设备的先前传输信息的被检测到的丢失响应于基于从设备发送至远程装置的信息与相应的被设备接收到的确认信息之间的多个测量往返行程延迟(例如,基于往返行·程延迟的最小量、平均量和/或中值平滑滤波的最大量,直接从中确定ー个或多个队列延迟)将先前传输信息的被检测到的丢失归因于不是由拥塞引起的,由设备増大信息传输速率(例如,増大拥塞窗ロ)。如进程块406所示,图4的流程图的进程完成。图5示出了一个实施例中执行的进程。进程从进程块500开始,并且,在进程块502中,设备接收先前发送信息的确认信息。如在进程块505中所确定,响应于(例如,基于ー些允许丢失数据的识别的接收到的确认信息)对传输数据的丢失的识别,设备进入TCP通信的丢失恢复阶段(510),其中包括进程块512-518。在进程块512中,设备基于发送信息与相应的接收到的确认信息的測量往返行程延迟来判断数据包丢失是否归因于拥塞。一个实施例直接使用这些往返行程延迟,也可能与其他信息相结合使用。在一个实施例中,这些往返行程延迟用于估计队列延迟,其中所述队列延迟用于识别数据包丢失是否归因于网络中的拥塞。在一个实施例中,基于测量往返行程延迟的平均量,測量往返行程延迟的最小量,和/或測量往返行程延迟的中值平滑滤波的最大量,对队列延迟进行确定。如在进程块515中所确定,如果信息丢失归因于网络中的拥塞,则在进程块518中,设备进行快速恢复,其中所述快速恢复通常包括减小信息传输速率(例如,减小拥塞窗ロ (cwnd)或设定cwnd为TCP慢速启动阀值(ssthresh))。否则,在进程块516中,响应于将传输信息的丢失归因为不是由网络中的拥塞引起,増大信息传输速率(例如,增大拥塞窗ロ(cwnd))。继续该进程,如在进程块520中所确定,如果拥塞窗ロ大于阀值,则在进程块522中,増大传输速率(例如,増大拥塞窗ロ(cwnd))。否则,在进程块524中,设备进行TCP慢速启动。如进程块529所示,图5的流程图的进程完成。图6A及6B示出了一个实施例中执行的进程。如图所示,所述进程用伪代码进行描述,其中所述伪代码使用BIC-TCP (例如,通常在Linux操作系统中实施)。需要注意的是可參考在已知的TCP实施中的已知函数,如,bictcp_recalc_ssthresh O、bictcp_update O和bictcp_reset O ,和/或已知变量或其他项目。代码601表示Initialization(初始化),其中,初始化变量,并且执行blast_reset()6130此代码包括初始化低阀值变量以及高阀值变量YH,从而提供ー个用于识别数据包丢失是否归因于网络拥塞的范围(将在下文描述)。
代码602表示On_each_ACK,响应于每个接收到的TCP确认信息来执行所述0n_each_ACK,从而保持与測量往返行程延迟和/或队列延迟有关的ー些统计资料。变量dMin用于保持最短的測量往返行程时间;sRTT设置为測量往返行程延迟的中值平滑滤波的最大量;dMax保持測量往返行程延迟的最大中值平滑滤波的最大量;而sumRTT以及cntRTT被保持,以计算測量往返行程延迟的平均量。
代码603表示At_the_start_of_each_RTT_round,其用于重新设置为保持的姆轮往返行程时间而保持的变量。代码604表示Packet_loss,响应于数据包丢失来执行所述Packet_loss,从而重新计算ssthresh变量(例如,在图5的进程块524中,执行TCP慢速启动)。代码605表示Fast_Recovery_for_each_ACK,响应于识别的数据包丢失来执行所述Fast_Recovery_for_each_ACK (例如,在图5的进程块512-518)。需要注意的是,loss_predictor O 608(图6B)判断数据包丢失是否归因于拥塞;响应于数据包丢失不是归因于拥塞,继续演进拥塞窗ロ(cwnd)(例如,增大cwnd,从而增大信息传输速率)。代码606表示Timeout (超时),响应于TCP超时来执行所述Timeout,从而据此重新设置TCP代码。代码607 表不 recalc_ssthresh O,执行所述 recalc_ssthresh O,以重新计算慢速启动阀值,根据数据包丢失是否归因于网络拥塞,所述计算会有所差异。代码608表示l0SS_prediCt0r(),其判断数据包丢失是否归因于网络拥塞。如图所示,如果平均队列延迟(例如,平均往返行程延迟减去观测到的最小的往返行程延迟)小于最长的队列延迟的预定低阀值量(例如,最长的往返行程延迟减去最小的往返行程延迟),则数据包丢失不归因于网络拥塞。同样,如果平均队列延迟大于最长的队列延迟的预定高阀值量,则数据包丢失归因于网络拥塞。进ー步地,在低和高阀值变量乘以最长队列延迟所限定的范围内,如果平均队列延迟目前正在増大,则l0SS_prediCt0r()确定数据包丢失归因于拥塞;否则,数据包丢失不归因于拥塞。代码609表示median_filter(RTT),其用于基于多个历史数值,对测量往返行程时间进行中值滤波。一个实施例使用多个和/或不同的历史数值,这样可能改变(很有可能增大)loss_predictor O的准确性。代码610表示avg_delay O,其用于确定平均队列延迟(例如,平均往返行程延迟减去测量到的最小的往返行程延迟)。代码611表示low_threshold(),其用于确定最长的队列延迟的预定低阀值量。代码612表示high_threshold(),其用于确定最长的队列延迟的预定高阀值量。代码613表示blast_reset(),其用于重新设置BIC TCP进程并初始化ー些变量。本发明的原理可能会被应用到许多可能的实施例中,值得ー提的是,与附图相关的本文中所描述的实施例及其各方面仅用于举例说明,不得用其来限制本发明的范围。例如,对于本领域技术人员显而易见的是,许多进程块操作可以重新排序,从而在执行其他操作之前/之后/同时执行。另外,在各种实施例中,可能会采用不同形式的数据结构。如本文所述的本发明涉及所有可能在下列权利要求及其等同物的范围内的实施例。
权利要求
1.一种设备,包括 一个或多个处理元件以及存储器,配置为通过网络与远程装置进行信息通信; 其中与所述远程装置进行的所述通信包括响应于所述设备的先前传输信息的被检测到的丢失响应于将先前传输信息的被检测到的丢失归因为不是由拥塞引起的,通过所述设备来増大信息传输速率。
2.根据权利要求I所述的设备,其中所述信息通信是通过使用传输控制协议(TCP)执行的,并且其中所述将先前传输信息的被检测到的丢失归因为不是由拥塞引起的包括测量从所述设备发送至所述远程装置的信息与相应于所述发送信息的被所述设备接收到的确认信息之间的多个测量往返行程延迟。
3.根据权利要求2所述的设备,其中通过使用TCP与所述远程装置进行的所述通信包括由所述先前传输信息的被检测到的丢失触发的所述TCP通信的丢失恢复阶段,该丢失恢复阶段包括执行主动拥塞控制,该主动拥塞控制包括响应于基于从所述设备发送至所述远程装置的信息与相应于所述发送信息的被所述设备接收到的确认信息之间的多个测量往返行程延迟、将所述先前传输信息的被检测到的丢失归因为不是由拥塞引起的,通过所述设备来増大信息传输速率;并且其中所述丢失恢复阶段包括响应于将所述先前传输信息的被检测到的丢失归因为是由拥塞引起的而通过所述设备来减小信息传输速率。
4.根据权利要求3所述的设备,其中通过使用TCP与所述远程装置进行的所述通信包括使用拥塞窗ロ(cwnd)来对网络情况作出反应;其中所述增大信息传输速率包括增大所述拥塞窗ロ(cwnd);并且其中所述减小信息传输速率包括减小所述拥塞窗ロ(cwnd)。
5.根据权利要求3所述的设备,其中基于从所述设备发送至所述远程装置的信息与相应于所述发送信息的被所述设备接收到的确认信息之间的多个测量往返行程延迟、将所述先前传输信息的被检测到的丢失归因为不是由拥塞引起的包括基于所述多个测量往返行程延迟确定多个队列延迟,并且,基于所述多个队列延迟将所述先前传输信息的被检测到的丢失归因为不是由拥塞引起的。
6.根据权利要求2所述的设备,其中基于从所述设备发送至所述远程装置的信息与相应于所述发送信息的被所述设备接收到的确认信息之间的多个测量往返行程延迟、将所述先前传输信息的被检测到的丢失归因为不是由拥塞引起的包括基于所述多个测量往返行程延迟确定多个队列延迟,并且,基于所述多个队列延迟将所述先前传输信息的被检测到的丢失归因为不是由拥塞引起的。
7.根据权利要求6所述的设备,其中,基于所述多个测量往返行程延迟的最小量以及所述多个測量往返行程延迟中的ー个或多个,对当前队列延迟进行确定。
8.根据权利要求7所述的设备,其中,基于所述多个测量往返行程延迟中的所述ー个或多个与所述多个測量往返行程延迟的所述最小量之间的差值,对当前队列延迟进行确定。
9.根据权利要求6所述的设备,其中,基于所述多个测量往返行程延迟的平均量、所述多个测量往返行程延迟的最小量以及所述多个測量往返行程延迟的中值平滑滤波的最大量,对当前队列延迟进行确定。
10.根据权利要求I所述的设备,其中所述将先前传输信息的被检测到的丢失归因为不是由拥塞引起的包括估计出在所述设备及所述远程装置之间的网络内的队列延迟并未増大,所以并没有引起所述被检测到的丢失。
11.根据权利要求10所述的设备,其中所述信息通信是通过使用传输控制协议(TCP)执行的。
12.根据权利要求10所述的设备,其中,基于ー个或多个测量往返行程延迟与多个测量往返行程延迟的最小量之间的差值,对所述队列延迟中的当前队列延迟进行确定。
13.根据权利要求12所述的设备,其中,基于多个測量往返行程延迟中的多个的平均量、所述多个測量往返行程延迟中的多个的最小量以及所述多个測量往返行程延迟中的多个的中值平滑滤波的最大量,对所述队列延迟中的当前队列延迟进行确定。
14.ー种方法,包括 通过网络由特定设备与远程装置进行通信; 其中与远程装置进行的所述通信包括响应于所述特定设备的先前传输信息的被检测到的丢失响应于基于根据从所述特定设备发送至所述远程装置的信息与相应于所述发送信息的被所述特定设备接收到的确认信息之间的多个测量往返行程延迟而确定的当前队列延迟、将所述先前传输信息的被检测到的丢失归因为不是由拥塞引起的,通过所述特定设备来増大信息传输速率。
15.根据权利要求14所述的方法,包括响应于所述特定设备的先前传输信息的被检测到的丢失响应于基于当前队列延迟、将所述先前传输信息的被检测到的丢失归因为是由拥塞引起的,通过所述特定设备来减小信息传输速率。
16.根据权利要求15所述的方法,其中通过网络与所述远程装置进行的通信包括使用传输控制协议(TCP)。
17.根据权利要求16所述的方法,其中通过使用TCP与所述远程装置进行的通信包括使用拥塞窗ロ(cwnd)来对网络情况作出反应;其中所述增大信息传输速率包括增大所述拥塞窗ロ(cwnd);并且其中所述减小信息传输速率包括减小所述拥塞窗ロ(cwnd)。
18.根据权利要求14所述的方法,包括基于所述多个测量往返行程延迟的最小量以及所述多个測量往返行程延迟中的ー个或多个,对当前队列延迟进行确定。
19.根据权利要求18所述的方法,包括基于所述多个测量往返行程延迟中的所述ー个或多个与所述多个測量往返行程延迟中的所述最小量之间的差值,对当前队列延迟进行确定。
20.根据权利要求14所述的方法,包括基于所述多个测量往返行程延迟的平均量、所述多个測量往返行程延迟的最小量以及所述多个測量往返行程延迟的中值平滑滤波的最大量,对当前队列延迟进行确定。
21.根据权利要求20所述的方法,包括响应于所述特定设备的先前传输信息的被检测到的丢失响应于基于当前队列延迟、将先前传输信息的被检测到的丢失归因为是由拥塞引起的,通过所述特定设备来减小信息传输速率。
22.根据权利要求20所述的方法,其中所述基于当前队列延迟、将先前传输信息的被检测到的丢失归因为不是由拥塞引起的包括确定出平均队列延迟不大于先前确定的平均队列延迟,该先前測定的平均队列延迟不包括当前队列延迟。
23.根据权利要求22所述的方法,包括响应于所述特定设备的先前传输信息的被检测到的丢失响应于基于当前队列延迟、将所述先前传输信息的被检测到的丢失归因为是由拥塞引起的,通过所述特定设备来减小信息传输速率。
24.一种设备,包括 一个或多个处理元件以及存储器,配置为使用传输控制协议(TCP)通过网络与远程装置进行通信; 其中通过使用TCP与所述远程装置进行的所述通信包括使用拥塞窗ロ(cwnd)来对网络情况作出反应; 其中通过使用TCP与所述远程装置进行的所述通信包括基于多个发送信息以及相应的接收到的确认信息的測量往返行程延迟,特征化所述设备和所述远程装置之间的往返行程延迟;并且 其中通过使用TCP与所述远程装置进行的所述通信包括响应于发送至所述远程装置的特定信息的识别出的丢失以及基于往返行程延迟的被保持的特征的确定,增大所述拥塞窗 ロ (cwnd) ο
25.根据权利要求24所述的设备,其中所述基于往返行程延迟的被保持的特征的确定在由于网络拥塞引起的信息丢失和由于其他原因引起的信息丢失之间进行区分。
全文摘要
响应于与远程装置(例如,使用TCP)进行通信的设备的先前传输信息的被检测到的丢失,并且响应于将先前传输信息的被检测到的丢失归因为不是由拥塞引起的,通过设备来增大信息传输速率。通常情况下,数据包丢失的归因是基于发送信息与相应的接收到的确认信息之间的往返行程延迟而确定的,往返行程延迟可被直接或间接地利用,例如,基于测量往返行程延迟来估计网络队列延迟。
文档编号G01R31/08GK102667510SQ201080059420
公开日2012年9月12日 申请日期2010年12月15日 优先权日2009年12月25日
发明者南迪塔·杜克帕蒂, 弗拉维奥·乔瓦尼·柏诺密, 桑塔·哈, 维杰纳瑞亚南·萨布瑞玛尼安 申请人:思科技术公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1