TCP连接建立和切换的制作方法

文档序号:11533338阅读:223来源:国知局
TCP连接建立和切换的制造方法与工艺

本发明涉及连接建立和切换。具体地,本发明涉及用于通信网络中的连接建立和切换的方法、装置、系统和计算机程序产品。



背景技术:

虽然通信商业变得越来越成熟,并且传统的主要收入源(例如语音和消息传送)继续下降,但出现了使移动运营商产生收入的新机会。移动运营商通过提供引人注目的服务来标出(stakeout)新的领域是至关重要的,这些服务为订户提供真正令人满意和个性化的移动宽带体验。使内容移动靠近移动订户是一个示例。它为订户提供了更响应性的体验,因为内容可以更快地并且以更低的延迟递送。

作为一个示例,nokianetworkstm最近推出了“液体应用”,其提供了与基站集成的新的无线电应用云服务器(racs)。利用液体应用,可以直接从基站提供数据服务,使得承载商能够直接从基站递送媒体丰富的服务和内容。该服务通过使得数据能够通过基站来工作。这不仅意味着大的数据集避免了必须通过核心网络(这增加业务并且继而增加延迟),它们还可以反弹回到本地用户并提供更有帮助的服务。

云服务器(racs)将基站改变为用于服务创建和递送的本地中枢。与基本上只起通信管道作用的传统基站不同,服务感知ran(无线电接入网络)是一种智能基站,其通过各种各样的定制服务为客户提供独特的移动体验。基于智能基站的各种特征(诸如本地化处理、存储和对实时无线电和网络数据的访问),运营商预期开发向客户递送情境化和个性化体验的服务和应用。在其从基站内部取得数据来创建个性化和情境化的移动宽带体验的意义上而言是独特的。并且独特之处在于其使得能够创建可以使用接近度(proximity)和位置来连接订户和感兴趣的本地点、商业和事件的创新的新服务。

正如在常规的移动网络中那样,订户可以从一个地方漫游到另一个地方。切换应该是无缝的,以便保证令人满意的用户体验。作为一个示例,当ue可以从一个地方移动到另一个地方时,应维持ue和对应的网络元件之间的连接,并且需要无缝地处理切换。



技术实现要素:

本发明及其实施例设法解决上述问题中的一个或多个。

根据本发明的一个示例性示例,提供了一种用于通信网络中的第一装置的方法。该方法包括:从第二装置接收包括所述第二装置的ip地址和用户设备的ip地址的消息,其中所述用户设备经由第二装置连接到所述通信网络;确定是否存在与用户设备的ip地址相关的映射表;在存在所述映射表的情况下,基于用户设备的ip地址从所述映射表检索ip地址,其中所述ip地址在所述映射表中与所述用户设备的ip地址相关联;在所述第二装置的ip地址与所检索的ip地址不同的情况下,向由所检索的ip地址所标识的第三网络元件发送请求以获得tcp连接细节,并通过将所述用户设备的ip地址与所述第二装置的ip地址相关联来更新所述映射表。

根据本发明的进一步开发,用于第一装置的方法还包括从第三装置接收所请求的tcp连接细节,并将所述tcp连接细节转发到所述第二装置。

根据本发明的进一步修改,用于第一装置的方法还包括:在所述映射表不存在的情况下,保存所述用户设备的ip地址和所述第二装置的ip地址之间的关联作为所述映射表的一部分。

根据本发明的另一方面,提供了一种用于通信网络中的第二装置的方法。该方法包括从用户设备接收请求,其中所述请求包括所述用户设备的ip地址和目的地ip地址;向第三装置发送包括所述用户设备的ip地址和所述第二装置的ip地址的消息;从所述第三装置接收tcp连接细节;基于所接收的tcp连接细节来建立朝向所述用户设备的tcp连接;以及将所述请求转发到由所述目的地ip地址所标识的内容服务器。

根据本发明的进一步开发,用于第二装置的方法还包括从所述内容服务器接收对所述请求的响应,并将所述响应转发到所述用户设备。

根据本发明的第三方面,提供了一种装置,包括被配置为与至少另一装置通信的收发器、被配置为存储计算机程序代码的存储器、以及处理器。所述处理器被配置为使得所述装置执行:从第二装置接收包括所述第二装置的ip地址和用户设备的ip地址的消息,其中所述用户设备经由所述第二装置连接到通信网络;确定是否存在与所述用户设备的ip地址相关的映射表;在存在所述映射表的情况下,基于所述用户设备的ip地址从所述映射表检索ip地址,其中所述ip地址在所述映射表中与所述用户设备的ip地址相关联;在所述第二装置的ip地址与所检索的ip地址不同的情况下,向由所检索的ip地址所标识的第三装置发送请求以获得tcp连接细节,并通过将所述用户设备的ip地址与所述第二装置的ip地址相关联来更新所述映射表。

