CN109412924A - 采用用于保护跨网络的连接的覆盖 - Google Patents

采用用于保护跨网络的连接的覆盖 Download PDF

Info

Publication number
CN109412924A
CN109412924A CN201811067860.1A CN201811067860A CN109412924A CN 109412924 A CN109412924 A CN 109412924A CN 201811067860 A CN201811067860 A CN 201811067860A CN 109412924 A CN109412924 A CN 109412924A
Authority
CN
China
Prior art keywords
address
endpoint
virtual
physical
covering
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.)
Withdrawn
Application number
CN201811067860.1A
Other languages
English (en)
Inventor
H·阿尔卡特比
D·班塞尔
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.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
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
Application filed by Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN109412924A publication Critical patent/CN109412924A/zh
Withdrawn legal-status Critical Current

Links

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]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5084Providing for device mobility
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/64Routing or path finding of packets in data switching networks using an overlay routing layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0272Virtual private networks

Landscapes

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

Abstract

提供了用于建立和维护虚拟网络覆盖(“覆盖”)的计算机化方法、系统和计算机存储介质。该覆盖横跨在数据中心和私有企业网之间并且包括服务应用的位于每个位置的端点。位于数据中心和企业私有网中的服务-应用端点可以以物理IP地址被数据分组到达。通过向服务-应用端点分配相应的虚拟IP地址以及维护虚拟IP地址与物理IP地址之间的关联来实例化服务-应用端点的虚拟存在。该关联基于在服务-应用端点在覆盖内的虚拟存在之间交换的通信来促进数据分组在所述服务-应用端点之间的路由。而且,该关联保护覆盖内的服务-应用端点之间的连接,其中该覆盖阻塞来自在该覆盖中没有虚拟存在的其他端点的通信。

Description

