首页> 中国专利> 提供使用多承租人中继的虚拟网络

提供使用多承租人中继的虚拟网络

摘要

本发明公开了提供使用多承租人中继的虚拟网络。各实施例涉及提供多承租人中继服务,该多承租人中继服务在计算机系统之间安全地中继数据。计算机系统接收要被从属于第一承租人的第一计算机系统传递到不同的第二计算机系统的数据的一部分。实例化的多承租人中继服务被配置成为多个不同承租人安全地中继数据。该计算机系统创建用于在该第一计算机系统和该第二计算机系统之间路由该第一承租人的该数据的安全路由通道。该安全路由通道向从该第一承租人接收的数据的每个部分应用唯一标识符。该计算机系统还使用所应用的唯一标识符通过该安全路由通道将来自该第一计算机系统的所接收的数据路由到该第二计算机系统。

著录项

  • 公开/公告号CN102413032A

    专利类型发明专利

  • 公开/公告日2012-04-11

    原文格式PDF

  • 申请/专利权人 微软公司;

    申请/专利号CN201110300658.0

  • 发明设计人 G·H·奥斯莱德;H·S·阿尔哈提布;

    申请日2011-09-21

  • 分类号H04L12/46(20060101);

  • 代理机构31100 上海专利商标事务所有限公司;

  • 代理人陈斌

  • 地址 美国华盛顿州

  • 入库时间 2023-12-18 04:59:56

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2015-05-20

    专利权的转移 IPC(主分类):H04L12/46 变更前: 变更后: 登记生效日:20150429 申请日:20110921

    专利申请权、专利权的转移

  • 2014-08-20

    授权

    授权

  • 2012-05-23

    实质审查的生效 IPC(主分类):H04L12/46 申请日:20110921

    实质审查的生效

  • 2012-04-11

    公开

    公开

说明书

技术领域

本发明涉及提供多承租人中继服务,尤其涉及提供使用多承租人中继的虚 拟网络。

背景技术

计算机已变得高度集成于工作、家庭、移动设备以及许多其他地方中。计 算机可快速且有效地处理大量信息。被设计成在计算机系统上运行的软件应用 程序允许用户执行包括商业应用程序、学校作业、娱乐等等在内的各种各样的 功能。软件应用程序通常被设计成执行特定任务,诸如用于草拟文档的文字处 理器应用程序或者用于发送、接收和组织电子邮件的电子邮件程序。

在许多情况下,软件应用程序被设计为与其他软件应用程序或其他计算机 系统交互。例如,客户端计算机系统可被配置成从服务提供商请求服务。服务 提供商可从各种客户端接收请求,并且响应于这些请求而提供服务。提供服务 可包括在提供商和客户端计算机系统之间传送各种通信。通常,这些计算机系 统在不同的计算机网络上,这些不同的计算机网络被各种硬件或软件设备(诸 如路由器和防火墙)分离或阻隔。

在某些情况下,可在处于分离的网络上的计算机系统之间建立虚拟专用网 络(VPN)、中继或其他安全通信通道。然而,中继通常要么是对组织专用的, 要么是公开的,这允许访问任何用户,包括可能有害的用户。

发明内容

此处描述的实施例涉及提供多承租人中继服务,该多承租人中继服务在计 算机系统之间安全地中继数据。在一个实施例中,计算机系统接收要被从属于 第一承租人的第一计算机系统传递到不同的第二计算机系统的数据的一部分。 实例化的多承租人中继服务被配置成为多个不同承租人安全地中继数据。该计 算机系统创建用于在该第一计算机系统和该第二计算机系统之间路由该第一 承租人的该数据的安全路由通道。该安全路由通道向从该第一承租人接收的数 据的每个部分应用唯一标识符。该计算机系统还使用所应用的唯一标识符通过 该安全路由通道将来自该第一计算机系统的所接收的数据路由到该第二计算 机系统。