根据本发明的进一步开发,所述处理器还被配置为使得所述装置从所述第三装置接收所请求的tcp连接细节,并将所述tcp连接细节转发到所述第二装置。在变型中,所述处理器被配置为在所述映射表不存在的情况下,保存所述用户设备的ip地址和所述第二装置的ip地址之间的关联作为所述映射表的一部分。

根据本发明的第四方面,提供了一种第二装置。第二装置包括被配置为与至少另一装置通信的收发器、被配置为存储计算机程序代码的存储器、以及处理器,所述处理器被配置为使得所述装置执行:接收来自用户设备的请求,其中所述请求包括所述用户设备的ip地址和目的地ip地址;向第三装置发送包括所述用户设备的ip地址和所述第二装置的ip地址的消息;从所述第三装置接收tcp连接细节;基于所接收的tcp连接细节来建立朝向所述用户设备的tcp连接;以及将所述请求转发到由所述目的地ip地址所标识的内容服务器。

在变型中,第二装置的处理器被配置为从所述内容服务器接收对所述请求的响应,并将所述响应转发到所述用户设备。

根据本发明的第五方面,提供了一种包括计算机可执行计算机程序代码的计算机程序产品,当所述计算机程序代码在计算机上执行时被配置为使得所述计算机执行如上所述的方法及其变化。在变型中,所述计算机程序产品包括在其上存储计算机可执行计算机程序代码的计算机可读介质,和/或其中所述程序可直接加载到所述处理器的内部存储器中。

根据本发明的第六方面,提供了一种第三装置。第三装置包括用于与至少另一装置通信的收发器件、用于存储计算机程序代码的存储器、以及处理器件,所述处理器件用于使得所述第三装置执行:从第二装置接收包括所述第二装置的ip地址和用户设备的ip地址的消息,其中所述用户设备经由所述第二装置连接到通信网络;确定是否存在与所述用户设备的ip地址相关的映射表;在存在所述映射表的情况下,基于所述用户设备的ip地址从所述映射表检索ip地址,其中所述ip地址在所述映射表中与所述用户设备的ip地址相关联;在所述第二装置的ip地址与所检索的ip地址不同的情况下,向由所检索的ip地址所标识的装置发送请求以获得tcp连接细节,并通过将所述用户设备的ip地址与所述第二装置的ip地址相关联来更新所述映射表。

根据本发明的第七方面,提供了第四装置,其包括用于与至少另一装置通信的收发器件、用于存储计算机程序代码的存储器、以及处理器件,所述处理器件用于使得所述第四装置执行:接收来自用户设备的请求,其中所述请求包括所述用户设备的ip地址和目的地ip地址;向第三装置发送包括所述用户设备的ip地址和所述第四装置的ip地址的消息;从所述第三装置接收tcp连接细节;基于所接收的tcp连接细节来建立朝向所述用户设备的tcp连接;以及将所述请求转发到由所述目的地ip地址所标识的内容服务器。

附图说明

下文仅以示例的方式参照以下编号的附图来描述本发明的示例性实施例。

图1给出了根据本发明的一个方面的网络架构的示例性概述。

图2示出了根据本发明的另一方面的信令流程。

图3示出了根据本发明的一个实施例的信令流程。

图4图示了根据本发明的某一实施例的方法。

图5图示了根据本发明的某一实施例的另一方法。

图6描绘了图示根据本发明的某一实施例的两个装置的示意性框图。

具体实施方式

在下文中,参考附图详细描述本发明的某些实施例,其中除非另有说明,否则实施例的特征可以彼此自由地组合。然而,要清楚地理解,某些实施例的描述仅以示例的方式给出,并且绝不意在被理解为将本发明限制为所公开的细节。

此外,要理解,装置被配置为执行对应的方法,尽管在一些情况下,仅描述装置或仅描述方法。

