用于虚拟化远程装置的系统和方法

文档序号:10518107阅读:351来源:国知局
用于虚拟化远程装置的系统和方法
【专利摘要】本文描述了用于在连接到网络的基于云的数据中心虚拟化例如客户驻地设备(CPE)的远程物理装置的方案。在一个实施例中,在CPE操作的虚拟交换机操作以监视在CPE的装置事件。装置连接到CPE端口时,创建通过软件定义网络(SDN)体系结构操作的虚拟装置端口。响应于创建新的符合SDN的虚拟装置端口的指示,SDN控制器操作以促进在CPE的虚拟交换机与数据中心的虚拟交换机之间数据隧道的创建。
【专利说明】用于虚拟化远程装置的系统和方法
[0001]相关申请交叉引用
本申请要求2013年12月18日提交的美国临时申请序列号61/917,516的优先权,该申请的全部公开内容由此通过弓I用其全部结合于本文中,就好像其全文在此陈述了一样。
技术领域
[0002]本公开内容一般涉及牵涉到数据中心虚拟化和云计算的计算机和通信网络。更具体地,但不是通过限制,本公开内容被引导至用于相对于在软件定义网络体系结构中设置的数据中心,虚拟化远程装置的系统和方法。
【背景技术】
[0003]多个技术设定中正利用虚拟化和软件定义网络(SDN)。通过说明,新兴的趋势是建设基于SDN和虚拟化资源的大规模、云中心数据中心。然而,相对于此类实施,存在有几个问题。例如,为在数据中心上执行的虚拟机提供对广域分组交换网络(例如,因特网)中连接的远程物理装置或资源的接入充满了困难,除其它之外,这些困难与必须支持几个不同协议、多个装置和管理方案及烦琐的协议解析技术有关。

【发明内容】