采用用于保护跨网络的连接的覆盖
本发明专利申请是国际申请号为PCT/US2010/054559,国际申请日为2010年10月28日,进入中国国家阶段的申请号为201080050135.9,名称为“采用用于保护跨网络的连接的覆盖”的发明专利申请的分案申请。
技术领域
本发明涉及用于自动建立和管理虚拟网络覆盖的方法、计算机系统和计算机可读介质。
背景技术
大规模联网系统是在用于为业务和操作功能运行应用和维护数据的多种设定中使用的常见平台。例如,数据中心(例如物理云计算基础设施)可以同时为多个顾客提供多种服务(例如web应用、电子邮件服务、搜索引擎服务等等)。这些大规模联网系统通常包括遍及该数据中心分布的大量资源,其中每个资源都类似物理机或在物理主机上运行的虚拟机。当数据中心托管多个承租人(例如顾客程序)时,这些资源被最优地从同一数据中心分配给不同的承租人。
数据中心的顾客常常要求运行在私有企业网(例如由地理上处于该数据中心的远程的顾客管理的服务器)中的业务应用与运行在该数据中心中的资源上的软件交互。提供私有企业网与资源之间的受保护连接通常包括:在数据中心内建立限制其他当前运行的承租人程序访问业务应用的物理分隔。例如,托管服务提供商可以从数据中心中开辟出专用物理网络,使得该专用物理网络被设置为企业私有网的延伸。然而,由于数据中心被构造为动态增加或减少被分配给特定顾客的资源的数目(例如基于处理负载),因此在经济上不实际的是,开辟专用物理网络以及静态地将其中的资源分配给个别的顾客。
发明内容
提供本概述是为了以简化的形式介绍将在以下详细描述中进一步描述的概念。本发明内容并非旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。
本发明的实施例提供了隔离运行在物理网络上的顾客的服务应用的端点的机制。在实施例中,该物理网络包括企业私有网内的由顾客管理的资源、以及处于数据中心内的被分配给所述顾客的虚拟机,所述数据中心被配备在云计算平台中。该数据中心常常同时托管许多承租人,包括顾客的服务应用。因此,顾客的服务应用的端点的隔离对于安全性目的而言是所期望的,并且通过建立虚拟网络覆盖(“覆盖”)来实现。该覆盖在于,对谁可以与数据中心中的顾客的服务应用中的端点进行通信施加限制。
在一个实施例中,该覆盖横跨在数据中心与私有企业网之间以包括位于每个位置的服务应用的端点。举例来说,位于云计算平台的数据中心中的可通过第一物理因特网协议(IP)地址到达的第一端点被标识为服务应用的组件。另外,位于企业私有网中的资源之一中的可通过第二物理IP地址到达的第二端点也被标识为服务应用的组件。在标识出第一和第二端点以后,第一端点和第二端点的虚拟存在在覆盖内被实例化。在示例性实施例中,实例化包括下列步骤:向第一端点分配第一虚拟IP地址;向第二端点分配第二虚拟IP地址;以及维护物理IP地址与虚拟IP地址之间的关联。该关联基于在第一和第二端点在覆盖内的虚拟存在之间交换的通信来促进分组在第一和第二端点之间的路由。
另外,该关联排除了其他应用的端点与覆盖中实例化的那些端点的通信。但是在一些实施例中,对其他应用的端点的排除不排除个别化的覆盖之间的联合。举例来说,位于单独的覆盖中的端点或其他资源可以在建立了网关的情况下通过网关彼此通信。网关的建立可以由访问控制策略来控制,这将在下面予以更充分的讨论。
另外,该覆盖使得位于网络(例如私有企业网)内的端点对数据中心内的端点可见,所述网络位于数据中心的远程并且允许远程端点和数据中心端点作为因特网协议(IP)对等体进行通信。因此,该覆盖允许私有企业网和数据中心的端点之间的受保护的无缝连接,同时显著减小在数据中心内开辟出专用物理网络方面固有的缺点(上面已讨论)。也就是说,在一个实施例中,尽管端点和其他资源可以在地理上为分布式的并且可能位于单独的私有网中,但是这些端点和其他资源看上去就好像它们处于单个网络上并且被允许就好像它们位于单个私有网上那样进行通信。
附图说明
以下参考附图详细描述本发明的各实施例,附图中:
图1是适用于实现本发明的各实施例的示例性计算环境的框图;
图2是示出适用于实现本发明的各实施例的、被配置为分配数据中心内的虚拟机的示例性云计算平台的框图;
图3是根据本发明的实施例的里面建立有虚拟网络覆盖的示例性分布式计算环境的框图;
图4是根据本发明的实施例的处于虚拟网络覆盖内的受保护连接的示意图;
图5-7是根据本发明的实施例的里面建立有虚拟网络覆盖的示例性分布式计算环境的框图;
图8是根据本发明的实施例的物理因特网协议(IP)地址的多个重叠范围和虚拟IP地址的不重叠范围的示意图。
图9是示出了根据本发明的实施例的用于通过虚拟网络覆盖在多个端点之间通信的方法的流程图,所述端点位于物理网络内的不同位置;以及
图10是示出了根据本发明的实施例的用于通过虚拟网络覆盖促进源端点与目的地端点之间的通信的方法的流程图。
具体实施方式
此处用细节来描述本发明的各实施例的主题以满足法定要求。然而,该描述本身并非旨在限制本专利的范围。相反,发明人设想所要求保护的主题还可结合其他当前或未来技术按照其他方式来具体化,以包括不同的步骤或类似于本文中所描述的步骤的步骤组合。此外,尽管术语“步骤”和/或“框”可在此处用于指示所采用的方法的不同元素,但除非而且仅当明确描述了各个步骤的顺序时,该术语不应被解释为意味着此处公开的各个步骤之中或之间的任何特定顺序。
本发明的实施例涉及用于自动建立和管理虚拟网络覆盖(“覆盖”)的方法、计算机系统和计算机可读介质。在一方面,本发明的实施例涉及一种或多种其上包含计算机可执行指令的计算机存储介质,这些指令在被执行时执行用于通过虚拟网络覆盖在位于物理网络内的不同位置处的多个端点之间进行通信的方法。在一个实例中,该方法包括:标识出位于云计算平台的数据中心中的第一端点;以及标识出位于企业私有网的资源内的第二端点。通常,第一端点可以以第一物理因特网协议(IP)地址被数据分组到达,并且第二端点可以以第二物理IP地址到达。
该方法还可以包括:实例化第一端点和第二端点在为服务应用建立的虚拟网络覆盖内的虚拟存在。在示例性实施例中,实例化包括下列步骤中的一个或多个:(a)给第一端点分配第一虚拟IP地址;(b)在图(map)中维护第一物理IP地址与第一虚拟IP地址之间的关联;(c)给第二端点分配第二虚拟IP地址;以及(d)在所述图中维护第二物理IP地址与第二虚拟IP地址之间的关联。在操作中,该图可以用于基于在虚拟网络覆盖内的虚拟存在之间交换的通信在第一端点与第二端点之间路由分组。在示例性实施例中,作为实例化的前兆,第一端点和/或第二端点可以被认证以保证它们被授权加入该覆盖。因此,该覆盖配备有工具以排除不是服务应用的一部分的端点、以及在服务应用的执行期间维护高水平的安全性。这些认证工具的特定实施例在下面予以更充分的描述。
在另一方面,本发明的实施例涉及一种用于在虚拟网络覆盖中实例化位于物理网络中的备选端点的虚拟存在的计算机系统。最初,计算机系统至少包括数据中心和托管名称服务器。在实施例中,数据中心位于云计算平台内,并且被配置为托管备选端点。如上所述,备选端点常常具有分配给它的物理IP地址。托管名称服务器被配置为标识出被分配给虚拟网络覆盖的虚拟IP地址的范围。在标识出该范围以后,托管名称服务器向备选端点分配选自该范围的虚拟IP地址。可以由托管名称服务器或者该计算机系统内的任何其他计算设备来维护图,该图把所分配的虚拟IP地址与备选端点的物理IP地址相关联地持久保存。
在另一方面,本发明的实施例涉及一种用于通过虚拟网络覆盖促进源端点与目的地端点之间的通信的计算机化方法。在一个实施例中,该方法包括:在图中将源虚拟IP地址绑定到源物理IP地址并且在该图中将目的地虚拟IP地址绑定到目的地物理IP地址。通常,源物理IP地址指示云计算平台的数据中心内的源端点的位置,而目的地物理IP地址指示企业私有网的资源内的目的地端点的位置。该方法还可以包括:利用该虚拟网络覆盖将分组从源端点发送给目的地端点。一般而言,源虚拟IP地址和目的地虚拟IP地址分别指示源端点和目的地端点在虚拟网络覆盖中的虚拟存在。在示例性实施例中,发送分组包括下列步骤中的一个或多个:(a)标识出被指定递送给目的地虚拟IP地址的分组;(b)采用该图来将指定从目的地虚拟IP地址调整为目的地物理IP地址;以及(c)基于目的地物理IP地址将该分组路由到该资源内的目的地端点。
在简要描述了本发明的各实施例的概览后,以下描述适于实现本发明的各实施例的示例性操作环境。
概括地参考附图,并首先具体参考图1,示出了用于实现本发明的各实施例的示例性操作环境,并将其概括地指定为计算设备100。计算设备100只是合适的计算环境的一个示例,并且不旨在对本发明的各实施例的使用范围或功能提出任何限制。也不应该把计算环境100解释为对所示出的任一组件或其组合有任何依赖性或要求。
本发明的各实施例可以在由计算机或诸如个人数据助理或其它手持式设备之类的其它机器执行的计算机代码或机器可使用指令的一般上下文中描述,该机器可使用指令包括诸如程序组件之类的计算机可执行指令。一般而言,包括例程、程序、对象、组件、数据结构等的程序组件指的是执行特定任务或实现特定提取数据类型的代码。本发明的各实施方式可以在各种系统配置中实施,这些系统配置包括手持式设备、消费电子产品、通用计算机、专用计算设备等等。本发明也可以在其中任务由通过通信网络链接的远程处理设备执行的分布式计算环境中实施。
继续参考图1,计算设备100包括直接或间接耦合以下设备的总线110:存储器112、一个或多个处理器114、一个或多个呈现组件116、输入/输出(I/O)端口118、I/O组件120、和说明性电源122。总线110可以是一条或多条总线(诸如地址总线、数据总线、或其组合)。虽然为了清楚起见利用线条示出了图1的各框,但是实际上,各组件的轮廓并不是那样清楚,并且比喻性地来说,线条更精确地将是灰色的和模糊的。例如,可以将诸如显示设备等呈现组件认为是I/O组件。而且,处理器具有存储器。发明人认识到,这是本领域的特性,并且重申,图1的图示只是例示可结合本发明的一个或多个实施例来使用的示例性计算设备。诸如“工作站”、“服务器”、“膝上型计算机”、“手持式设备”等分类之间没有区别,它们全部都被认为是在图1的范围之内并且被称为“计算机”或“计算设备”。
计算设备100通常包括各种计算机可读介质。作为示例而非限制,计算机可读介质可以包括随机存取存储器(RAM);只读存储器(ROM);电可擦除可编程只读存储器(EEPROM);闪存或其它存储器技术;CDROM、数字多功能盘(DVD)或其它光或全息介质;磁带盒、磁带、磁盘存储或其它磁存储设备;或可用于对所需信息进行编码并且可由计算设备100访问的任何其它介质。
存储器112包括易失性和/或非易失性存储器形式的计算机存储介质。存储器可以是可移动的、不可移动的、或其组合。示例性硬件设备包括固态存储器、硬盘驱动器、光盘驱动器等。计算设备100包括从诸如存储器112或I/O组件120等各种实体读取数据的一个或多个处理器。呈现组件116向用户或其他设备呈现数据指示。示例性呈现组件包括显示设备、扬声器、打印组件、振荡组件等。I/O端口118允许计算设备100在逻辑上耦合至包括I/O组件120在内的其他设备,其中某些设备可以是内置的。说明性组件包括话筒、操纵杆、游戏板、圆盘式卫星天线、扫描仪、打印机、无线设备等等。
参考图1和2,第一计算设备255和/或第二计算设备265可以由图1的示例性计算设备100来实现。另外,端点201和/或端点202可以包括图1的存储器112的部分和/或图1的处理器114的部分。
现在转到图2,示出了根据本发明的实施例示出示例性云计算平台200的框图,该云计算平台200被配置为分配数据中心225内的虚拟机270和275以供服务应用使用。能够理解和明白,图2中所示的云计算平台200仅仅是一个合适的计算环境的示例,并且不旨在对本发明的实施例的使用范围或功能提出任何限制。例如,云计算平台200可以是公共云、私有云、或专用云。也不应该将云计算平台200解释为对其中所示出的任何单个组件或组件组合有任何依赖性或要求。此外,尽管为了清楚起见用线条示出了图2的各个框,但是在实际上,各组件的轮廓并不是那样清楚,并且比喻性地来说,线条更精确地将是灰色的和模糊的。另外,可以采用任何数目的物理机、虚拟机、数据中心、端点或其组合来在本发明的实施例的范围内实现所期望的功能。
云计算平台200包括数据中心225,该数据中心225被配置为托管和支持特定服务应用的端点201和202的操作。在此使用的用语“服务应用”宽范围地指运行在数据中心225之上或访问数据中心225内的存储位置的任何软件或软件部分。在一个实施例中,端点201和202中的一个或多个可以表示软件部分、组件程序、或者参与服务应用的角色的实例。在另一实施例中,端点201和202中的一个或多个可以表示服务应用可访问的所存储的数据。能够理解和明白,图2中所示的端点201和202仅仅是支持服务应用的合适部分的实例,并且不旨在对本发明的实施例的使用范围或功能提出任何限制。
一般而言,虚拟机270和275基于对服务应用提出的需求(例如处理负载的量)被分配给服务应用的端点201和202。如在此所使用的那样,用语“虚拟机”无意为限制性的,并且可以指由处理单元执行以支持端点201和202的功能的任何软件、应用、操作系统或程序。另外,虚拟机270和275可以包括处理能力、存储位置、以及数据中心225内的其他资产以合适地支持端点201和202。
在操作中,虚拟机270和275被动态分配在数据中心225的资源(例如第一计算设备255和第二计算设备265)内,并且端点(例如,端点201和202)被动态地放置在所分配的虚拟机270和275上以满足当前处理负载。在一个实例中,构造控制器210负责自动分配虚拟机270和275以及将端点201和202放置在数据中心225内。举例来说,构造控制器210可以依靠服务模型(例如其由拥有服务应用的顾客来指定)来提供关于如何和何时分配虚拟机270和275以及将端点201和202放置到其上的指导。
如上面所讨论的那样,虚拟机270和275可被动态地分配在第一计算设备255和第二计算设备265内。按照本发明的实施例,计算设备255和265表示任何形式的计算设备,比如例如个人计算机、台式计算机、膝上型计算机、移动设备、消费者电子设备、服务器、图1的计算设备100等等。在一个实例中,计算设备255和265托管和支持虚拟机270和275的操作,同时托管被开辟为支持数据中心225的其他承租人的其他虚拟机,其中所述承租人包括由不同顾客拥有的其他服务应用的端点。
在一方面,端点201和202在云计算平台200的上下文内操作,并且因此通过在虚拟机270和275之间动态进行的连接进行内部通信,并且通过到远程网络的资源(例如在图3中为企业私有网325的资源375)的物理网络拓扑进行外部通信。内部连接可以包括:通过网络云(未示出)来互连分布在数据中心225的物理资源之中的虚拟机270和275。网络云互连这些资源,使得端点201可以识别端点202和其他端点的位置以便建立其之间的通信。另外,网络云可以通过连接服务应用的端点201和202的信道来建立该通信。举例来说,这些信道可包括但不限于一个或多个局域网(LAN)和/或广域网(WAN)。这样的联网环境常见于办公室、企业范围计算机网络、内联网和因特网中。因此,网络不在此进一步描述。
现在转到图3,示出了根据本发明的实施例示出示例性分布式计算环境300的框图,该分布式计算环境300具有建立在其中的虚拟网络覆盖330。最初,分布式计算环境300包括托管名称服务器310和物理网络380,所述物理网络380包括企业私有网325和云计算平台200,这参考图2予以讨论。如在此所述使用的那样,用语“私有网”无意为限制性的,而是可以涵盖促进地理上为远程的位置处的通信的有形机构和设备(例如光纤线、电路箱、交换机、天线、IP路由器等等)和无形通信和载波。举例来说,物理网络380可以包括用在因特网内或者可用于提升不同网络间通信的任何有线或无线技术。
一般而言,企业私有网325包括诸如资源375之类的资源,所述资源由云计算平台200的顾客来管理。这些资源常常托管和支持顾客所拥有的服务应用的组件的操作。端点B385表示服务应用的组件中的一个或多个。在实施例中,诸如图2的虚拟机270之类的资源在图2的数据中心225内被分配为托管和支持服务应用的远程分布组件的操作。端点B 395表示服务应用的这些远程分布组件中的一个或多个。在操作中,端点A 395和B 385彼此一致地工作以保证服务应用正确地运行。在一个实例中,一致地工作包括:通过物理网络380的网络315在端点A 395和B 385之间传送数据分组316。
通常,资源375、托管名称服务器310以及数据中心225包括、或链接到某种形式的计算单元(例如中央处理单元、微处理器等等)以支持端点和/或其上运行的组件的操作。如在此所使用的那样,用语“计算单元”通常是指具有处理能力和存储存储器的专用计算设备,该专用计算设备支持一个或多个操作系统或其他底层软件。在一种实例中,该计算单元是用有形硬件元件或机器来配置的,所述有形硬件元件或机器是集成的、或者可操作地耦合到源375、托管名称服务器310、以及数据中心225以使得每个设备都能够执行多种过程和操作。在另一实例中,该计算单元可以涵盖处理器(未示出),该处理器耦合到由资源375、托管名称服务器310和数据中心225中的每个容纳的计算机可读介质。一般而言,计算机可读介质至少临时地存储可由处理器执行的多个计算机软件组件(例如端点A 395和B 385)。如本文所使用的,术语“处理器”不旨在是限制性的,并且可涵盖具有计算能力的计算单元的任何元素。在这种能力中,处理器可被配置成处理指令的有形物品。在示例性实施例中,处理可以包括取指令、解码/解释指令、执行和写回指令。
虚拟网络覆盖330(“覆盖330”)通常是为诸如包括端点A 395和B 385的服务应之类的单个服务应用建立的,以便提升和保护服务应用的端点之间的通信。一般而言,覆盖330表示虚拟IP地址的层而不是物理IP地址的层,所述虚拟IP地址的层虚拟地表示服务应用的端点并且以受保护的方式连接虚拟表示。在其他实施例中,覆盖330是构建在物理网络380之上的虚拟网络,所述物理网络380包括被分配给控制服务应用的顾客的资源。在操作中,覆盖330维护互连的端点A 395和B 385的一个或多个逻辑关联,并且实施与端点A 395和B 385相关联的为了实现物理网络可达性(例如使用物理传输)所需的访问控制/安全性。
现在将参考图3讨论覆盖330的建立。最初,位于云计算平台200的数据中心225中的端点A 395通过作为特定服务应用的组件而被标识出。端点A 395可以通过物理网络380的网络315以第一物理IP地址来到达。当被合并到覆盖330中时,向端点A 395分配第一虚拟IP地址,所述第一虚拟IP地址定位端点A 395在覆盖330内的虚拟存在A’331。第一物理IP地址和第一虚拟IP地址可以在图320内绑定和维护。
另外,位于企业私有网325的资源375中的端点B 385可以通过作为特定服务应用的组件而被标识出。端点B 385可以通过物理网络380的网络315以第二物理IP地址来到达。当被合并到覆盖330中时,向端点B 385分配第二虚拟IP地址,所述第二虚拟IP地址定位端点B 385在覆盖330内的虚拟存在B’332。第二物理IP地址和第二虚拟IP地址可以在图320内绑定和维护。如在此所使用的那样,术语“图”无意为限定性的,而是可以包括用于对值与另一值相关联地进行写和/或持久保存的任何机制。举例来说,图320可以简单地指一种表,该表记录与其他地址条目相关联地存储的地址条目。如所描绘的那样,该图维护在托管名称服务器310上并且由其访问。可替代地,图320可以位于连接到物理网络380或物理网络380可到达的任何计算设备中,而不是限于单个实例,这如图3所示。在操作中,图320因此被用于基于在覆盖330内的虚拟存在A’331和B’332之间交换的通信来在端点A 395和B 385之间对分组316进行路由。举例来说,以下列方式来使用图320:客户端代理A 340检测通过覆盖330到端点A 395的通信;在检测到以后,客户端代理A 395访问图320以从产生所述通信的虚拟IP地址中翻译物理IP地址;以及通过将对所述通信的响应定向到所述物理IP地址来提供所述响应。
在实施例中,托管名称服务器310负责在实例化端点A 395和B 385的虚拟存在A’331和B’332时分配虚拟IP地址。实例化的过程还包括:向覆盖330分配一定范围的实现覆盖330的功能的虚拟IP地址。在示例性实施例中,虚拟IP地址的范围包括与企业私有网325和云计算网络200任一的地址空间都不冲突或相交的地址空间。具体而言,被分配给覆盖330的虚拟IP地址的范围不包括分别与端点A 395和B 385的第一和第二物理IP地址相匹配的地址。下面将参考图8更充分地讨论虚拟IP地址范围的选择。
在选择虚拟IP地址范围以后,实例化的过程包括:加入端点A 395和B 385以作为被用作该服务应用的组件的端点组的成员。通常,该端点组的所有成员都可以被标识为与图320内的服务应用相关联。在一个实例中,在服务应用请求附加组件以支持其操作以后,端点A 395和B 385作为该端点组的成员加入。在另一实例中,加入可以包括:检查与该服务应用相关联的服务模型;根据该服务模型分配云计算平台200的数据中心225内的虚拟机270;以及将端点A 395部署在虚拟机270上。在实施例中,服务模型管理:分配数据中心225内的哪些虚拟机来支持服务应用的操作。另外,该服务模型可以充当界面蓝图,该界面蓝图提供用于管理位于云计算平台200中的服务应用的端点的指令。
一旦被实例化,端点A 395和B 385的虚拟存在A’331和B’332就可以通过覆盖330内的受保护连接335进行通信。现在将参考图4讨论受保护连接335。如所示那样,图4是根据本发明的实施例的处于覆盖330内的受保护连接335的示意图。最初,端点A 395与物理IP地址IPa 410和图3的覆盖330内的虚拟IP地址IPa’405相关联。物理IP地址IPa 410可以通过物理网络的拓扑内的信道415而到达。相比之下,虚拟IP地址IPa’405通过受保护连接335与同端点B 385相关联的虚拟IP地址IPb’425通信。附加地,端点B 385与物理IP地址IPb 430相关联。物理IP地址IPb 430可以通过物理网络的拓扑内的信道420而到达。
在操作中,覆盖330通过从虚拟IP地址IPa’405到虚拟IP地址IPb’425的受保护连接335来实现端点A 395和B 385之间的完全连通性。在实施例中,“完全连通性”一般是指:表示端点和其他资源并且允许它们就好像它们处于单个网络上那样通信,即使所述端点和其他资源可能在地理上为分布式的并且可能位于单独的私有网中。
另外,覆盖330实现端点A 395、B 385和与服务应用相关联的端点组的其他成员之间的完全连通性。举例来说,完全连通性允许该组的端点就好像给它们授予了它们自己的从数据中心中开辟出的专用物理网络那样以对等关系交互。因此,受保护连接335为服务应用的端点组在分布在不同网络中时提供了无缝IP级连通性,其中该组中的端点在彼此看来是连接在IP子网中的。通过这种方式,不需要为了使得传统的、基于IP的服务应用能够通过不同网络进行通信而对这些服务进行修改。
另外,覆盖330充当围绕作为服务应用的成员的端点组的自组织边界。例如,覆盖330创建该端点组的虚拟IP地址之间的受保护连接,比如虚拟IP地址IPa’405与虚拟IP地址IPb’425之间的受保护连接335。这些受保护连接是由图320实施的,并且保证该组的端点不能被物理网络中的除被规定为成员以外的其他端点到达。举例来说,保护该组的虚拟IP地址之间的连接包括:在通过覆盖330发送或接收的通信以后认证端点。通过检查端点的物理IP地址或其他指标进行认证将保证:仅有被预先授权为服务应用的一部分的那些端点可以在覆盖330上发送或接收通信。如果尝试通过覆盖330发送或接收通信的端点未被预先授权这样做,则未经授权的端点将不被该组中的那些端点到达。
回到图3,现在将参考客户端代理A 340和客户端代理B 350来讨论端点A 395和B385之间的通信。最初,客户端代理A 340安装在虚拟机270上,而客户端代理B 350安装在资源375上。举例来说,客户端代理A 340可以位于特定机器(比如数据中心225内的物理处理器)上的网络协议栈上。在该示例中,客户端代理A 340是安装在网络协议栈中的应用以便促进到端点A 395和来自端点A 395的通信的接收和发送。
在操作中,客户端代理A 340和B 350与托管名称服务器310协商以访问参与服务应用的端点的身份和地址。例如,在端点A 395通过受保护连接335将通信发送给覆盖330内的虚拟存在B’332以后,客户端代理A 340与托管名称服务器310协调以从图320中检索虚拟存在B’332的物理IP地址。通常,存在端点B 385的物理IP地址与图320内的虚拟存在B’332的相应虚拟IP地址之间的一一映射。在其他实施例中,单个端点可以具有多个虚拟存在。
一旦端点B 385的物理IP地址被客户端代理A 340获得(从托管名称服务器310获取地址解析),则客户端代理A 340就自动地指示一个或多个传输技术来将分组316运送给端点B 385的物理IP地址。这些传输技术可以包括:部署在虚拟机270处的驱动器、虚拟私有网(VPN)、因特网中继、或者能够通过物理网络380的网络315将分组316递送给端点B 385的物理IP地址的任何其他机构。因此,客户端代理A 340和B 350所采用的传输技术可以解释通过受保护连接335发送的通信的IP级、对等语义,并且可以基于这些通信将源自源端点(例如端点A 395)的分组流引导到目的地端点(例如端点B 385)。尽管已经将物理IP地址描述为用于对物理网络380内的端点B 385进行定位的手段,但是能够理解和明白,可以使用其他类型的对企业私有网325中的端点B 385进行定位的合适指示符或物理IP参数,并且本发明的实施例不限于在此所述的那些物理IP地址。
在另一实施例中,传输机制体现为网络地址翻译(NAT)设备。最初,NAT设备位于一个或多个端点所在的网络的边界处。NAT设备一般被配置为将那些端点的虚拟IP地址呈现给该组中位于另一网络中的其他端点。在操作中,参考图3,当端点A 395尝试向端点B 385运送信息时,NAT设备将虚拟存在B’332的虚拟IP地址呈现给端点A 395。在此时刻,虚拟存在A’331可以发送寻址到虚拟存在B’332的虚拟IP地址的分组流。NAT设备接受流式传输的分组,并且将其中的报头从虚拟存在B’332的虚拟IP地址改变为其物理IP地址。然后,NAT设备将具有经更新的报头的流式传输分组转发给企业私有网325内的端点B 385。
如上面讨论的那样,替代于图320或与图320协作地利用NAT设备来建立端点之间的底层网络连通性的实施例表示支持或代替图320的一种机制的不同示例,而不需要实现在此所述的本发明的示例性实施例。
在传输机制的又一实施例中,端点A 395和B 385之间的可达性可以跨网络界限通过位于公共因特网上的会和点来建立。“会和点”一般充当私有企业网325中的资源375与云计算平台200中的数据中心225之间的虚拟路由网桥。在该实施例中,通过虚拟路由网桥的连通性包括:提供对图320具有访问的会和点,使得该会和点被配备为将分组316路由到物理网络380内的合适目的地。
在实施例中,可以由顾客、顾客拥有的服务应用或者与服务应用相关联的服务模型来提供策略。现在将参考图5来讨论这些策略。总的来说,图5描绘了根据本发明的实施例的里面建立有覆盖330的示例性分布式计算环境500的框图。
在覆盖330内,存在三个虚拟存在A’331、B’332、和X’333。如上面所讨论的那样,虚拟存在A’331是对在覆盖330上实例化的端点A 395的表示,而虚拟存在B’332是对在覆盖330上实例化的端点B 385的表示。虚拟存在X’是对位于虚拟机570中的在覆盖330上实例化的端点X 595的表示,所述虚拟机570由数据中心225来托管和支持。在一个实施例中,端点X595最近加入了与服务应用相关联的端点组。端点X 595可以已经被包括来自服务应用的请求在内的任何数目的触发器调用以加入端点组、或者通过检测到需要更多组件来参与该服务应用(例如由于对服务应用增加的需求)而被调用以加入端点组。在端点X 595加入端点组以后,与虚拟存在X’333的虚拟IP地址相关联地自动绑定和维护端点X 595的物理IP地址。在示例性实施例中,虚拟存在X’333的虚拟IP地址选自与为虚拟存在A’331和B’332所选择的虚拟IP地址相同范围的虚拟IP地址。另外,被分配给虚拟存在A’331和B’332的虚拟IP地址可以不同于被分配给虚拟存在X’333的虚拟IP地址。举例来说,虚拟IP地址之间的区别在于被分配给虚拟存在A’331、B’332和X’333的特定地址的值,而虚拟IP地址每个都选自相同的范围(这将在下面予以更详细讨论)并且每个都由图320来管理。
尽管未作为端点组的成员而加入的端点不能与端点A 395、B 385和X 595通信,但是通过配置覆盖330,所述策略被实现以管理端点A 395、B 385和X 595如何彼此通信、以及与端点组中的其他端点通信。在实施例中,所述策略包括控制该组中端点间关系的端对端规则。举例来说,覆盖330中的端对端规则允许端点A 395和B 385之间的通信并且允许从端点A 395到端点X 595的通信。同时,覆盖330中的示例性的端对端规则禁止从端点B 385到端点X 595的通信,并且禁止从端点X 595到端点A 395的通信。可以得知,端对端规则可以管理组中的端点之间的关系,而无论它们在底层物理网络380的网络315中的位置如何。举例来说,端对端规则包括:提供IPsec规则,所述IPsec规则通过认证发起到目的地端点的通信的源端点的身份来实现端对端规则的实施。认证身份可以包括:访问和读取托管名称服务器310内的图320以验证源端点的物理IP地址对应于被预先授权通过覆盖330进行通信的虚拟IP地址。
下面将参考图6和7讨论用于移动物理网络内的端点的过程。如所示那样,图6和7描绘了根据本发明的实施例的里面建立有覆盖330的示例性分布式计算环境600的框图。最初,在发生某个事件以后,将端点A 395从云计算平台200内的数据中心225移动到第三方网络625内的资源670。一般而言,第三方网络625可以指不是图3的企业私有网325或云计算平台200的任何其他网络。举例来说,第三方网络625可以包括保持供服务应用或厂商使用的信息的数据存储,所述厂商提供软件以支持服务应用的一个或多个操作。
在实施例中,将端点395在物理网络380中的地址从虚拟机270上的物理IP地址改变为第三方网络625上的远程物理IP地址。例如,致使该移动的事件可以是:重新分配服务应用所控制的资源;数据中心225中阻止了虚拟机270为当前可用的改变;或者切换支持服务模型的组件的操作的物理托管设备的任何其他原因。
第三方网络625表示包括上面安装有客户端代理C 640的资源670在内的资源的网络,该网络不同于图6的云计算平台200和图7的企业私有网325。然而,在此所述的移动端点A 395的过程可以包括:将端点385移动到私有企业网325或者在数据中心225中内部地移动,而基本上不改变下面所枚举的步骤。一旦端点A 395被移动,则托管名称服务器310就获取经移动的端点A 395的远程物理IP地址。然后,与端点A 395的虚拟存在A’331的虚拟IP地址相关联地自动存储远程物理IP地址。例如,物理IP地址与虚拟存在A’331的虚拟IP地址之间的绑定被破坏,同时远程物理IP地址与虚拟存在A’331的相同虚拟IP地址之间的绑定被建立。因此,虚拟存在A’331被动态地维护在图320内,它们是作为虚拟存在A’331与覆盖330中的其他虚拟存在之间的受保护连接。
另外,在通过受保护连接交换通信以后,客户端代理C 640适于与托管名称服务器310协调以定位第三方网络625内的端点395。图7中示出了在图320中动态维护虚拟存在A’331及其受保护连接(比如到虚拟存在B’332的受保护连接335)的该特征。在示例性实施例中,端点A 395的移动是对客户端代理B 350透明的,这促进了端点B 385与端点A 395之间的通信,而无需任何重新配置。
现在转到图8,示意图根据本发明的实施例示出了物理IP地址的多个重叠的范围II 820和III 830以及虚拟IP地址的不重叠的范围I 810。在实施例中,虚拟IP地址的范围I810对应于被分配给图7的覆盖330的地址空间,而物理IP地址的重叠的范围II 820和III830对应于图3的企业私有网325和云计算平台200的地址空间。如上所示,物理IP地址的范围II 820和III 830可能由于在配备IP版本4(IPv4)地址时数量有限的可用全局地址空间而在附图标记850处相交。然而,虚拟IP地址的范围I 810被阻止与物理IP地址的范围II820和III 830重叠,以便保证与该服务应用相关联的组中的端点之间的数据分组和通信不被错误定向。因此,可以采用多种方案(例如利用图7的托管名称服务器310)来实现虚拟IP地址的范围I 810与物理IP地址的范围II 820和III 830的分隔和冲突防止。
在一个实施例中,该方案可以包括如下路由方案:从未被共用于私有网内的物理IP地址的一组公共IP地址中选择虚拟IP地址的范围I 810。通过开辟出一组公共IP地址以供虚拟IP地址使用,很可能的将是,通常被用作物理IP地址的私有IP地址将是虚拟IP地址的重复。换言之,可以通过公共因特网调用的公共IP地址一致地不同于私有网所使用的由于不存在路径而不能从公共因特网调用的物理IP地址。因此,公共IP地址被保留用于链接本地地址,而不是本来打算用于全局通信。举例来说,公共IP地址可以由特殊IPv4前缀(例如10.254.0.0/16)来标识,所述特殊IPv4前缀未被用于私有网,比如物理IP地址的范围II820和III 830。
在另一实施例中,相对于物理IP地址的II 820和III 830而言,对虚拟IP地址的范围I 810唯一的IPv4地址是动态协商的(例如利用图3的托管名称服务器310)。在一个实例中,动态协商包括采用如下机制:该机制通过图3的企业私有网325和图2的云计算平台200周期性地通信来协商与这两个网络相比唯一的IPv4地址范围。该方案基于如下设想:物理IP地址的范围II 820和III 830是仅由托管图3的物理网络380中的端点的网络使用的IP地址。因此,如果诸如图6的第三方网络625之类的另一网络作为端点主机加入物理网络,则范围I 810内的IPv4地址在考虑到新近加入的网络的情况下再次被动态协商,以保证范围I810内的IPv4地址对由网络为物理IP地址所分配的IPv4地址为唯一的。
对于启用IP版本6(IPv6)的服务应用而言,将全局唯一的一组IPv6地址分配给虚拟IP地址的范围I 810。由于IPv6构造内的可用地址的数目是非常大的,因此全局唯一的IPv6地址可以通过使用被分配了虚拟IP地址的范围I 810的IPv6前缀来形成,而不需要设置方案来保证与物理IP地址的范围II 820和III 830不存在冲突。
现在转到图9,示出了根据本发明的实施例示出用于通过覆盖在多个端点之间通信的方法900的流程图,所述端点位于物理网络内的不同位置。方法900包括:标识出位于云计算平台的数据中心中的第一端点(例如利用2和3的云计算平台200的数据中心225);以及标识出位于企业私有网的资源中的第二端点(例如利用图3的企业私有网325的资源375)。这些步骤在框910和920处予以指示。在实施例中,第一端点可以以第一物理IP地址被数据分组到达,并且第二端点可以以第二物理IP地址被到达。方法900还可以包括:实例化第一端点和第二端点在为特定服务应用建立的覆盖内的虚拟存在(例如利用图3和5-7的覆盖300),这在框930处予以指示。
在示例性实施例中,实例化包括下列步骤中的一个或多个:向第一端点分配第一虚拟IP地址(参见框940);以及在图中维护第一物理IP地址与第一虚拟IP地址之间的关联(参见框950)。另外,实例化可以包括:向第二端点分配第二虚拟IP地址(参见框960);以及在该图中维护第二物理IP地址与第二虚拟IP地址之间的关联(参见框970)。在操作中,可以采用该图(例如利用图3的图320)来基于在覆盖内的虚拟存在之间交换的通信在第一端点与第二端点之间对通信进行路由。该步骤在框980处予以指示。
现在参考图10,示出了根据本发明的实施例示出用于通过覆盖促进源端点与目的地端点之间的通信的方法1000的流程图。在一个实施例中,该方法1000包括:在图中将源虚拟IP地址绑定到源物理IP地址(例如图4的IPa 410和IPa’405);以及在该图中将目的地虚拟IP地址绑定到目的地物理IP地址(例如图4的IPb 430和IPb’425)。这些步骤在框1010和1020处予以指示。通常,源物理IP地址指示云计算平台的数据中心内的源端点的位置,而目的地物理IP地址指示企业专用网的资源内的目的地端点的位置。
方法1000还可以包括:利用该覆盖将分组从源端点发送给目的地端点,这在框1030处予以指示。一般而言,源虚拟IP地址和目的地虚拟IP地址分别指示源端点和目的地端点在该覆盖中的虚拟存在。在示例性实施例中,发送分组包括下列步骤中的一个或多个:标识出被指定递送给目的地虚拟IP地址的分组(参见框1040);采用该图来将指定从目的地虚拟IP地址调整为目的地物理IP地址(参见框1050);以及基于目的地物理IP地址将该分组路由到该资源内的目的地端点(参见框1060)。
参考各具体实施例描述了本发明的各实施例,各具体实施例在所有方面都旨在是说明性的而非限制性的。在不背离本发明范围的情况下各替换实施例对本发明的各实施例的所属领域的普通技术人员将变得显而易见。
从前面的描述可以看出,本发明很好地适用于实现上文所阐述的所有目的和目标,并且具有对于该系统和方法是显而易见且固有的其他优点。可以理解,某些特征和子组合是有用的,并且可以在不参考其他特征和子组合的情况下使用。这由权利要求所构想的,并在权利要求的范围内。

