实现虚拟系统的方法及装置的制造方法

文档序号:10578046阅读:170来源:国知局
实现虚拟系统的方法及装置的制造方法
【专利摘要】本申请提供一种实现虚拟系统的方法及装置,所述方法应用在网络设备上,所述网络设备包括多个端口,所述方法包括:根据预先划分的虚拟系统,创建端口隔离组,将属于同一个虚拟系统的端口分别划分到同一个所述端口隔离组内;保存划分后的端口隔离组的配置信息,所述端口隔离组的配置信息包括端口隔离组与所述端口隔离组所包括的各个端口的对应关系。应用本申请提供的方法,实现了在不具备支持虚拟化技术芯片的物理设备上,实现虚拟系统,并有效保障了虚拟系统之间的通信安全;且提高了实现虚拟系统的方法的适用性,降低了其对物理设备本身的依赖。
【专利说明】
实现虚拟系统的方法及装置
技术领域
[0001]本申请涉及网络通信技术领域,尤其涉及实现虚拟系统的方法及装置。
【背景技术】
[0002]虚拟化技术可以实现将一台物理设备虚拟成多台逻辑设备,以实现虚拟系统。由于同一物理设备上的每个虚拟系统可以拥有独立的硬件和软件资源,且独立维护各自的数据,因此同一物理设备上的各个虚拟系统之间互不影响,从而提高了物理设备的资源使用率,实现物理设备资源的快速简单部署。若某台物理设备上的芯片并不支持虚拟化技术,则在该物理设备上通过虚拟化技术所实现的各个虚拟系统间的信息很可能无法相互隔离,从而虚拟系统之间的通信安全无法得到保障,而且,很可能造成物理设备CPU资源的浪费,例如,物理设备中的某个虚拟系统发送了一个广播报文,通常情况下,该广播报文只需在该虚拟系统的各端口间传输即可,但由于各个虚拟系统间的信息无法相互隔离,造成该广播报文也被传输至其他虚拟系统的端口中,其他虚拟系统接收到报文后,将处理该报文,从而导致物理设备CPU资源的浪费。
[0003]现有技术中,为了实现在不具备支持虚拟化技术芯片的物理设备上实现虚拟系统,且实现有效利用物理设备的资源并保障虚拟系统之间的通信安全,可以通过技术手段,使用物理设备的主控板和业务板,来实现虚拟系统的资源划分。然而,通常深度交换网关设备可以采用该方式,而普通的交换机类设备,则由于不具有业务板,而无法通过该种方式实现虚拟系统,从而,使用上述现有技术实现虚拟系统具有很大的局限性。

【发明内容】