在图1中,用户设备(ue)a11可以经由网络元件a12连接到网络,网络元件a12可以是诸如enb(e-节点b)之类的基站。网络元件a12可以包括可以是诸如云服务器racs的服务器的实体a122、以及可以被称为fco-r(flexi内容优化器-r)的另一实体a121。racs是虚拟机可以在其上运行的平台。例如,运营商可以在其上运行它自己的应用。实体a121和a122两者可以是附接到基站a12或与基站a12集成的独立元件。fco-ra121可以具有高速缓存存储,并且可以解释如在rfc2616中定义以用于高速缓存内容和从高速缓存检索内容的http(超文本传输协议)高速缓存控制指令。经由端口80/8080从uea11的tcp(传输控制协议)连接可以在fco-ra121中终止,并且对于这些端口上的业务,fco-ra121可以进行针对任何请求或响应的l7http报头分析,以便检查高速缓存控制报头并相应地处理它们——例如对响应内容进行高速缓存,或者如果内容存在于高速缓存存储中,则检索内容并且在对来自ue的请求进行响应时直接发送它。

并行地,fco-ra121可以向网络实体a15(其可以称为fco(flexi内容优化器))通知经由网络实体a121连接到网络的uea11的ip(网际协议)地址。这样的ip地址也可以称为源ip地址。可以在网络元件a15中维持源ip地址和相关联的网络实体(即,uea11通过其连接到网络的网络实体,例如a121)的ip地址的列表,其可以被称为映射表。

图1中所描绘的网络架构还可以包括核心网络,核心网络包括可以被称为sae-gw(系统架构演进-网关)a13的网络元件。sae-gwa13可以包括可以被称为s-gw的网络元件a131和可以被称为p-gw的另一网络元件a132。sae-gwa13可以连接到可以为订户提供预订策略的pcs(策略控制服务器)a14。在网络架构内,可以存在可以被称为netacta16的网络管理实体。fcoa15可以是核心网络的一部分。

图2提供了本发明的另一方面的进一步描述。uea11可以向第一fco-ra121发送包括uea11的ip地址和目的地ip地址(例如,内容服务器a17的ip地址)的消息,如步骤21中所示。该消息可以是例如tcpsyn分组。在接收到该消息时,fco-ra121可以向fcoa15发送包括源ip地址(即,ue的ip地址)及其自己的ip地址的消息,如步骤22中所示。fco-ra121也可以在步骤23中确认该消息(即,syn分组)的接收。可以在fcoa15中建立fco-r的ip地址和源ip地址之间的映射表,如果这样的映射表之前不存在的话。fcoa15可以使用所接收的源ip地址作为关键字来检索其相关联的ip地址。如果没有相关联的ip地址可以被找到,则fcoa15可以将这样的关联保存为映射表的一部分。如果所检索的ip地址与消息中包含的ip地址相同,则fcoa15不需要做任何事情,因为其涉及其中uea11可以发起除了现有tcp连接之外的另一tcp连接的情况。然而,如果所检索的ip地址不同于消息中包含的ip地址,则其是将在图3中解释的切换情况。

在从第一fco-ra121接收到确认(ack)23之后,uea11可以向fco-ra121发送http请求24。对于http业务(即经由端口80和8080发送的消息),fco-ra121可以执行l7http报头分析以检查所请求的内容在本地高速缓存中是否已经可用。如果否,则fco-ra121可以发起到由所接收的目的地ip地址所标识的内容服务器(诸如服务器a17)的tcp连接,并将该请求转发到服务器a17,如步骤25中所示。

从fco-ra121到服务器a17的tcp连接和uea11和fco-ra121之间的tcp连接可以被异步地创建和关闭。换句话说,由24和25指示的tcp连接是彼此独立的。

服务器a17可以在响应消息26中向fco-ra121提供所请求的内容,fco-ra121然后可以在步骤27中将该内容转发到uea11,并且同时分析http响应报头中的高速缓存指令以检查是否需要对该内容进行高速缓存。对于针对高速缓存的内容的后续请求,fco-ra121可以从本地高速缓存提供内容。

根据本发明的一个实施例,映射表也可以本地保存在fco-ra121中。当uea11尝试与先前建立的tcp连接并行地发起另一tcp连接时,其可以向fco-ra121发送包括目的地ip地址的消息(例如,tcpsyn)210。由于映射表在本地可用,这指示相同的映射表也存在于fcoa15中,并且在uea11和fco-ra121之间已经存在tcp连接,所以fco-ra121不需要如在步骤22中那样向fcoa15发送类似的消息。作为代替,其可以在步骤211中简单地确认消息的接收。然后,uea11可以在步骤212中向fco-ra121发送http请求。其余步骤213至215与步骤25至27相同。

可替代地,代替在fco-ra121中本地维持映射表,其还可以如虚线22a所指示的那样向fcoa15发送消息,该消息与步骤22中描述的是类似的消息。

