当前位置: 首页 > 专利查询>谷歌公司专利>正文

用于选择最低延迟路径的系统和方法技术方案

技术编号:12518587 阅读:67 留言:0更新日期:2015-12-16 17:23
一种用于通过选择从服务器到客户端的最低延迟网络路径或较低延迟网络路径来减少网络延迟的机制。取代使用静态的预先构建的系统来确定延迟,可以在连接建立时针对每个客户端连接动态地确定最低延迟路径。另外,延迟信息可以随着时间周期性地被确定并且被平均或以其他方式被利用于说明改变的网络状况。

【技术实现步骤摘要】
【国外来华专利技术】【专利说明】相关串请的交叉引用本申请要求于2013年8月27日提交的标题为“System and Method for ChoosingLowest Latency Path”的美国专利申请N0.14/011,233的优先权,其要求于2013年3月15日提交的标题为“System and Method for Choosing Lowest Latency Path to a Peer”的美国临时专利申请N0.61/790, 241的优先权,通过引用将两者整体并入本文中。
技术介绍
延迟是系统中的时间延迟的度量。为了使分组交换网络高效地运作,分组流的延迟低是重要的。例如,遭受增加的延迟的针对客户端超文本传输协议(HTTP)请求的响应对于客户端用户而言将看起来不合理地缓慢。网络中的延迟可以被测量为往返延迟或单向延迟。往返延迟测量从源到目的地的单向延迟并且向其增加了针对回程的单向延迟。往返延迟不包括在目的地处用于处理分组所花费的时间。单向延迟仅仅测量将分组发送到接收该分组的目的地所花费的时间。为了合适地测量单向延迟,通常要求同步时钟,其转而要求由单个实体对源和目的地的控制。作为对于确定单向延迟的控制要求的结果,往返延迟更频繁地用于累积网络延迟统计,因为其能够从单个点测得。用于测量往返延迟的一个众所周知的方式是使源“ping”目的地(将分组从源发送到目的地,在目的地处分组不被处理而是仅仅返回到发送者)。在其中分组通过许多链接被转发的更复杂的网络中,计算的延迟还必须说明通过每个链接转发分组所花费的时间和在除了最后一个链接之外的每个链接处的传输延迟。网关排队延迟也可以增加总体延迟并且因此在做出延迟确定时也应当被考虑。
技术实现思路
本专利技术的实施例通过选择从服务器到客户端的最低延迟路径或较低延迟路径来减少延迟。取代使用静态的预先构建的系统来确定延迟,可以在连接建立时针对每个客户端连接动态地确定最低延迟路径。另外,当选择用于向客户端递送内容的路径时,延迟信息可以随着时间周期性地被确定并且被平均或以其他方式被利用于说明改变的网络状况。在一个实施例中,一种用于确定最低路径延迟的计算设备实施的方法包括,通过现有传输控制协议(TCP)连接在服务器处接收来自客户端设备的针对内容的请求。所述方法还包括通过多个网络路径向所述客户端设备传输接近相同的分组。所述接近相同的分组具有相同的TCP序列和包括标识到达网络路径的指令或属性的经修改的分组内容,在所述到达网络路径上接收到所述接近相同的分组。所述服务器从所述客户端设备接收所述网络路径中的一个网络路径作为第一网络路径的标识,所述第一网络路径将所述接近相同的分组中的一个分组递送到所述客户端设备。至少部分基于所述标识来通过所述多个网络路径中选择的一个网络路径传输请求的所述内容。在另一实施例中,一种用于确定最低网络路径延迟的计算设备实施的系统包括服务器,所述服务器通过现有TCP连接接收来自客户端设备的针对内容的请求。所述系统还包括分组复制器,所述分组复制器生成接近相同的分组并通过多个网络路径向所述客户端设备传输所述接近相同的分组。所述接近相同的分组具有相同的TCP序列和包括标识到达网络路径的指令或属性的经修改的分组内容,在所述到达网络路径上接收到所述接近相同的分组。所述客户端设备向所述服务器传输所述多个网络路径中的一个网络路径作为第一路径的标识,所述第一路径在接收到所述接近相同的分组中的第一个分组时将所述接近相同的分组中的一个分组递送到所述客户端设备。所述服务器至少部分基于所述标识来通过所述多个网络路径中选择的一个网络路径传输请求的所述内容。【附图说明】包含在本说明书中并且构成本说明书的一部分的附图图示了本专利技术的一个或多个实施例并且与描述一起帮助解释本专利技术。在附图中:图1描绘了根据实施例的用于做出关于网络路径延迟的动态确定的示范性步骤序列;图2描绘了通过由本专利技术的实施例利用的分组复制器执行的示范性步骤序列;图3描绘了适合于实践本专利技术的实施例的示范性网络环境;图4描绘了适合于实践本专利技术的实施例的示范性备选网络环境;以及图5描绘了根据实施例的用于利用所存储的关于网络路径延迟的信息的示范性步骤序列。【具体实施方式】本专利技术的实施例在针对内容的客户端请求时做出关于针对客户端连接的期望网络路径的动态延迟确定。可以孤立地使用延迟确定来确定如何将分组从服务器路由至客户端。备选地,该确定可以与之前执行的延迟确定一起用于请求客户端提供关于改变的网络状况的附加的信息。为了做出该延迟确定,本专利技术的实施例利用传输控制协议(TCP)的运行特性的优点。更具体地,如当前所实施的,接收具有相同的TCP序列号的复制分组的TCP栈将第一个接收到的分组当作“正确的”分组并且丢弃具有该序列号的任何附加的接收到的分组。在本专利技术的实施例中,经由不同的网络路径将接近相同的分组同时(接近同时地)发送到客户端。这些接近相同的分组具有相同的TCP序列号但是稍微不同的分组内容。由客户端对第一个接收到的分组的处理导致向服务器通知递送其分组最快的路径并且然后服务器可以通过该路径递送所请求的内容或者当确定网络路径路由时与所存储的来自之前的延迟确定的信息一起考虑该新的信息。图1描绘了根据实施例的用于做出关于网络路径延迟的动态确定的示范性步骤序列。当客户端连接服务器时该序列开始。进行正常的TCP握手(SYN-SYN ACK-ACK)(步骤102)并且客户端和服务器开始通过‘自然’网络路径正常地通信(步骤104)。在该情况下,“自然”网络路径是由正常网络路由协议从通常从服务器到客户端的多个可用网络路径当中选择的路径。随后客户端发出针对由服务器控制的内容的请求,诸如HTTP “GET”请求(步骤106)。基于所述请求,服务器可以决定内容需要通过最低延迟可用路径被发送。例如,服务器可以指出客户端的上次测量结果已经过时或内容的类型要求低延迟。服务器将具有相同的TCP序列号和长度但是具有稍微不同的分组内容的接近相同的分组发送回到客户端。通过不同的网络路径来发送这些接近相同的TCP序列的分组。如下面进一步描述的,在相同的几毫秒内的近似相同的时间发送这些分组(步骤108)。可以借助于通过多个网络路径发送到客户端的HTTP重定向来做出响应于针对内容的客户端请求的路径延迟的确定。如下面进一步讨论的,可以经由分组复制器来发送在通过多个网络路径发送的该HTTP重定向中的TCP帧。该“特殊的”TCP帧包含相同的长度、标志、以及TCP序列号/ACK号。作为结果,帧对网络而言看起来像复制的分组。然而,分组具有不同的内容和不同的TCP校验和。例如,当将帧通过4个路径被发送时,复制的帧的TCP内容可以类似下面的:分组#1:HTTP/1.1302MovedLocat1n:http://www.example, com/ ? path = path_l分组#2:HTTP/1.1302MovedLocat1n:http://www.example, com/ ? path = path_2分组#3:HTTP/1.1302MovedLocat1n:http://www.example, com/ ? path = path_3分组#4:HTTP/1.1302MovedLocat1n本文档来自技高网
...

【技术保护点】
一种用于确定最低网络路径延迟的计算设备实施的方法,包括:通过现有TCP连接在服务器处接收来自客户端设备的针对内容的请求;通过多个网络路径向所述客户端设备传输接近相同的分组,所述接近相同的分组具有相同的TCP序列和包括标识到达网络路径的指令或属性的经修改的分组内容,在所述到达网络路径上接收到所述接近相同的分组;在所述服务器处从所述客户端设备接收所述多个网络路径中的一个网络路径作为第一网络路径的标识,所述第一网络路径将所述接近相同的分组中的一个分组递送到所述客户端设备;以及至少部分基于所述标识来通过所述多个网络路径中选择的一个网络路径传输请求的所述内容。

【技术特征摘要】
【国外来华专利技术】...

【专利技术属性】
技术研发人员:S·帕盖特
申请(专利权)人:谷歌公司
类型:发明
国别省市:美国;US

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

1
相关领域技术
  • 暂无相关专利