在另一实施例中,计算机系统接收要被从第一计算机系统传递到不同的第 二计算机系统的数据的一部分。实例化的多承租人中继服务被配置成为多个不 同承租人中继数据。该计算机系统创建用于在该第一计算机系统和该第二计算 机系统之间路由该数据的安全路由通道。该安全路由通道向从该第一承租人接 收的数据的每个部分提供唯一标识符。该计算机系统确定各种不同网络协议中 的哪些网络协议对于路由所接收的数据是可用的,且基于对哪些网络协议是可 用的的确定,动态选择使数据传输效率最优化的适当的协议。该计算机系统还 使用所确定的协议将来自该第一计算机系统的所接收的数据路由到该第二计 算机系统。使用所应用的唯一标识符通过该安全路由通道路由该数据。

提供本发明内容以便以简化形式介绍将在以下的具体实施方式中进一步 描述的一些概念。本发明内容并不旨在标识所要求保护的主题的关键特征或必 要特征,也不旨在用于帮助确定所要求保护的主题的范围。

本发明的附加特征和优点将在以下描述中阐述,且其一部分根据本描述将 是显而易见的,或可通过对此处的原理的实践来获悉。本发明的特征和优点可 通过在所附权利要求书中特别指出的工具和组合来实现和获得。本发明的特征 将通过以下描述和所附权利要求书变得更加显而易见,或可通过对下文中所述 的本发明的实践来获悉。

附图说明

为了进一步阐明本发明的各实施例的以上和其他优点和特征,将参考附图 来呈现本发明的各实施例的更具体的描述。可以理解,这些附图只描绘本发明 的典型实施例,因此将不被认为是对其范围的限制。本发明将通过使用附图用 附加特征和细节来描述和解释,附图中:

图1示出本发明的实施例可在其中操作的计算机体系结构,该操作包括提 供在计算机系统之间安全地中继数据的多承租人中继服务。

图2示出用于提供在计算机系统之间安全地中继数据的多承租人中继服务 的示例方法的流程图。

图3示出用于提供在计算机系统之间安全地中继数据的多承租人中继服务 的一替代示例方法的流程图。

图4示出本发明的一实施例,其中来自多个承租人的通信通过安全路由通 道被安全地路由。

具体实施方式

此处描述的实施例涉及提供多承租人中继服务,该多承租人中继服务在不 能在彼此之间直接路由安全连接的计算机系统之间安全地中继数据。在一个实 施例中,计算机系统接收要被从属于第一承租人的第一计算机系统传递到不同 的第二计算机系统的数据的一部分。实例化的多承租人中继服务被配置成为多 个不同承租人安全地中继数据。该计算机系统创建用于在该第一计算机系统和 该第二计算机系统之间路由该第一承租人的该数据的安全路由通道。该安全路 由通道向从该第一承租人接收的数据的每个部分应用唯一标识符。该计算机系 统还使用所应用的唯一标识符通过该安全路由通道将来自该第一计算机系统 的所接收的数据路由到该第二计算机系统。

在另一实施例中,计算机系统接收要被从第一计算机系统传递到不同的第 二计算机系统的数据的一部分。实例化的多承租人中继服务被配置成为多个不 同承租人中继数据。该计算机系统创建用于在该第一计算机系统和该第二计算 机系统之间路由该数据的安全路由通道。该安全路由通道向从该第一承租人接 收的数据的每个部分提供唯一标识符。该计算机系统确定各种不同网络协议中 的哪些网络协议对于路由所接收的数据是可用的,且基于对哪些网络协议是可 用的的确定,动态选择使数据传输效率最优化的适当的协议。该计算机系统还 使用所确定的协议将来自该第一计算机系统的所接收的数据路由到该第二计 算机系统。使用所应用的唯一标识符通过该安全路由通道路由该数据。

现在,后续讨论参考可被执行的多个方法和方法动作。应当记住,虽然这 些方法动作可能是按一定次序讨论的,或者是在流程图中被描绘为是按照特定 顺序进行的,然而并非必然需要特定的次序,除非特别声明,或者是因为一个 动作依赖于另一动作在该动作被执行之前完成而需要的。