当ue终止tcp连接(在步骤216中所示)时,fco-ra121可以关闭tcp连接,向fco通知移除源ip地址和fco-rip地址映射,并且还在本地移除映射表(在步骤217中)。

对于非http业务(即,不经由端口80/8080的业务),可以在服务器a17中终止tcp终止。如步骤219和220中所示,tcpsyn分组像通常一样被转发到核心网络,而在fco-ra121中没有任何进一步的处理。

图3描述了根据本发明的另一实施例的切换情况。uea11在包括第一fco-ra121的基站的覆盖区域内,并且它可以发起到服务器a17的tcp连接。类似于图2中已经描述的,tcpsyn分组被第一fco-ra121拦截,并且它可以发送包括uea11的ip地址(即,源ip地址)和第一fco-ra121的ip地址的消息。

图3中的步骤31-37类似于图2中的步骤21-27。

然后,uea11随后可以移动到由包括第二fco-ra31的不同的基站所覆盖的区域,如步骤38中所示。uea11可以假设在移动到不同的覆盖区域之后与第一fco-ra121建立的tcp连接仍然存在。如这样的典型场景是当uea11在下载会话期间从一个地方移动到另一个地方时。如39中所示,uea11可以向第二fco-ra31发送包括目的地ip地址的http请求(例如,tcp数据分组或tcpack分组)。第二fco-ra31可以发送包括源ip地址(即,向第二fco-ra31发送http请求的ue的ip地址)及其自己的ip地址的消息,如步骤310中所示。在接收到消息时,fcoa15可以通过使用源ip地址作为关键字来检索映射表。如果在映射表中与源ip地址相关联的ip地址与消息中包含的第二fco-ra31的ip地址不同,则指示ue可能未连接到由在映射表中与源ip地址相关联的ip地址所标识的网络元件。作为这样的情况的一个示例,uea11可能漫游到不同的覆盖区域。

在步骤311中,fcoa15可以向由从映射表检索到的ip地址所标识的网络元件发送请求,以便获得先前由uea11发起的tcp连接的连接细节。

在如步骤312中所描绘的那样接收到tcp连接细节时,fcoa15可以在步骤313中将它们转发到第二fco-ra31。fcoa15还可以通过将第一fco-ra121的ip地址替换为第二fco-ra31的ip地址来更新映射表。

然后,第二fco-ra31可以使用所接收的tcp连接细节来处理来自ue的http请求,如步骤314-316中所指示的。相对于现有连接的所有进一步的tcp数据处理由第二fco-ra31处理,如317-319中描绘的。

tcp连接细节可以包括诸如ue本地端口、初始序列号、客户端/服务器的ip地址之类的参数。另外,tcp连接细节还可以包括“发送字节”和“确认字节”。“发送字节”指示fco-r已经在下载会话中向ue发送了多少字节。“确认字节”告知ue已经在下载会话中向fco-r确认了多少字节。在漫游情况下,“发送字节”可以不等于“确认字节”,因为当ue将连接从一个基站转换到另一个基站时,一些比特可能仍然“在空中(intheair)”。在接收到“在空中”的这些字节之后,ue可以向当前连接的fco-r确认,使得不需要重发这些字节。然而,如果这些比特丢失,则fco-r需要重发这些比特。

图4图示了根据某一实施例的方法。该方法可以包括在401处接收包括发送消息的网络元件(例如fco-r(a121、a31))的ip地址和源ip地址的消息。该方法可以由诸如fco(a15)的网络元件执行。该方法还可以包括在402处将源ip地址与发送消息的fco-r(a121、a13)的ip地址相关联。如果不存在与源ip地址相关的映射表,则这样的关联可以作为映射表的一部分保存在fco(a15)中。然而,如果通过使用源ip地址作为关键字而有可能从映射表检索与源ip地址相关联的ip地址,则可以将所检索的ip地址与包含在所接收的消息中的ip地址进行比较。如果它们相同,则在步骤406中不需要做任何事情。其可以对应于其中除了现有tcp连接之外ue朝向内容提供商发起第二tcp连接的情况。

否则,如果所检索的ip地址与包含在所接收的消息中的ip地址不相同,则该方法可以进一步包括在403处向由所检索的ip地址标识的网络元件(例如,第一fco-ra121)发送请求,以便请求tcp连接细节。在接收到所请求的tcp连接细节时,如404中所示,fco可以通过将第一fco-ra121的ip地址替换为包含在消息中的ip地址(例如,第二fco-ra31的ip地址)来更新映射表。最后,在405处,可以将所接收的tcp连接细节转发到发送初始消息的网络元件,例如第二fco-ra31。

