CN112585910B - 在广域网中建立安全、低延迟、优化路径的方法和装置 - Google Patents

在广域网中建立安全、低延迟、优化路径的方法和装置 Download PDF

Info

Publication number
CN112585910B
CN112585910B CN202080002466.9A CN202080002466A CN112585910B CN 112585910 B CN112585910 B CN 112585910B CN 202080002466 A CN202080002466 A CN 202080002466A CN 112585910 B CN112585910 B CN 112585910B
Authority
CN
China
Prior art keywords
node
wan
oriented
communication
stream
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202080002466.9A
Other languages
English (en)
Other versions
CN112585910A (zh
Inventor
苗家豪
陈炜
罗枝城
董亮
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hong Kong Applied Science and Technology Research Institute ASTRI
Original Assignee
Hong Kong Applied Science and Technology Research Institute ASTRI
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US17/020,932 external-priority patent/US11082255B1/en
Application filed by Hong Kong Applied Science and Technology Research Institute ASTRI filed Critical Hong Kong Applied Science and Technology Research Institute ASTRI
Publication of CN112585910A publication Critical patent/CN112585910A/zh
Application granted granted Critical
Publication of CN112585910B publication Critical patent/CN112585910B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4633Interconnection of networks using encapsulation techniques, e.g. tunneling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/24Multipath
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/50Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0485Networking architectures for enhanced packet encryption processing, e.g. offloading of IPsec packet processing or efficient security association look-up

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

提供了一种在通信网络中的广域网(WAN)上传输数据包的方法和装置,其中WAN包括多个互连节点,其至少包括第一通信节点、第二通信节点和WAN控制器节点。该方法包括:在构成WAN的部分或全部通信节点之间的通信链路上建立虚拟专用网(VPN)隧道连接;使用非面向流的传输层协议为每个VPN隧道建立非面向流的关联;在所述第一通信节点接收到来自源设备的分组连接时,将来自所述分组连接的数据包封装到第一通信节点和第二通信节点之间的一个或多个非面向流的关联中,从而将所述数据包从源设备传输到第二通信节点。WAN控制器节点向第一通信节点传达向第二通信节点传输数据包的链路或路由的选择。第一通信节点从多个非面向流的关联中选择一个或多个非面向流的关联,以用于数据包封装,所述多个非面向流的关联在WAN控制器节点向所述第一通信节点通信传达的链路或路由上建立。

Description

在广域网中建立安全、低延迟、优化路径的方法和装置
技术领域
本发明涉及一种用于在广域网(WAN)中建立安全、低延迟、优化路径的方法和装置,特别涉及但不限于例如通过减少WAN中高延迟通信链路上的传输控制协议(TCP)连接建立时间来减少WAN中的连接建立时间。
背景技术
在通信网络中,延迟(latency)是对时延(delay)的度量。延迟可以包括跨通信网络或在所述网络中特定节点之间建立连接的延迟的度量。延迟还可以包括将数据传输到网络中其目的地的延迟的度量。延迟通常以往返延迟来度量,尽管不一定总是这样。延迟也可以视为衡量网络响应能力的标准,它反映了网络有效建立连接和/或有效传输数据的能力。
在全球组织或跨国公司的典型WAN部署中,组织站点通常位于全球各地,而且它们之间可能有很长的地理距离。在这种情况下,组织站点可能需要长距离的通信链路,这可能会表现出高延迟。通常,组织站点之间有多个通信链路相互连接。例如,这种通信链路可以包括但不限于租用线路、多协议标签交换(MPLS)网络链路、专用网络链路、公共网络链路、卫星***链路和互联网链路。长距离链路或连接可能会遇到大量的握手信号延迟。例如,在TCP的情况下,长距离链路或连接可能会导致用于 TCP连接建立的高延迟三向握手(three-way handshake),并因此导致在通过此连接发送或传递第一个数据之前存在高延迟。此外,由于缺乏对不同类型网络流量的链路选择的动态管理,链路带宽利用率通常较低。因此,由于高延迟和低链路带宽利用率,可能会大大降低WAN网络中站点之间的数据包吞吐量。
US9722815公开了一种边缘网关多路径方法,包括提供局域网中的边缘设备与云计算网络中的云计算服务通信连接。自动检测到连接到边缘设备的一组WAN链路。不需要外部路由器即可自动检测WAN链路。边缘设备与云计算网络中的中央配置点通信连接。该方法还包括以下步骤:从中央配置点将企业特定的配置数据下载到边缘设备中。企业特定的配置数据包括网关信息。边缘设备与云计算网络中的网关通信连接。边缘设备与网关的通信练级包括多路径(MP)协议。实际上,云服务器中的集中式配置点会根据每个路径上的可用带宽来选择路径。
EP1333642公开了一种用于支持通信网络安全的方法。网络设备包括安全对等方,该安全对等方在数据网络(如卫星网络)上建立安全隧道以传输加密业务。该设备还包括一个性能对等方,用于建立安全隧道支持的连接。
US10122829公开了一种用于提高网络通信性能的网络***。该***包括至少在第一客户站点实施的至少一个客户站点网络组件。客户站点网络组件绑定或聚合一个或多个不同的网络连接,以便配置具有增加吞吐量的绑定连接。该***包括至少一个网络服务器组件,网络服务器组件被配置成使用绑定连接来连接到客户站点网络组件。网络服务器组件自动终止绑定连接并将数据业务传递到至少一个网络。该***包括在至少一个网络服务器组件处的虚拟控制平面接口和被配置成管理数据业务的云网络控制器。云网络控制器可用于配置虚拟控制平面接口,以便为来自或去往多个客户站点网络组件的数据业务提供优先级队列。
US7680051公开了一种***,用于预配置流控制传输协议(SCTP) 关联,接收网络设备中的TCP数据包,其中TCP数据包用于目标节点,并将TCP数据包封装到SCTP有效载荷中,以便在WAN上传输SCTP有效载荷。但是,当延迟最小化时,最好避免由于不当注入过多流量超出WAN链路容量或超过服务质量(QoS)策略而造成数据丢失。
US9450817公开了一种可扩展软件定义网络(SDN)控制器,该控制器提供了一个应用程序感知框架,使各种不同的用户应用程序能够与控制器进行通信,并允许控制器根据应用程序的需求自动配置网络中的设备。因此,SDN控制器可以根据应用程序的需求自动配置网络中的设备。
US10021594公开了一种卫星通信***,其被配置成根据协议在第一卫星调制解调器和第二卫星调制解调器之间建立多个不同的隧道。第一卫星调制解调器可以经由根据不同协议建立的隧道来接收数据包。然后,它可以基于包含在数据包中的一个或多个报头(header)的信息来确定对应于隧道的端点标识符,识别对应于隧道的多个不同隧道中的一个,生成一个相应的数据包,该数据包省略了来自一个或多个报头的至少一部分信息,并包括所述数据包有效载荷中包含的至少一部分数据,以及包括与多个不同隧道中的所识别的那一个隧道的隧道索引相对应的信息块,并经由多个不同隧道中的识别的那个隧道将相应的数据包传输到第二卫星调制解调器。但是,TCP建立时间没有减少,发送第一数据有效载荷的延迟也没有减少。
因此,仍然需要至少一种能够在WAN中的通信链路上,特别是在WAN中的长距离通信链路上提高连接建立效率的方法和设备。
发明目的
本发明的一个目的是在一定程度上减轻或消除与WAN中使用高延迟网络连接的已知方法相关的一个或多个问题。
上述目的通过主权利要求的特征组合来实现;从属权利要求公开了本发明的其他有利实施例。
本发明的另一个目的是在一定程度上减轻或消除与在WAN中的通信链路上,特别是在WAN中的长距离通信链路上的连接建立效率相关的一个或多个问题。
本发明的另一个目的是减少WAN中TCP连接建立的延迟。
本发明的另一个目的是改善WAN中的路径优化。
本发明的另一个目的是提高WAN中的数据包传输吞吐量。
本发明的另一个目的是提高WAN中的网络安全性。
本领域技术人员将从以下描述中得出本发明的其他目的。因此,上述目的的陈述不是穷举性的,仅用于说明本发明的许多目的中的一些。
发明内容
本发明涉及一种用于在WAN中建立安全、低延迟和/或优化路径的方法和装置。
在第一主要方面,本发明提供了一种用于在通信网络中的广域网(WAN)上传输数据包的方法和装置,其中该WAN包括多个互连的节点,该互连的节点至少包括第一通信节点、第二通信节点和WAN控制器节点。该方法包括:在部分或全部通信节点之间的通信链路上建立虚拟专用网 (VPN)隧道连接,使用非面向流的传输层协议为每个VPN隧道连接建立非面向流的关联,在接收到来自所述第一通信节点的源设备的分组连接时,将来自所述分组连接的数据包封装到第一通信节点与第二通信节点之间的一个或多个非面向流的关联中,从而将所述数据包从源设备传输到第二通信节点。WAN控制器节点向第一通信节点传送链路或路由的选择,以用于将数据包传输到第二通信节点。第一通信节点从多个非面向流的关联中选择一个或多个非面向流的关联,用于数据包封装,所述多个非面向流的关联在所述WAN控制器节点向所述第一通信节点通信传达的链路或路由上建立。
优选地,所述第一通信节点接收到的来自源设备的分组连接包括面向流的分组连接和可选的TCP分组连接。同样优选地,非面向流的传输层协议包括面向消息的传输层协议。优选地,面向消息的传输层协议包括流控制传输协议(SCTP)。可选地,每个SCTP关联是在互联网协议安全 (IPSec)VPN隧道中加密的。
在第二主要方面,本发明提供了一种用于通信网络中的WAN的节点,该WAN包括通信网络中的多个互连的节点。该节点包括VPN模块,该VPN模块被配置成在所述节点与构成WAN的部分或全部其他节点之间的通信链路上建立VPN隧道连接。该节点还包括非面向流的传输层协议模块,该模块被配置成在所述节点处为每个VPN隧道连接建立非面向流的关联。还包括面向流的传输层协议代理模块,该模块被配置成:在所述节点处接收来自源设备的面向流的连接时,将来自所述面向流连接的数据包封装到所述节点和目标节点之间的一个或多个非面向流的关联中,从而将所述数据包从源设备传输到目标节点。远程过程调用(remote procedure call, RPC)模块被配置成从WAN控制器节点接收链路或路由的选择,以用于从所述节点到构成WAN的其他节点的数据包传输。所述节点被布置成使得面向流的传输层协议代理模块从多个非面向流的关联中选择一个或多个非面向流的关联,用于封装数据包,所述多个非面向流的关联是建立在WAN控制器节点向第一节点传达的链路或路由上的。
在第三主要方面,本发明提供了一种方法,包括:预配置多个非TCP关联,该非TCP包括面向消息的传输层协议和可选地包括SCTP;从网络设备接收TCP数据包,该TCP数据包旨在用于目标节点或设备;将TCP 数据包封装成一个或多个选定的非TCP关联的非TCP有效载荷;以及将非 TCP有效载荷在一个或多个选定的非TCP关联上以一个或多个流的形式,跨WAN传输到目标节点或设备,其中,选定的一个或多个非TCP关联是基于WAN的一个或多个拓扑和/或一个或多个运行参数来选择的。
在第四主要方面,本发明提供一种通信节点,包括非面向流的传输层协议模块,用于预配置多个非TCP关联,该非TCP包括面向消息的传输层协议,并且可选地,包括SCTP,面向流的传输层协议代理模块,用于接收来自网络设备的TCP数据包,该TCP数据包旨在用于目标节点或设备,所述面向流的传输层协议代理模块被配置成将TCP数据包封装成一个或多个非TCP关联的TCP有效载荷,并将非TCP有效载荷以一个或多个流的形式在一个或多个非TCP关联上传输到目标节点或设备,其中面向流的传输层协议代理模块被配置成选择在一组链路或路由上建立的一个或多个非TCP关联,所述一组链路或路由是基于WAN的一个或多个拓扑和/或一个或多个运行参数来选择的。
在第五主要方面,本发明提供了一种通过通信网络中WAN传输数据包的方法,该WAN包括多个互连的通信节点,包括至少第一通信节点、第二通信节点和WAN控制器节点,该方法包括以下步骤:在WAN控制器节点处,从第一和第二通信节点接收有关WAN的一个或多个拓扑和/或一个或多个运行参数的信息;处理所述接收到的信息,以便为第一和第二通信节点确定各自选择的VPN隧道连接,所述各自选择的VPN隧道连接已经建立在连接所述第一和第二通信节点的链路或路由上了,每个所述VPN隧道连接上已经建立了一个非面向流的关联,用于封装来自面向流的分组连接的数据包;并将所述各自选择的VPN隧道连接发送到所述第一和第二通信节点。
在第六主要方面中,本发明提供一种WAN控制器节点,包括多个互连的通信节点,包括至少第一通信节点和第二通信节点,该WAN控制器节点包括RPC模块,用于从第一和第二通信节点接收关于WAN的一个或多个拓扑和/或一个或多个运行参数的信息,以及处理器,用于处理所述接收到的信息,以便为每个所述第一和第二通信节点确定各自选择的VPN隧道连接,所述各自选择的VPN隧道连接已经建立在连接所述第一和第二通信节点的链路或路由上了,每个所述VPN隧道连接已经在其上建立了非面向流的关联,用于封装来自面向流的分组连接的数据包。
本发明概述并不一定公开定义本发明必不可少的所有特征。本发明可以存在于所公开特征的子组合中。
附图说明
从下面对优选实施例的描述中可以看出本发明的上述和进一步的特征,这些优选实施例仅结合附图以举例的方式提供,其中:
图1是现有技术的WAN配置示意图。
图2是本发明一个实施例的WAN配置示意图。
图3是本发明一个实施例的WAN配置的WAN控制器节点的示意框图。
图4是本发明一个实施例的WAN配置的通信节点的示意框图。
图5是本发明一个实施例的WAN配置示意图,显示了数据包传输路径的建立。
图6是本发明的WAN配置的控制器节点动态选择WAN中通信节点链路或路由的方法流程图。
图7显示本发明的减少跨WAN的连接建立时间的方法的信号图。
图8是进一步说明本发明的减少跨WAN的连接建立时间的方法的信号图。
图9是本发明另一实施例的WAN配置示意图。
具体实施方式
以下描述的是优选实施例,仅举例说明,并不限于实施本发明所需的特征组合。
本说明书中提到的“一个实施例”或“实施例”是该实施例描述的特定特征、结构或特性包括在本发明的至少一个实施例中。说明书中各个地方出现的短语“在一个实施例中”不一定都指同一实施例,也不是与其他实施例互斥的单独或替代的实施例。而且,描述的各种特征,可能由一些实施例展现,而不是由其他实施例展现。类似地,描述的各种要求,可能是某些实施例的要求,但不是其他实施例的要求。
应当理解,附图中所示的元件可以以各种形式的硬件、软件或其组合来实现。这些元件可以在一个或多个适当编程的通用设备上以硬件和软件的组合来实现,该通用设备可以包括处理器、存储器和输入/输出接口。
本说明书说明了本发明的原理。因此,可理解的是,本领域技术人员将能够设计出尽管未在本文中明确描述或示出但体现本发明原理并且包括在其精神和范围内的各种布置。
此外,本文中叙述本发明的原理、方面和实施例及其具体实施例的所有陈述旨在涵盖其结构和功能上的等同物。另外,意在使这样的等同物包括当前已知的等同物,也包括将来开发的等同物,即,任何开发的无论其结构如何但具有相同功能的元件。
因此,例如,本领域技术人员可理解的是,本文提出的框图代表了体现本发明原理的***和装置的概念图。
附图中所示的各种元件的功能可以通过使用专用硬件以及能够与适当的软件联合执行软件的硬件来提供。当由处理器提供时,这些功能可以由单个专用处理器、单个共享处理器或多个单独的处理器提供,其中一些可以共享。此外,术语“处理器”或“控制器”的明确使用不应解释为仅能够执行软件的硬件,并且可以隐含地包括但不限于数字信号处理器(“DSP”)硬件、用于存储软件的只读存储器(“ROM”)、随机存取存储器 (“RAM”)和非易失性存储器。
在权利要求书中,任何表示为执行特定功能的装置的元件旨在涵盖执行该功能的任何方式,例如包括a)执行该功能的电路元件的组合,或b)任何形式的软件,因此包括固件、微代码或与类似适当电路组合用于执行该软件以执行该功能。由这样的权利要求书定义的本发明在于以下事实:由各种所述装置提供的功能是以权利要求书所要求的方式组合和汇集在一起。因此认为,可以提供那些功能的任何装置都等同于本文所示的装置。
本发明将仅通过示例的方式对广域网(WAN)进行描述,但是应当理解,本文所公开的发明原理同样适用于具有一个或多个高延迟网络连接的任何类型的通信网络,无论是传统网络连接类型或者无线网络通信类型,还是高延迟回程网络连接类型,例如卫星网络连接或跨大陆光纤网络连接。
参考图1,图1显示一个全球组织如跨国公司的WAN 10的简化常规配置。WAN 10包括第一组织站点“站点1”12,其通过多个通信链路 14连接到第二组织站点“站点2”16。组织站点12、16可以在地理上相隔很长的距离,甚至可以位于不同国家。在该示例中,第一站点12位于中国香港,第二站点16位于旧金山。
尽管未示出,但是每个站点12、16可以包括多个通信节点,包括枢纽站点节点和分支站点节点。在站点12、16处,枢纽站点节点18、 20为其站点12、16处的其他通信节点提供到通信链路14的网关。包括枢纽站点节点18、20的通信节点为连接设备如个人计算机(PC)(如图1中的源PC 22和目标PC 24)以及本领域技术人员熟悉的通信设备(未示出) (如手机等)提供对通信链路14的访问。可以理解的是,示例性的源PC 22 和目标PC 24并不限于图1中指代所传达的各自的角色,而是可以同时用作源和目的。图1中角色指代是为了便于描述常规配置的WAN的典型运作,以说明所述WAN中的不足之处。站点12、16处的其他通信节点可以包括服务器、数据库、交换机、路由器等的任意组合。通信链路14可以包括但不限于租用线路14A、MPLS网络连接14B和互联网提供的连接14C。
通常,WAN 10被配置成TCP网络,当源PC 22希望将有效载荷数据包传输到目标PC24时,必须首先在源PC 22与目标PC 24之间建立或设置TCP连接。这需要一个TCP三向握手过程。该TCP三向握手过程中的从中国香港到旧金山的单向TCP连接信号延迟通常约为164ms。因此,TCP 三向握手过程的总延迟约为492ms。结果,由于站点1的枢纽站点节点18和站点2的枢纽站点节点20之间的长距离连接上的高延迟TCP连接建立,用户体验将很差。进一步的后果是,从枢纽站点节点18到枢纽站点节点 20开始传输接收到的有效载荷数据包就会出现延迟。其他后果包括:互联网提供的连接14C可能无法充分利用,互联网提供的连接14C可能不安全,即使租用线路14A和/或MPLS网络连接14B变得拥塞时,枢纽站节点18仍将继续使用它们,并且枢纽站点节点18无法在通信链路14之间动态切换。因此,由于高延迟和低链路利用率,第一站点12和第二站点16之间的TCP有效载荷数据包传输可能会显著减少。
下面描述的本发明旨在克服图1所示的传统WAN配置中的缺陷,其主要目的是降低跨WAN的连接建立的延迟,改善路径优化,提高有效载荷数据包吞吐量,以及改善网络安全性,包括在任何或所有易受攻击的WAN 通信链路上的安全性,尤其是互联网提供链路上的安全性。
参考图2,图2显示了根据本发明的WAN 100的简化配置。在 WAN 100的以下描述中,类似的组件或部件将使用与图1中类似的数字标记,但是在数字前加“1”。类似组件或部件之间的任何差异将在下面描述,以突出这种差异。
在图2中,可以看到WAN 100的配置与图1的传统WAN的配置基本相同,除了包括控制器126和其他功能上的差异,以下将对其进行描述。WAN 100包括第一组织站点“站点1”112,其通过多个通信链路114 连接到第二组织站点“站点2”116。站点112、116包括多个通信节点,包括枢纽站点节点和分支站点节点。可以认为包括第一和第二通信节点的枢纽站点节点118、120为其他通信节点(未示出)提供到通信链路114 的网关,并且包括枢纽站点节点118、120的通信节点为诸如源PC 122和目标PC 124之类的设备以及其他通信设备(未示出)提供对通信链路114 的访问。通信链路114可以包括但不限于租用线路114A、MPLS网络连接 114B和互联网提供的连接114C。控制器126可以不包括单独的物理节点,但可以通过WAN 100的任何合适的节点中的软件来体现。
参见图3,控制器126,在本文中也称为“WAN控制器节点”,包括远程过程调用(RPC)模块128,其被配置成从枢纽站点节点118、120 和/或从站点112、116上其他通信节点接收关于WAN 100的一个或多个拓扑和/或一个或多个运行参数的信息。WAN100的一个或多个拓扑和/或一个或多个运行参数可以包括WAN通信节点配置数据、WAN通信节点状态数据、 WAN链路配置数据、WAN链路状态数据、WAN链路质量数据中的任意一个或任意组合。枢纽站点节点118、120和/或其他通信节点可以被配置成周期性地将拓扑和/或运行参数数据提供给控制器126。控制器126包括至少一个处理器130和至少一个存储器132。存储器132可以包括路由表133。控制器126可以包括在WAN 100中通信连接到每一个枢纽站点节点118、120 和/或其他通信节点的不同通信节点,或者它可以体现在上述节点中任何一个节点或另一个WAN节点中。换句话说,控制器126可以体现在WAN 100 中的任何合适的节点中,只要它可以与提供拓扑和/或运行参数数据的每个节点通信连接。
此外,控制器126可以使用存储在存储器132中的逻辑电路和 /或可执行代码/机器可读指令来实现,以便由处理器130执行,从而执行如下所述的功能。例如,可执行代码/机器可读指令可以存储在一个或多个存储器132(如随机存取存储器(RAM)、只读存储器(ROM)、闪存、磁存储器、光存储器等)中,适合于存储一个或多个指令集(如应用软件、固件、操作***、小程序等)、数据(如配置参数、运行参数和/或阈值、收集的数据、已处理的数据等)。一个或多个存储器132可以包括处理器可读存储器,针对一个或多个处理器130使用,其可运行以执行控制器126的代码段和/或利用由此提供的数据来执行如本文所述的控制器126的功能。另外地或可替代地,控制器126可以包括一个或多个专用处理器(如专用集成电路(ASIC)、现场可编程门阵列(FPGA)、图形处理单元(GPU)等) 和/或被配置成执行如本文所述控制器126的功能的类似物。
处理器130被配置成接收拓扑和/或运行参数数据,并处理所述数据,以便为所述第一和第二枢纽站点节点118、120在已建立的VPN 隧道连接选择通信链路或路由114,其中每个所述VPN隧道连接已经在其上建立了非面向流的传输层协议关联(non-stream-oriented transport layer protocol association),用于封装来自面向流的传输层协议分组连接的数据包,这将在下面更全面地描述。
参照图4,每个枢纽站点节点118、120或站点112、116处的任何其他合适的节点可以包括WAN通信节点134,用于实施根据本发明的方法。WAN通信节点134包括VPN模块136,该VPN模块136被配置成在所述节点134和构成WAN 100的一些或所有其他节点(如枢纽站点节点120) 之间的通信链路114上建立VPN隧道连接148(图5)。
WAN通信节点134包括非面向流的传输层协议模块138,其被配置成在所述节点134处为每个VPN隧道连接148建立非面向流的关联150 (图5)。非面向流的传输层协议优选地包括面向消息的传输层协议。更优选地,面向消息的传输层协议包括SCTP。SCTP是面向消息的,而TCP是面向流或字节的。SCTP可以处理多个同时流和多路流,而TCP只能处理每个连接的单一数据流。可选地,每个SCTP关联150在互联网协议安全(IPSec) VPN隧道148中被加密,或者至少在公共网络(如互联网)上提供的VPN 隧道被加密为IPSec隧道148。
WAN通信节点134还包括面向流的传输层协议代理模块140,其被配置成在所述节点134上接收来自源设备(如源PC 122)的面向流的连接152(图5)时,将来自所述面向流的连接152的数据包封装为在所述节点134与目标节点之间的选定的非面向流的关联150上的一个或多个数据流,从而将所述数据包从源PC 122传输到目标节点。在所述WAN通信节点134处接收到的来自源PC 122的面向流的连接152优选为TCP分组连接。面向流的传输层协议代理模块140可以认为包括TCP代理模块。
WAN通信节点134还包括RPC模块142,其被配置成从WAN控制器节点126接收链路或路由的选择,以用于从所述节点134到其他节点 120的数据包传输。
WAN通信节点134被布置成,使面向流的传输层协议代理模块 140从多个非面向流的关联中选择非面向流关联150用于封装数据包,所述多个非面向流的关联是建立在WAN控制器节点126向所述节点134传达的链路或路由114上的。
WAN通信节点134还包括至少一个处理器144和至少一个存储器146。存储器可以包括路由表147。
WAN通信节点134可以使用存储在存储器146中的逻辑电路和/ 或可执行代码/机器可读指令来实现,以便由处理器144执行,从而执行下文所述的功能。例如,可执行代码/机器可读指令可以存储在一个或多个存储器146(如随机存取存储器(RAM)、只读存储器(ROM)、闪存、磁存储器、光存储器等)中,适合于存储一个或多个指令集(如应用软件、固件、操作***、小程序等)、数据(如配置参数、运行参数和/或阈值、收集的数据、已处理的数据等)。一个或多个存储器146可包括处理器可读存储器,关于一个或多个处理器144使用,其可运行以执行WAN通信节点134的代码段和/或利用由此提供的数据来执行如本文所述的WAN通信节点134的功能。另外,或可替代地,WAN通信节点134可以包括一个或多个专用处理器(如专用集成电路(ASIC)、现场可编程门阵列(FPGA)、图形处理单元 (GPU)和/或类似的处理器,被配置成执行如本文所述的WAN通信节点134 的功能。
参照图5,可以看出,在一个优选的布置中,VPN模块136在部分或全部通信节点(如第一通信节点118和第二通信节点120)之间的通信链路114上建立IPSec VPN隧道连接148。然后,第一通信节点118 的非面向流的传输层协议模块138优选使用SCTP为每个IPSec VPN隧道连接148建立SCTP关联或连接150。面向流的传输层协议代理模块140在接收来自源PC122的TCP分组连接152时,将来自所述TCP分组连接152 的数据包封装成一个或多个选定的SCTP关联150的数据流,从而将所述数据包从源PC 122传输到第二通信节点120,如枢纽站点节点120。WAN控制器节点126将选择的链路或路由114传送到RPC模块142,以将数据包传送到第二通信节点120。面向流的传输层协议代理模块140利用接收到的链路或路由114的选择,从多个SCTP关联150中选择SCTP关联,用于封装TCP数据包,所述多个SCTP关联150建立在WAN控制器节点126向所述第一通信节点118传达的链路或路由114上。因此可以看出,在第一通信节点118从源PC 122接收TCP分组连接152之前,WAN控制器节点126 已选择向第一通信节点118传达链路或路由114。
当第一通信节点118接收到来自源PC 122的TCP分组连接152 时,面向流的传输层协议代理模块140使用选定的SCTP关联150来向第二通信节点120发出信号,从而第二通信节点120在收到信号时,与目标节点或目标设备(如目标PC 124)建立本地TCP连接154,从而形成从源PC 122到目标PC 124的跨WAN 100的虚拟TCP连接,同时避免了跨WAN 100 进行三向TCP握手的需要。随后,但是在完全建立跨WAN 100的虚拟TCP 连接之前,可以开始从第一通信节点118到至少第二通信节点120的TCP 有效载荷数据包传输。
一旦在第二通信节点120处接收到TCP有效载荷数据包,则所述节点120解封装来自所选SCTP关联150的一个或多个流的封装TCP有效载荷数据包,并将所述解封装的TCP有效载荷数据包通过本地TCP连接154 传输到目标PC 124。
当对要发送到第一通信节点118的链路或路由114进行选择时,且从第一通信节点118无法获得链路114的状态数据或链路状态在管理上不可用时,WAN控制器节点126可以不将所述链路114包括在发送到第一通信节点118的数据包传输的链路或路由114的选择中,或者WAN控制器节点126可以包括链路114,但是将所述链路114标识为不可用于高优先级数据包传输。
当要对发送到第一通信节点118的链路或路由114进行选择时,并且当第一通信节点118的链路的一个或多个运行参数超过各自的阈值时, WAN控制器节点126可以不将所述链路114包括在发送到第一通信节点118 的数据包传输的链路或路由114的选择中,或WAN控制器节点126可以包括链路114,但是将所述链路114标识为不可用于高优先级数据包传输。各个阈值可以由WAN控制器节点126定义,并且可以由其动态地调整。
替代地或额外地,当要对发送到第一通信节点118的链路或路由114进行选择时,并且当第一通信节点118的链路的一个或多个运行参数超过特定业务类型的相应阈值时,WAN控制器节点126可以不将所述链路114包括在发送到第一通信节点118的特定类型业务的数据包传输的链路或路由114的选择中,或者WAN控制器节点126可以包括链路114,但是将所述链路114标识为不可用于特定业务类型的高优先级数据包传输。
在上述任何情况下,链路114的一个或多个运行参数可以包括抖动、延迟和丢包率中的任意一个或任意组合。
仅举例来说,对于实时业务如视频和音频流媒体业务,链路的运行参数的相应阈值可包括:抖动阈值5ms;延迟阈值100ms;丢包率为 1%。
同样,仅作为示例,对于事务性(Transactional):请求-应答业务(RPC、HTTP、DNS),链路的运行参数的相应阈值可以包括:抖动阈值10ms;延迟阈值150ms;丢包率2%。
同样,仅作为示例,对于批量(Bulk):网络备份业务(Network Backup Traffic,例如FTP),链路的运行参数的相应阈值可以包括:抖动阈值15ms;延迟阈值200ms;丢包率3%。
优选的是,WAN控制器节点126为WAN 100中的通信节点118、 120动态选择相应的链路或路由114。参考图6,图6显示了为通信节点118、 120动态选择相应链路或路由114的方法160。在第一初始步骤162,WAN 控制器节点126已从WAN 100中的通信节点118、120接收到拓扑和/或运行数据,已处理所述数据并将各自的选择传达给通信节点118、120。在判定步骤164,WAN控制器节点126处理从通信节点118、120新接收的拓扑和/或运行数据,以确定自接收到已处理数据以来是否发生了任何变化。如果在判定步骤164,确定新接收的数据与上一次先前处理的数据相比,没有发生变化,则WAN控制器节点126维持先前确定的各自选择的链路或路由114。但是如果在判定步骤164,WAN控制器节点126确定数据发生了改变,则在步骤166计算或确定通信节点118、120的链路或路由114的新的各自选择。在步骤168,WAN控制器节点126将新的各自选择的链路或路由 114发送给相应的通信节点118、120。在步骤170,通信节点118、120使用新的各自选择的链路或路由114,来选择已经在所述新的各自选择的链路或路由114上建立的SCTP关联150,用于将有效负载数据包传输到WAN 100中的任何目标节点或设备124。
参照图7,图7的信号图显示了本发明方法如何减少跨WAN 100 的连接建立时间。
在图7所示的示例中,信号组1为每个IPSec VPN隧道连接148 建立SCTP关联150。
在第一通信节点118,信号组2从路由表147(图4)中选择 SCTP关联150。第一通信节点118可以根据优先级从路由表147中选择SCTP 关联150。路由表147中的SCTP关联150的优先级由WAN控制器节点126 提供给第一通信节点118,并且可以在WAN控制器节点126向通信节点118、 120同时提供各自选择的路由和链路114。此外,作为信号组2的一部分,第一通信节点118从源PC122接收或接受传入的TCP分组连接152,然后在选定的SCTP关联150上为TCP分组连接152分配一个或多个SCTP流,并记录选定的SCTP关联150到传入的TCP分组连接152的映射。此后,第一通信节点118通过选定的SCTP关联150向第二通信节点120发送定制的 SCTP TP SYNC消息。该映射在数据平面中进行并存储在代理模块140中。
在第二通信节点120处,信号组3从第二通信节点120开始,第二通信节点120在从第一通信节点118的所选SCTP关联150上接收到定制的SCTP TP SYNC消息之后,发起到目标节点或目标设备(如目标PC 124) 的本地TCP连接154。第二通信节点120记录本地TCP连接154到所选SCTP 关联150的映射。
信号组4开始于第一通信节点118从传入TCP连接152接收TCP 有效载荷数据包,并且向源PC 122发送ACK信号。然后,第一通信节点 118将接收到的封装在一个或多个SCTP内的TCP有效载荷数据包,在选定的SCTP关联150上传送给第二通信节点120。
信号组5开始于源PC 122关闭TCP连接152,由此第一通信节点118向第二通信节点120发送定制的SCTP TP FIN消息。然后,第一通信节点118释放先前分配给第二通信节点120的一个或多个SCTP流,并从其路由表147中清除映射。
信号组6开始于第二通信节点120接收定制的SCTP TP FIN消息,并作为响应,关闭到目标PC 124的本地TCP连接154。然后,第二通信节点120清除该连接的映射。
从图7可以看出,由此示出的信令消除了为建立有效载荷分组连接的跨WAN 100的TCP三向握手过程的需要,并且还允许跨WAN 100的有效载荷分组连接在源PC 122建立到第一通信节点118的传入(本地)TCP 连接152之前被启动。因此,根据本发明方法建立跨WAN100的有效载荷分组连接的建立时间明显少于跨WAN 100的使用TCP三向握手过程的建立时间。
图8进一步显示了本发明方法如何减少跨WAN 100的连接建立时间。在组织“站点1”112位于中国香港而组织“站点2”116位于旧金山的情况下,在此示例中,信号组1的TCP连接建立时间约为0.221ms。信号组2的IPSec VPN隧道上定制的SCTP TP SYNC消息和HTTP请求传输时间约为164ms。信号组3的TCP服务器设置和HTTP响应时间约为0.237ms。信号组4的IPSec VPN隧道上的HTTP响应传输时间约为164ms。源PC 122 的HTTP结果传输时间约为0.062毫秒。因此,信号组1至5的连接建立时间的总和约为328.52毫秒,而不是像相同距离的TCP三向握手情况的640 毫秒。信号组1至5的连接建立时间约为328.52毫秒,是每个信号从使用 cURL命令发送到TCP数据包到服务器所需的时间。在此需要注意的是,来自传入TCP分组连接152的TCP有效载荷数据包可以在信号组1信号被处理之后立即传输,而在跨WAN100上通过TCP三向握手过程的方式开始发送TCP有效载荷时,需要等待三向握手完成。
参照图9,提供了根据本发明的WAN配置的另一实施例。图9 所示的WAN配置仍然是简化的配置,但比图2更能代表实际的WAN配置。
图9的WAN 200包括三个地理上隔开的站点,包括“站点A” 210,“站点B”230和“站点C”250。站点210、230、250通过IPSec VPN 隧道202、204、206互连各个枢纽站点而互连。每个站点还与一个控制器 208通信连接。
站点A 210包括枢纽站点A1 212、第一分支站点A2 214、第二分支站点A3 216、和由PC 218呈现的多个通信设备。由PC 218呈现的多个通信设备通过局域网(LAN)连接220分别连接到各个分支站点。第一和第二分支站点214、216分别通过各自的IPSec VPN隧道222、224连接到枢纽站点A1 212。第一、第二分支站点214、216通过IPSec VPN隧道 226互连。枢纽站点A1 212和第一、第二分支站点214、216的连接配置包括为组织站点A 210定义的“配置文件A”。
站点B 230包括枢纽站点B1 232、第一分支站点B2 234、第二分支站点B3 236、和多个通信设备(未示出)。第一和第二分支站点234、 236分别通过各自的IPSec VPN隧道连接到枢纽站点B1 232。枢纽站点B1 232和第一、第二分支站点234、236的连接配置包括为组织站点B 230定义的“配置文件B”。
站点C 250包括枢纽站点C1 252、第一分支站点C2 254、第二分支站点C3 256、和由PC 258呈现的多个通信设备。由PC 258呈现的多个通信设备通过局域网(LAN)连接各个分支站点。第一和第二分支站点 254、256中每一个都通过各自的IPSec VPN隧道连接到枢纽站点C1 252。枢纽站点C1 252和第一、第二分支站点254、256的连接配置包括为组织站点C 250定义的“配置文件C”。
本发明方法的增强包括使用控制器208来帮助包括节点212、232、252在内的所有通信节点使用基于预定义的配置文件A、B、C的自动 VPN过程来自动建立IPSec VPN隧道连接。在这种情况下,控制器208和包括节点212、232、252在内的所有通信节点能够执行自动VPN建立过程。控制器208可以被设置以从连接到WAN 200的数据库(未示出)接收站点配置,即预定义的配置文件A、B、C,并利用该预定义配置文件A、B、C 以及由通信节点212、232、252周期性报告的拓扑和/或运行参数,为所述通信节点212、232、252动态确定新的各自选择的链路或路由114,并将所述新的动态确定的各自选择的链路114发送到所述通信节点212、232、 252。
WAN 200可以被布置成,在从控制器208接收到新的IPSec规则时,每个站点上的AutoVPN策略将启动与其他“对等”站点的IPSec VPN 隧道建立,并且每个站点上的互联网密钥交换(Internet Key Exchange, IKE)过程将启动与其他“对等”站点的IKE程序。
更概括地,在本发明方法中,通信节点的代理模块被布置成接收来自同一节点的数据平面的TCP连接建立请求(TCP SYN),并替代接收到的连接建立请求中的TCP连接信息的TCP服务器端执行TCP端点功能,包括服务器IP和端口。代理功能提供连接建立、连接终止和可靠的数据传输。在接收到TCP数据包时,数据平面会找到TCP目标地址的路由条目,并记录IPSec VPN隧道的映射,然后将需要加速的TCP数据包转发到同一节点上的面向流的传输层协议代理模块(TP)功能或代理模块。在接收到 TCP连接建立请求时,TP功能将使用IPSecVPN隧道和所选的SCTP关联(连接)的映射,并为此TCP连接分配一个空闲流,然后将TCP连接建立请求和TCP连接信息同步到目标通信节点上的TP功能或代理模块。
在接收到传入的TCP连接请求(定制的SCTP TP SYNC)时,代理模块代表原TCP客户端和TCP连接的发起者处理TCP连接建立的后续步骤。对于从另一个代理模块同步而来的任何传入连接,该方法可以包括使用接收到的TCP连接信息构造有一个TCP连接建立请求(SYN),并直接处理与TCP服务器建立TCP连接的后续步骤。在通过WAN网络传输到另一个站点上的另一个代理模块时,该方法为TCP有效载荷提供可靠的数据传输。可靠的传输可保证TCP数据有效载荷的完整性和顺序性。
从上述内容可以理解,根据本发明的方法不需要将新硬件添加到已经实施的WAN配置中。本发明方法可以在现有WAN配置中通过升级WAN 中现有通信节点和其他节点上的软件、固件、机器代码等来实现。因此,本发明代表了一种显着升级现有WAN配置的低成本手段。
上述装置至少可以部分地以软件实现。本领域技术人员将理解,上述装置至少可以部分地使用通用计算机设备或使用定制设备来实现。
这里,本文所述方法和装置的各方面可以在包括通信***的任何装置上执行。可以将技术的程序方面视为“产品”或“制品”,通常是以承载或体现在一种机器可读介质上的可执行代码和/或相关数据的形式存在。“存储”类型的介质包括移动台、计算机、处理器等,或其相关模块,例如各种半导体存储器、磁带驱动器、磁盘驱动器等,它们可以在任何时候为软件编程提供存储。软件的全部或部分有时可通过Internet或各种其他电信网络进行通信。例如,这种通信可以使软件从一台计算机或处理器加载到另一台计算机或处理器中。因此,可以承载软件元素的另一种类型的介质包括光波、电波和电磁波,例如在本地设备之间的物理接口、通过有线和光固话网络以及通过各种空中链路。携带这种波的物理元件,诸如有线或无线链路、光链路等,可以被视为承载软件的介质。如本文所使用的,除非限于有形的非暂时性“存储”介质,否则诸如计算机或机器“可读介质”的术语是指参与向处理器提供指令以供执行的任何介质。
尽管已经在附图和前述描述中详细说明和描述了本发明,但是本发明应被认为是示例性的,而不是限制性的,应理解,已经示出和描述的只是示例性的实施例,并不以任何方式限制本发明的范围。可以理解的是,本文描述的任何特征可以与任何实施例一起使用。说明性实施例并不彼此排斥,也不排斥本文未列举的其他实施例。因此,本发明还提供了包括上述一个或多个说明性实施例的组合的实施例。在不脱离本发明的精神和范围的情况下,可以对本文所述发明进行修改和变型,因此,只应施加如所附权利要求书所示的限制。
在所附权利要求书和本发明的先前描述中,除非由于明确的语言或必要的暗示,上下文另有要求,否则“包括”一词或诸如“包含”或“包含”的变体是以包容性含义使用的,即指明所述特征的存在,但不排除在本发明的各种实施例中存在或增加进一步的特征。
应当理解的是,如果在本文中提及任何现有技术出版物,这种提及并不构成承认该出版物构成了本领域公知常识的一部分。

Claims (19)

1.一种在通信网络中的广域网(WAN)上传输数据包的方法,所述WAN包括多个互连的通信节点,包括至少第一通信节点、第二通信节点和WAN控制器节点,该方法包括以下步骤:
在构成所述WAN的部分或全部通信节点之间的通信链路上建立虚拟专用网(VPN)隧道连接;
使用非面向流的传输层协议,为每个VPN隧道连接建立非面向流的关联;
在所述第一通信节点处接收来自源设备的分组连接时,将来自所述分组连接的数据包封装到所述第一通信节点与所述第二通信节点之间的一个或多个非面向流的关联中,从而将所述数据包从所述源设备传输到所述第二通信节点;
其中,所述WAN控制器节点向所述第一通信节点传达选择的链路或路由,用于将数据包传输到所述第二通信节点;
其中,所述第一通信节点从多个非面向流的关联中选择一个或多个非面向流的关联,用于数据包封装,所述多个非面向流的关联在所述WAN控制器节点向所述第一通信节点通信传达的链路或路由上建立;
其中,在所述第一通信节点处接收到的来自所述源设备的分组连接包括面向流的分组连接或者传输连接协议(TCP)分组连接;当所述第一通信节点从所述源设备接收所述面向流的分组连接时,所述第一通信节点使用所述一个或多个选定的非面向流的关联中的一个,向所述第二通信节点发信号,所述第二通信节点在收到信号时,与目标节点或目标设备建立一个本地面向流的连接,从而形成从所述源设备到所述目标节点或目标设备的跨WAN的一个虚拟面向流的连接,同时避免了所述源设备与所述目标节点或目标设备之间跨WAN的三向面向流的握手。
2.根据权利要求1所述的方法,其中所述非面向流的传输层协议包括面向消息的传输层协议。
3.根据权利要求2所述的方法,其中所述面向消息的传输层协议包括流控制传输协议(SCTP)。
4.根据权利要求3所述的方法,其中,每个非面向流的SCTP关联在互联网协议安全(IPSec)VPN隧道中加密。
5.根据权利要求1所述的方法,其中所述WAN控制器节点根据所述WAN的一个或多个拓扑和/或一个或多个运行参数来选择所述链路或路由。
6.根据权利要求5所述的方法,其中所述WAN的一个或多个拓扑和/或一个或多个运行参数包括WAN通信节点配置数据、WAN通信节点状态数据、WAN链路配置数据、WAN链路状态数据、和WAN链路质量数据中的任意一个或任意组合。
7.根据权利要求5所述的方法,其中所述WAN控制器节点从每个WAN通信节点接收拓扑和/或运行参数数据,并且处理所述数据以向每个通信节点提供各自的用于数据包传输的链路或路由的动态选择。
8.根据权利要求7所述的方法,其中当所述WAN控制器节点从所述WAN通信节点检测到所接收的拓扑和/或运行参数数据有变化时,所述WAN控制器节点就会确定新的各自的动态选择的链路或路由,用于所述通信节点的数据包传输。
9.根据权利要求1所述的方法,其中,在所述第一通信节点从所述源设备接收所述分组连接之前,所述WAN控制器节点选择所述第一通信节点通信的链路或路由。
10.根据权利要求1所述的方法,其中所述第二通信节点对来自所述一个或多个选定的非面向流的关联中的所述封装的面向流的数据包进行解封装,并且通过所述第二通信节点和所述目标节点或目标设备之间的所述本地面向流的连接传输所述解封装的面向流的数据包。
11.根据权利要求1所述的方法,其中所述WAN控制器节点协助所述通信节点使用基于预定义配置文件的自动VPN流程来建立所述VPN隧道连接。
12.根据权利要求11所述的方法,其中所述WAN包括至少两个组织站点,每个组织站点包括多个通信节点,每个组织站点处的所述多个通信节点包括枢纽站点节点和分支站点节点,所述枢纽站点节点连接到其他组织站点的枢纽站点节点,每个分支站点节点连接到一个枢纽站点节点和/或其组织站点上的另一个分支站点节点,其中所述预定义配置文件包括所述组织站点上的所述各个枢纽站点节点和其分支站点节点之间的连接关系。
13.根据权利要求1所述的方法,其中,如果对于与所述通信节点相关联的任何链路而言,从通信节点无法获得链路状态数据,则该链路将不包括在从所述WAN控制器节点发送到所述通信节点的数据包传输的链路或路由的选择中,或者所述链路将不包括在从所述WAN控制器节点发送到所述通信节点的高优先级数据包传输的链路或路由的选择中。
14.根据权利要求1所述的方法,其中,如果一个通信节点处的链路的一个或多个运行参数超过其各自的阈值,则所述链路将不包括在从所述WAN控制器节点发送到所述通信节点的数据包传输的链路或路由的选择中,或者所述链路将不包括在从所述WAN控制器节点发送到所述通信节点的高优先级数据包传输的链路或路由的选择中。
15.根据权利要求14所述的方法,其中链路的所述一个或多个运行参数包括抖动、延迟和丢包率中的任意一个或任意组合。
16.根据权利要求1所述的方法,其中,如果通信节点的链路的一个或多个运行参数超过了它们针对一种业务类型的各自的阈值,则该链路将不包括在从所述WAN控制器节点向该通信节点发送该业务类型的数据包传输的链路或路由的选择中,或者该链路将不包括在从所述WAN控制器节点向该通信节点发送该业务类型的高优先级数据包传输的链路或路由的选择中。
17.根据权利要求16所述的方法,其中链路的一个或多个运行参数包括抖动、延迟和丢包率中的任意一个或任意组合。
18.一种通信网络中的广域网(WAN)的通信节点,所述WAN包括通信网络中的多个互连节点,所述通信节点包括:
VPN模块,其被配置成在所述通信节点与构成所述WAN的部分或全部其他节点之间的通信链路上建立VPN隧道连接;
非面向流的传输层协议模块,其被配置成在所述通信节点上为每个VPN隧道连接建立一个非面向流的关联;
面向流的传输层协议代理模块,其被配置成在所述通信节点接收来自源设备的面向流的连接时,将来自所述面向流的连接的数据包封装到所述通信节点和目标节点之间的一个或多个非面向流的关联中,从而将所述数据包从所述源设备传输到所述目标节点;
远程过程调用(RPC)模块,其被配置成从WAN控制器节点接收链路或路由的选择,以用于从所述通信节点到构成所述WAN的其他节点的数据包传输;
其中,所述面向流的传输层协议代理模块从多个非面向流的关联中选择一个或多个非面向流的关联,用于将数据包封装到其中,所述多个非面向流的关联是建立在所述WAN控制器节点向所述通信节点通信传达的链路或路由上的;
其中,当所述通信节点从所述源设备接收所述面向流的分组连接时,所述通信节点使用所述一个或多个选定的非面向流的关联中的一个,向其他节点中的一个发信号以与目标节点或目标设备建立一个本地面向流的连接,从而形成从所述源设备到所述目标节点或目标设备的跨WAN的一个虚拟面向流的连接,同时避免了所述源设备与所述目标节点或目标设备之间跨WAN的三向面向流的握手。
19.一种在通信网络中的广域网(WAN)上传输数据包的方法,包括:
在广域网(WAN)中的多个互连的通信节点之间预配置多个非面向流的传输层协议关联,所述非面向流的传输层协议包括面向消息的传输层协议或者流控制传输协议(SCTP);
从网络设备接收面向流的传输层协议数据包,所述数据包旨在用于目标节点或目标设备;
将所述数据包封装成一个或多个选定的非面向流的传输层协议关联的非面向流的传输层协议有效载荷;
在所述一个或多个选定的非面向流的传输层协议关联上,将所述非面向流的传输层协议有效载荷以一个或多个流的方式跨所述广域网(WAN)传输到所述目标节点或目标设备;
其中,所述选定的一个或多个非面向流的传输层协议关联是基于所述WAN的一个或多个拓扑和/或一个或多个运行参数来选择的;
其中,当所述面向流的传输层协议数据包已从所述网络设备接收到时,所述多个互连的通信节点中的第一通信节点使用所述一个或多个选定的非面向流的传输层协议关联中的一个,向第二通信节点发信号,所述第二通信节点在收到信号时,与所述目标节点或所述目标设备建立一个本地面向流的连接,从而形成从源设备到所述目标节点或所述目标设备的跨WAN的一个虚拟面向流的连接,同时避免了所述源设备与所述目标节点或所述目标设备之间跨WAN的三向面向流的握手。
CN202080002466.9A 2020-09-15 2020-09-18 在广域网中建立安全、低延迟、优化路径的方法和装置 Active CN112585910B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US17/020,932 2020-09-15
US17/020,932 US11082255B1 (en) 2020-09-15 2020-09-15 Method and an apparatus for establishing secure, low latency, optimized paths in a wide area network
PCT/CN2020/116181 WO2022056833A1 (en) 2020-09-15 2020-09-18 A method and an apparatus for establishing secure, low latency, optimized paths in a wide area network

Publications (2)

Publication Number Publication Date
CN112585910A CN112585910A (zh) 2021-03-30
CN112585910B true CN112585910B (zh) 2022-03-08

Family

ID=75145283

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080002466.9A Active CN112585910B (zh) 2020-09-15 2020-09-18 在广域网中建立安全、低延迟、优化路径的方法和装置

Country Status (1)

Country Link
CN (1) CN112585910B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11689421B2 (en) * 2021-04-19 2023-06-27 Hewlett Packard Enterprise Development Lp Selection of virtual private network profiles
CN117178535A (zh) * 2021-05-03 2023-12-05 Vm维尔股份有限公司 通过sd-wan中的sd-wan边缘转发节点路由数据包的按需路由网格

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101635665A (zh) * 2008-07-11 2010-01-27 佳能株式会社 用于管理隧道的传输信道上的数据流的传送的方法、相应的隧道端点和计算机可读存储介质

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE60322018D1 (de) * 2003-04-03 2008-08-21 Hewlett Packard Development Co Verfahren und Anordnung zum Wechsel von Verbindungen zwischen Signalisierungs-Prozessen
US7680051B2 (en) * 2007-02-28 2010-03-16 Cisco Technology, Inc. Optimizing TCP traffic via an SCTP association
FR2919778A1 (fr) * 2007-07-30 2009-02-06 Canon Kk Procede de transmission de paquets de donnees dans un tunnel, produit programme d'ordinateur, moyen de stockage et tete de tunnel correspondants
US8792487B2 (en) * 2007-08-21 2014-07-29 Cisco Technology, Inc. Communication path selection
US8300772B2 (en) * 2008-12-31 2012-10-30 Telefonaktiebolaget L M Ericsson (Publ) Method and apparatus for emergency call processing
US9710762B2 (en) * 2012-06-06 2017-07-18 Juniper Networks, Inc. Dynamic logging
US9942199B2 (en) * 2013-12-31 2018-04-10 Open Invention Network, Llc Optimizing connections over virtual private networks
US10171345B2 (en) * 2015-05-04 2019-01-01 Microsoft Technology Licensing, Llc Routing communication sessions

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101635665A (zh) * 2008-07-11 2010-01-27 佳能株式会社 用于管理隧道的传输信道上的数据流的传送的方法、相应的隧道端点和计算机可读存储介质

Also Published As

Publication number Publication date
CN112585910A (zh) 2021-03-30

Similar Documents

Publication Publication Date Title
US10728094B2 (en) Control traffic in software defined networks
US11431526B2 (en) Deterministic forwarding across L2 and L3 networks
US10181977B2 (en) Cross-stratum optimization protocol
US10630813B2 (en) Transporting UDP packets over an MPTCP connection
US9729348B2 (en) Tunnel-in-tunnel source address correction
US9350661B2 (en) Aggregation network with centralized control
US20200396162A1 (en) Service function chain sfc-based communication method, and apparatus
JP2019518393A (ja) パケット処理方法、及びデバイス
US20160380884A1 (en) Flow-Based Distribution in Hybrid Access Networks
US10015091B2 (en) Method of low-bandwidth data transport
EP3119057A1 (en) Packet conversion device and method for allowing transparent packet-based multipath bundling
CN112585910B (zh) 在广域网中建立安全、低延迟、优化路径的方法和装置
CN104301252A (zh) 一种数据发送***及数据发送方法
JP2018511275A (ja) Tcpトンネル及びネイティブtcp情報に基づくバンドリングシナリオにおけるパケットのスケジューリングのための方法及びシステム
KR20180051621A (ko) 전기통신 네트워크와 적어도 하나의 사용자 장비 간의 적어도 하나의 통신 교환의 개선된 핸들링을 위한 방법, 전기통신 네트워크, 사용자 장비, 시스템, 프로그램 및 컴퓨터 프로그램 제품
WO2022083422A1 (zh) 交叉SR/SRv6路径下发方法和装置、存储介质及电子装置
US8675669B2 (en) Policy homomorphic network extension
WO2015151442A1 (ja) 通信システム、通信方法および制御装置
CN105227896B (zh) 一种在透明模式下视频会议优化技术方法和***
EP2858417B1 (en) Method for transmitting a mpls header, method for establishing a mpls path and method for performing a handover of an mpls path
WO2019041332A1 (zh) 一种加速网络传输优化方法以及***
WO2017157457A1 (en) Sdn support for disjoint multipath configuration
US11082255B1 (en) Method and an apparatus for establishing secure, low latency, optimized paths in a wide area network
WO2022142905A1 (zh) 报文转发的方法、装置和网络***
CN112910791B (zh) 导流***及其方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40060989

Country of ref document: HK