本发明的各实施例可包括或利用专用或通用计算机,该专用或通用计算机 包括诸如例如一个或多个处理器和系统存储器等计算机硬件,如以下更详细讨 论的。本发明范围内的各实施例还包括用于携带或存储计算机可执行指令和/ 或数据结构的物理介质和其他计算机可读介质。这些计算机可读介质可以是通 用或专用计算机系统能够访问的任何可用介质。存储计算机可执行指令的计算 机可读介质是计算机存储介质。携带计算机可执行指令的计算机可读介质是传 输介质。由此,作为示例而非限制,本发明的各实施例可包括至少两种完全不 同类型的计算机可读介质:计算机存储介质和传输介质。

计算机存储介质包括RAM、ROM、EEPROM、CD-ROM或其他光盘存储、 磁盘存储或其他磁存储设备、或可用于存储计算机可执行指令或数据结构形式 的所需程序代码手段且可由通用或专用计算机访问的任何其他介质。

“网络”被定义为允许在计算机系统和/或模块和/或其他电子设备之间传 输电子数据的一个或多个数据链接。当信息通过网络或另一个通信连接(硬连 线、无线、或者硬连线或无线的组合)传输或提供给计算机时,该计算机将该 连接适当地视为传输介质。传输介质可包括可用于携带计算机可执行指令或数 据结构形式的所需程序代码手段且可由通用或专用计算机访问的网络和/或数 据链接。上述的组合也应被包括在计算机可读介质的范围内。

此外,在到达各种计算机系统组件之后,计算机可执行指令或数据结构形 式的程序代码手段可从传输介质自动传输到计算机存储介质(或反之亦然)。 例如,通过网络或数据链接接收到的计算机可执行指令或数据结构可被缓存在 网络接口模块(例如,“NIC”)内的RAM中,然后最终被传输到计算机系统 RAM和/或计算机系统处的较不易失性的计算机存储介质。因而,应当理解, 计算机存储介质可被包括在还利用(甚至主要利用)传输介质的计算机系统组 件中。

计算机可执行指令包括例如,使通用计算机、专用计算机、或专用处理设 备执行某一功能或某组功能的指令和数据。计算机可执行指令可以是例如二进 制代码、诸如汇编语言之类的中间格式指令、或甚至源代码。尽管用结构特征 和/或方法动作专用的语言描述了本主题,但可以理解,所附权利要求书中定义 的主题不必限于上述特征或动作。相反,上述特征和动作是作为实现权利要求 的示例形式而公开的。

本领域的技术人员将理解,本发明可以在具有许多类型的计算机系统配置 的网络计算环境中实践,这些计算机系统配置包括个人计算机、台式计算机、 膝上型计算机、消息处理器、手持式设备、多处理器系统、基于微处理器的或 可编程消费电子设备、网络PC、小型计算机、大型计算机、移动电话、PDA、 寻呼机、路由器、交换机等等。本发明也可在其中通过网络链接(或者通过硬 连线数据链接、无线数据链接,或者通过硬连线和无线数据链接的组合)的本 地和远程计算机系统两者都执行任务的分布式系统环境中实施。在分布式系统 环境中,程序模块可位于本地和远程存储器存储设备中。

图1示出了可在其中采用本发明的原理的计算机体系结构100。计算机体 系结构100包括通过因特网130通信的承租人120和主机135。承租人和主机 可被配置成穿过防火墙125A和125B通信。除了防火墙以外,通信还可穿过路 由器、交换机、网关或其他网络通信设备。承租人120可具有基本上任何数量 的计算机系统。例如,承租人可以是组织,诸如可具有数百、数千或更多计算 机系统的政府实体、学校、公司或其他商业实体。或者,承租人可以是具有单 个计算机系统的单个用户。相应地,要理解,尽管图1中示出承租人1(120) 具有三个计算机系统(121A1、121A2和121A3),然而该承租人可具有任意 数量的计算机系统。

相应地,主机135也可具有任意数量的计算机系统,并可提供或主存(host) 任意数量的服务。主机可以是为不同的承租人主存各种不同服务的多承租人主 机。每个承租人可订阅不同的服务,甚至不同版本的服务。那么承租人的用户 中的每一个都能访问那些服务。多承租人主机验证用户的身份为某个客户端或 承租人的一部分,并提供该承租人所订阅的那些服务。每个承租人的设定、配 置、订阅、所存储的文档和其他项目与所有其他承租人的信息保持分离。在某 些情况下,主机135可以是基于云的主机,分布于可在物理上位于世界上任何 地方的多个不同计算机系统间。这样,主机的任一计算机系统可提供承租人所 请求的服务。