图5图示了根据某一实施例的另一方法。该方法可以包括在501处从uea11接收诸如http请求的请求。该请求可以包括uea11的ip地址和目的地ip地址。该方法可以由fco-r(例如fco-ra31)或通信网络中的任何合适的网络元件执行。该方法可以进一步包括在502处向网络元件(例如,fcoa15)发送包括uea11的ip地址和发送器(在该示例性示例中,其可以是fco-ra31)的ip地址的消息。

该方法还可以包括在503处接收tcp连接细节并建立朝向uea11的tcp连接。该方法可以进一步包括在504处将所接收的请求转发到由目的地ip地址所标识的服务器,例如内容服务器a17。该方法可以包括在505处从内容服务器a17接收与所转发的请求相关的响应,并且还在506处将所接收的响应转发到uea11。

在上述实施例中,尽管仅提及tcp作为一种类型的连接,但是对于本领域技术人员来说显而易见的是理解到该方法不限于tcp连接。在任何适当的情况下,本领域技术人员将使该方法适应于网络中的任何其他种类的连接。

图6图示了根据本发明的某些实施例的两个装置。在一个实施例中,一个装置可以是fco60,并且另一个装置可以是fco-r61。这些设备中的每一个可以包括分别被指示为601和611的至少一个处理器(或处理器件)。至少一个存储器可以在每一个设备中提供,并且分别被指示为602和612。存储器可以包括计算机程序指令或其中包含的计算机代码。处理器601和602以及存储器602和612或其子集可以被配置为提供与图4和图5的各个框对应的器件。

如图6中所示,可以提供收发器(或收发器件)603和613。收发器603和613可以均独立地是发送器、接收器、或发送器和接收器二者、或者被配置用于发送和接收二者的单元或设备。处理器(或处理器件)601和611可以由任何计算或数据处理设备体现,诸如中央处理单元(cpu)、专用集成电路(asic)或同类的设备。处理器可以被实现为单个控制器、或者多个控制器或处理器。

存储器602和612可以独立地是任何合适的存储设备,诸如非暂时性计算机可读介质。可以使用硬盘驱动器(hdd)、随机存取存储器(ram)、闪存或其他合适的存储器。存储器可以与处理器被组合在单个集成电路上,或者可以与一个或多个处理器分离。此外,存储在存储器中并且可以由处理器处理的计算机程序指令可以是任何合适形式的计算机程序代码,例如,以任何合适的编程语言编写的经编译或解释的计算机程序。

存储器和计算机程序指令可以利用用于特定设备的处理器(或处理器件)配置为使得诸如fco60和fco-r61的硬件装置执行本文描述的任何过程(例如,图4和5)。因此,在某些实施例中,非暂时性计算机可读介质可以被编码有计算机指令,所述指令当在硬件中执行时,执行诸如本文描述的过程之一的过程。可替代地,本发明的某些实施例可以完全在硬件中执行。此外,尽管图6图示了诸如fco和fco-r的网络元件,但是本发明的实施例可以适用于其他配置以及包含附加元件的配置。例如,未示出,可以存在附加的网络元件,并且可以存在附加的核心/无线电网络元件,如图1中所图示的。

本领域普通技术人员将容易理解,如以上所讨论的本发明可以利用采用不同次序的步骤和/或利用采用与所公开的配置不同的配置的硬件元件来实践。因此,尽管已经基于这些优选实施例描述了本发明,但是对于本领域技术人员将显而易见的是,在保持在本发明的范围内时,某些修改、变化和替代构造将是显而易见的。因此,为了确定本发明的边界和界限,应当参考所附权利要求。

出于如上所述的本发明的目的,应当注意到

-可能被实现为软件代码部分并且使用服务器实体之一处的处理器运行的方法步骤是软件代码独立的,并且可以使用任何已知或未来开发的编程语言来指定;

-可能被实现为服务器实体之一处的硬件组件的方法步骤和/或设备是硬件独立的,并且可以使用任何已知或未来开发的硬件技术(诸如mos、cmos、bicmos、ecl、ttl等)或这些的任何混合使用例如asic组件或dsp组件来实现(作为示例);

-通常,任何方法步骤适合于作为软件实现或通过硬件实现,而不改变本发明的思想;

-设备可以被实现为单独的设备,但是这并不排除它们遍及系统以分布式方式实现,只要保持设备的功能。

要理解,上述描述是对本发明的说明,而不要解释为限制本发明。在不脱离如由所附权利要求限定的本发明的范围的情况下,本领域技术人员可以想到实施例的各种修改、应用和/或组合。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1