Claims (17)

1.一种用于通过虚拟网络覆盖在位于物理网络内的不同位置处的多个端点之间进行通信的方法,该方法包括:
标识出位于云计算平台的数据中心中的第一端点,其中第一端点能够通过第一物理因特网协议IP地址被到达;
标识出位于企业私有网的资源中的第二端点,其中第二端点能够通过第二物理IP地址被到达;以及
实例化第一端点和第二端点在为服务应用建立的虚拟网络覆盖内的虚拟存在,其中所述实例化包括:
(a)向第一端点分配第一虚拟IP地址;
(b)在图中维护第一物理IP地址与第一虚拟IP地址之间的关联;
(c)向第二端点分配第二虚拟IP地址;以及
(d)在所述图中维护第二物理IP地址与第二虚拟IP地址之间的关联,其中所述图指示:基于在所述虚拟网络覆盖内交换的通信将第一端点与第二端点之间的分组路由到何处;
所述方法还包括:
作为支持所述服务应用的操作的端点组的成员加入第一端点和第二端点;以及
实例化所述端点组的成员在为所述服务应用建立的所述虚拟网络覆盖内的虚拟存在;
其中所述加入进一步包括:检查与所述服务应用相关联的服务模型;根据所述服务模型来分配所述云计算平台的所述数据中心内的虚拟机;以及将所述第一端点部署在所述虚拟机上;
其中所述虚拟网络覆盖实现所述端点组的成员之间的完全连通性,所述端点组包括所述第一端点和所述第二端点,并且所述虚拟网络覆盖保护所述端点组的虚拟IP地址之间的连接,该保护包括:在端点通过所述虚拟网络覆盖发送或接收通信之际,通过检查该端点的物理IP地址来认证该端点,所述虚拟网格覆盖能被配置以实现用于管理所述端点组中的各成员如何彼此通信的策略,所述策略包括控制所述端点组的各成员之间关系的端对端规则。
2.如权利要求1所述的方法,其特征在于,标识出第一端点包括:
检查与所述服务应用相关联的服务模型,其中所述服务模型管理:分配哪些虚拟机以支持所述服务应用的操作;
根据所述服务模型来分配所述云计算平台的数据中心内的虚拟机;以及
将第一端点部署在所述虚拟机上。
3.如权利要求1所述的方法,其特征在于,该方法还包括:向所述虚拟网络覆盖分配虚拟IP地址的范围,其中第一虚拟IP地址和第二虚拟IP地址选自所分配的范围。
4.如权利要求3所述的方法,其特征在于,所述范围内的虚拟IP地址在范围上不与由所述云计算平台或所述企业私有网任一使用的物理IP地址重叠。
5.如权利要求3所述的方法,其特征在于,当所述企业私有网配备IPv4地址时,虚拟IP地址的范围对应于从IPv4地址中开辟出的一组公共IP地址。
6.一种用于在为服务应用建立的虚拟网络覆盖中实例化位于物理网络中的备选端点的虚拟存在的计算机系统,该计算机系统包括:
云计算平台内的数据中心,所述数据中心托管具有第一物理IP地址的备选端点;以及
托管名称服务器,所述托管名称服务器标识出被分配给所述虚拟网络覆盖的虚拟IP地址的范围,向所述备选端点分配选自所述范围的第一虚拟IP地址,并且在图中与所述备选端点的第一物理IP地址相关联地维护所分配的第一虚拟IP地址;
所述计算机系统还包括企业私有网内的资源,所述资源托管具有第二物理IP地址的成员端点,其中所述成员端点被分配作为被所述服务应用使用的端点组的成员,其中给所述成员端点分配选自所述范围的第二虚拟IP地址,并且其中被分配给所述成员端点的第二虚拟IP地址不同于被分配给所述备选端点的第一虚拟IP地址;
其中所述托管名称服务器在从服务应用接收到表示所述备选端点加入所述端点组的请求以后向所述备选端点分配所述第一虚拟IP地址,并且其中所述数据中心还包括构造控制器,所述构造控制器被配置成根据与所述服务应用相关联的服务模型来分配所述云计算平台内的所述数据中心内的虚拟机,以及将所述备选端点部署在所述虚拟机上;
其中所述虚拟网络覆盖实现所述端点组的成员之间的完全连通性,所述端点组包括所述备选端点和所述成员端点,并且所述虚拟网络覆盖保护所述端点组的虚拟IP地址之间的连接,该保护包括:在端点通过所述虚拟网络覆盖发送或接收通信之际,通过检查该端点的物理IP地址来认证该端点,所述虚拟网格覆盖能被配置以实现用于管理所述端点组中的各成员如何彼此通信的策略,所述策略包括控制所述端点组的各成员之间关系的端对端规则。
7.如权利要求6所述的计算机系统,其特征在于,所述托管名称服务器访问所述图以用于查明被服务应用用于支持其操作的一组端点的身份。
8.如权利要求6所述的计算机系统,其特征在于,所述数据中心包括多个虚拟机,所述虚拟机托管所述备选端点,并且其中客户端代理运行在所述多个虚拟机中的一个或多个上。
9.如权利要求6所述的计算机系统,其特征在于,在所述备选端点发起分组的运送以后,客户端代理与所述托管名称服务器协商以检索该组端点的身份中的一个或多个。
10.一种计算机化的用于通过为服务应用建立的虚拟网络覆盖促进源端点与目的地端点之间的通信的方法,该方法包括:
在图中将源虚拟IP地址绑定到源物理IP地址,其中所述源物理IP地址指示所述源端点在云计算平台的数据中心内的位置;
在所述图中将目的地虚拟IP地址绑定到目的地物理IP地址,其中所述目的地物理IP地址指示所述目的地端点在私有企业网的资源内的位置;
利用所述虚拟网络覆盖从所述源端点向所述目的地端点发送分组,其中所述源虚拟IP地址和所述目的地虚拟IP地址分别指示所述源端点和所述目的地端点在所述虚拟网络覆盖中的虚拟存在,并且其中发送所述分组包括:
(a)标识出被指定为被递送给所述目的地虚拟IP地址的分组;
(b)采用所述图来将所述指定从所述目的地虚拟IP地址调整为所述目的地物理IP地址;以及
(c)基于所述目的地物理IP地址,将所述分组路由到所述资源内的目的地端点;
所述方法还包括:
作为支持所述服务应用的操作的端点组的成员加入所述源端点和所述目的地端点;以及
实例化所述端点组的成员在为所述服务应用建立的所述虚拟网络覆盖内的虚拟存在;
其中所述加入进一步包括:检查与所述服务应用相关联的服务模型;根据所述服务模型来分配所述云计算平台的所述数据中心内的虚拟机;以及将所述源端点部署在所述虚拟机上;
其中所述虚拟网络覆盖实现所述端点组的成员之间的完全连通性,所述端点组包括所述源端点和所述目的地端点,并且所述虚拟网络覆盖保护所述端点组的虚拟IP地址之间的连接,该保护包括:在端点通过所述虚拟网络覆盖发送或接收通信之际,通过检查该端点的物理IP地址来认证该端点,所述虚拟网格覆盖能被配置以实现用于管理所述端点组中的各成员如何彼此通信的策略,所述策略包括控制所述端点组的各成员之间关系的端对端规则。
11.如权利要求10所述的计算机化方法,其特征在于,还包括:
将所述源端点从所述云计算平台的具有所述源物理IP地址的数据中心移动到第三方网络内的具有远程物理地址的资源;以及
自动维护所述源端点在所述虚拟网络覆盖中的虚拟存在。
12.如权利要求11所述的计算机化方法,其特征在于,还包括:在识别所述源端点已经被移动以后,在所述图中自动地将所述源虚拟IP地址绑定到所述远程物理IP地址。
13.一种用于通过为服务应用建立的虚拟网络覆盖在位于物理网络内的不同位置处的多个端点之间进行通信的系统,该系统包括:
用于标识出位于云计算平台的数据中心中的第一端点的装置,其中第一端点能够通过第一物理因特网协议IP地址被到达;
用于标识出位于企业私有网的资源中的第二端点的装置,其中第二端点能够通过第二物理IP地址被到达;以及
用于实例化第一端点和第二端点在为服务应用建立的虚拟网络覆盖内的虚拟存在的装置,其中所述用于实例化的装置包括:
(a)用于向第一端点分配第一虚拟IP地址的装置;
(b)用于在图中维护第一物理IP地址与第一虚拟IP地址之间的关联的装置;
(c)用于向第二端点分配第二虚拟IP地址的装置;以及
(d)用于在所述图中维护第二物理IP地址与第二虚拟IP地址之间的关联的装置,其中所述图指示:基于在所述虚拟网络覆盖内交换的通信将第一端点与第二端点之间的分组路由到何处;
所述系统还包括:
用于作为支持所述服务应用的操作的端点组的成员加入第一端点和第二端点的装置;以及
用于实例化所述端点组的成员在为所述服务应用建立的所述虚拟网络覆盖内的虚拟存在的装置;
其中所述用于加入的装置进一步包括:用于检查与所述服务应用相关联的服务模型的装置;用于根据所述服务模型来分配所述云计算平台的所述数据中心内的虚拟机的装置;以及用于将所述第一端点部署在所述虚拟机上的装置;
其中所述虚拟网络覆盖实现所述端点组的成员之间的完全连通性,所述端点组包括所述第一端点和所述第二端点,并且所述虚拟网络覆盖保护所述端点组的虚拟IP地址之间的连接,该保护包括:在端点通过所述虚拟网络覆盖发送或接收通信之际,通过检查该端点的物理IP地址来认证该端点,所述虚拟网格覆盖能被配置以实现用于管理所述端点组中的各成员如何彼此通信的策略,所述策略包括控制所述端点组的各成员之间关系的端对端规则。
14.如权利要求13所述的系统,其特征在于,用于标识出第一端点的装置包括:
用于检查与所述服务应用相关联的服务模型的装置,其中所述服务模型管理:分配哪些虚拟机以支持所述服务应用的操作;
用于根据所述服务模型来分配所述云计算平台的数据中心内的虚拟机的装置;以及
用于将第一端点部署在所述虚拟机上的装置。
15.如权利要求13所述的系统,其特征在于,还包括:用于向所述虚拟网络覆盖分配虚拟IP地址的范围的装置,其中第一虚拟IP地址和第二虚拟IP地址选自所分配的范围。
16.如权利要求15所述的系统,其特征在于,所述范围内的虚拟IP地址在范围上不与由所述云计算平台或所述企业私有网任一使用的物理IP地址重叠。
17.如权利要求15所述的系统,其特征在于,当所述企业私有网配备有IPv4地址时,虚拟IP地址的范围对应于从IPv4地址中开辟出的一组公共IP地址。
CN201811067860.1A 2009-11-06 2010-10-28 采用用于保护跨网络的连接的覆盖 Withdrawn CN109412924A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/614,007 2009-11-06
US12/614,007 US20110110377A1 (en) 2009-11-06 2009-11-06 Employing Overlays for Securing Connections Across Networks
CN2010800501359A CN102598591A (zh) 2009-11-06 2010-10-28 采用用于保护跨网络的连接的覆盖

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN2010800501359A Division CN102598591A (zh) 2009-11-06 2010-10-28 采用用于保护跨网络的连接的覆盖

