逻辑路由器制造技术

技术编号:35167636 阅读:25 留言:0更新日期:2022-10-12 17:30
本发明专利技术公开涉及逻辑路由器。一些实施例提供了包括用于托管若干个虚拟机的若干个主机机器和用于互连主机机器的物理网络的系统。每个主机机器包括受管理的物理交换元件(MPSE),其包括用于执行去向和来自一组在主机机器上运行的虚拟机的分组的链路层转发的若干个端口。每个端口与唯一的媒体访问控制(MAC)地址相关联。每个主机机器包括受管理的路由元件(MPRE),用于从MPSE的端口接收数据分组和执行网络层路由,以便将接收到的数据分组从第一网络段的第一虚拟机转发到第二网络段的第二虚拟机。拟机。拟机。

【技术实现步骤摘要】
逻辑路由器
[0001]本申请是申请日为2014年10月10日、申请号为201480056094.2、专利技术名称为“逻辑路由器”的首次提交的专利技术专利申请的第一代分案申请的分案申请,其中第一代分案申请的申请日为2014年10月10日、申请号为202010472379.1、专利技术名称为“逻辑路由器”。


[0002]本专利技术公开通常涉及逻辑路由器。

技术介绍

[0003]在网络虚拟化环境中,部署在管理程序上的较常见的应用之一是3层(3

tier)应用,其中网络层、数据库层和应用层在不同的L3子网上。这需要穿过一个子网中的一个虚拟机(VM)到另一个子网中的另一个虚拟机的IP分组首先到达L3路由器,然后被转发到目的地VM。即使目的地VM被托管在与发端VM相同的主机机器上,也是这种情况。
[0004]这产生了不必要的网络流量并且导致较高的延迟和较低的吞吐量,这显著地降低了在管理程序上运行的应用的性能。一般而言,只要任何两个VM是彼此通信的两个不同IP子网,这种性能降低就会发生。
[0005]图1示出了通过网络虚拟化基础设施实现的逻辑网络100,其中在不同段或子网上的虚拟机(VM)通过共享路由器110进行通信。如所示出的,VM 121

129在主机机器131

133上运行,这些主机机器是通过物理网络105通信地链接的物理机器。
[0006]VM在网络的不同段中。具体而言,VM 121

125在网络的段A中,VM 126

129在网络的段B中。在网络的相同段中的VM能够利用链路层(L2)协议彼此通信,而在网络的不同段中的VM不能利用链路层协议彼此通信,并且必须通过网络层(L3)路由器或网关彼此通信。在不同主机机器中操作的VM通过物理网络105中的网络流量彼此通信,无论它们是否处于相同的网络段中。
[0007]主机机器131

133正在运行实现软件交换机的管理程序,其允许在同一主机机器内的相同段中的VM彼此本地通信而无需经过物理网络105。但是,属于不同段的VM必须经过只有在物理网络的后面才能到达的L3路由器,诸如共享路由器110。即使在相同主机机器中操作的VM之间也是这种情况。例如,VM 125和VM 126之间的流量必须经过物理网络105和共享路由器110,即使它们两者都在主机机器132上操作。
[0008]所需要的是用于在VM可以运行的每个主机处转发L3分组的分布式路由器。该分布式路由器应该使得能够在本地(即,在起始管理程序处)转发数据分组,使得在源VM和目的地VM之间恰好只有一跳。

技术实现思路