[0004]本专利申请公开用于虚拟化在连接到网络的基于云的数据中心的例如任何因特网连接的家电或客户驻地设备(CPE)的远程物理装置的系统、方法、装备和关联计算机可读媒体(在其上具有可执行程序指令)。在一个实施例中,在CPE操作的方法,除其它之外,还包括由在CPE操作的虚拟交换机监视装置事件。此类装置事件可包括但不限于例如连接物理装置到CPE的适合端口,实现在那里的读/写操作等。响应于检测到物理装置连接到CPE端口,虚拟装置端口在虚拟交换机中创建(通过基于软件定义网络(SDN)的基础设施体系结构操作(在其内可设置一个或多个数据中心))。在CPE的虚拟交换机中创建了新的符合SDN的虚拟装置端口的指示可提供到数据中心耦合到的SDN控制器,然后,SDN控制器操作以促进在CPE的虚拟交换机与经例如因特网的广域分组交换网络可接入的选择数据中心的虚拟交换机之间的数据隧道的创建。
[0005]另一方面,公开了CPE的实施例,除其它之外,该实施例包括一个或更多个处理器和耦合到其的一个或更多个存储器块及一个或更多个装置端口。CPE还包括在包括至少一个处理器和存储器块的平台上执行的虚拟交换机,其中,虚拟交换机包括配置成监视与CPE的一个或更多个装置端口关联的装置事件的组件。虚拟交换机还包括配置成创建对应的虚拟装置端口的组件(操作响应于检测到装置连接到CPE的装置端口),虚拟装置端口适用于与其中可设置一个或更多个数据中心的基于SDN体系结构的网络基础设施对接。虚拟交换机也包括配置成将指示传送到基于SDN体系结构的网络的SDN控制器的组件,其中,指示操作以指示在虚拟交换机创建了与SDN符合的新虚拟装置端口。指示还操作以促进在CPE的虚拟交换机与经分组交换网络(例如,因特网)可接入的数据中心操作的虚拟交换机之间的数据转发平面中的隧道的创建。
[0006]在又一方面,公开了在SDN控制器操作的方法的实施例。所述方法除其它之外还包括接收来自在CPE上执行的虚拟交换机的在CPE创建了符合SDN的装置端口的指示。响应于该指示,SDN控制器操作以将在CPE检测到新装置的通知发送到装置管理器,通知包括CPE的标识符。所述方法还包括接收来自装置管理器的隧道连接信息以便在CPE的虚拟交换机与在经分组交换网络(例如,因特网)CPE可接入的数据中心操作的虚拟机(VM)之间建立数据隧道,其中,隧道连接信息至少包括与虚拟机关联的标识符和在其中按逻辑组织虚拟机的虚拟可扩展局域网(VxLAN)的标记。响应于接收到的隧道连接信息,SDN控制器操作以配置用于在CPE的虚拟交换机与数据中心的虚拟交换机之间的数据隧道的端点,并且安装一个或更多个符合SDN的规则,以便相对于牵涉符合SDN的装置端口的数据隧道,指定或以其它方式控制数据分组流。
[0007]在还有的又一方面,公开了在实施为一个或更多个虚拟机的基于SDN的虚拟化环境的数据中心操作的方法的实施例。所述方法,除其它之外,还包括在数据中心的虚拟交换机接收来自SDN控制器的在特定虚拟机中创建新装置端口的配置请求。响应于配置请求,创建新装置端口和关联装置文件,其中,新装置端口的名称从在其中按逻辑组织特定虚拟机的VxLAN的标记中推导。此外,可向特定虚拟机虚拟化新装置端口,以显得像连接到特定虚拟机一样。在其它实施中,可为在特定虚拟机上执行的应用提供对新装置端口的接入,以便可实现相对于新装置端口的数据传输操作。
[0008]在还有的其它方面,公开了非暂时性计算机可读媒体的实施例,媒体包含在其上存储的指令以便在由对应的硬件平台执行时,执行本文中陈述的方法的一个或更多个实施例。
[0009]例如,非暂时性计算机可读介质的实施例包含在其上存储的指令,指令在由配置成作为耦合到基于SDN的基础设施体系结构的CPE操作时,促进到经因特网可接入的数据中心的物理装置端口的虚拟化。计算机可读介质包括:用于监视在CPE上执行的装置事件的代码部分;响应于检测到装置连接到CPE的端口,用于创建通过SDN体系结构操作的对应的虚拟装置端口的代码部分;以及用于向SDN控制器传送指示的代码部分,指示操作以向SDN控制器指示在CPE的虚拟交换机中已创建新虚拟装置端口,其中,指示还操作以促进在CPE的虚拟交换机与在经因特网可接入的数据中心操作的虚拟交换机之间数据隧道的创建。各种实施例的另外特征如在相应的独立权利要求、附属权利要求或其组合中陈述的一样。
[0010]除其它优点外,本发明的优点包括但不限于促进对附连到诸如因特网的广域分组交换网络的任何物理装置的VM接入,减轻对在远程物理装置与数据中心的VM之间的具体协议解析的需要。由于网络控制和管理由SDN控制器和SDN协议提供,因此,装置管理应用可有利地配置在SDN控制器顶部或与其结合配置以便开源实施。鉴于以下描述和附图,实施例的另外益处和优点将是明显的。
【附图说明】
[0011]本公开内容的实施例通过示例而不是限制在附图的图形中示出,其中相同的标号指示类似的元件。应注意的是,在本公开内容中对“一”或“一个”实施例的不同引用不一定是引用相同的实施例,并且此类引用可表示至少一个实施例。此外,在结合实施例描述特定特征、结构或特性时,认为结合无论是否明确描述的其它实施例来实现此类特征、结构或特性是在本领域技术人员的认知之内。
[0012]附图包含到说明书中并且形成其一部分,以示出本公开内容的一个或更多个示范实施例。从结合随附权利要求并且参照附图进行的以下【具体实施方式】中,将理解本公开内容的各种优点和特征,图中:
图1描绘其中可实践本专利申请的一个或更多个实施例的示例网络环境;
图2-4描绘根据实施例,相对于远程装置虚拟化方法论的带有框流程图;
图5描绘根据本专利申请的实施例,用于在数据中心虚拟化远程装置的消息流程图;
图6A和6B描绘示出在图5中显示的实施例的远程装置与数据中心之间的数据传输的流程图;
图7描绘根据本专利申请的另一实施例,用于在数据中心虚拟化远程装置的消息流程图;以及
图8A和SB描绘示出在图7中显示的实施例的远程装置与数据中心之间的数据传输的流程图。
【具体实施方式】
[0013]在下面的描述中,相对于本专利公开内容的一个或更多个实施例陈述了多个具体的细节。然而,应理解的是,实践一个或更多个实施例可无需此类具体细节。在其它情况下,公知的电路、子系统、组件、结构和技术未详细显示以免模糊对示例实施例的理解。相应地,本领域的技术人员将领会,实践本公开内容的实施例可无需此类具体的基于组件的细节。还应认识到的是,本领域技术人员借助于本文中陈述的【具体实施方式】并且参照附图,将能够制作和使用一个或更多个实施例而无需进行不当实验。
[0014]另外,在下面的描述、权利要求或两者中可使用诸如“耦合的”和“连接的”的术语连同其派生词。应理解的是,这些术语不一定旨在做为彼此的同义词。“親合的”可用于指示可以相互直接物理或电接触或可以不直接物理或电接触的两个或更多个元件相互协作或交互。“连接的”可用于指示在相互耦合的两个或更多个元件之间通信的建立,即通信关系。此外,在本文中陈述的一个或更多个示例实施例中,一般来说,元件、组件或模块可配置成执行功能(如果元件能够执行或以其它方式在结构上布置成执行该功能)。
[0015]如本文中使用的,网络元件或节点可包括一件或更多件服务网络设备,包括以通信方式互连网络上的其它设备(例如,其它网络元件、终端站等),并且适用于相对于多个订户终端站或客户端装置托管一个或更多个应用或服务的硬件和软件。为了本专利申请的目的,网络元件可部署在企业网络、内联网、外联网、因特网服务提供商网络、基于web的云平台、电信运营商网络、物联网(1T)或万物互连网(Internet of Everything)及诸如此类中,并且可包括下面陈述的用于根据本文中的教导,实现远程连接装置的虚拟化的模块和其它元件的一个或更多个组合。
[0016]本专利公开内容的一个或更多个实施例可使用软件、固件和/或硬件的不同组合来实施。因此,图(例如,流程图)中显示的一个或更多个技术和框可使用一个或更多个电子装置或节点(例如,订户/用户设备(UE)装置、终端站、网络元件等)上存储和执行的代码和数据来实施。此类电子装置可使用计算机可读媒体存储和传递(在内部和/或通过网络利用其它电子装置)代码和数据,如非暂时性计算机可读存储媒体(例如,磁盘、光盘、随机存取存储器、只读存储器、闪存存储器装置、相变存储器等)、暂时性计算机可读传送媒体(例如,电气、光、声或其它形式传的播信号-如载波、红外信号、数字信号)等。另外,此类元件或节点通常可包括耦合到诸如一个或更多个存储装置(例如,非暂时性机器可读存储媒体)及一个或多个存储数据库、用户输入/输出装置(例如,键盘、触摸屏、指点装置和/或显示器)的一个或更多个其它组件的一个或更多个处理器的集合,以及用于实现信令和/或数据传送的网络连接。处理器集合和其它组件的耦合通常可通过一个或更多个总线和桥(也称为总线控制器),总线和桥以配置成与任何操作系统(OS)互操作的任何已知(例如,对称/共享多处理)或在此之前未知的体系结构布置。因此,给定电子装置或网络元件的存储装置或组件可配置成存储代码和/或数据以在该元件、节点或电子装置的一个或更多个处理器上执行,用于实施本公开内容的一个或更多个技术的目的。
[0017]现在参照图形,并且更具体地说,参照图1,在其中描绘其中可实践本专利申请的一个或更多个实施例的示例网络环境100。如所示出的,示例网络环境100表示1T/1E布置,其中,一个或更多个终端站或客户驻地设备(CPE) 104连接到分组交换网络102(例如,因特网),以便接入设置在一个或更多个数据中心116、136中的基于云的资源(例如,应用、存储等)。因此,基于云的数据中心116、136可作为公共云、私有云或混合云的一部分提供,并且为了与CPE 104协作,可设置在使用任何已知或在此之前未知的协议(诸如例如OpenFlow (OF)协议、转发和控制元件分离(ForCES)协议、OpenDaylight协议及诸如此类)的软件定义网络(SDN)基础设施体系结构中。示例SDN体系结构通常牵涉到网络元件的控制和数据转发平面的分离和解耦,由此可按逻辑集中网络智能和状态控制,并且从应用中抽象基础网络基础设施。基于SDN的网络体系结构的一个实施因此可包括在一个或更多个服务器上执行的全网络(network-wide)控制平台,该平台配置成监督和控制多个数据转发节点或交换器。相应地,在网络范围的控制平台(为了理解本专利申请的一些实施例的目的,这可称为“SDN控制器”152)与诸如数据中心116、136和CPE节点104的各种组件之间提供标准化对接,由此促进高可扩缩性、基于流的业务控制、多租用和安全基础设施共享、虚拟覆盖组网、有效的负载平衡及诸如此类。
[0018]作为SDN兼容的环境,数据中心116、136可例如使用OpenStack和基于内核的虚拟机(KVM)虚拟化方案,在示例实施例中实施为用于公共/私有/混合云布置的开源云计算平台。因此,数据中心虚拟化可牵涉到提供虚拟基础设施以便抽象或虚拟化物理资源的大量的阵列,如计算资源(例如,基于刀片系统的服务器农场)、存储资源和网络/接口资源,其中,称为虚拟机管理器或管理程序的专用软件允许在一个或更多个虚拟机(VM)或在其上执行的备用机之间共享物理资源。每个VM或备用机可支持其自己的OS和一个或更多个应用,并且一个或更多个VM可按逻辑组织成使用覆盖技术的虚拟LAN(例如,可采用像VLAN的封装技术以在第3层UDP分组内封装基于MAC的OSI第2层以太网帧的虚拟可扩展LAN (VxLAN))以便实现进一步可扩缩性。通过说明,通过相应的物理资源118、138和VMM或管理程序120、140及在相应的VxLAN 124和144中逻辑连接的相应的多个VM 126-1到126-N和146-1到146-M,例示了数据中心116和136。作为进一步说明,每个VM可支持一个或更多个应用,例如,在VM 126-1上执行的一个或多个应用128、在VM 126-N上执行的一个或多个应用130、在VM146-1上执行的一个或多个应用148及在VM 146-M上执行的一个或多个应用150,其中,应用可要求接入CPE的物理装置,如I/O装置(S卩,远程装置),牵涉到来自装置的数据消耗和/或到装置的数据生成。
[0019]继续参照图1,虽然其中未明确显示,但管理程序120、140可部署为或类型I或“裸机”安装(其中,管理程序直接与基础主机物理资源进行通信)或者部署为类型II或“托管”安装(其中,管理程序可加载在与主机物理基础设施进行通信的已经存在(live)/本机OS上方)。不管管理程序实施,如下面将进一步详细描述的一样,每个数据中心116、136可被提供有可适用于在数据中心环境内虚拟化远程CPE的I/O装置目的的相应SDN兼容的虚拟交换机(VS) 122、142(例如,在一个说明性实施中的OpenFlow vSwitch或OVS)。此外,数据中心的VS可部署为或其管理程序的一部分,或者部署为VM或在其上执行的备用机的一部分。关于后一配置,应领会的是,在一些实例中,VM的OS可包括或可不包括支持虚拟交换机(或具体而言OVS)的能力,并且相应地,基于VM的OVS配置可在某种程序上受OS能力的约束。在数据中心116的配置中,VS 122作为管理程序120的一部分提供,这促进了相对于任何VM-1到VM-N的远程装置端口虚拟化,而在数据中心136的配置中,VS 142部署为具有具OVS能力的OS的具体VM的一部分。
[0020]为了理解本专利申请的目的,CPE104是因特网连接的装置或因特网家电,可部署在其中可向/从基于云的资源收集,感应,测量,生成,消耗,产生和/或提供数据以便处理、存储等的多个应用环境中,并且可被提供有任何类型的接入技术的无线和/或有线连接。相应地,CPE 104表示任何因特网连接的或物理装置,并且可包括但不限于测量/仪器设备、感应设备、医疗装置/仪器、智能家庭/汽车装置/仪器、智能计量仪器、游戏/家庭娱乐设备、计算/通信设备,如膝上型计算机、平板、桌上型计算机、移动通信装置及诸如此类。从广义上说,CPE 104包括耦合到一个或更多个存储器块和其它硬件的一个或更多个处理器(在参考标号106概括显示的)和软件/固件环境108以便执行各种程序、应用等。为了输入/输出交互的目的,CPE 104可被提供有一个或更多个装置端口 114,端口 114可包括取决于CPE的应用部署的任何数量、类型和接口功能性。因此,一个或多个装置端口 114表示串行端口、并行端口、通用串行总线(USB)端口、高清晰媒体接口(HDMI)端口、数字虚拟接口(DVI)端口、字符装置端口、块装置端口、FireWire端口、无线家庭数字接口(WHDI)端口、游戏控制器端口、传感器端口及符合数字生活网络联盟(DLNA)的端口等的至少一个端口。另外,SDN兼容的虚拟交换机(VS) 110可作为配置成监视相对于CPE 104的一个或更多个装置端口 114发生的装置事件112的CPE环境的一部分提供。如下面将看到的一样,VS 110的示例实施例可包括OpenFlow vSwitch或OVS以用于基于OF的实施的目的。
[0021]作为基于SDN的体系结构的一部分,CPE104的VS实体及相应数据中心116、136可操作以经适合的协议控制信道166、168或170(例如,在一个实施中的OF协议控制信道)与SDN控制器152进行通信。装置管理器154可作为SDN控制器152的一部分提供,或者作为经适合的接口 164与SCN控制器152进行通信的单独实体提供。除其它之外,装置管理器154可包括连接管理/智能,连接管理/智能可相对于相应CPE和数据中心进行配置以用于促进在正确的VM和正确的数据中心内的远程CPE的装置端口的虚拟化的目的。如下面将看到的一样,适当的数据隧道172、174可由SDN控制器在CPE的与数据中心的VS实体之间实现,其允许数据在CPE的装置端口与数据中心的VM之间来回流动,好像远程装置端口连接到特定VM—样。
[0022]下面立即陈述根据在前面网络布置的上下文中的实施例的用于实现远程装置虚拟化的高级过程流程。随后则将是在OpenFlow实施中的另外细节和适用消息流程图。
[0023]在装置插进连接到因特网的CPE物理机器104的装置端口中时,监视在该处的装置事件的VS 110操作以为新装置创建虚拟装置端口(S卩,装置只插进该端口)。新虚拟装置端口操作以在称为用于装置的装置文件的特殊文件与基于SDN的网络之间桥接数据,它是用于在文件系统中显得像是普通文件的装置驱动程序的接口。取决于装置/端口的类型,装置文件例如能够是字符装置文件或块装置文件。字符特殊文件或字符装置与系统通过例如getchar,一次一个字符传送数据所通过的装置有关。块特殊文件或块装置对应于通过例如fread以块形式移动数据的装置,并且对接诸如硬盘、⑶-ROM驱动器、闪存驱动器等的装置。
[0024]在通知SDN控制器152由CPE的VS创建了新装置端口时,结合SDN控制器152执行的装置管理器服务或应用(例如,装置管理器154)通告控制器将装置连接到何处,S卩,特定VM,及托管该特定VM的地方(即,哪个数据中心)。应领会的是,要虚拟化装置端口的特定VM可动态(B卩,即时自动(on the fly))创建或者已经在数据中心例示。基于从装置管理器154接收到的信息,在CPE物理机器与对应的数据中心之间创建SDN隧道,这牵涉到在数据中心的VS中创建虚拟装置端口。在数据中心的管理程序注意到数据中心的VS已创建新装置端口时,管理程序将它向特定VM虚拟化,以显得像已连接到它一样(即,虚拟化为对VM本地的“物理”装置)。在图1中,端口 134和154是分别连接到在数据中心116、136的VM-1 126-1和VM-1146-1的此类虚拟化端口的示例。之后,VM能够通过虚拟化的装置执行相对于适当应用的正常应用服务器I/O操作,由此向/从SDN隧道内的实际装置隧穿数据分组。
[0025]图2-4描绘根据实施例,相对于远程装置虚拟化方法论的带有框的流程图,其中,为方便起见,分开了在不同实体(例如,CPE、SDN控制器和数据中心)执行的步骤和动作。具体而言,参考标号200指在诸如图1中显示的CPE 104的CPE操作的过程流程。与CPE关联的虚拟交换机监视在该处发生的装置事件(框202)。响应于检测到装置连接到CPE的装置端口,虚拟交换机创建通过SDN体系结构操作的对应的虚拟装置端口,例如,符合OF的虚拟装置端口(框204)。之后,在CPE上执行的虚拟交换机传送,生成或以其它方式提供指示或通知到SDN控制器,其中,指示操作以向SDN控制器指示在CEP的虚拟交换机中已创建新虚拟装置端口。备选地或另外地,SDN控制器可经在SDN体系结构中可用的其它机制获得端口创建指示。不管如何获得端口创建指示,此类指示还操作以在SDN控制器触发一组动作和对应的消息流程,以促进在CPE的虚拟交换机与在数据中心操作的虚拟机(S卩,备用机)之间的数据隧道的创建(框206)。在一个实施中,具SDN能力的新虚拟装置端口可表示为装置文件(例如,为符合Unix的典范装置文件)。为便于说明,在USB装置端口将虚拟化的情况下,对应于USB装置端口的新虚拟装置的装置文件表示可以为/dev/ttyUSBO。
[0026]图3描绘相对于在SDN控制器操作以用于远程装置虚拟化目的的过程流程300的流程图,它以接收或以其它方式获得来自在CPE执行的虚拟交换机的在CPE(或更具体地说,在其的虚拟交换机中)创建了符合SDN的装置端口的指示开始(框302)。取决于相对于SDN控制器如何实施装置管理器,通知由装置管理应用传送或以其它方式获得,以通知在CPE检测到新装置,其中,通知包括CPE的标识符(例如,其IP地址、SDN身份(例如,如果在OF中实施,则为0F_id)、统一资源定位符(URI)、统一资源名称(URN)、统一资源位置(URL)、η元组身份信息及诸如此类),如在框304陈述的。响应于通知,SDN控制器接收来自装置管理器的隧道连接信息,以便在CPE的虚拟交换机与在数据中心执行或要例示的虚拟机之间建立数据隧道(框306)。在一个实施中,数据中心可经诸如因特网的广域公共分组交换网络接入。备选地,数据中心可设置在服务提供商、企业、电信运营商等的私有云网络中。取决于如何实施数据中心的虚拟化(例如,虚拟交换机是否作为数据中心的管理程序的一部分或作为单独VM的一部分提供),各种数据段可作为隧道连接信息的一部分提供到SDN控制器。如在框306陈述的一样,此类信息可包括识别正确的VM的VM标识符、例如在其中按逻辑组织VM的VxLAN的标记的用于适合隧穿/覆盖技术的身份信息及数据中心或数据中心的虚拟交换机(如果它作为VM的一部分提供)的IP地址。基于接收到的隧道连接信息,SDN控制器配置用于在CPE的虚拟交换机与数据中心的虚拟交换机之间的数据隧道的端点,并且安装一个或更多个符合SDN的规则,以便相对于在CPE创建的符合SDN的装置端口,在数据隧道中控制数据分组流。
[0027]转到图4,在其中描绘的是相对于在数据中心操作以用于远程装置虚拟化目的的过程流程400的流程图,它以在数据中心的虚拟交换机接收或以其它方式获得来自SDN控制器的在数据中心的特定VM中创建新装置端口的配置请求开始(框402)。响应于配置请求,创建新装置端口和关联装置文件,其中,新装置端口的名称从在其中可按逻辑组织特定VM的VxLAN的VxLAN标记中推导(框404) JMM或管理程序接收指示,或者以其它方式使其注意到新装置由数据中心的虚拟交换机(例如,OVS)创建时,它向特定VM虚拟化端口,以便显得像装置连接到该特定VM( S卩,本地“物理”装置)一样(框406)。之后,为在该特定VM上执行的应用提供对新装置端口的接入,即,基于VM的应用然后能够通过虚拟化的“物理”装置执行数据访问操作(即,读/写或I/O操作),其中,向/从在CPE的物理装置隧穿数据分组(框408)。
[0028]图5描绘根据本专利申请的实施例,用于在数据中心虚拟化远程装置的消息流程图500,其中,数据中心的虚拟交换机作为数据中心的VMM或管理程序的一部分提供。通过说明,消息流程图500表示相对于本文中上面详细描述的图1中显示的数据中心116,装置虚拟化的基于OF的实施。如前面陈述的一样,VS 110(现在在图5中称为CPE_0F_Switch)适用于经任何适合的监视机制502,监视在CPE 104(现在适用于OF实施)发生的装置事件。装置503(例如,USB装置)插入或以其它方式耦合/连接到物理装置端口(通过连接动作504例示)时,如由消息流程路径506所示出的,可使创建对应于物理装置端口的虚拟装置端口的指示对CPE_0F_Switch 110可用。作为响应,将自己表示为OF端口的新类型的虚拟装置端口可配置成与USB装置进行通信,如由框508例示的,其中,虚拟装置端口操作以在示例装置文件/dev/ttyUSBO与OF网络之间桥接数据。使端口创建的指示经OF控制流程机制510对SDN_Controller 152可用。新装置检测消息512提供到与301^_00]11:1'01161 152关联的Devi ce_Manager 154,其中包括了CPE的地址/身份信息(例如,IP地址)。响应于此,Device_Manager154经消息流程路径154返回适当的隧道连接信息,该信息包括数据中心的IP地址、VM标识符和VxLAN标记。由SDN_Controller 152实现的到CPE_0F_Switch 110和数据中心116的VS122(现在称为DC_0F_Switch)的多个配置消息流程516、518操作以基于适合的隧穿技术,建立与在相应OF交换机的适合端点的数据隧道。在VxLAN用作隧穿技术的示例实施中,一个隧道端点(TEP)可基于数据中心地址和VxLAN标记,而另一TEP可基于CPE地址和VXLAN标记。到DC_0F_Switch 122的另一 OF配置消息520操作以通过DC_0F_Switch 122或在其中创建新装置端口和关联装置文件,其中,端口名称可从VxLAN标记推导,并且操作以识别正确的VM,例如/dev/ttyUSB-VM-1p,如在框522中例示的。
[0029]在从DC_0F_Switch 122获得装置创建/连接消息524时,如在参考标号526、528显示的一样,关联管理程序120将装置虚拟化为用于正确VM 126-1的“物理”装置,例如,/dev/ttyUSBO,由此允许通过VM 126-1对其接入。在已向VM 126-1虚拟化“物理”装置后,SDN_Controller 152操作以安装或以其它方式实现多个OF控制消息,例如,到DC_OF_Switch122的匹配消息530/532和到CPE_OF_Switch 110的匹配消息534/536,以便建立数据业务流规则,规则基本地操作以通告相应的OF_Swichtes在特定端口(例如,以前已创建的一个端口)上接收分组时要采取的动作,以便引起在网络的数据转发平面中的双向流。
[0030]图6A和6B描绘示出在图5中显示的实施例的CPE104与数据中心之间的数据传输的流程图。具体而言,图6A中显示的流程图600A说明入口或读数据流,其中,数据分组从装置503流到在VM 126-1上运行的消耗数据的应用。响应于装置事件监视602,在来自装置503的数据分组流在CPE 104作为读动作604的一部分时,CPE_0F_Switch 110操作以将在虚拟装置端口的数据分组桥接到借助于图5的消息流程建立的数据隧道,如在参考标号606、608显示的一样。响应于此,将数据分组适当封装(例如,[IP][UDP][VxLAN][数据])以便通过数据隧道传送610到DC_0F_Swi tch 122中的端点。在经SDN的解耦转发平面实现数据分组流时,实际数据传送绕过SDN_Controller 152。基于¥11^财示记信息,0(:_(^_5¥^(^ 122操作以将接收到的分组发送到经管理程序120由VM 126-1接入的正确USB端口,以便由在其上执行的适当应用消耗,如在参考标号612、614和616显示的。
[0031]图6B描绘流程图600A,其示出在CPE104与VM 126-1之间反向的数据传输,S卩,出口或写数据流,其中,数据分组从VM 126-1上运行的产生或生成数据的应用流到装置503。如在流652、654显示的一样,在生成的数据分组经管理程序120遍历到DC_0F_Switch 122时,DC_0F_Switch 122的功能性操作以封装分组以便通过数据隧道传送(例如,[IP] [UDP][VxLAN][数据])到CPE_0F_Switch 110中的端点,如在参考标号656、658显示的。基于分组的VxLAN标记信息,CPE_0F_Switch 110操作以将接收到的分组发送到正确USB端口,以便写入连接的物理装置503,如在参考标号660、662、664例示的。
[0032]图7描绘根据本专利申请的另一实施例,用于在数据中心虚拟化远程装置的消息流程图700,其中,数据中心的虚拟交换机作为VM而不是数据中心或管理程序的一部分提供。类似于图5的消息流程图500,消息流程图700表示相对于本文中上面详细描述的图1中显示的数据中心136的装置虚拟化的基于OF的实施。图8A和SB描绘示出在图7中显示的实施例的CPE 104与数据中心之间数据传输的流程图。本领域技术人员应认识到,除由于VS 142(现在称为VM_0F_Switch)作为VM 146-1的一部分执行而抽象出数据中心的管理程序140的功能性外,图7的装置端口虚拟化和数据隧道建立过程实质上类似于图5中显示的过程。相应地,在图7的实施例中来自Device_Manager 154的隧道连接信息除其它之外牵涉到VM的IP地址而不是数据中心的IP地址,如在消息流程714中显示的。此外,SDN_ControIler 152操作以生成到VM_0F_Switch 142(而不是在图5的实施例中显示的DC_0F_Switch 122)的配置消息。由于VM_0F_Switch 142作为VM 146-1的一部分提供,因此,应领会的是,在OVS与VM之间的交互无需如图5中所示明确通过管理程序调和。相同地,图8A和8B中显示的入口和出口数据流均相对于管理程序是透明的。除这些不同外,上面为图5和6A-6B提供的描述加以必要的变通后,同样适用于图7和8A-8B中例示的实施例。因此,由图7中的参考标号702-732和图8A-8B中的参考标号802-862引用的特征的单独描述在本文中未陈述。
[0033]基于前面的【具体实施方式】,应领会的是,本公开内容的实施例能够被部署以提供对附连到因特网的任何物理装置的VM接入。此外,可有利地克服现有技术的各种缺点,例如,不得不跨网络管理和适当地控制大量不同协议(如IP、UDP、受限制的应用协议或CoAP、TCP、HTTP等)。
[0034]在本公开内容的各种实施例的以上描述中,要理解的是,本文中使用的术语只用于描述特定实施例的目的,并且不旨在限制本发明。除非另有定义,否则,本文使用的所有术语(包括技术和科学术语)具有与本发明所属领域的技术人员通常理解的含义相同含义。还将理解的是,诸如常用词典中定义的那些术语等术语应理解为具有与本说明书和相关技术的上下文中其含义一致的含义,并且否则不可以以本文中明确如此定义的理想化或过分正式的意义理解。
[0035]至少一些示例实施例在本文中相对于计算机实施的方法、装备(系统和/或装置)和/或计算机程序产品的框图和/或流程图说明进行描述。可理解的是,框图和/或流程图说明的框以及框图和/或流程图说明的框的组合可通过由一个或更多个计算机电路执行的计算机程序指令实施。此类计算机程序指令可提供到通用计算机电路、专用计算机电路和/或其它可编程数据处理电路的处理器电路以产生机器,以便,经计算机和/或其它可编程数据处理装备的处理器执行的指令变换和控制晶体管、存储器位置中存储的值及此类电路内的其它硬件组件,以实施框图和/或流程图框或一些框中指定的功能/动作,并由此创建用于实施一个或多个框图和/或流程图框中指定的功能/动作的部件(功能性)和/或结构。另外,计算机程序指令也可存储在可引导计算机或其它可编程数据处理装备以特定方式起作用的有形计算机可读介质中,使得在所述计算机可读介质中存储的指令产生制品,制品包括实施框图和/或流程图框或一些框中指定的功能/动作的指令。
[0036]如前面暗示的,有形、非暂时性计算机可读介质可包括电子、磁性、光、电磁或半导体数据存储系统、装备或装置。计算机可读介质的更具体示例将包括以下所述:便携式计算机磁盘、随机存取存储器(RAM)电路、只读存储器(ROM)电路、可擦除可编程只读存储器(EPR0M或闪存存储器)电路、便携式光盘只读存储器(CD-ROM)及便携式数字视频光盘只读存储器(DVD/蓝光)。计算机程序指令也可加载到或以其它方式下载到计算机和/或其它可编程数据处理装备上,以使得一系列操作步骤在计算机和/或其它可编程装备上执行,从而产生计算机实施的过程,使得在计算机或其它可编程装备上执行的指令提供用于实施框图和/或流程图框或一些框中指定的功能/动作的步骤。相应地,本发明的实施例可在硬件中和/或在软件(包括固件、驻留软件、微代码等)中实施,软件在诸如数字信号处理器的处理器上运行,其可总称为“电路”、“模块”或其变型。
[0037]此外,在至少一些另外或备选实施中,框中所述的功能/动作可不以流程图中显示的顺序发生。例如,取决于牵涉的功能/动作,连续显示的两个框实际上可基本上并发执行,或者框有时可以以相反的顺序执行。另外,流程图和/或框图的给定框的功能性可分隔到多个框中,和/或流程图和/或框图的两个或更多个框的功能性可至少部分集成。另外,特定流程图中示出的动作、步骤、功能、组件或框可与另一流程图中示出的动作、步骤、功能、组件或框相互混合或以其它方式相互布置,以便为本专利公开内容的目的实现相对于一个或更多个实施的另外变化、修改和配置。另外,可在示出的框之间添加/插入其它框。最后,虽然一些图形在通信路径上包括箭头以示出通信的主要方向,但要理解的是,通信可在相对于描绘的箭头的相反方向上发生。
[0038]虽然各种实施例已显示和详细描述,但权利要求不限于任何特定实施例或示例。上述【具体实施方式】均不应作为暗示任何特定组件、元件、步骤、动作或功能是必需的,使得其必须包括在权利要求的范围中而读出。除非明确说明,否则,对单数个元件的引用并不旨在意味着“一个且只有一个”,而是“一个或多个”。本领域技术人员已知的上述实施例的元件的所有结构和功能等效物通过引用明确结合于本文中,并且旨在由本权利要求包括。相应地,本领域的技术人员将认识到,通过在下面随附权利要求的精神和范围内的各种修改和变化,可实践本文中描述的示范实施例。
【主权项】
1.一种在因特网连接的客户驻地设备(CPE) (104)操作的方法(200),所述方法(200)包括: 通过在所述CPE (104)上执行的虚拟交换机(110),监视(202)装置事件; 响应于检测到装置(503)连接到所述CPE (104)的端口(114),创建(204)通过基于软件定义网络(SDN)的基础设施操作的对应的虚拟装置端口;以及 将指示传送(206)到所述SDN基础设施的SDN控制器(152),所述指示操作以向所述SDN控制器(152)指示在所述CPE的虚拟交换机(110)中已创建新虚拟装置端口,其中所述指示还操作以促进在所述CPE的虚拟交换机(110)与在经所述因特网(102)可接入的数据中心(116,136)操作的虚拟机(126-1,146-1)之间数据隧道(172,174)的创建。2.如权利要求1所述的方法(200),其中所述CPE的虚拟交换机(110)包括操作以监视所述CPE (104)的一个或更多个物理端口(114)的OpenFlow vSwitch (OVS)。3.如权利要求2所述的方法(200),其中由所述OVS(110)监视的所述一个或更多个物理端口(114)包括串行端口、并行端口、通用串行总线(USB)端口、高清晰媒体接口(HDMI)端口、数字虚拟接口(DVI)端口、字符装置端口、块装置端口、FireWire端口、无线家庭数字接口(WHDI)端口、游戏控制器端口、传感器端口及符合数字生活网络联盟(DLNA)的端口的至少一个端口。4.如权利要求1所述的方法(200),其中所述新虚拟装置端口表示为装置文件。5.如权利要求4所述的方法(200),其中所述CEP端口(I14)是USB端口,并且对应于所述USB端口的所述新虚拟装置端口的所述装置文件表示是/dev/ttyUSBO。6.如权利要求1所述的方法(200),其中到所述SDN控制器的所述指示经SDN协议控制信道(166)传送。7.一种客户驻地设备(CPE) (104),包括: 一个或更多个处理器(106)和耦合到其的一个或更多个存储器块(106); 一个或多个装置端口(114);以及 在包括至少一个处理器和存储器块的平台上执行的虚拟交换机(110),所述虚拟交换机(110)包括: 配置成监视(202)与所述一个或更多个装置端口(114)关联的装置事件的组件; 配置成响应于检测到装置(503)连接到所述CPE (104)的装置端口(114),创建(204)通过基于软件定义网络(SDN)的基础设施操作的对应的虚拟装置端口的组件;以及 配置成将指示传送(206)到SDN控制器(152)的组件,所述指示操作以向所述SDN控制器(152)指示在所述CPE的虚拟交换机(110)中已创建新虚拟装置端口,其中所述指示还操作以促进在所述CPE的虚拟交换机(I 1)与在经分组交换网络(102)可接入的数据中心(116,136)操作的虚拟机(126-1,146-1)之间的数据隧道(172,174)的创建。8.如权利要求7所述的CPE(104),其中所述虚拟交换机包括(110) OpenFlowvSwitch (OVS) ο9.如权利要求7所述的CPE(104),其中由所述OVS (110)监视的所述一个或更多个装置端口( 114)包括串行端口、并行端口、通用串行总线(USB)端口、高清晰媒体接口(HDMI)端口、数字虚拟接口(DVI)端口、字符装置端口、块装置端口、FireWire端口、无线家庭数字接口(WHDI)端口、游戏控制器端口、传感器端口及符合数字生活网络联盟(DLNA)的端口的至少一个端口。10.如权利要求7所述的CPE(104),其中所述新虚拟装置端口表示为装置文件。11.如权利要求10所述的CPE(104),其中所述装置端口(114)是USB端口,并且对应于所述USB端口的所述新虚拟装置端口的所述装置文件表示是/dev/ttyUSBO。12.如权利要求7所述的CPE(104),其中所述虚拟交换机(110)操作以经SDN协议控制信道(166)将所述指示传送到所述SDN控制器(152)。13.一种在软件定义网络(SDN)控制器(152)操作的方法(300),所述方法包括: 接收(302)来自在客户驻地设备(CPE) (104)上执行的虚拟交换机(I 10)的在所述CPE(104)创建了符合SDN的装置端口的指示; 将在所述CPE (104)检测到新装置(503)的通知发送(304)到装置管理器(154),所述通知包括所述CPE (104)的标识符; 接收(306)来自所述装置管理器(154)的隧道连接信息以便在所述CPE的虚拟交换机(I 1)与在经分组交换网络(102)所述CPE (104)可接入的数据中心(116,136 )操作的虚拟机(126-1,146-1)之间建立数据隧道(172,174),所述隧道连接信息至少包括与所述虚拟机(126-1,146-1)关联的标识符和在其中按逻辑组织的所述虚拟机(I 26-1,146-1)的虚拟可扩展局域网(VxLAN)的标记; 配置(308)用于在所述CPE的虚拟交换机(110)与所述数据中心的虚拟交换机(122,142)之间所述数据隧道(172,174)的端点;以及 安装(308)—个或更多个符合SDN的规则,以便相对于牵涉所述符合SDN的装置端口的所述数据隧道(172,174),控制数据分组流。14.如权利要求13所述的方法(300),其中所述CPE的虚拟交换机(110)和所述数据中心的虚拟交换机(122,142)每个包括OpenFlow vSwitch (OVS)。15.如权利要求14所述的方法(300),其中基于所述虚拟机(126-1,146-1)的所述VxLAN标记、所述CPE (104)的IP地址、所述数据中心(I 16)的IP地址、所述虚拟机(126-1,146-1)的VM标识符及所述虚拟机(146-1)的IP地址至少之一,配置所述数据隧道(172,174)的所述端点。16.—种在实施为一个或更多个虚拟机(126-1到126-N;146-1到146-M)的虚拟化环境的数据中心(116,136 )操作的方法(400),所述方法(400)包括: 在所述数据中心(I 16,136)的虚拟交换机(122,142)接收(402)来自软件定义网络(SDN)控制器(152)的在特定虚拟机(126-1,146-1)中创建新装置端口的配置请求; 响应于所述配置请求,创建(404)新装置端口和关联装置文件,其中所述新装置端口的名称从在其中按逻辑组织所述特定虚拟机(126-1,146-1)的虚拟可扩展局域网(VxLAN)的标记中推导; 向所述特定虚拟机(126-1,146-1)虚拟化(406)所述新装置端口,以显得像已连接到所述特定虚拟机(126-1,146-1)—样;以及 为在所述特定虚拟机(126-1,146-1)上执行的应用(128,148)提供(408)对所述新装置端口的接入。17.如权利要求16所述的方法(400),其中所述虚拟交换机(122)包括OpenFlowvSwitch (OVS),并且作为实现所述数据中心(116)的所述虚拟化环境的管理程序(120)的一部分提供。18.如权利要求17所述的方法(400),其中所述管理程序(120)实施为裸机安装和托管安装之一。19.如权利要求16所述的方法(400),其中所述虚拟交换机(142)包括OpenFlowvSwitch (OVS),并且作为由管理程序(140)实现的所述虚拟化环境的所述特定虚拟机(146-1)的一部分提供。20.如权利要求19所述的方法(400),其中所述管理程序(140)实施为裸机安装和托管安装之一。
【文档编号】H04L12/28GK105874744SQ201480069357
【公开日】2016年8月17日
【申请日】2014年11月6日
【发明人】W.哈达, H.马科宁, R.曼吉尔马拉尼, R.苏布拉马尼亚姆
【申请人】瑞典爱立信有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1