Publications (1)

Publication Number Publication Date
CN109412924A true CN109412924A (zh) 2019-03-01

Family

ID=43970699

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201811067860.1A Withdrawn CN109412924A (zh) 2009-11-06 2010-10-28 采用用于保护跨网络的连接的覆盖
CN2010800501359A Pending CN102598591A (zh) 2009-11-06 2010-10-28 采用用于保护跨网络的连接的覆盖

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN2010800501359A Pending CN102598591A (zh) 2009-11-06 2010-10-28 采用用于保护跨网络的连接的覆盖

Country Status (6)

Country Link
US (1) US20110110377A1 (zh)
EP (1) EP2497229A4 (zh)
JP (1) JP2013510506A (zh)
KR (1) KR101774326B1 (zh)
CN (2) CN109412924A (zh)
WO (1) WO2011056714A2 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114556868A (zh) * 2019-11-08 2022-05-27 华为云计算技术有限公司 虚拟专用网络vpn客户端的专用子网络
CN114679370A (zh) * 2021-05-20 2022-06-28 腾讯云计算(北京)有限责任公司 一种服务器托管方法、装置、系统及存储介质

Families Citing this family (87)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8924524B2 (en) 2009-07-27 2014-12-30 Vmware, Inc. Automated network configuration of virtual machines in a virtual lab data environment
US8230050B1 (en) 2008-12-10 2012-07-24 Amazon Technologies, Inc. Providing access to configurable private computer networks
US9524167B1 (en) 2008-12-10 2016-12-20 Amazon Technologies, Inc. Providing location-specific network access to remote services
US9137209B1 (en) 2008-12-10 2015-09-15 Amazon Technologies, Inc. Providing local secure network access to remote services
US8595378B1 (en) 2009-03-30 2013-11-26 Amazon Technologies, Inc. Managing communications having multiple alternative destinations
US9106540B2 (en) 2009-03-30 2015-08-11 Amazon Technologies, Inc. Providing logical networking functionality for managed computer networks
US8644188B1 (en) 2009-06-25 2014-02-04 Amazon Technologies, Inc. Providing virtual networking functionality for managed computer networks
US9203747B1 (en) 2009-12-07 2015-12-01 Amazon Technologies, Inc. Providing virtual networking device functionality for managed computer networks
US9036504B1 (en) 2009-12-07 2015-05-19 Amazon Technologies, Inc. Using virtual networking devices and routing information to associate network addresses with computing nodes
US9282027B1 (en) 2010-03-31 2016-03-08 Amazon Technologies, Inc. Managing use of alternative intermediate destination computing nodes for provided computer networks
US8396946B1 (en) * 2010-03-31 2013-03-12 Amazon Technologies, Inc. Managing integration of external nodes into provided computer networks
US8966027B1 (en) 2010-05-24 2015-02-24 Amazon Technologies, Inc. Managing replication of computing nodes for provided computer networks
US8976949B2 (en) * 2010-06-29 2015-03-10 Telmate, Llc Central call platform
US8892740B2 (en) * 2010-09-10 2014-11-18 International Business Machines Corporation Dynamic application provisioning in cloud computing environments
US8706772B2 (en) * 2010-12-30 2014-04-22 Sap Ag Strict tenant isolation in multi-tenant enabled systems
CN102075537B (zh) * 2011-01-19 2013-12-04 华为技术有限公司 一种实现虚拟机间数据传输的方法和系统
US8862933B2 (en) 2011-02-09 2014-10-14 Cliqr Technologies, Inc. Apparatus, systems and methods for deployment and management of distributed computing systems and applications
US10225335B2 (en) 2011-02-09 2019-03-05 Cisco Technology, Inc. Apparatus, systems and methods for container based service deployment
US8843998B2 (en) * 2011-06-27 2014-09-23 Cliqr Technologies, Inc. Apparatus, systems and methods for secure and selective access to services in hybrid public-private infrastructures
US9027116B2 (en) * 2011-07-08 2015-05-05 Virnetx, Inc. Dynamic VPN address allocation
US8867403B2 (en) 2011-08-18 2014-10-21 International Business Machines Corporation Virtual network overlays
WO2013028636A1 (en) * 2011-08-19 2013-02-28 Panavisor, Inc Systems and methods for managing a virtual infrastructure
US9203807B2 (en) * 2011-09-09 2015-12-01 Kingston Digital, Inc. Private cloud server and client architecture without utilizing a routing server
US8868710B2 (en) 2011-11-18 2014-10-21 Amazon Technologies, Inc. Virtual network interface objects
US20130151679A1 (en) * 2011-12-09 2013-06-13 Kubisys Inc. Hybrid virtual computing environments
US9052963B2 (en) 2012-05-21 2015-06-09 International Business Machines Corporation Cloud computing data center machine monitor and control
US8649383B1 (en) 2012-07-31 2014-02-11 Aruba Networks, Inc. Overlaying virtual broadcast domains on an underlying physical network
WO2014039046A1 (en) * 2012-09-06 2014-03-13 Empire Technology Development, Llc Cost reduction for servicing a client through excess network performance
US9253061B2 (en) * 2012-09-12 2016-02-02 International Business Machines Corporation Tunnel health check mechanism in overlay network
JP6040711B2 (ja) * 2012-10-31 2016-12-07 富士通株式会社 管理サーバ、仮想マシンシステム、プログラム及び接続方法
US9313096B2 (en) 2012-12-04 2016-04-12 International Business Machines Corporation Object oriented networks
US10708145B2 (en) * 2012-12-13 2020-07-07 Level 3 Communications, Llc Devices and methods supporting content delivery with adaptation services with feedback from health service
CN103905283B (zh) * 2012-12-25 2017-12-15 华为技术有限公司 基于可扩展虚拟局域网的通信方法及装置
KR20140092630A (ko) * 2013-01-16 2014-07-24 삼성전자주식회사 사용자장치, 통신서버 및 그 제어방법
US9191360B2 (en) 2013-01-22 2015-11-17 International Business Machines Corporation Address management in an overlay network environment
US9882713B1 (en) 2013-01-30 2018-01-30 vIPtela Inc. Method and system for key generation, distribution and management
US10389608B2 (en) 2013-03-15 2019-08-20 Amazon Technologies, Inc. Network traffic mapping and performance analysis
KR101337208B1 (ko) * 2013-05-07 2013-12-05 주식회사 안랩 휴대 단말의 어플리케이션 데이터 관리 방법 및 그 장치
US9438596B2 (en) * 2013-07-01 2016-09-06 Holonet Security, Inc. Systems and methods for secured global LAN
CN103442098B (zh) * 2013-09-02 2016-06-08 三星电子(中国)研发中心 一种分配虚拟ip地址的方法、系统和服务器
US11038954B2 (en) * 2013-09-18 2021-06-15 Verizon Patent And Licensing Inc. Secure public connectivity to virtual machines of a cloud computing environment
US9906609B2 (en) 2015-06-02 2018-02-27 GeoFrenzy, Inc. Geofence information delivery systems and methods
US9363638B1 (en) 2015-06-02 2016-06-07 GeoFrenzy, Inc. Registrar mapping toolkit for geofences
EP3104559A1 (en) * 2013-10-10 2016-12-14 Cloudistics, Inc. Adaptive overlay networking
US9838218B2 (en) * 2013-10-24 2017-12-05 Kt Corporation Method for providing overlay network interworking with underlay network and system performing same
CN103647853B (zh) * 2013-12-04 2018-07-03 华为技术有限公司 一种在VxLAN中发送ARP报文发送方法、VTEP及VxLAN控制器
US9438506B2 (en) * 2013-12-11 2016-09-06 Amazon Technologies, Inc. Identity and access management-based access control in virtual networks
US9467478B1 (en) 2013-12-18 2016-10-11 vIPtela Inc. Overlay management protocol for secure routing based on an overlay network
CN103747020B (zh) * 2014-02-18 2017-01-11 成都致云科技有限公司 一种安全可控的公网访问虚拟资源方法
US10044581B1 (en) 2015-09-29 2018-08-07 Amazon Technologies, Inc. Network traffic tracking using encapsulation protocol
US11240628B2 (en) 2014-07-29 2022-02-01 GeoFrenzy, Inc. Systems and methods for decoupling and delivering geofence geometries to maps
US11838744B2 (en) * 2014-07-29 2023-12-05 GeoFrenzy, Inc. Systems, methods and apparatus for geofence networks
US12022352B2 (en) 2014-07-29 2024-06-25 GeoFrenzy, Inc. Systems, methods and apparatus for geofence networks
EP3189632B1 (en) * 2014-09-02 2018-06-27 Telefonaktiebolaget LM Ericsson (publ) Network node and method for handling a traffic flow related to a local service cloud
US9787499B2 (en) 2014-09-19 2017-10-10 Amazon Technologies, Inc. Private alias endpoints for isolated virtual networks
US9832118B1 (en) 2014-11-14 2017-11-28 Amazon Technologies, Inc. Linking resource instances to virtual networks in provider network environments
US10484297B1 (en) 2015-03-16 2019-11-19 Amazon Technologies, Inc. Automated migration of compute instances to isolated virtual networks
US10749808B1 (en) 2015-06-10 2020-08-18 Amazon Technologies, Inc. Network flow management for isolated virtual networks
US10021196B1 (en) 2015-06-22 2018-07-10 Amazon Technologies, Inc. Private service endpoints in isolated virtual networks
US9860214B2 (en) 2015-09-10 2018-01-02 International Business Machines Corporation Interconnecting external networks with overlay networks in a shared computing environment
US10320644B1 (en) 2015-09-14 2019-06-11 Amazon Technologies, Inc. Traffic analyzer for isolated virtual networks
US20170142234A1 (en) * 2015-11-13 2017-05-18 Microsoft Technology Licensing, Llc Scalable addressing mechanism for virtual machines
US9980303B2 (en) 2015-12-18 2018-05-22 Cisco Technology, Inc. Establishing a private network using multi-uplink capable network devices
US10354425B2 (en) * 2015-12-18 2019-07-16 Snap Inc. Method and system for providing context relevant media augmentation
US10320844B2 (en) 2016-01-13 2019-06-11 Microsoft Technology Licensing, Llc Restricting access to public cloud SaaS applications to a single organization
US11290425B2 (en) * 2016-02-01 2022-03-29 Airwatch Llc Configuring network security based on device management characteristics
US10593009B1 (en) 2017-02-22 2020-03-17 Amazon Technologies, Inc. Session coordination for auto-scaled virtualized graphics processing
US10498810B2 (en) * 2017-05-04 2019-12-03 Amazon Technologies, Inc. Coordinating inter-region operations in provider network environments
US10498693B1 (en) 2017-06-23 2019-12-03 Amazon Technologies, Inc. Resizing virtual private networks in provider network environments
US10637800B2 (en) 2017-06-30 2020-04-28 Nicira, Inc Replacement of logical network addresses with physical network addresses
US10681000B2 (en) 2017-06-30 2020-06-09 Nicira, Inc. Assignment of unique physical network addresses for logical network addresses
KR101855632B1 (ko) * 2017-11-23 2018-05-04 (주)소만사 클라우드 상에 구현되는 정보 유출 방지 시스템 및 방법
US10834044B2 (en) 2018-09-19 2020-11-10 Amazon Technologies, Inc. Domain name system operations implemented using scalable virtual traffic hub
US10680945B1 (en) 2018-09-27 2020-06-09 Amazon Technologies, Inc. Extending overlay networks to edge routers of a substrate network
US11102113B2 (en) * 2018-11-08 2021-08-24 Sap Se Mapping of internet protocol addresses in a multi-cloud computing environment
US10785056B1 (en) 2018-11-16 2020-09-22 Amazon Technologies, Inc. Sharing a subnet of a logically isolated network between client accounts of a provider network
WO2020124901A1 (en) * 2018-12-21 2020-06-25 Huawei Technologies Co., Ltd. Mechanism to reduce serverless function startup latency
CN111917893B (zh) * 2019-05-10 2022-07-12 华为云计算技术有限公司 虚拟私有云与云下数据中心通信、配置方法及相关装置
US11088944B2 (en) 2019-06-24 2021-08-10 Amazon Technologies, Inc. Serverless packet processing service with isolated virtual network integration
US10848418B1 (en) 2019-06-24 2020-11-24 Amazon Technologies, Inc. Packet processing service extensions at remote premises
US11296981B2 (en) 2019-06-24 2022-04-05 Amazon Technologies, Inc. Serverless packet processing service with configurable exception paths
US11336476B2 (en) 2019-08-01 2022-05-17 Nvidia Corporation Scalable in-network computation for massively-parallel shared-memory processors
CN113994639B (zh) * 2019-08-28 2023-09-22 华为云计算技术有限公司 基于远程网络节点的l3虚拟映射的数据传输方法及系统
US11451643B2 (en) * 2020-03-30 2022-09-20 Amazon Technologies, Inc. Managed traffic processing for applications with multiple constituent services
US11153195B1 (en) 2020-06-08 2021-10-19 Amazon Techologies, Inc. Packet processing service configuration change propagation management
CN113206833B (zh) * 2021-04-07 2022-10-14 中国科学院大学 一种私有云系统及强制访问控制方法
CN115150410B (zh) * 2022-07-19 2024-06-18 京东科技信息技术有限公司 多集群访问方法和系统

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5845203A (en) * 1996-01-25 1998-12-01 Aertis Cormmunications Remote access application messaging wireless method
US6097719A (en) * 1997-03-11 2000-08-01 Bell Atlantic Network Services, Inc. Public IP transport network
US6611872B1 (en) * 1999-01-11 2003-08-26 Fastforward Networks, Inc. Performing multicast communication in computer networks by using overlay routing
US7552233B2 (en) * 2000-03-16 2009-06-23 Adara Networks, Inc. System and method for information object routing in computer networks
JP2003324487A (ja) * 2002-04-30 2003-11-14 Welltech Computer Co Ltd ネットワーク電話伝送パケット処理のシステム及びその方法
US20030217131A1 (en) * 2002-05-17 2003-11-20 Storage Technology Corporation Processing distribution using instant copy
WO2004051944A1 (en) * 2002-12-02 2004-06-17 Operax Ab Arrangements and method for hierarchical resource management in a layered network architecture
US7890633B2 (en) * 2003-02-13 2011-02-15 Oracle America, Inc. System and method of extending virtual address resolution for mapping networks
US20040249974A1 (en) * 2003-03-31 2004-12-09 Alkhatib Hasan S. Secure virtual address realm
CN1319336C (zh) * 2003-05-26 2007-05-30 华为技术有限公司 一种建立虚拟专用网络的方法
WO2005027438A1 (ja) * 2003-09-11 2005-03-24 Fujitsu Limited パケット中継装置
US7991852B2 (en) * 2004-01-22 2011-08-02 Alcatel-Lucent Usa Inc. Network architecture and related methods for surviving denial of service attacks
GB2418326B (en) 2004-09-17 2007-04-11 Hewlett Packard Development Co Network vitrualization
US20060098664A1 (en) * 2004-11-09 2006-05-11 Tvblob S.R.I. Intelligent application level multicast module for multimedia transmission
US20060235973A1 (en) * 2005-04-14 2006-10-19 Alcatel Network services infrastructure systems and methods
US7660296B2 (en) * 2005-12-30 2010-02-09 Akamai Technologies, Inc. Reliable, high-throughput, high-performance transport and routing mechanism for arbitrary data flows
JP2008098813A (ja) * 2006-10-10 2008-04-24 Matsushita Electric Ind Co Ltd 情報通信装置、情報通信方法、及びプログラム
US8489701B2 (en) * 2007-01-30 2013-07-16 Microsoft Corporation Private virtual LAN spanning a public network for connection of arbitrary hosts
CN101918926B (zh) * 2007-10-24 2013-05-01 乔纳森·彼得·多伊奇 用于通过虚拟ip地址访问没有可访问地址的联网装置的各种方法和设备
US8429739B2 (en) * 2008-03-31 2013-04-23 Amazon Technologies, Inc. Authorizing communications between computing nodes
US9106540B2 (en) * 2009-03-30 2015-08-11 Amazon Technologies, Inc. Providing logical networking functionality for managed computer networks

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114556868A (zh) * 2019-11-08 2022-05-27 华为云计算技术有限公司 虚拟专用网络vpn客户端的专用子网络
CN114556868B (zh) * 2019-11-08 2023-11-10 华为云计算技术有限公司 虚拟专用网络vpn客户端的专用子网络
CN114679370A (zh) * 2021-05-20 2022-06-28 腾讯云计算(北京)有限责任公司 一种服务器托管方法、装置、系统及存储介质
CN114679370B (zh) * 2021-05-20 2024-01-12 腾讯云计算(北京)有限责任公司 一种服务器托管方法、装置、系统及存储介质