在一些实施例中,在承租人120和主机135之间可建立虚拟网络。虚拟网 络可使用多承租人中继服务105(或本文中的“服务105”)在承租人和主机 之间安全地传输数据。承租人可通过由服务105建立的安全路由通道110发送 数据106。可用唯一标识符(唯一ID107)标记从每个不同承租人发送的数据, 该唯一标识符指示该数据是从哪个承租人处接收的。数据106可通过安全套接 字层(SSL)隧道或其他安全通信手段通过虚拟专用网络(VPN)传送。

在某些情况下,此虚拟网络可被描述为网络虚拟化层,该网络虚拟化层管 理连接到该虚拟网络的承租人计算机系统的创建和地址分配。多承租人中继服 务105可支持参与虚拟网络的计算机系统之间的连通性。网络虚拟化层可将网 际协议(IP)端点暴露为计算机系统的操作系统内的网络适配器。虚拟网络里 的每个端点(即,每个计算机系统或承租人)可从目录服务接收唯一地址或其 他标识符,该唯一地址或其他标识符允许该计算机系统与虚拟网络里的其他端 点通信。安装在参与虚拟网络的计算机系统上的驱动器或软件代理可以负责通 过中继服务105发送IP流量并从该中继服务接收流量。

在一些实施例中,多承租人服务105被配置成创建与中继服务交互的孤立 的路由域。每个路由域能限制对一组授权(承租人或主机)机器的访问并能提 供命名空间以唯一地标识该域中的机器。这不仅使对中继服务的访问安全,而 且在计算机系统连接到中继服务后对这些计算机系统之间的访问进行了划分。 在一个实施例中,多承租人中继服务可提供一个或更多个孤立的路由域,该一 个或更多个孤立的路由域可用于构建虚拟网络。在一些情况下,可实例化安全 套接字隧道协议(SSTP)中继,该SSTP中继基于该承租人的身份从特定的子 网分配IP地址。下面,分别针对图2和图3的方法200和300,更详细地描述 这些和其他概念。

考虑到以上描述的系统和体系结构,参考图2和图3的流程图将更好地理 解可依照所公开的主题实现的方法。为了解释简明起见,这些方法被示出和描 述为一系列框。然而,应该理解和了解,所要求保护的主题不受框的次序的限 制,因为一些框可按不同的次序进行和/或与此处所描绘和描述的其他框同时进 行。此外,并非全部所示出的框都是实现下面所描述的方法所必需的。

图2示出用于提供在计算机系统之间安全地中继数据的多承租人中继服务 的方法200的流程图。现在将频繁参照环境100的组件和数据来描述方法200。

方法200包括如下动作:在实例化的多承租人中继服务处,接收要被从属 于第一承租人的第一计算机系统传递到不同的第二计算机系统的数据的一部 分,其中该实例化的多承租人中继服务被配置成为多个不同承租人安全地中继 数据(动作210)。例如,多承租人中继服务105可接收要被从承租人1(120) 传递到主机135的数据106。中继服务可被配置成为多个不同承租人安全地中 继数据。在某些情况下,该中继服务可将每个计算机系统(例如,121A1)唯 一地标识为属于某个承租人(例如,承租人120)的计算机系统。在其他情况 下,该中继服务可将该数据唯一地标识为来自某个承租人,而不管该数据来自 哪个计算机系统。相应地,由中继服务105附加于该数据的唯一ID107可唯一 地标识从其接收该数据的承租人和/或作为承租人120的一部分的特定计算机 系统或用户。