[0004]有鉴于此,本申请提供一种实现虚拟系统的方法及装置,以实现在不具备支持虚拟化技术芯片的物理设备上,实现虚拟系统,并有效保障虚拟系统之间的通信安全;且提高了实现虚拟系统的方法的适用性,降低其对物理设备本身的依赖。
[0005]具体地,本申请是通过如下技术方案实现的:
[0006]根据本申请实施例的第一方面,提供一种实现虚拟系统的方法,所述方法应用在网络设备上,所述网络设备包括多个端口,所述方法包括:
[0007]根据预先划分的虚拟系统,创建端口隔离组,将属于同一个虚拟系统的端口分别划分到同一个所述端口隔离组内;
[0008]保存划分后的端口隔离组的配置信息,所述端口隔离组的配置信息包括端口隔离组与所述端口隔离组所包括的各个端口的对应关系。
[0009]在一个实施例中,所述根据预先划分的虚拟系统,创建端口隔离组,包括:
[0010]获取所述预先划分的虚拟系统的个数M,创建M个端口隔离组,一个所述端口隔离组与一个所述虚拟系统对应。
[0011]在另一实施例中,所述网络设备包括用于处理所述端口所发送的报文的芯片;
[0012]所述保存划分后的端口隔离组的配置信息,包括:
[0013]将所述划分后的端口隔离组的配置信息保存在所述芯片上。
[0014]在又一个实施例中,所述方法还包括:
[0015]当所述端口发送报文时,根据保存的所述端口隔离组的配置信息,确定发送所述报文的端口与所述报文将被送达的下一跳端口是否属于同一端口隔离组;
[0016]若所述下一跳端口与所述发送所述报文的端口属于同一端口隔离组,则直接将所述报文从所述发送报文的端口发送至所述下一跳端口。
[0017]在又一个实施例中,所述芯片不支持虚拟化技术。
[0018]根据本申请实施例的第二方面,提供一种实现虚拟系统的装置,所述装置应用在网络设备上,所述网络设备包括多个端口,所述装置包括:
[0019]划分单元,用于根据预先划分的虚拟系统,创建端口隔离组,将属于同一个虚拟系统的端口分别划分到同一个所述端口隔离组内;
[0020]保存单元,用于保存划分后的端口隔离组的配置信息,所述端口隔离组的配置信息包括端口隔离组与所述端口隔离组所包括的各个端口的对应关系。
[0021]在一个实施例中,所述划分单元,用于:
[0022]获取所述预先划分的虚拟系统的个数M,创建M个端口隔离组,一个所述端口隔离组与一个所述虚拟系统对应;将属于同一个虚拟系统的端口分别划分到同一个所述端口隔离组内。
[0023]在另一个实施例中,所述网络设备包括用于处理所述端口所发送的报文的芯片;
[0024]所述保存单元,用于:将所述划分后的端口隔离组的配置信息保存在所述芯片上。
[0025]在又一个实施例中,,所述装置还包括:
[0026]确定单元,用于当所述端口发送报文时,根据保存的所述端口隔离组的配置信息,确定发送所述报文的端口与所述报文将被送达的下一跳端口是否属于同一端口隔离组;
[0027]处理单元,用于在所述下一跳端口与所述发送所述报文的端口属于同一端口隔离组时,直接将所述报文从所述发送报文的端口发送至所述下一跳端口。
[0028]在又一个实施例中,所述芯片不支持虚拟化技术。
[0029]应用本实施例的方法,通过将属于同一虚拟系统的端口划分到同一端口隔离组中,并保存划分后的端口隔离组的配置信息,使得在不具备支持虚拟化技术的芯片的网络设备上也可以实现虚拟系统,而且所实现的虚拟系统之间信息相互隔离,从而有效地保障了虚拟系统之间的通信安全;且由于该方法的实施对网络设备本身的配置没有要求,从而提高了实现虚拟系统的方法的适用性,降低了对网络设备本身的依赖。
【附图说明】
[0030]图1示例了本申请实施例实现虚拟系统的方法的应用场景示意图。
[0031]图2示例了本申请实现虚拟系统的方法的一个实施例流程图。
[0032]图3示例了本申请实现虚拟系统的方法的另一个实施例流程图。
[0033]图4为本申请实现虚拟系统的装置所在网络设备的一种硬件结构图。
[0034]图5为本申请实现虚拟系统的装置的一个实施例框图。
[0035]图6为本申请实现虚拟系统的装置的另一个实施例框图。
【具体实施方式】
[0036]这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
[0037]在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
[0038]应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
[0039]虚拟化技术是一种资源管理技术,通过虚拟化技术可以实现将一台物理设备虚拟成多台逻辑设备,每台逻辑设备上可以运行一个虚拟系统,因此,通过虚拟化技术可以实现一台物理设备上运行多个虚拟系统。每个虚拟系统可以拥有独立的硬件和软件资源,且独立维护各自的数据,例如,路由表项、业务策略等数据。同一台物理设备上的虚拟系统之间可以互不影响,从而提高了物理设备的资源使用率。
[0040]然而,有些物理设备上的芯片并不支持虚拟化,若在该类物理设备上通过虚拟化技术划分虚拟系统(例如,通过命令行或者软件,向物理设备下发划分虚拟系统的指令),此时所实现的各个虚拟系统间的信息很可能无法相互隔离,比如,由于各个虚拟系统的端口之间可以相互通信,导致物理设备中的某个虚拟系统的内部信息被传输至另一个虚拟系统,从而使得虚拟系统之间的通信安全无法得到保障,而且很可能造成物理设备CHJ资源的浪费,比如,某个虚拟系统在接收到其他虚拟系统的报文后,仍将对该报文进行处理,从而浪费了物理设备的CPU资源。
[0041]为了实现在上述不具备支持虚拟化技术的芯片的物理设备上,实现虚拟系统,并有效保障虚拟系统之间的通信安全,本申请提供了一种实现虚拟系统的方法及装置,通过该方法实现虚拟系统,还可以提高实现虚拟系统的方法的适用性,降低对物理设备本身的依赖。
[0042]如下的图1,示例了本申请实施例实现虚拟系统的方法的应用场景示意图。图1中包括一台网络设备11,假设该网络设备11上具有4个端口(如图1中所示的端口 I至端口4),该网络设备11上还具有芯片111,假设该芯片111不支持虚拟化技术,且该网络设备11上不具有其他支持虚拟化技术的芯片。可以理解的是,该网络设备上还具有其他部件,图1中并未不出。
[0043]本申请的实现虚拟系统的方法的目的是,即使该网络设备11的芯片111不支持虚拟化技术,仍然可以通过执行本申请的方法实现虚拟系统的划分。例如,图1中所示的,假设需要在该网络设备11上划分两个虚拟系统,则可以通过本申请提供的实现虚拟系统的方法,进行虚拟系统的划分。划分后可以形成虚拟系统112和虚拟系统113,其中,端口 I与端口2被划分给虚拟系统112,端口 3与端口 4被划分给虚拟系统113,并且可以实现属于同一虚拟系统内的端口(例如端口 I与端口 2)之间可以相互通信,而属于不同虚拟系统内的端口(例如端口 2与端口 3)之间不可以相互通信,从而实现了在不具备支持虚拟化技术的芯片的物理设备上,实现虚拟系统,并有效地保障了虚拟系统之间的通信安全。
[0044]如下的图2,示例了本申请实现虚拟系统的方法的一个实施例流程图,该图2所示的实施例流程图,在上述图1所示的应用场景示意图的基础上,以网络设备11实现划分虚拟系统112与虚拟系统113为例,可以包括以下步骤:
[0045]步骤S201:根据预先划分的虚拟系统,创建端口隔离组,将属于同一个虚拟系统的端口分别划分到同一个所述端口隔离组内。
[0046]本申请实施例中,用户可以通过技术手段,例如,通过软件,或者命令行,实现在网络设备11上创建虚拟系统,并且为所创建的每个虚拟系统划分资源,其中可以包括将某个端口划分到某个虚拟系统。例如,创建虚拟系统112和虚拟系统113,并将端口 I和端口 2划分到虚拟系统112,将端口 3和端口 4划分到虚拟系统113。具体是如何实现创建虚拟系统并为虚拟系统划分资源的,可以参见现有技术中的相关方案,在本申请中不再作详细赘述。
[0047]当用户创建虚拟系统,并为虚拟系统划分资源后,网络设备11可以根据所创建的虚拟系统以及虚拟系统的配置信息,该虚拟系统的配置信息可以包括虚拟系统与其所包括的资源的对应关系,例如,虚拟系统的配置信息包括虚拟系统与该虚拟系统所包括的端口的对应关系,创建端口隔离组,所创建的端口隔离组的个数与虚拟系统的个数相同,且一个端口隔离组对应一个虚拟系统,例如,创建端口隔离组114和端口隔离组115。
[0048]创建端口隔离组后,网络设备11可以继续根据上述各个虚拟系统的配置信息,将属于同一个虚拟系统的端口分别划分到同一个端口隔离组内。例如,如图1所示,将端口 I和端口 2划分到端口隔离组114内,将端口3和端口4划分到端口隔离组115内。由于属于相同端口隔离组内的端口之间可以相互通信,而属于不同端口隔离组的任两个端口之间均不可以相互通信,从而可以实现虚拟系统112和虚拟系统113之间信息的相互隔离,有效地保障了虚拟系统的信息安全。
[0049]步骤S202:保存划分后的端口隔离组的配置信息,所述端口隔离组的配置信息包括端口隔离组与所述端口隔离组所包括的各个端口的对应关系。
[0050]当执行完步骤S201,将属于同一个虚拟系统的端口划分到同一个端口隔离组之后,本申请实施例中,可以保存端口隔离组的配置信息,该配置信息可以包括端口隔离组与其所包括的各个端口的对应关系,例如,端口隔离组114的配置信息包括该端口隔离组114与端口 1、端口2的对应关系。
[0051 ]通过保存划分后的端口隔离组的配置信息,可以使得后续在虚拟系统进行数据通信时,可以方便的使用该端口隔离组的配置信息。例如,虚拟系统112中的端口 I,若将发送一个报文,假设该报文的下一跳端口,即该报文将被直接送往的端口为端口 3,则可以通过保存的端口隔离组的配置信息得出端口 I与端口3不在同一端口隔离组内,从而拒绝将该报文从端口 I直接发送至端口 3,从而实现了虚拟系统112和虚拟系统113之间的信息相互隔离,有效地保障了虚拟系统的信息安全。
[0052]应用本实施例的方法,通过将属于同一虚拟系统的端口划分到同一端口隔离组中,并保存划分后的端口隔离组的配置信息,使得在不具备支持虚拟化技术的芯片的网络设备上也可以实现虚拟系统,而且所实现的虚拟系统之间可以做到信息相互隔离,从而有效地保障了虚拟系统之间的通信安全;且由于该方法的实施对网络设备本身的配置没有要求,从而提高了实现虚拟系统的方法的适用性,降低了对网络设备本身的依赖。
[0053]为了更详细地说明本申请实现虚拟系统的方法,如下的图3,示例了本申请实现虚拟系统的方法的另一个实施例流程图,该图3所示的实施例流程图,在上述图1所示的应用场景示意图及上述图2所示的实施例流程图的基础上,仍以网络设备11实现划分虚拟系统112与虚拟系统113为例,更详细地说明了本申请实现虚拟系统的方法,可以包括以下步骤:
[0054]步骤S301:获取预先划分的虚拟系统的个数M,创建M个端口隔离组。
[0055]步骤S302:将属于同一个虚拟系统的端口分别划分到同一个所述端口隔离组内。
[0056]本步骤的描述可以参见上述步骤S201中的相关描述,在此不再详细赘述。
[0057]步骤S303:将所述划分后的端口隔离组的配置信息保存在自身的芯片上,所述芯片用于处理所述端口所发送的报文。
[0058]在一个例子中,可以将划分后的端口隔离组的配置信息保存在网络设备11自身的芯片111上,该芯片111可以不支持虚拟化技术。
[0059]通常情况下,该芯片111可以用于处理虚拟系统的端口所发送的报文,例如,虚拟系统112的端口 I向端口2发送报文时,该报文可以通过芯片111进行转发。
[0060]步骤S304:当所述端口发送报文时,根据保存的所述端口隔离组的配置信息,确定发送所述报文的端口与所述报文将被送达的下一跳端口是否属于同一端口隔离组,若是,则执行步骤S305,否则,执行步骤S306。
[0061]在一个例子中,假设端口I发送报文时,该待发送的报文可以是虚拟系统112自身的内部报文,也可以是其他网络设备发送到网络设备11的报文,不论该报文是何种报文,由于该报文将被端口 I进行发送,本申请中,为了描述方便,可以将端口 I称为发送该报文的端
□ O
[0062]之后,网络设备11可以通过在芯片111上所保存的端口隔离组的配置信息,确定该报文将被送达的下一跳端口,例如端口 2,与发送该报文的端口 I,是否属于同一端口隔离组。
[0063]步骤S305:直接将所述报文从所述发送报文的端口发送至所述下一跳端口,结束流程。
[0064]本实施例中,由上述描述可知,可以将端口隔离组的配置信息保存在芯片上,且该芯片通常也可以用于处理端口所发送的报文。由于芯片是硬件,其对报文的处理速度相对于软件来说,可以更快一些,从而使得通过应用本实施例实现虚拟系统的方法,所划分的虚拟系统,处理报文的效率更高。
[0065]步骤S306:拒绝将所述报文从所述发送报文的端口发送至所述下一跳端口。
[0066]例如,假设虚拟系统112的端口I所发送的报文为广播报文,由于端口 3与端口 4均不与端口 I在同一个端口隔离组内,则网络设备11不会将该广播报文从端口 I发送至端口3与端口 4。从而实现了虚拟系统112与虚拟系统113之间的信息隔离;且避免出现虚拟系统113接收到虚拟系统112的广播报文后,仍处理所接收到的广播报文,导致网络设备11的CPU资源浪费。
[0067]应用本实施例的方法,通过将属于同一虚拟系统的端口划分到同一端口隔离组中,并保存划分后的端口隔离组的配置信息,实现了在不具备支持虚拟化技术的芯片的网络设备上也可以实现虚拟系统,并且,所实现的虚拟系统之间的端口不可以互相通信,从而实现了虚拟系统之间的信息隔离,有效地保障了虚拟系统之间的通信安全,且由于该方法的实施对网络设备本身的配置没有要求,从而提高了实现虚拟系统的方法的适用性,降低了对物理设备本身的依赖。
[0068]与前述实现虚拟系统的方法的实施例相对应,本申请还提供了实现虚拟系统的装置的实施例。
[0069]本申请实现虚拟系统的装置的实施例可以应用在网络设备上。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在网络设备的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图4所示,为本申请实现虚拟系统的装置所在网络设备的一种硬件结构图,除了图4所示的处理器41、内存42、网络接口43、以及非易失性存储器44之外,实施例中装置所在的网络设备通常根据该网络设备的实际功能,还可以包括其他硬件,对此不再赘述。
[0070]请参考图5,为本申请实现虚拟系统的装置的一个实施例框图,所述装置可以应用在网络设备上,所述网络设备可以包括多个端口,所述装置可以包括:划分单元51、保存单元52ο
[0071]所述划分单元51,可以用于根据预先划分的虚拟系统,创建端口隔离组,将属于同一个虚拟系统的端口分别划分到同一个所述端口隔离组内;
[0072]所述保存单元52,可以用于保存划分后的端口隔离组的配置信息,所述端口隔离组的配置信息包括端口隔离组与所述端口隔离组所包括的各个端口的对应关系。
[0073]在一个实施例中,所述划分单元51,可以用于:获取所述预先划分的虚拟系统的个数Μ,创建M个端口隔离组,一个所述端口隔离组与一个所述虚拟系统对应;将属于同一个虚拟系统的端口分别划分到同一个所述端口隔离组内;
[0074]所述网络设备包括用于处理所述端口所发送的报文的芯片,该芯片不支持虚拟化技术;
[0075]所述保存单元52,可以用于:将所述划分后的端口隔离组的配置信息保存在所述芯片上。
[0076]请参考图6,为本申请实现虚拟系统的装置的另一个实施例框图,该图6所示的装置,在上述图5所示装置的基础上,还可以包括:确定单元53、处理单元54。
[0077]确定单元53,可以用于当所述端口发送报文时,根据保存的所述端口隔离组的配置信息,确定发送所述报文的端口与所述报文将被送达的下一跳端口是否属于同一端口隔离组;
[0078]处理单元54,可以用于在所述下一跳端口与所述发送所述报文的端口属于同一端口隔离组时,直接将所述报文从所述发送报文的端口发送至所述下一跳端口。
[0079]上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
[0080]对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
[0081]以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。
【主权项】
1.一种实现虚拟系统的方法,其特征在于,所述方法应用在网络设备上,所述网络设备包括多个端口,所述方法包括: 根据预先划分的虚拟系统,创建端口隔离组,将属于同一个虚拟系统的端口分别划分到同一个所述端口隔离组内; 保存划分后的端口隔离组的配置信息,所述端口隔离组的配置信息包括端口隔离组与所述端口隔离组所包括的各个端口的对应关系。2.根据权利要求1所述的方法,其特征在于,所述根据预先划分的虚拟系统,创建端口隔离组,包括: 获取所述预先划分的虚拟系统的个数M,创建M个端口隔离组,一个所述端口隔离组与一个所述虚拟系统对应。3.根据权利要求1所述的方法,其特征在于,所述网络设备包括用于处理所述端口所发送的报文的芯片; 所述保存划分后的端口隔离组的配置信息,包括: 将所述划分后的端口隔离组的配置信息保存在所述芯片上。4.根据权利要求1所述的方法,其特征在于,所述方法还包括: 当所述端口发送报文时,根据保存的所述端口隔离组的配置信息,确定发送所述报文的端口与所述报文将被送达的下一跳端口是否属于同一端口隔离组; 若所述下一跳端口与所述发送所述报文的端口属于同一端口隔离组,则直接将所述报文从所述发送报文的端口发送至所述下一跳端口。5.根据权利要求3所述的方法,其特征在于,所述芯片不支持虚拟化技术。6.—种实现虚拟系统的装置,其特征在于,所述装置应用在网络设备上,所述网络设备包括多个端口,所述装置包括: 划分单元,用于根据预先划分的虚拟系统,创建端口隔离组,将属于同一个虚拟系统的端口分别划分到同一个所述端口隔离组内; 保存单元,用于保存划分后的端口隔离组的配置信息,所述端口隔离组的配置信息包括端口隔离组与所述端口隔离组所包括的各个端口的对应关系。7.根据权利要求6所述的装置,其特征在于,所述划分单元,用于: 获取所述预先划分的虚拟系统的个数M,创建M个端口隔离组,一个所述端口隔离组与一个所述虚拟系统对应;将属于同一个虚拟系统的端口分别划分到同一个所述端口隔离组内。8.根据权利要求6所述的装置,其特征在于,所述网络设备包括用于处理所述端口所发送的报文的芯片; 所述保存单元,用于:将所述划分后的端口隔离组的配置信息保存在所述芯片上。9.根据权利要求6所述的装置,其特征在于,所述装置还包括: 确定单元,用于当所述端口发送报文时,根据保存的所述端口隔离组的配置信息,确定发送所述报文的端口与所述报文将被送达的下一跳端口是否属于同一端口隔离组; 处理单元,用于在所述下一跳端口与所述发送所述报文的端口属于同一端口隔离组时,直接将所述报文从所述发送报文的端口发送至所述下一跳端口。10.根据权利要求8所述的装置,其特征在于,所述芯片不支持虚拟化技术。
【文档编号】H04L12/46GK105939242SQ201610162220
【公开日】2016年9月14日
【申请日】2016年3月21日
【发明人】周立伟, 余刚
【申请人】杭州迪普科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1