全球局域网安全互联的系统和方法

文档序号:7807845阅读:186来源:国知局
全球局域网安全互联的系统和方法
【专利摘要】一种全球局域网安全互联的系统和方法。本发明涉及在局域网(LAN)中建立虚拟专用网络(VPN)的方法和网络设备。所述方法使用具有静态的IP地址的云控制器控制多个网络设备。所述方法包括在所述云控制器上接受消息以指示与所述第一和第二网络设备关联的动态的公有网络地址;在所述云控制器上预分配所述第一和第二网络设备至由所述云控制器维护的账户;并发送认证消息至与所述第一和第二网络设备关联的所述动态的公有网络地址,以建立一个包括所述第一和第二网络设备所属的两个专用网络的虚拟网络。
【专利说明】全球局域网安全互联的系统和方法
[0001]优先权
[0002]本申请主张2013年7月I日提交的标题为“全球局域网安全互联的自动地址分配”(AUTOMATED ADDRESS ALLOCAT1N FOR SECURED GLOBAL LAN)的美国临时专利申请号61/841,893的权益,该申请的所有内容通过引用整体地并入此文。

【技术领域】
[0003]本发明涉及在多个专用网络之间建立虚拟网络的方法。本发明还涉及网络设备包括处理器、网络接口以及存储部件。所述网络设备能够与云控制器通信以识别对等设备并与所述对等设备建立一个虚拟网络连接。

【背景技术】
[0004]局域网(LAN)是基本的信息技术(IT)基础设施,并被广泛地部署在各种规模的公司园区内,小至家庭办公室,大至一流的企业巨头。由于许多公司在不同的地区分配其劳动力,因此在这些地区的办公室之间,局域网的安全连接性能对于中等规模或更大规模的企业是一种奢侈,这是由于为了获得该功能,对基础设施的部署具有复杂性以及存在费用问题。
[0005]虚拟专用网络(VPN)是企业总部(HQ)与它的分支办公室建立安全连接的最受欢迎的方式。如图1所示,“中心”(hub)装置119被安装在公司总部局域网110中以与在所述分支办公室局域网120的“分支”(spoke)设备129建立连接,在因特网140的控制下通过在所述公司总部局域网110和所述分支办公室局域网120之间设定一安全的虚拟专用网络通道130。所述网络设备119和129分别位于所述公司总部局域网110以及所述分支办公室局域网120必须被配置以建立一虚拟专用网络通道,这一般需要训练有素的信息技术专业人员来完成。所述“中心”(hub)设备119和所述“分支”(spoke)设备129是十分昂贵的设备且需要至少一个所述公司总部局域网110和所述分支办公室局域网120保持一静态的公有IP地址,否则所述“中心” (hub)设备119和所述“分支” (spoke)设备129无法发现对方以建立虚拟专用网络连接130。
[0006]另一通过因特网建立局域网连接的技术被称为虚拟专用局域网业务(VPLS),一般由网络服务供应商向可以负担高额费用的大客户提供服务。虚拟专用局域网业务是通过一套供应商边缘设备(PE)以及客户边缘设备(CE)实施,如图2所示。PE210、220和230是由设备供应商管理以仿真开关,因此从客户的角度观察和感受,所有的网点(例如局域网)都通过中间的仿真开关连接。部署在局域网外的专用服务器P1290需要建立所有在所述PE210、220和230之间的伪线。这一方案需要部署和保持专用设备具有静态的公有IP地址,例如PE和Pl被部署在局域网外。这一方案的费用支出远远超出了中小型企业(SMBs)能够承担的费用范围。
[0007]在当前的全球市场上,甚至是极小的公司也可能会有在地理上位置分散的办公室,因此在不同的地区有多个局域网。以上提到的方案对两个或多个局域网的互联需要专用的和昂贵的设备,需要具有静态的公用IP地址,并且需要复杂的安装和配置。这些设备的部署是复杂的。部署站点到站点的虚拟专用网络需要技术娴熟的专注于网络安全领域的信息技术专业人员。大多中小型企业连拥有专业IT员工都无法承担,更别提可以实施虚拟专用网络配置的任何专业人员。另外,这些专用设备的维护是昂贵的,因为它们在局域网外且通常需要网络服务提供商的专业维护。鉴于以上原因,由于高昂的费用和IT人员专业维护的需要,以上提到的方案并不适合中小型企业。


【发明内容】

