在以内容为中心的网络上的会话迁移的制作方法

文档序号:7646906阅读:133来源:国知局
专利名称:在以内容为中心的网络上的会话迁移的制作方法
技术领域
本公开内容主要涉及以内容为中心的网络。更具体地,本公开内容涉及用于在以内容为中心的网络上帮助会话迁移(sessionmigration)的方法。
背景技术
互联网和电子商务的蓬勃发展,持续推动着网络行业的革命性的改变。如今,从在线看电影到每日新闻传送、零售和即时消息等多种信息的交换,都是在线进行的。越来越多的互联网应用也正变得移动。然而,当前的互联网主要是在基于位置的寻址方案上运行的。 也就是说,数据的消费者只有通过从与一个实体对象或位置紧密关联的一个地址(例如, IP地址)明确请求数据,才能接收该数据。这种限制性的寻址方案变得越来越不足以满足不断改变的网络要求。当前的互联网体系结构围绕对话模型而设计,该模型是在二十世纪七十年代为了使得在地理上分散的用户能够使用少数几台不可移动的大型计算机而给阿帕网(ARPANET)建立的。该体系结构是在电话网络的影响下设计的,其中电话号码本质上是这样的一个程序——它配置了沿着从源到目的地的一条路径中的开关。毫不令人奇怪,当初阿帕网的设计者从未想过阿帕网能够演变成如今的无所不在的、无休止地增长的互联网。人们现在希望从互联网得到远多于当初阿帕网的设计目的的东西。理论上说,互联网用户本应该能够在任何时间、任何地点对任何内容进行访问——这样的访问难于用当前的位置/设备绑定的TCP/IP (传输控制协议/互联网协议)网络实现。以内容为中心的网络(CCN),也称为“基于内容的网络”,为在网络中的数据传输带来了一条新的途径。内容是基于给予它的名称而被请求或被返回的,且所述网络负责从提供者到消费者路由数据或“内容”,而不是让在应用层看到的网络流量成为端对端的对话-内容通过该对话前进。