如同上面指示的,主机和承租人计算机系统可以是在物理上分布式的,或 者可以在不同网络上本地分布的。多承租人中继服务还可以运行在多个分布式 计算机系统上。在这样的情况下,中继服务可确定哪些路径是最优的(例如, 最高带宽、最安全、最短路径等)且可以使用偏好路径来路由数据106。在一 些实施例中,可为连接到多承租人中继服务的每个计算机系统安装或以其他方 式提供软件代理。该代理可负责将计算机系统加入该中继服务和/或提供用于IP 地址翻译的域名系统(DNS)服务。因此,在使用该中继服务建立的虚拟网络 内,计算机系统可在其通信中使用DNS。在一些情况下,该多承租人中继服务 是IP层中继。在这样的情况下,在IP层管理第一和第二计算机系统之间的通 信。

方法200包括如下动作:多承租人中继服务创建安全路由通道,用以在第 一计算机系统和第二计算机系统之间路由第一承租人的数据,其中该安全路由 通道向从第一承租人接收的数据的每一部分应用唯一标识符(动作220)。例 如,多承租人中继服务105可创建用于在承租人120和主机135之间路由数据 106的安全路由通道110。该安全路由通道可向从承租人120接收的数据的每 一部分应用唯一标识符107。附加地或替代地,该安全路由通道可向从该承租 人的特定计算机系统(例如,从计算机系统121A2)接收的数据的每一部分应 用该唯一标识符。

创建安全路由通道可包括创建用于在安全路由通道中的IP地址之间进行 路由的IP地址空间。在使用DNS的情况下,应用于该承租人的数据的唯一 ID 107可被从该承租人映射到该第一计算机系统(例如,121A2)的DNS名称 以解析该第一计算机的DNS名称。因此,发送数据106的计算机的DNS名称 被映射到由安全路由通道应用的唯一ID。

如同之前提到过的,唯一标识符107可被应用于从某一承租人(例如,承 租人120)接收的所有数据,而不管该数据是从哪个计算机系统或哪些计算机 系统接收的。用这种方式,所应用的唯一标识符允许每个承租人在多承租人中 继服务中拥有自己的唯一命名空间,因为在承租人和主机之间传输的数据的每 一部分被唯一地标识为来自该承租人。类似地,唯一标识符107可被应用于从 某一计算机系统接收的所有数据,其中在该计算机系统和主机之间传输的数据 的每一部分被唯一地标识为来自那个计算机系统。因此,来自给定承租人的数 据(不管承租人的用户中的哪个正在发送该数据)被保持与其他承租人的数据 分离。这增加了数据传输的安全度。此增加的安全性(以及其他特征)允许中 继服务105向使用该服务的承租人提供安全保证。这对于涉及私人的、财务的、 机密的或需要在安全环境传送的其他信息的服务是尤其重要的。

方法200包括如下动作:多承租人中继服务使用所应用的唯一标识符通过 该安全路由通道将来自第一计算机系统的所接收的数据路由到第二计算机系 统(动作230)。例如,中继服务105可使用所应用的唯一标识符107通过安 全路由通道110将来自承租人120的数据106路由到主机135。该唯一标识符 被应用到通过安全路由通道传输的(去往和来自该承租人和主机的)所有数据。 在一些情况下,多个不同承租人向主机105发送数据以及从主机105接收数据。

例如,如图4的计算机环境400中所示,承租人420A、420B和420C每 个可各自向多承租人中继服务405发送不同的数据。具体来说,承租人420A 向中继服务405的安全路由通道410发送数据406A。然后安全路由通道应用唯 一标识符(承租人420A唯一ID)407A并将该数据传输至服务提供商435。类 似地,承租人420B和420C向中继服务405的安全路由通道410发送数据406B 和406C。然后安全路由通道分别应用唯一标识符(承租人420B唯一ID和承 租人420C唯一ID)407B和407C,并将该数据传输至服务提供商435。

保持每个承租人的数据与其他承租人的数据的分离和安全,即便这些承租 人正连接于相同的服务。而且,每个承租人的数据被唯一地标识为来自给定承 租人(或来自该承租人的特定用户/计算机系统)。因此,在每个承租人具有它 自己的唯一标识符的情况下,即便在两个承租人具有相同IP地址的情况下,数 据也能被分离和路由。用这种方式,中继服务可安全地在承租人和主机之间中 继信息。传送回承租人的计算机系统的数据保持由安全路由通道分配给它的唯 一ID。而且,在承租人的计算机系统上运行的应用程序可以看上去像是直接连 接于在主机系统上运行的应用程序或服务而不经网络地址翻译,因为通信数据 是通过源和目的地之间的虚拟网络经由安全路由通道传递(channel)的。