Also Published As

Publication number Publication date
KR101774326B1 (ko) 2017-09-29
KR20120102626A (ko) 2012-09-18
EP2497229A4 (en) 2016-11-23
JP2013510506A (ja) 2013-03-21
US20110110377A1 (en) 2011-05-12
WO2011056714A2 (en) 2011-05-12
EP2497229A2 (en) 2012-09-12
WO2011056714A3 (en) 2011-09-15
CN102598591A (zh) 2012-07-18

Similar Documents

Publication Publication Date Title
CN109412924A (zh) 采用用于保护跨网络的连接的覆盖
US20220217040A1 (en) Providing access to configurable private computer networks
US10951586B2 (en) Providing location-specific network access to remote services
EP2586160B1 (en) Distributed virtual network gateways
US10868715B2 (en) Providing local secure network access to remote services
CN104090825B (zh) 动态迁移计算机网络
CN102893559B (zh) 互连虚拟网络的成员
US8396946B1 (en) Managing integration of external nodes into provided computer networks
US8844020B2 (en) Establishing secure remote access to private computer networks
US9356860B1 (en) Managing external communications for provided computer networks
US11218424B1 (en) Remote port for network connectivity for non-colocated customers of a cloud exchange

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
WW01 Invention patent application withdrawn after publication
WW01 Invention patent application withdrawn after publication

Application publication date: 20190301