发明内容
本发明的一个实施方案提供了一种用于帮助会话迁移的系统。在操作中,所述系统在中间网络设备接收从客户机去往远程服务器的包。所述系统确定该包是否属于在前存在的通信会话,并确定与该会话相关联的状态信息在该中间网络设备是否可用。响应于通信包属于在前存在的通信会话且该会话状态信息在该中间网络设备不可用,该系统构造一个请求该会话状态信息的意向(interest)。该意向包括分层结构的可变长度的名称。该系统在网络上散布(disseminate)该意向,并且接收该会话状态信息,从而帮助会话迁移。在此实施方案的一个变体中,所述系统使用接收到的会话状态信息重构在前存在的通信会话。在此实施方案的一个变体中,所述网络包括以内容为中心的网络(CCN),且其中所述意向是CCN意向。在此实施方案的一个变体中,所述客户机是移动设备,且其中所述包是无线传输控制协议(TCP)包。在另一个变体中,所述意向是基于包括在无线TCP包内的传输签名而构造的,且其中所述传输签名识别所述会话。在另一个变体中,所述中间网络设备位于基础收发站(hsetransceiver station)。在此实施方案的一个变体中,所述客户机是虚拟专用网(VPN)使能的(virtual private network (VPN) -enabled),且其中所述包是 VPN 包。在另一个变体中,所述意向是基于与VPN隧道相应的传输签名而构造的。在另一个变体中,所述中间网络设备是VPN主机。本发明的另一实施方案提供了一种用于帮助会话迁移的计算机可执行的方法,包括在中间网络设备接收从客户机去往远程服务器的包;确定该包是否属于在前存在的通信会话;确定与该通信会话相关联的状态信息在该中间网络设备是否可用;响应于通信包属于在前存在的通信会话且该会话状态信息不可用,构造一个请求该会话状态信息的意向,其中所述意向包括分层结构的可变长度的名称;在网络上散布该意向;并且接收该会话状态信息,从而帮助会话迁移。在此实施方案的一个变体中,所述方法还包括使用接收到的会话状态信息重构在前存在的通信会话。在此实施方案的一个变体中,所述网络包括以内容为中心的网络(CCN),且其中所述意向是CCN意向。在此实施方案的一个变体中,所述客户机是移动设备,且其中所述包是无线传输控制协议(TCP)包。在此实施方案的一个变体中,所述意向是基于包括在该无线TCP包内的传输签名而构造的,且其中所述传输签名识别所述会话。在此实施方案的一个变体中,所述中间网络设备位于无线基础收发站。在此实施方案的一个变体中,所述客户机是虚拟专用网(VPN)使能的,且其中所述包是VPN包。在此实施方案的一个变体中,所述意向是基于与VPN隧道相应的传输签名而构造的。在此实施方案的一个变体中,所述中间网络设备是VPN主机。本发明的又一实施方案提供了一种用于帮助会话迁移的系统,包括连接到网络的若干个中间网络设备,其中至少一个中间网络设备包括接收机构,被配置为接收从客户机去往远程服务器的包;第一确定机构,被配置为确定该包是否属于在前存在的通信会话;第二确定机构,被配置为确定与该通信会话相关联的状态信息在该中间网络设备是否可用;意向构造机构,被配置为响应于通信包属于在前存在的通信会话且该会话状态信息在该中间网络设备不可用而构造一个请求该会话状态信息的意向,其中所述意向包括分层结构的可变长度的名称;意向散布机构,被配置为在网络上散布该意向;以及会话状态接收机构,被配置为接收该会话状态信息,从而帮助会话迁移。在此实施方案的一个变体中,所述系统还包括会话构造机构,其被配置为使用接收到的会话状态信息重构在前存在的通信会话。在此实施方案的一个变体中,所述网络包括以内容为中心的网络(CCN),且其中所述意向是CCN意向。在此实施方案的一个变体中,所述客户机是移动设备,且其中所述包是无线传输控制协议(TCP)包。在此实施方案的一个变体中,所述意向是基于包括在该无线TCP包内的传输签名而构造的,且其中所述传输签名识别所述会话。在此实施方案的一个变体中,所述中间网络设备位于无线基础收发站。在此实施方案的一个变体中,所述客户机是虚拟专用网(VPN)使能的,且其中所述包是VPN包。在此实施方案的一个变体中,所述意向是基于与VPN隧道相应的传输签名而构造的。 在此实施方案的一个变体中,所述中间网络设备是VPN主机。