现在转向图3,图3示出用于提供在计算机系统之间安全地中继数据的多 承租人中继服务的方法300的流程图。现在将频繁参照环境100的组件和数据 来描述方法300。

方法300包括如下动作:在实例化的多承租人中继服务处,接收要被从第 一计算机系统传递到不同的第二计算机系统的数据的一部分,其中该实例化的 多承租人中继服务被配置成为多个不同承租人中继数据(动作310)。例如, 多承租人中继服务105可接收要被从计算机系统121A3传递到主机135的计算 机系统131A1、131A2或131A3中的一个的数据106。如同上面指出的,中继 服务105可被配置成为各种不同承租人中继数据。一些承租人可包括一个计算 机用户而一些承租人可包括数千个或者更多用户。中继服务可将计算机系统 (比如121A3)唯一地标识为属于承租人120。附加地或替代地,中继服务可 将计算机用户标识为属于承租人,而不管用户正在使用哪个计算机系统。例如, 用户可认证为承租人120的成员,并且通过该认证,能够访问该承租人订阅的 服务。

方法300进一步包括如下动作:多承租人中继服务创建安全路由通道,用 以在第一计算机系统和第二计算机系统之间路由数据,其中该安全路由通道向 从第一承租人接收的数据的每一部分提供唯一标识符(动作320)。例如,多 承租人中继服务105可创建用于在承租人120和主机135之间路由或中继数据 的安全路由通道110。该安全路由通道向从给定计算机用户或计算机系统接收 的数据的每一部分应用唯一标识符107。

方法300包括如下动作:确定多个不同网络协议中的哪些网络协议对于路 由所接收的数据是可用的(动作330)。例如,中继服务105可确定哪些网络 服务对于路由数据106是可用的。所述协议可包括超文本传输协议(HTTP)、 传输控制协议(TCP)、网际协议(IP)或用于通过网络传输数据的任何其他 协议。该中继服务还可确定本地网络是否对于传输数据是可用的。然后,基于 对哪些网络协议是可用的的确定,中继服务可动态选择使数据传输效率最优化 的适当协议(动作340)。例如,如果本地网络是可用的,并且被确定为是安 全的,则该本地网络可被选择为最高效的,并使用该本地网络来传输数据。在 作出初始选择之后,如果网络发生了改变,则中继服务可重新评估哪些可用协 议对于传输数据是最适当的。

方法300还包括如下动作:使用所确定的协议将来自第一计算机系统的所 接收的数据路由到第二计算机系统,其中该数据是使用所应用的唯一标识符通 过安全路由通道路由的(动作350)。例如,中继服务105的安全路由通道110 可使用所确定的协议来将来自承租人120的数据106路由至主机135。使用 HTTP、TCP、IP或某种其他所确定的适当协议传输该数据(该数据具有附加于 它的唯一标识符107)。在一些情况下,如果该承租人和主机在同一本地计算 机网络上,则该中继服务可指导这两个系统连接到该本地网络上而任一系统均 不离开被防火墙保护的环境。通过选择最高效(且安全)的协议,可以确保最 优的路由效率。

因此,提供了提供在计算机系统之间安全中继数据的多承租人中继服务的 方法、系统和计算机程序产品。该系统可使用本地网络(当可用时)并可在可 用协议中作出选择以针对具体情形使用最高效的协议。通过安全地中继并唯一 地标识它从每个承租人接收到的数据,该中继服务可在承租人和主机之间建立 并保持虚拟网络。用这种方式,多承租人中继服务可服务多承租人主机。

本发明可被具体化为其他具体形式而不背离其精神或本质特征。所描述的 实施例在所有方面都应被认为仅是说明性而非限制性的。因此,本发明的范围 由所附权利要求书而非前述描述指示。落入权利要求书的等效方案的含义和范 围内的所有改变被权利要求书的范围所涵盖。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号