[0008]本发明针对一种由云控制器控制多个网络设备的方法。所述方法包括在所述云控制器上从第一网络设备接收消息,所述消息指示与所述第一网络设备关联的公有网络地址;在所述云控制器上从第二网络设备接收消息,所述消息指示与所述第二网络设备关联的公有网络地址;在所述云控制器上预分配所述第一和第二网络设备至由所述云控制器维护的账户;以及发送认证消息至与所述第一和第二网络设备关联的所述公有网络地址,认证所述第一和第二网络设备以建立一个虚拟网络,所述虚拟网络包括所述第一和第二网络设备所属的两个专用网络。与所述第一和第二网络设备关联的至少一个所述公有网络地址包括一个动态的IP地址。与所述第一和第二网络设备关联的所述公有网络地址还可以包括一个或多个静态的IP地址。与所述第一和第二网络设备关联的所述公有网络地址还可以包括通信端口和动态的公有IP地址,所述动态的公有IP地址是分配给所述第一和第二网络设备,或是分配给所述第一和第二网络设备所属的所述专用网络的路由器。与所述第一和第二网络设备关联的所述公有网络地址可以包括分配给所述第一和第二网络设备所属的专用网络的路由器的动态的公有IP地址。所述专用网络的私有IP地址被分配给所述第一和第二网络设备。
[0009]本发明还针对网络设备。所述网络设备包括处理器、网络接口和存储部件。所述网络接口被配置为与云控制器和至少一个对等设备通信。所述存储部件预加载与所述云控制器关联的公有网络地址以及所述网络设备的识别符。所述存储部件还存储指令,当所述指令被所述处理器执行时,引起所述网络设备执行过程包括:通过发送注册消息包括所述网络设备的所述识别符至与所述云控制器关联的所述公有网络地址,使所述云控制器识别所述网络设备;从所述云控制器接收认证消息,所述认证消息包括与所述对等设备关联的公有网络地址;以及基于所述认证消息与所述对等设备直接连接,以在所述网络设备所属的专用网络和所述对等设备所属的专用网络之间建立虚拟网络。与所述对等设备关联的所述公有网络地址可以包括动态的IP地址。所述注册消息还包括分配给所述网络设备的,或分配给所述网络设备所属的所述专用网络的路由器的动态的IP网络地址。
[0010]本发明还针对在多个专用网络中建立一虚拟网络的方法。所述方法包括从网络设备传输注册消息至云控制器,所述云控制器与预加载在所述网络设备中的一个公有网络地址关联,所述注册消息包括与所述网络设备关联的公有网络地址;从所述网络设备发送请求消息至所述云控制器,所述请求消息请求在所述网络设备和对等设备间建立虚拟网络;在所述网络设备处接收来自所述云控制器的认证消息,所述认证消息包括与所述对等设备关联的公有网络地址;以及基于所述认证消息直接连接至所述对等设备,以在所述网络设备所属的专用网络和所述对等设备所属的专用网络间建立所述虚拟网络。与所述网络设备关联的所述公有网络地址可以包括一动态的IP地址。

【专利附图】