图1展示了示出常规的移动回程网络(现有技术)的体系结构的图。
图2提供了示出根据本发明的一个实施方案的移动回程网络的示例体系结构的图。图3提供了示出了根据本发明的一个实施方案的CCN代理服务器结构的框图。图4展示了示出根据本发明的一个实施方案的会话迁移的过程的流程图。图5展示了示出虚拟专用网(VPN)-使能网络(enabled network)(现有技术)的示例体系结构的图。图6展示了示出根据本发明的一个实施方案的VPN-使能网络的示例体系结构的图。图7展示了根据本发明的一个实施方案的用于帮助在CCN上进行会话迁移的示例计算机系统。
具体实施例方式以下描述被提出以允许任何本领域技术人员做出并使用本发明,且所述描述被提供在具体应用及其必要条件的语境中。本领域技术人员将容易理解所公开的实施方案的各种不同变体,且此处定义的一般原理可以应用到其他实施方案和应用中而不背离本发明的精神和范围。因此,本发明不限于所示的实施方案,而应是按照和此处所公开的原理和特征相符的最宽的范围。在本文的具体实施方式
中所描述的数据结构和代码,通常存储在非瞬态的计算机可读存储介质上,该介质可以是能被计算机系统用来存储代码和/或数据的任何设备或非瞬态介质。非瞬态计算机可读存储介质包括,但不限于易失性存储器,非易失性存储器,磁的和光学的存储设备——例如磁盘驱动器、磁带、CD (光盘)、DVD (数字化通用磁盘或数字化视频磁盘),或能够存储现今已知的或随后开发的计算机可读介质的其他介质。概述本发明的实施方案帮助将已建立的会话从一个中间网络设备高效地且安全地迁移到另一个上。在操作中,客户机与中间网络设备建立全状态(stateful)通信会话,以从远程服务器接收内容。所述中间网络设备(例如代理服务器)帮助建立会话,并且给客户机提供从远程服务器取得的内容。在某些情况下,该客户机可将意欲用于同一会话的后续包传输给不同的中间网络设备。当接收到用于存在的会话的包时,第二中间设备将以内容为中心的网络(CCN)意向(interest)散布到其他中间设备诸如相邻设备,以请求和所接收的包所属的会话相关联的状态信息。响应于接收这样的意向,最初建立该会话的中间设备将和该会话相关联的状态信息传输到发出请求的中间设备,该发出请求的中间设备然后可使用该会话状态以重新开始最初的会话。如下文更详细地描述,使用CCN意向来获得状态信息,允许了在中间网络设备之间适度地且简单地传送状态信息。以内容为中心的网络在以内容为中心的网络(CCN)中,通信是由数据的消费者驱动的。在CCN中,有两种包类型意向和数据。一个意向包(也被称为询问)是对某内容的请求。意向包编码了专用的询问格式,其表达了想要什么内容和不想要什么内容。数据包(也称为内容包)是内容的单位。数据包借助于在其内部载有的其全名而是自识别的。消费者通过将其意向在所有可用的连接上广播而来要求内容。任何节点,只要听到了该意向并且拥有满足该意向的数据,均可以以一个数据包响应。数据包仅仅响应于意向而传输,并且消费(consume)该意向。意向和数据均识别包括在该包中的通过内容名(或CCN名)交换的内容。如果在意向包中的CCN名是数据包中的CCN名的前缀,则数据“满足”意向。CCN名是不透明的二进制对象,由明确规定数量的组成部分(component)组成。另外,CCN名具有持久性且内容特定。也即,如果有人改变文件或数据对象的内容,则该内容会有效地与一个新名称相关联。这种持久性可用明确的版本机制来实现,其中例如新的内容可以是一个给定名称的“第四版”。这种持久性也可隐含地实现。例如,内容可以不仅和它们的人为规定的名称相关联,也可以和认证(authentication)元数据(例如,内容出版者的数字签名)相关联。因此,当与给定名称相关联的数据改变时,整个内容名改变。在功能上,CCN可维持各种不同名称和这些名称所表示的内容之间的关联。不同于常规IP地址,CCN名不要求在长度上是固定的。事实上,CCN名的单个组成部分可具有任意长度。此外,希望构造这样的CCN名,它可以表示内容的组织结构。在一个实施方案中, CCN名是分级的,且对于人类来说可以至少部分地是可读的和有意义的。例如,“abed/bob/ papers/ccn/news”可以是一篇文章的名称,也即,来自名为“ABCD”的组织的名叫“Bob”的用户的paper(报纸)收藏“ccn”的“news (新闻)”文章。在一个CCN中,从应用的角度, 内容消费者没有必要确定如何找到“AB⑶”组织,或找到那里的哪个主机保有Bob的CCN出版物。在一个实施方案中,为了请求一条内容,CCN中的一个设备登记(register)对该内容的名称有意向的网络,而如果该内容在本地网络中可用,则将该内容路由返回该设备。路由选择基础设施负责智能地将所述意向传播给预期的出版商,并且然后将任何可用的内容沿着该意向所遍历的路径带回。CCN具有另外的使得它们特别吸引人的特性。所有内容均可被密码认证,这意味着该网络上的某些节点子集(例如,内容的合法的询问者)可以验证一条内容的真实性。 CCN也允许用独立于出版商的名称来访问数据。同时,可以为某个出版商定制专用请求。例如,可以请求“foo. txt”或“由Bob签署的foo. txt”。任何形式的自验证名均可被用作生产者和消费者之间的契约。也可能使用混合自验证名,其中该名的前面的组成部分被用于组织和高效地路由选择,而该名的后面的组成部分是自验证的。最后,CCN允许内容和信任 (trust)分开,使得不同的数据消费者能够使用不同的机制来在同一条内容中建立信任。虽然内容可能被单一的出版商所签署,却可出于不同的原因信任它。例如,一个用户可能因为与其签署者的直接个人联系而信任一条给定内容,而另一个用户信任同一条内容则是因为该内容签署者参与了该用户选择信任的公钥基础设施O3KI)。CCN的独有特性也可为分布式网络服务虚拟化提供解决方案。这样的分布式服务虚拟化在移动回程服务(mobile backhaul service)和虚拟专用网(VPN)服务的实施中是重要的。用于移动设备的虚拟服务本发明的实施方案可以应用于多种网络环境。例如,本发明的实施方案帮助了在移动网络的跨区切换中有效的会话迁移和状态转换。图1展示了示出常规的移动回程网络(现有技术)的体系结构的图。移动回程网络100包括一个基础收发站(BTQ 104,服务提供商中央局106,PSTN(公共交换电话网络)108,代理服务器110,以及若干个数据服务器112-116。
在操作中,为了从数据服务器112至116获得某些数据内容,移动设备(诸如智能电话)102发射请求信号,其由BTS 104接收。BTS104与位于中央局106中的基站控制器通信。基站控制器负责聚合语音和数据业务传输,并且维持时序和其他管理同步。传统上,在基站和基站控制器之间的通信是通过TDM租用线路,例如DS0/E1电路,来实现的。来自移动设备102的请求随后通过PSTN 108路由到代理服务器110,然后代理服务器110选择多个数据服务器112至116之一以基于数据服务器的负载平衡要求转发所述请求。随着移动用户的数量增加,数据业务传输量也增加。因此,代理服务器110需要处理大量的移动数据访问请求,这变得越来越有挑战性。例如,在代理服务器110处需要大规模的网络地址转换器(NAT),以将动态、私有的I P地址分配给正在寻找连接的移动设备。此外,由于数据服务器可在地理上分散,因此集中的代理服务器可能导致不想要的延迟,尤其是在客户机在物理上离数据服务器比离代理服务器更近的情况下。本发明的实施方案提供了一种方法,该方法实现了可以处理包括分配IP地址等的用户数据请求的分布式代理服务器,而不是使用一个集中式代理服务器来处理这些数据请求。在一个实施方案中,由移动设备使用的服务——其可以是例如一个网络服务,是通过 CCN虚拟化的。图2提供了示出根据本发明的一个实施方案的移动回程网络的示例体系结构的图。移动回程网络200包括多个基础收发站,例如BTS204和BTS 208,CCN 212,网络220,以及多个数据服务器214至218。每个BTS包括联接到CCN 212的一个CCN代理服务器。例如,BTS 204包括一个CCN代理服务器206,而BTS 208包括一个CCN代理服务器210。CCN 代理服务器206和210被配置为帮助移动服务虚拟化。在一个实施方案中,CCN代理服务器 206和移动设备202建立了通信会话,例如传输控制协议(TCP)会话。该通信会话可以通过对该移动设备透明的方式从一个代理服务器迁移到另一个。远程数据服务器214至218通过网络220而被联接到CCN代理服务器206和210,网络220可以是CCN或常规TCP/IP网络。代理服务器206和210通过将内容从远程服务器214至218集中(funnel)到移动设备202,来为来自该移动设备202的请求提供服务。在工作中,移动设备202首先与位于BTS 204的代理服务器206建立全状态通信会话,例如TCP会话。在移动设备202和CCN代理服务器206之间的所述TCP会话是使用标准的三次握手过程来建立的。与会话状态有关的信息,例如会话标识符,存储在CCN代理服务器206中。在一个实施方案中,所述会话标识符可以是5元组传输签名(5-tuple transport signatute),其包括{源IP地址,源端口号,目标IP地址,目标端口号,连接类型},其中“连接类型”识别传输层协议,诸如“TCP”或“UDP” (用户数据报协议)。在一个实施方案中,数据服务器214至218被通过网络220联接到CCN代理服务器206和210,网络220可以是CCN。在网络220是CCN的情况下,CCN代理服务器206将该请求,诸如超文本传输协议(HTTP)请求,“转换”成CCN意向包,并且将该意向通过网络 220广播到所有数据服务器。在收到CCN意向时,数据服务器之一用被请求的内容来应答该意向。CCN代理服务器206接着将该内容转发给移动设备202,并且在本地缓存该内容以便将来使用。注意,通过使用先前存储的TCP会话信息,将该包的CCN名内容转换成TCP/ IP报头,CCN代理服务器206可以将来自数据服务器214的CCN数据包转换成TCP/IP包。 在另一个实施方案中,数据服务器214至218通过常规的TCP/IP网络联接到CCN代理服务器206和210。在这样的场景下,CCN代理服务器206能够执行常规的负荷平衡功能,并且帮助在移动设备202与远程数据服务器诸如数据服务器214之间建立通信会话。注意CCN 代理服务器206和210可以缓存从远程数据服务器214至218接收到的包。在CCN代理服务器206和210中缓存来自远程服务器的内容或包,可以减少网络 220中的带宽消耗,网络220通常是由其他网络载体操作的。例如,许多移动用户可使用他们的移动设备从视频内容主机网站(hosting website)请求流行视频片段。位于基站的 CCN代理服务器可以向多个移动用户提供缓存的拷贝,而不是为每个移动用户建立到该网站的连接,从而防止了网络220中过多的带宽消耗。在会话的存续期间,例如在从网站流式传输视频的中途,移动设备202可以移出由BTS 204覆盖的区域(也称为一个小区)并且移入由BTS 208覆盖的区域。通常,当移动设备202从一个小区行进到另一个时,执行标准的移动“跨区切换”过程以保证用于同一会话的剩余包可以在新的BTS以最小的丢包方式而被接收到。从而,来自移动设备202的用于同一会话的包现在由位于BTS 208的代理服务器210接收。一旦位于BTS 208处的CCN代理服务器210从移动设备202接收到一个包,它可以辨认出该包属于在前存在的会话。然而,CCN代理服务器210不具有与该会话相关联的状态信息,因此不能重新开始该在前存在的会话。例如,CCN代理服务器210可能不知道正在进行的HTTP连接的统一资源定位符(URL)。为了获得这一状态信息,CCN代理服务器 210通过CCN 212向它相邻的代理服务器散布一个请求与该包相关联的状态信息的CCN意向。注意,因为移动设备仅仅从一个小区移动到一个相邻的小区,很可能状态信息位于相邻的基站的其中一个内。或者,CCN意向可被广播给联接到CCN 212的所有其他代理服务器。 在一个实施方案中,该意向是基于移动设备202的地址来构造。当收到这样的意向时,先前的CCN代理服务器206通过将所请求的会话状态信息传输到CCN代理服务器210,由此来满足该意向。使用CCN意向来获得状态信息,允许代理服务器210在不知道该先前的代理服务器(也即,代理服务器206)身份的情况下重新开始该会话。因此,此状态“跨区切换”过程几乎没有在代理服务器上增加开销。当接收到与该会话相关联的状态信息时,CCN代理服务器210可以重新开始与移动设备202的通信会话。换句话说,在移动设备202和CCN代理服务器206之间先前建立的通信会话现已迁移到了 CCN代理服务器210。注意,这一会话迁移对于移动设备202是透明的。从移动设备202的观察点看,当移动设备202从一个小区行进到另一个小区时,保持了连续的通信会话。 除了在每个BTS放置CCN代理服务器之外,在本发明的一个实施方案中,多个基础收发站被基于地理接近度编成一组,每个组共享一个CCN代理服务器。在又一实施方案中, CCN代理服务器可以被放置在无线电区域网(RAN)中心中。此外,除了代理服务器,其他类型的中间网络设备诸如开关和路由器,也可执行前述的透明会话迁移方法。
图3提供了示出了根据本发明的一个实施方案的CCN代理服务器结构的框图。CCN 代理服务器300包括一个包接收机构302,会话确定机构304,意向构建机构306,意向散布机构308,会话状态接收机构310以及会话构建机构312。包接收机构302被配置为接收来自移动设备的通信包。会话确定机构304被配置为确定是否接收的包属于存在的通信会话。如果接收的包属于存在的会话,且CCN代理服务器300不具有用于重构该会话的会话状态信息,则意向构建机构306被配置为构建一个请求与该会话相关联的会话状态信息的意向。在一个实施方案中,意向的构建是基于客户机地址、包的序号和识别包的其他信息。 意向散发机构308通过该CCN将意向散发到相邻的代理服务器。响应于这样的意向,保持有该会话状态的代理服务器可以应答一个数据包,该数据包包括了会话状态信息。会话状态接收机构310被配置为接收这样的会话状态信息。然后接收到的会话状态被发送到会话构建机构312,其可使用所述会话状态重构通信会话。一旦该会话被重新开始,CCN代理服务器300就可以用取自远程服务器的内容或被本地缓存的内容来重新开始为该移动设备服务。图4展示了示出根据本发明的一个实施方案的会话迁移的过程的流程图。在操作期间,CCN代理服务器从移动设备接收一个包(操作40 。在一个实施方案中,该包是TCP/ IP包。该代理服务器确定接收到的包是否属于在前存在的会话(操作404)。例如,接收到的包可以是存在的会话的新的HTTP请求,或者接收到的包可以是试图与远程服务器开始会话的新的HTTP请求。在一个实施方案中,基于该包的5元组会话标识符执行一次会话查找,以确定该包是否是需要连接设置的新连接。如果接收的包不属于任何在前存在的会话, 则代理服务器与客户机建立新的会话(操作406)。在一个实施方案中,在客户机和代理服务器之间执行适当的握手。如果接收的包确实属于存在的会话,则代理服务器确定其是否有与该会话相关联的会话状态信息(操作408)。若如此,则该代理服务器使用该会话状态信息重新开始该会话(操作416)。若并非如此,则该代理服务器构造一个为接收的包请求会话状态信息的CCN 意向(操作410)。在一个实施方案中,所述代理服务器基于5元组传输签名构造一个意向。 随后,所述代理服务器通过CCN将该意向散布给该代理服务器的相邻的代理服务器(操作 412),并且接收来自最初建立该会话的代理服务器的一个应答(操作414)。在接收与该会话相关联的这一状态信息之后,所述代理服务器重构会话状态,从而允许该会话在该代理服务器上重新开始(操作410)。注意,会话从一个代理服务器到另一个的迁移对于移动设备来说是透明的,该设备仅仅觉察到了到远程服务器的连接。例如,移动设备用户可以从一个小区移动到相邻的一个小区,同时流式传输来自互联网的视频。对于该用户,在移动设备和互联网视频服务器之间的通信会话未被中断。该用户未觉察到在他的移动设备和互联网视频服务器之间的连接曾经由位于不同基站的不同代理服务器来处理的这一事实。允许代理服务器被分布在不同的基站,也就允许了在基站缓存内容,从而在移动回程网络中节约了带宽。虚拟化VPN服务除了对移动服务的虚拟化之外,允许会话状态从一个中间网络设备迁移到另一个的能力也允许了虚拟专用网(VPN)服务的虚拟化。VPN是这样的网络,其使用公共电信基础设施例如互联网,以给远程办公处所或个人用户提供到他们的组织的网络的安全访问。VPN 通过使用安全规程和隧道协议来保持私密。隧道是把整个包放在另一个包之内并且通过网络发送它的过程。外部包的协议被该网络和该包进出该网络的两个点所理解。例如,用户可以将使用互联网上不支持的协议的包放置在一个IP包之内,并且通过互联网来安全地发送它。用户也可以将一个使用了私人(不可路由)IP地址的包放置在使用全球唯一 IP 地址的包之内,以将私有网络扩展到互联网。
图5展示了示出VPN使能网络(现有技术)的示例体系结构的图。VPN使能网络 500包括多个客户机502至506,公共网络508,VPN主机510,以及多个企业服务器512至 516。为了安全地访问企业服务器(例如服务器512),客户机(例如客户机502)以边界网关诸如VPN主机510建立通信隧道,所述边界网关被配置为终止这一安全的点对点通信隧道、确认用户的身份识别并且在企业服务器512至516之间执行负载平衡。现代的工人时常处在运动中。例如,一位工人可能想要在家建立VPN隧道,并且在他乘火车到办公室的旅程中仍然使用同样的VPN隧道。此外,智能电话的推广也意味着更多的雇员可以通过使用智能电话连接到他们公司的VPN主机。VPN连接点的移动性可导致存在的VPN隧道从一个VPN主机迁移到另一个。然而,在这样的隧道迁移期间,VPN隧道状态也需要从先前的主机传送到新的主机,以保证VPN隧道化可以正确地在新主机上重新开始。在CCN中,这样的问题可被解决。图6展示了示出根据本发明的一个实施方案的 VPN使能网络的示例体系结构的图。VPN使能网络600包括多个客户机602至606,公共网络608,多个VPN主机610至612,CCN 614,企业网络624,以及多个企业服务器616至622。 VPN主机610和612通过CCN 614而被彼此连接。企业服务器616至622通过企业网络624 联接到VPN主机610和612,企业网络6 可以是CCN或常规TCP/IP网络。为了帮助客户机602至606和企业服务器616至622之间的安全通信,可在客户机和VPN主机之间建立安全VPN。例如,所述系统可以在客户机602和VPN主机610之间建立VPN隧道。在建立该 VPN隧道之后,客户机602可以访问企业服务器616至622。换句话说,来自客户机602的包被VPN主机610转发到相应的企业服务器。在一个实施方案中,VPN主机610将从客户机接收到的包例如TCP/IP包转换成CCN意向包和数据包的格式。相似地,VPN主机610也将来自企业服务器的CCN意向包和数据包转换成可被客户机理解的适合的包格式。在又一个实施方案中,VPN主机610也执行了负载平衡。接下来,客户机602从一个位置移动到另一个位置,并建立与VPN主机612的连接。因此,来自客户机602的用于存在的VPN隧道的通信包现在到达了 VPN主机612。响应于接收这样的包,VPN主机612确定该包属于正在进行的VPN隧道。此外,VPN主机612还确定了它不具有与正在进行的VPN隧道相关联的状态信息。这样的信息对于VPN隧道的重新开始是重要的,因其可能包含重要的加密信息。接下来,VPN主机612构建一个请求与该 VPN隧道相关联的状态信息的CCN意向,并且将该意向通过该CCN散布到其他VPN主机。在一个实施方案中,CCN意向被广播到所有其他VPN主机。在另一个实施方案中,CCN意向是基于包括在该包之内的TCP 5元组传输签名而构造的。在接收到这样的意向之后,VPN主机610可以确定它具有所请求的隧道状态,且使用CCN数据包通过CCN 614将这样的信息传输到VPN主机612。VPN主机612然后可以使用所接收到的信息重构该VPN隧道状态,并且继续该VPN隧道。注意,在VPN主机之间的隧道迁移对于客户机是透明的。从客户机602 的观察点看,当客户机602改变位置时保持了连续的VPN隧道。计算机和通信系统图7展示了根据本发明的一个实施方案的用于帮助在CCN上的会话迁移的示例计算机系统。在图7中,计算机和通信系统700包括处理器702、内存704和存储设备706。存储设备706存储了待要被处理器702所执行的程序。具体地,存储设备706存储了会话迁移应用708,以及其他应用例如应用710和712。在运行中,会话迁移应用708被从存储设备706装载到内存704中,然后由处理器702所执行。当执行该程序时,处理器702执行前述功能。计算机和通 信系统700被联接到可选的显示器714、键盘716和指针设备718。在具体实施方式
部分所描述的方法和过程可被实现为代码和/或数据,其可如上所述被存储在非瞬态计算机可读存储介质中。当计算机系统读取并执行存储在所述非瞬态计算机可读存储介质中的代码和/或数据时,所述计算机系统执行被实现为数据结构和代码并存储在所述非瞬态计算机可读存储介质中的所述方法和过程。此外,下述方法和过程可以被包括在硬件模块中。例如,所述硬件模块可包括,但不限于,专用集成电路(ASIC)芯片、现场可编程门阵列(FPGA),以及其他现在已知的或稍后研发的可编程逻辑器件。当所述硬件模块被启动时,所述硬件模块执行包括在所述硬件模块之内的方法和过程。本发明的实施方案的前述说明仅为描述和说明目的。它们不意为穷举性的,也不意在将本发明限制到所公开的形式。从而,对于本领域技术人员而言,许多修改和变化均为显然。此外,本公开内容也不意在限制本发明。本发明的范围由所附权利要求书限定。
权利要求
1.一种用于帮助会话迁移的计算机可执行的方法,包括 在中间网络设备接收从客户机去往远程服务器的包; 确定该包是否属于在前存在的通信会话;确定与该通信会话相关联的状态信息在该中间网络设备是否可用; 响应于通信包属于在前存在的通信会话且该会话状态信息不可用,构造一个请求该会话状态信息的意向,其中所述意向包括分层结构的可变长度的名称; 在网络上散布该意向;并且接收该会话状态信息,从而帮助会话迁移。
2.根据权利要求1所述的方法,还包括使用接收到的会话状态信息重构在前存在的通fn会话ο
3.根据权利要求1所述的方法,其中所述意向是基于包括在无线传输控制协议包内的传输签名而构造的,且其中所述传输签名识别所述会话。
4.根据权利要求1所述的方法,其中所述客户机是虚拟专用网(VPN)使能的,且其中所述包是VPN包。
5.根据权利要求1所述的方法,其中所述中间网络设备是VPN主机。
6.一种用于帮助会话迁移的系统,包括连接到网络的若干个中间网络设备,其中至少一个中间网络设备包括 接收机构,被配置为接收从客户机去往远程服务器的包; 第一确定机构,被配置为确定该包是否属于在前存在的通信会话; 第二确定机构,被配置为确定与该通信会话相关联的状态信息在该中间网络设备是否可用;意向构造机构,被配置为响应于通信包属于在前存在的通信会话且该会话状态信息在该中间网络设备不可用而构造一个请求该会话状态信息的意向,其中所述意向包括分层结构的可变长度的名称;意向散布机构,被配置为在网络上散布该意向;以及会话状态接收机构,被配置为接收该会话状态信息,从而帮助会话迁移。
7.根据权利要求6所述的系统,还包括会话构造机构,其被配置为使用接收到的会话状态信息重构在前存在的通信会话。
8.根据权利要求6所述的系统,其中所述意向是基于包括在无线传输控制协议包内的传输签名而构造的,且其中所述传输签名识别所述会话。
9.根据权利要求6所述的系统,其中所述客户机是虚拟专用网(VPN)使能的,且其中所述包是VPN包。
10.根据权利要求6所述的系统,其中所述中间网络设备是VPN主机。
全文摘要
本发明提供了一种用于帮助会话迁移的系统。在操作中,所述系统接收从客户机去往远程服务器的通信包。所述系统确定该通信包是否属于在前存在的通信会话,并确定与该会话相关联的会话状态信息是否本地可用。响应于通信包属于在前存在的通信会话且该会话状态信息本地不可用,该系统构造一个请求该会话状态信息的意向,在网络上散布该意向,并且接收该会话状态信息。本发明还提供了一种用于帮助会话迁移的方法。
文档编号H04L12/46GK102238226SQ20111010245
公开日2011年11月9日 申请日期2011年4月21日 优先权日2010年4月22日
发明者D·K·斯迈特斯, J·D·托恩顿, V·L·雅各布森 申请人:帕洛阿尔托研究中心公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1