[0009]为了便于在虚拟化网络环境中的主机机器上运行的逻辑网络的虚拟机(VM)之间的L3分组转发,一些实施例定义了用于逻辑网络的逻辑路由器或者逻辑路由元件(LRE)。在一些实施例中,LRE跨其逻辑网络的主机机器分布式地操作为虚拟分布式路由器(VDR),其
中每个主机机器将其自己的LRE的本地实例操作为受管理的物理路由元件(MPRE),用于为在那个主机上运行的VM执行L3分组转发。在一些实施例中,MPRE允许在同一主机机器上运行的VM之间的分组的L3转发在主机机器处本地执行,而不必经过物理网络。一些实施例定义了用于不同租户的不同LRE,并且主机机器可以将不同的LRE操作为多个MPRE。在一些实施例中,在同一主机机器上运行的用于不同租户的不同MPRE在受管理的物理交换元件(MPSE)上共享同一端口和同一L2 MAC地址。
[0010]在一些实施例中,LRE包括一个或多个逻辑接口(LIF),每个逻辑接口用作到网络的特定段的接口。在一些实施例中,每个LIF可以通过其自己的IP地址寻址并且用作其网络的特定段的网络节点(例如,VM)的缺省网关或ARP代理。每个网络段具有其自己的到LRE的逻辑接口,并且每个LRE具有其自己的一组逻辑接口。每个逻辑接口具有在网络虚拟化基础设施内唯一的、其自己的标识符(例如,IP地址或覆盖网络标识符)。
[0011]在一些实施例中,采用此类逻辑路由器的逻辑网络通过使在不同主机机器中操作的MPRE对所有虚拟机看起来是相同的来进一步增强网络虚拟化。在这些实施例中的一些实施例中,可通过对于系统中所有LRE相同的虚拟MAC地址(VMAC)在L2数据链路层处对每个LRE寻址。每个主机机器与唯一的物理MAC地址(PMAC)相关联。可由其它主机机器通过物理网络利用其主机机器的唯一PMAC来对实现特定LRE的每个MPRE唯一寻址。在一些实施例中,离开MPRE的每个分组具有VMAC作为源地址,并且在分组进入PNIC和离开主机到物理网络之前,主机机器将把源地址改变为唯一PMAC。在一些实施例中,进入MPRE的每个分组具有VMAC作为目的地地址,并且如果目的地地址是与主机相关联的唯一PMAC地址,则主机将把目的地MAC地址改变为通用VMAC。在一些实施例中,网络段的LIF用作用于在该网络段中的VM的缺省网关。接收对其LIF中的一个的ARP查询的MPRE在本地响应查询,而无需将查询转发到其它主机机器。
[0012]为了为不运行虚拟化软件或操作MPRE的物理主机机器执行L3层路由,一些实施例指定运行在主机机器上的MPRE来充当用于这些非