【附图说明】
[0011]图1所示是安全连接由同一企业拥有的两个单独的局域网(LAN)的常见方式。
[0012]图2所示是由网络服务提供商维护的虚拟专用局域网服务(VPLS)的示例。
[0013]图3所示是包括云控制器和多个网络设备以建立至少一个虚拟网络的系统的示例。
[0014]图4所示是通过在两个网络设备间建立一虚拟专用网络连接以形成覆盖两个局域网的一虚拟网络的示例。
[0015]图5所示是云控制器控制由两个不同的客户拥有的网络设备的示例。
[0016]图6所示是由云控制器维护的设备数据库的示例。
[0017]图7所示是由云控制器维护的密钥数据库的示例。
[0018]图8所示是所述网络设备的高级架构的示例。
[0019]图9所示是在多个专用网络中建立虚拟网络的过程的示例。
[0020]图10所示是为了建立虚拟网络而识别和控制所述网络设备的过程的示例。
具体实施例
[0021]本发明是针对任何规模公司的一解决方案,凭借运行在云端的服务,通过因特网使他们的局域网之间互联,方便而又节省成本。无需任何局域网的静态的公有IP地址。网络设备安装在公司的每个局域网中,所述网络设备有能力与云控制器建立通信以识别和定位同一公司的其他局域网的一个或多个对等网络设备,并且在所述网络设备中建立虚拟网络连接。
[0022]通过多个步骤建立虚拟专用网络连接的过程在此被公开。首先,当网络设备启动后第一次与因特网建立连接,它将会通过预加载到设备中的控制器的IP地址自动连接到所述云控制器。当所述设备在所述控制器中自行进行了注册,所述控制器将会获得所述设备的IP地址和端口,以及其他信息,如其序列号。其次,所述设备将与所述控制器周期性同步(例如通过心跳机构)以更新其状态。如果所述设备具有动态的公有IP地址,所述控制器将通过周期性同步获得该更新。接着,如果设备通过路由器的动态主机配置协议(DHCP)服务获得私有IP地址,所述控制器可以回溯数据包以识别映射到所述设备的相应的公有IP和端口。该映射存储在所述控制器的数据库中。接着,所述控制器将生成预共享密钥,所述预共享密钥的生成是基于所述对等设备的序列号或一些其他信息,如设备的IP地址和端口号。所述密钥将仅能够在两个将建立虚拟专用网络连接的设备中间共享。最后,当设备想要与其对等设备建立虚拟专用网络连接时,它从所述控制器处获得对等设备的IP地址和端口号。所述控制器还将安全地推送所述预共享密钥至所述两个设备,使得虚拟专用网络连接得以在这两个网络设备中建立。
[0023]上述操作可以通过云端的中心控制器全权自动控制,且无需管理介入。这种方案的至少一个益处在于客户无需支付和安装在其总部的昂贵的中心设备以连接任何两个相距较远的局域网。反而,小中型企业可以简单地使用两个小型且价格低廉的网络设备,正如在此公开的,通过在云端的控制器服务建立连接。另外,客户不需要为其局域网获得任何静态的公有网络地址(例如静态的公有IP地址)。任意两个局域网可以通过中心云控制器建立连接。全部连接过程可以自动实施,通过在云端的中心控制器。只要很小的投资(例如两个价格低廉的设备,加上订阅云控制服务),小中型企业就可以极大受益于全球互联虚拟局域网(也被称之为全球性局域网或GLAN)。
[0024]网络设备和云控制器
[0025]图3所示是系统300的示例,包括云控制器301和多个网络设备321-324。每个所述网络设备321-324安装在专用网络331-334上,例如局域网(LAN)。所述云控制器301可以是,例如,安装在云计算平台310,作为基于软件的控制器服务。在所述云计算平台310的所述云控制器301可以是,例如,在亚马逊网络服务(AWS)、谷歌云计算平台、微软云计算平台、OpenStack,或其他云计算平台中的虚拟服务器或虚拟装置。在至少一个实施方案中,所述系统300可以在软件定义网络(SDN)的架构下实施。在软件定义网络的架构下,所述云控制器301最具智能地管理和控制每个所述网络设备321-324,使得他们得以作为一协同的系统在一起工作。所述云控制器301识别和定位同一客户的对等网络设备,且指示所述对等网络设备建立虚拟网络连接,例如虚拟专用网络(VPN)连接。
[0026]所述云控制器301具有静态的公有网络地址,例如静态的公有IP地址或静态的公有域名。所述静态的公有网络地址被预加载到每个所述网络设备321-324的存储部件中,使得所述网络设备321-324可以访问云控制器301的所述网络地址而无需在所述网络设备321-324打开时的用户介入或网络更新。通过使用预加载的静态的公有网络地址,所述网络设备321-324可以与所述云控制器301通信且通过接收和遵循所述云控制器301的指示可以被所述云控制器301控制。当所述网络设备321-324启动且联网后,所述网络设备321-324发送原始注册信息至所述云控制器301。根据接收的注册信息,所述云控制器301记录所述网络设备321-324的识别码(例如序列号)和位置(例如设备的动态的公有网络地址)。如果与所述网络设备321-324关联的所述公有网络地址发生了改变,则所述设备会向云控制器301发出更新消息,使得所述云控制器301总是保持对所述设备的网络位置的追踪。因此,任何所述网络设备321-324都无需具有静态的网络地址,而所述云控制器301仍可以定位任一所述网络设备321-324以及所述局域网331-334。
[0027]所述云控制器301保持对所述网络设备321-324的改变的追踪,使得所述控制器301总是拥有所述设备的最新的公有网络地址。在云端的所述控制器301将提供功能以促进在不同局域网中的任何两个设备之间的初步协商。例如,当一个设备想要与其对等设备建立虚拟专用网络连接,它需要从所述控制器301获得其对等设备的IP以及端口。所述控制器301也可以安全地推送一预共享密钥至这两个设备使得可以在两个局域网间建立一虚拟专用网络连接。如图4所示,例如,虚拟网络450是通过在网络设备421和422间建立虚拟专用网络连接440而形成的,以覆盖局域网431和432。
[0028]当静态的公有网络地址(例如静态的公有IP地址)的获得是稀有且昂贵的时候,大多小中型企业的局域网只有由其服务供应商分配的动态的IP地址。若没有云控制器301的帮助,拥有动态的IP地址的网络设备321-324不可能彼此协商建立虚拟专用网络连接,因为他们不可能互相知道IP地址、在没有所述云控制器301的指示消息的情况下开始通?目。
[0029]所述云控制器301可以解决以上的问题。所述云控制器301在云端运行且具有静态的公有IP地址,这些地址被预加载到每个所述网络设备321-324中。通过使用预加载的地址,每个装置321-324首先与所述云控制器301建立通信以在该服务中自行注册。由于所述云控制器具有静态的公有IP地址,每个设备,无论其是否拥有静态的或动态的IP地址,总可以连接到所述云控制器301。在初始注册之后,所述云控制器301保持对每个设备的网络位置的跟踪使得所述控制器301总是拥有每个所述网络设备321-324的最新的IP地址。
[0030]虽然图3示出四个网络设备321-324连接至所述云控制器,而所述云控制器301可以与任何数量的网络设备通信并对其进行控制,如本领域技术人员所希望的那样。另外,所述云控制器301可以为多个客户建立通信以及控制网络设备,通过维护客户账户对设备分配或预分配。
[0031]图5所示是云控制器501为两个不同的客户控制网络设备的示例。每个客户可以是公司、组织、政府实体、个人或其它拥有多个局域网的实体。所述云控制器501可以处理来自多个客户的网络设备以及每个客户可以拥有任何数量的网络设备和局域网,如本领域技术人员期望的那样。在图5所示的实例中,所述云控制器501控制网络设备521-525。在这些设备中,网络设备521-522(以及相应的局域网531-532)属于客户A,而网络设备523-525(以及相应的局域网533-535)属于客户B。
[0032]网络设备分配至客户账户被所述云控制器501记录,且不会影响任何网络设备521-525的状态。换言之,所述分配可以发生在所述网络设备在局域网531-535中被安装或启动之前。有各种不同的方式来分配所述网络设备。例如,客户A购买了所述网络设备521-522,可以通过由所述云控制器501或连接至所述云控制器501的服务器所提供的远程用户界面(例如HTTP网站界面)登录进入其客户账户。所述客户A在远程用户界面输入购买的网络设备521-522的序列号或其他类型的识别符。所述云控制器501记录这些与客户账户521-522相关的这些序列号或识别符,可以有效地预分配这些网络设备521-522至所述客户账户,而无需访问、与其通信或修改任一网络设备521-522。可选地,供应商或制造商通过与所述云控制器501通信可以预分配将被出售给客户的网络设备至客户的账户。
[0033]一旦所述客户A拥有的所述网络设备521-522被安装至局域网531-532且被启动,所述网络设备521-522读取所述云控制器501的所述预加载的静态的公有网络地址,且发送初始化消息到所述云控制器501的所述静态的公有网络地址。当所述云控制器501接收所述初始化消息,所述云控制器501识别出所述网络设备521-522是分配到客户A这一相同客户账户的对等网络设备。所述云控制器501进一步记录与所述网络设备521-522相关联的所述公有网络地址。所述公有网络地址可以包括,例如,公有IP地址以及通信端号。
[0034]所述云控制器501生成对于这组所述网络设备521-522而言唯一的预共享密钥。所述预共享密钥可以被生成,例如,基于所述网络设备521-522的序列号。所述云控制器501发送指示消息至所述网络设备521以指示所述网络设备521与所述网络设备522建立通信以及创建一虚拟网络连接。所述指示消息可以包括预共享密钥以及与所述网络设备522关联的公有网络地址。通过使用所述预共享密钥和所述公有网络地址,所述网络设备521可以与所述网络设备522建立虚拟网络连接540 (例如虚拟专用网络连接)。结果,相应的局域网531-532形成专用网络550 (例如虚拟专用网络)。
[0035]可选择的,所述云控制器501可以向所述网络设备521-522都发送所述指示消息。所述网络设备521-522可以交换握手信息,包括所述预共享密钥以建立所述虚拟网络连接540,这是作为本领域普通技术人员可以理解的。
[0036]所述云控制器501可以更新所述网络设备以及所述客户账户之间的分配关系。例如,所述客户B起初拥有两个网络设备523和524,以及相应的局域网533和534。所述客户B从另一拥有者那里购买了另外的二手网络设备525。所述云控制器501记录了所述网络设备525被分配给另一账户而不是所述客户B的账户。所述客户B在局域网535中安装所述设备525并通过在远程用户界面输入所述设备525的序列号登陆到其账户中。因此,所述云控制器501更新了其分配记录,将所述网络设备525分配到客户B的账户中。
[0037]一旦所述网络设备525在所述局域网535中启动,它发送初始化消息至所述云控制器501。所述云控制器501记录从所述初始化消息中提取的其当前的公有网络地址。所述云控制器501进一步识别出所述网络设备523和524如所述设备525 —样被分配到相同的客户。所述云控制器501发送指示消息到所述设备525。所述指示消息可以包括所述对等网络设备523和524的所述公有网络地址以及通过所述云控制器501生成的预共享密钥。因此,所述网络525与所述网络设备523和524分别通信且建立虚拟网络连接546和548 (例如虚拟专用网络连接)。结果,所述客户B拥有的相应的局域网533-535形成了专用网络560 (例如虚拟专用网络)。
[0038]可选择的,所述云控制器501可以发送所述指示消息至所述网络设备523-524,或至所有的所述网络设备523-525。所述网络设备523-525可以交换消息,包括所述预共享密钥以建立所述虚拟网络连接,正如本领域普通技术人员可以欣然理解的。
[0039]图6所示是通过云控制器维护的设备数据库600的示例。所述设备数据库600包括在所述云控制器中注册的所述网络设备的设备序列号。所述设备数据库600可以进一步包括还未在所述云控制器中注册的所述设备的设备序列号。例如,网络设备的制造商可以提供为所述云控制器制造的设备的序列号,而不提供网络地址。可选的,所述网络设备的供应商可以提供储存在所述云控制器的设备的序列号,而不提供网络地址。在其他实施方案中,设备数据库可以包括为所述网络设备提供的其他方式的识别符,以在所述网络设备中唯一识别每个设备。
[0040]所述设备数据库600还包括所述网络设备的网络地址。所述网络地址可以包括IP地址和通信端口号,如图6所示。所述云控制器可以从所述网络设备处接收到的初始化消息和心跳消息中收集所述网络地址信息。在其他实施方案中,设备数据库可以包括所述网络设备的其他类型的网络地址,例如,域名或IPv6地址。
[0041]所述设备数据库600还包括所述设备被分配的客户账号。每个账号是唯一可以识别客户拥有一个或多个网络设备。通过使用所述设备数据库600中的分配信息,所述云控制器有能力识别并指示被同一客户拥有的对等网络设备以形成虚拟网络。
[0042]可选的,云控制器可以在分离的数据库中存储所述网络设备的信息以及存储所述设备和账户间的分配信息。这些设备的信息以及分配信息还可以被存储在一单独的服务器中,与所述云控制器连接。
[0043]图7所示是通过云控制器维护的密钥数据库700。所述密钥数据库700包括预共享密钥。每个预共享密钥对于一组两个网络设备而言是唯一的。例如,所述云控制器可以生成基于两个网络设备的序列号,或基于两个网络设备的其他识别符的预共享密钥。对于预共享密钥的每个数据库入口,所述密钥数据库700进一步包括与所述预共享密钥相应的所述网络设备的两个序列号或其他类型的识别符。在其他一些实施方案中,所述云控制器可以使用其他类型的认证方法以指示所述网络设备建立虚拟网络连接。因此,根据认证方法的类型,所述云控制器的密钥数据库可以包括其他类型的认证密钥。
[0044]图8所示是网络设备800的示例。所述网络设备800包括一个或多个处理器810、网络接口 840以及连接至互连830的存储部件820。所述互连830如图8所示是抽象的结构,能够代表任何一个或多个分离物理总线、点对点连接,或都是通过合适的桥接器、适配器或控制器连接的。所述互连830,因此,可以包括,例如,系统总线、外围组件互连(PCI)总线或PC1-Express总线、超传输或工业标准体系结构(ISA)总线、小型计算机系统接口(SCSI)总线、通用串行总线(USB)、IIC(12C)总线、或电器和电子工程师协会(IEEE)标准1394总线,也被称为“火线”。
[0045]所述处理器(810)是存储器800的中央处理单元(CPU)且,因此,控制节点800的全部操作。在某些实施方案中,所述处理器810通过执行存储在内存820中的软件或固件来完成控制。所述处理器810可以是,或可能包括,一个或多个可编程通用或专用微处理器、数字信号处理器(DSP)、可编程控制器、专用集成电路(ASIC)、可编程逻辑器件(PLD)、可信平台模块(TPM),或类似的,或该设备的组合。
[0046]所述存储部件820代表任何形式的随机存取存储器(RAM)、只读存储器(ROM)、闪存,或类似的,或这些设备的组合。在使用中,所述存储部件820可以在其他事物中包括代码,以体现所述设备800的操作系统的至少一个部分。
[0047]另外,通过所述互连830与所述处理器810连接的是网络接口 840。所述网络接口840提供与所述云控制器801和其他对等网络设备通信的能力,例如设备421或422,通过网络且可以是,例如,以太网适配器或光纤通道适配器。在某些实施方案中,设备可以使用多个网络接口以分别处理与外部网络设备的通信。
[0048]所述代码存储在存储部件820中可以作为软件和/或固件实施以对所述处理器810编程来完成以下描述的行动。在某些实施方案中,该软件或固件可以在最初通过所述设备800下载(例如通过网络接口 840)提供给所述设备800。
[0049]所述存储部件820可以预加载所述云控制器801的静态的公有网络地址821。所述静态的公有网络地址821可以在各种情况下被预加载至所述网络设备800的所述存储部件820。例如,所述静态的公有网络地址821可以被预加载至所述存储部件820当所述网络设备800被制造时或者当所述网络设备800被出售给客户时。
[0050]所述存储部件820进一步为所述网络设备800存储识别符822。识别符822包括唯一在所有其他网络设备中识别所述网络设备800的信息。类似地,所述识别符822可以是或包括序列号。所述识别符822可以在多种情况下预加载到所述网络设备800的所述存储部件820。例如,所述识别符822可以被预加载到所述存储部件820当所述网络设备800制造时或当所述网络设备800被出售给客户时。
[0051]所述存储部件802可以进一步存储初始化模块823,该配置用以识别所述网络设备800至所述云存储器801,通过发送所述网络设备800的识别符至与所述云控制器801关联的公有网络地址821。所述存储部件802可以进一步存储心跳模块824,该配置用以周期性地更新所述网络地址800的网络地址至所述云控制器801,通过周期性地发送心跳消息至所述云控制器801。
[0052]所述存储部件802可以进一步存储虚拟网络模块825,该配置用以接收认证消息,包括来自所述云控制器801且与所述对等设备关联的公有网络地址,并且与所述对等设备直接连接,基于所述认证消息以在所述网络设备800所属的专用网络以及所述对等设备所述的专用网络间建立虚拟网络。所述初始化模块823、心跳模块824以及虚拟网络模块825可以作为存储在所述存储部件820中的软件或固件被实施。
[0053]通过网络设备和云控制器执行的过程
[0054]所述网络设备的存储部件可以进一步存储指令,当被处理器执行时,使得所述网络设备执行过程包括不仅是所述初始化模块823、心跳模块824和虚拟网络模块825的功能。图9所示是在多个专用网络中建立虚拟网络的过程900。所述过程900始于步骤910,从网络设备传输注册消息到与预加载在所述网络设备中的公有网络地址相关联的云控制器。所述注册消息可以包括与所述网络设备关联的公有网络地址。所述注册消息可以进一步包括所述网络设备的识别符。至少在一个实施方案中,所述云控制器可以是在云计算平台上运行的软件定义网络(SDN)服务。
[0055]所述过程900继续步骤920,从所述网络设备至所述云控制器周期性传输心跳消息以更新与所述网络设备关联的所述公有网络地址。与所述网络设备关联的所述公有网络地址可以是当前分配给所述网络设备的公有IP地址,或当前分配给所述网络设备的专用网络的路由器的公有IP地址。
[0056]所述过程900进一步继续进行到步骤930,从所述网络设备至所述云控制器发送请求消息以在所述网络设备和对等设备间建立虚拟网络。在至少一个实施方案中,所述请求不需要识别所述对等设备。在一些其他实施方案中,所述请求消息可以包括识别对等设备。所述网络设备以及所述对等设备可以被预分配给通过所述云控制器维护的账户。因此,所述对等设备可以被所述云控制器识别,基于预分配给所述网络设备的账户。
[0057]所述过程900继续进行到步骤940,在所述网络设备上接收来自所述云控制器的认证消息,包括与所述对等设备关联的公有网络地址。以及最后,所述过程900继续进行到步骤950,基于所述认证消息直接连接至所述对等网络以在所述网络设备所属的专用网络以及所述对等设备所属的专用网络间建立所述虚拟网络。所述虚拟网络可以是虚拟专用网络(VPN)。所述认证消息可以包括所述云控制器生成的预共享密钥,它对于一组所述网络设备和所述对等设备是唯一的。
[0058]所述云控制器最具智能地识别对等网络设备以及指示所述对等网络设备来建立虚拟网络连接。图10所示是为识别和控制所述网络设备以建立虚拟网络的过程1000。在所述过程1000的步骤1010中,在所述云控制器接收来自第一网络设备的消息以指示与所述第一网络设备相关联的公有网络地址。所述过程1000继续进行到步骤1020,在所述云控制器上接收来自于第二网络设备的消息以指示与所述第二网络设备相关联的公有网络地址。与所述第一和第二网络设备关联的所述公有网络地址可以包括通信端口以及公有IP地址,所述公有IP地址是分配给第一和第二网络设备,或分配给所述第一和第二网络设备所属的所述专用网络的路由器。所述公有IP地址可以是动态的IP地址(例如为有限时间段分配的IP地址以及在下一次分配后可以改变的IP地址),而不是静态的IP地址(例如IP地址被永久分配,例如其硬件或软件的固定配置)。可选择的,与所述第一和第二网络设备关联的所述公有网络地址可以包括动态的公有网络地址,所述动态的公有网络地址被分配到所述第一和第二网络设备所所属的专用网络的路由器。所述第一和第二网络设备可以被分配所述专用网络的私有IP地址。所述第一和第二网络设备可以通过序列号或其他分别存储在第一和第二网络设备中的识别符被识别。
[0059]所述过程1000继续进行到步骤1030,更新由所述云控制器维护的数据库。所述数据库包括当前与所述第一和第二网络设备关联的所述公有网络地址。所述数据库可以进一步包括关于所述第一和第二网络设备被预分配到账户的信息。
[0060]所述过程1000继续进行到步骤1040,为预分配以序列号识别的网络设备至账户,提供远程用户界面。所有被预分配到同一账户中的网络设备可以被配置为形成虚拟网络,所述虚拟网络是当所述网络设备在线运行时,在这些网络设备所属的专用网络中形成的。所述过程1000继续进行到步骤1050,在所述云控制器上接收指示以预分配所述第一和第二网络设备到由所述云控制器维护的账户中。所述指示可以是来自于计算设备,与所述第一和第二网络设备分离。接着所述过程1000继续进行步骤1060,在所述云控制器上预分配所述第一和第二网络设备至由所述云控制器维护的账户中。可选择的,所述步骤1040-1060可以在步骤1010、1020或1030之前发生。
[0061]所述过程1000继续进行到步骤1070,生成预共享密钥,其对于一组所述第一和第二网络设备是唯一的,其中认证消息包括所述预共享密钥。接着所述过程1000继续进行到步骤1080,发送认证消息至与第一和第二网络设备关联的所述公有网络地址以认证所述第一和第二网络设备,以在所述第一网络设备所属的专用网络和所述第二网络设备所属的专用网络之间建立虚拟网络。
[0062]本文所介绍的技术,可以通过以下方式实现,例如,可编程电路(例如,一个或多个微处理器)、编程软件和/或固件,或全部在专用硬件电路中,或者这些形式的组合。特殊用途的硬线电路可以是,例如,一个或多个专用集成电路(ASIC)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)等形式。
[0063]对于在实施此处提出的技术中使用的软件或固件可以被存储在机器可读存储介质上,并且可以由一个或多个通用或专用的可编程微处理器执行。“机器可读存储介质”,如在本文中使用的术语,包括任何可以以机器可访问的形式存储信息的机制(该机器可以是,例如,计算机、网络装置、蜂窝电话、个人数字助理(PDA)、制造工具、任何具有一个或多个处理器的装置,等等)。例如,机器可访问存储介质包括可记录/不可记录介质(例如,只读存储器(ROM)、随机存取存储器(RAM)、磁盘存储介质、光存储介质、闪存装置;等等),等坐寸ο
[0064]术语“逻辑”,如本文使用的,可包括,例如,用特定的软件和/或固件进行编程的可编程电路、专用硬件电路,或它们的组合。
[0065]本发明及其制作和使用的方式和步骤现已用充分、清楚、简要和准确的术语进行了叙述,以使其所涉及领域技术人员能够进行同样的制造和使用。应当理解,上述内容描述了本发明的优选实施方式,并且在不背离权利要求所述的本发明范围的前提下,还可以进行修改。为了特别指出和清楚地申明被认为是本发明的主题内容,以下权利要求总结了此说明书。
【权利要求】
1.一种由云控制器控制多个网络设备的方法,包括: 在所述云控制器上从第一网络设备接收消息,所述消息指示与所述第一网络设备关联的公有网络地址; 在所述云控制器上从第二网络设备接收消息,所述消息指示与所述第二网络设备关联的公有网络地址; 在所述云控制器上预分配所述第一和第二网络设备至由所述云控制器维护的账户;以及 发送认证消息至与所述第一和第二网络设备关联的所述公有网络地址,认证所述第一和第二网络设备以建立一个虚拟网络,所述虚拟网络包括所述第一和第二网络设备所属的两个专用网络。
2.根据权利要求1所述的方法,其中与所述第一和第二网络设备关联的至少一个所述公有网络地址包括一个动态的IP地址。
3.根据权利要求1所述的方法,其中与所述第一和第二网络设备关联的所述公有网络地址包括通信端口和动态的公有IP地址,所述动态的公有IP地址是被分配给所述第一和第二网络设备,或是被分配给所述第一和第二网络设备所属的所述专用网络的路由器。
4.根据权利要求3所述的方法,其中与所述第一和第二网络设备关联的所述公有网络地址包括分配给所述第一和第二网络设备所属的专用网络的路由器的动态的公有IP地址,且所述专用网络的私有IP地址被分配给所述第一和第二网络设备。
5.根据权利要求1所述的方法,还包括: 更新由所述云控制器维护的数据库,其中所述数据库包括当前与所述第一和第二网络设备关联的所述公有网络地址。
6.根据权利要求5所述的方法,其中所述数据库还包括所述第一和第二网络设备被预分配到所述账户中的信息。
7.根据权利要求1所述的方法,还包括: 在所述云控制器上接收指令,所述指令预分配所述第一和第二网络设备至所述账户中,所述账户由所述云控制器维护; 其中所述指令来自于与所述第一和第二网络设备分离的计算设备。
8.根据权利要求1所述的方法,还包括: 提供远程用户界面,以预分配通过序列号识别的网络设备至账户中; 其中预分配至所述账户的所有网络设备被配置为当所述网络设备联网运行时,在所述网络设备所属的所述专用网络中形成虚拟网络。
9.根据权利要求1所述的方法,还包括: 生成预共享密钥,所述预共享密钥对于一组所述第一和第二网络设备而言是唯一的,其中所述认证消息包括所述预共享密钥。
10.根据权利要求1所述的方法,其中所述虚拟网络是虚拟专用网络(VPN)且所述专用网络是局域网(LAN)。
11.一种网络设备,包括: 处理器, 网络接口,被配置为与云控制器和至少一个对等设备通信;以及 存储部件,预加载与所述云控制器关联的公有网络地址以及所述网络设备的识别符; 所述存储部件还包括存储指令,当被所述处理器执行时,引起所述网络设备执行过程包括: 通过发送注册消息包括所述网络设备的所述识别符至与所述云控制器关联的所述公有网络地址,使所述云控制器识别所述网络设备; 从所述云控制器接收认证消息,所述认证消息包括与所述对等设备关联的公有网络地址;以及 基于所述认证消息与所述对等设备直接连接,以在所述网络设备所属的专用网络和所述对等设备所属的专用网络之间建立虚拟网络。
12.根据权利要求11所述的网络设备,其中与所述对等设备关联的所述公有网络地址包括动态的IP地址。
13.根据权利要求11所述的网络设备,其中所述注册消息还包括分配给所述网络设备的,或分配给所述网络设备所属的所述专用网络的路由器的动态的IP网络地址。
14.根据权利要求11所述的网络设备,其中所述过程还包括: 向所述云控制器请求所述专用网络与对等设备建立连接,而无需识别所述对等设备。
15.根据权利要求11所述的网络设备,其中所述网络设备以及所述对等设备被预分配至由所述云控制器维护的账户,并且所述云控制器基于所述账户识别所述对等设备。
16.根据权利要求11所述的网络设备,其中所述直接连接包括: 从所述网络设备传输建立所述虚拟网络的请求至与所述对等设备关联的所述公有网络地址; 其中所述请求通过一个预共享密钥认证,在所述请求被传输之前所述云控制器提供所述预共享密钥给所述网络设备和所述对等设备。
17.根据权利要求11所述的网络设备,其中所述接收包括: 从所述云控制器接收认证消息,所述认证消息包括与多个对等设备关联的公有网络地址; 以及其中所述直接连接包括: 基于所述认证消息直接连接至所述对等设备,以在所述网络设备和所述对等设备所属的所述专用网络中建立所述虚拟网络。
18.—种在多个专用网络中建立虚拟网络的方法,包括: 从网络设备传输注册消息至云控制器,所述云控制器与预加载在所述网络设备中的一个公有网络地址关联,所述注册消息包括与所述网络设备关联的动态的公有网络地址; 从所述网络设备发送请求消息至所述云控制器,所述请求消息请求在所述网络设备和对等设备间建立虚拟网络; 在所述网络设备处接收来自所述云控制器的认证消息,所述认证消息包括与所述对等设备关联的公有网络地址;以及 基于所述认证消息直接连接至所述对等设备,以在所述网络设备所属的专用网络和所述对等设备所属的专用网络间建立所述虚拟网络。
19.根据权利要求18所述的方法,其中所述网络设备和所述对等设备被预分配至由所述云控制器维护的账户。
20.根据权利要求18所述的方法,其中所述发送包括: 从所述网络设备发送请求消息至所述云控制器,所述请求消息包括在所述网络设备和对等设备间建立虚拟网络,而无需识别所述对等设备。
21.根据权利要求18所述的方法,其中所述对等设备基于所述网络设备被预分配到的账户被所述云控制器识别。
22.根据权利要求18所述的方法,还包括: 从所述网络设备周期性传输心跳消息至所述云控制器,所述心跳消息更新与所述网络设备关联的所述公有网络地址。
23.根据权利要求18所述的方法,其中与所述网络设备关联的所述公有网络地址是当前分配给所述网络设备的动态的公有IP地址或者是当前分配给所述网络设备所属的所述专用网络的路由器的动态的公有IP地址。
24.根据权利要求18所述的方法,其中所述虚拟网络是虚拟专用网络(VPN)且所述认证消息包括预共享密钥,所述预共享密钥通过所述云控制器生成且对于一组所述网络设备和所述对等设备是唯一的。
25.根据权利要求18所述的方法,其中所述云控制器是在云计算平台上运行的软件定义网络(SDN)服务。
【文档编号】H04L29/08GK104283744SQ201410308852
【公开日】2015年1月14日 申请日期:2014年7月1日 优先权日:2013年7月1日
【发明者】邹峰 申请人:云观科技
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1