VDR主机机器中的每一个的专用路由代理(指定的实例或指定的MPRE)。在一些实施例中,从虚拟机到物理主机的数据流量通过各个MPRE进行,而从物理主机到虚拟机的数据流量必须经过指定的MPRE。
[0013]在一些实施例中,在主机机器中的至少一个MPRE被配置为桥接MPRE,并且这种桥包括被配置为用于桥接而不是用于路由的逻辑接口。配置为用于路由的逻辑接口(路由LIF)通过将L3层网络地址解析为L2 MAC地址而在逻辑网络的不同段之间执行L3层路由。配置为用于桥接的逻辑接口(桥接LIF)通过将MAC地址与网络段标识符(例如,VNI)或逻辑接口绑定来执行桥接。
[0014]在一些实施例中,在如上所述的主机机器中操作的LRE通过由控制器集群生成的配置数据集进行配置。在一些实施例中,控制器又基于被不同租户或用户创建和指定的逻辑网络生成这些配置数据集。在一些实施例中,用于网络虚拟化基础设施的网络管理器允许用户生成可以通过网络虚拟化基础设施实现的不同的逻辑网络,并且然后将这些逻辑网络的参数推送到控制器,以便控制器能够生成特定于主机机器的配置数据集,包括用于LRE的配置数据。在一些实施例中,网络管理器向主机机器提供用于提取用于LRE的配置数据的指令。
[0015]一些实施例动态地收集和交付用于LRE的路由信息。在一些实施例中,边缘VM从其
它路由器获知网络路由并且将获知的路由发送到控制器集群,控制器集群又将获知的路由传播到在主机机器中操作的LRE。
[0016]前面的
技术实现思路
旨在用作对本专利技术的一些实施例的简要介绍。它并不意味着是本文档中所公开的所有专利技术性主题的介绍或概述。以下的具体实施方式和在本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种在网络虚拟化基础设施上操作多个逻辑网络的方法,所述方法包括:定义受管理物理交换元件(MPSE),所述MPSE包括用于向多个虚拟机转发分组和从所述多个虚拟机转发分组的多个端口,每个端口与唯一的媒体访问控制(MAC)地址相关联;为多个不同逻辑网络定义多个受管理物理路由元件(MPRE),所述MPRE被定义为从所述MPSE的相同端口接收数据分组,其中每个MPRE被定义用于不同逻辑网络并且用于执行所述逻辑网络的不同逻辑L2段之间的数据分组的逻辑L3路由;以及将定义的MPSE和定义的多个MPRE作为配置数据提供给多个主机计算机,其中每个主机计算机根据所提供的配置数据来操作所述MPSE和所述多个MPRE。2.如权利要求1所述的方法,其中将定义的MPSE和定义的多个MPRE提供给多个主机计算机包括:将所述配置数据提供给控制所述多个主机计算机的控制器集群;以及向每个主机计算机提供用于从所述控制器集群获取一组配置数据的指令集。3.如权利要求1所述的方法,还包括为每个MPRE定义多个逻辑接口,其中每个逻辑接口与不同网络段相关联。4.如权利要求3所述的方法,其中每个逻辑接口与不同IP地址相关联。5.如权利要求3所述的方法,其中不同逻辑网络通过不同逻辑接口彼此隔离。6.如权利要求1所述的方法,其中所述网络虚拟化基础结构支持多个不同租户,其中每个逻辑网络是为不同租户定义的。7.如权利要求1所述的方法,其中所提供的配置数据用于每个主机机器操作所述多个逻辑网络的多个MPRE。8.一种方法,包括:为要在多个主机计算机中操作的逻辑路由元件定义第一配置,其中每个主机计算机操作所述逻辑路由元件的实例以用于在逻辑网络的不同逻辑L2段之间执行数据分组的逻辑L3路由;为逻辑路由元件的多个逻辑接口定义第二配置,每个逻辑接口用于与所述逻辑网络的不同段接口;以及将所述第一配置和所述第二配置提供给所述主机计算机中的每一个。9.如权利要求8所述的方法,其中将所述第一配置和所述第二配置提供给所述主机计算机中的每一个包括:将所述配置提供给控制所述多个主机计算机的控制器集群;以及将用于从所述控制器集群获取一组配置数据的指令集提供给每个主机计算机。10.如权利要求8所述的方法,其中每一个逻辑接口与不同IP地址相关联。11.如权利要求8所述的方法,其中所述多个主机计算机在支持多个不同租户的网络虚拟化基础设施中,其中每个主机计算机操作用于多个不同租户的多个逻辑路由元件。12.如权利要求8所述的方法,其中所述逻辑路由元件是第一逻辑路由元件,其中所述方法包括为第二逻辑路由元件定义第三配置,所述第二逻辑路由元件要与所述第一逻辑路由元件同时在所述多个主机计算机中被操作。13.一种方法,包括:向控制网络虚拟化基础设施中的多个主机计算机的控制器集群提供逻辑网络的配置
数据;以及将用于从所述控制器集群获取一组配置数据的指令提供给所述多个主机计算机中的每个主机计算机,其中所述一组配置数据用于将所述主机计算机配置为将逻辑路由元件的实例操作为受管理物理路由元件(MPRE)以用于在所述逻辑网络的不同逻辑L2段中操作的虚拟机之间执行数据分组的逻辑L3路由。14.如权利要求13所述的方法,其中所述配置数据包括用于所述逻辑路由元件中的多个逻辑接口的参数,其中每个逻辑接口用于与所述逻辑网络的不同段接口。15.如权利要求13所述的方法,其中所述逻辑网络的至少一个段是覆盖封装网络。16.如权利要求15所述的方法,其中所述段中的至少两个段是与不同网络标识符相关联的不同覆盖封装网络。17.一种用于主机计算机的方法,所述主机计算机执行在逻辑网络的多个不同段中的多个虚拟机,所述方法包括:在所述主机计算机上执行的受管理物理路由元件(MPRE)处,所述受管理物理路由元件包括多个逻辑接口,每个逻辑接口用于从所述逻辑网络的不同段接收数据分组,其中所述逻辑接口中的每个逻辑接口能够通过网络层地址来寻址:当地址解析协议(ARP)广播消息的网络层目的地地址与MPRE的逻辑接口之一的网络层地址匹配时,截取该ARP广播消息;以及基于匹配的逻辑接口的MAC(媒体...

【专利技术属性】
技术研发人员:G
申请(专利权)人:NICIRA股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1