vxlan--overlay 网络虚拟化技术

  • 公子青
  • 82 Minutes
  • March 22, 2018

2018-01-04 本文转载自华为support文章 原文

1.简介

1.1 定义

RFC7348定义了VLAN扩展方案VXLAN(Virtual eXtensible Local Area Network,虚拟扩展局域网)。VXLAN采用MAC in UDP(User Da/ zzztagram Protocol)封装方式,是NVO3(Network Virtualization over Layer 3)中的一种网络虚拟化技术。

1.2 目的

服务器虚拟化技术的广泛部署,极大地增加了数据中心的计算密度;同时,为了实现业务的灵活变更,虚拟机VM(Virtual Machine)需要能够在网络中不受限迁移,这给传统的“二层+三层”数据中心网络带来了新的挑战。

为了应对传统数据中心网络对服务器虚拟化技术的限制,VXLAN技术应运而生,其能够很好地解决如下问题:

VXLAN将VM发出的原始报文进行封装后通过VXLAN隧道进行传输,隧道两端的VM不需感知传输网络的物理架构。这样,对于具有同一网段IP地址的VM而言,即使其物理位置不在同一个二层网络中,但从逻辑上看,相当于处于同一个二层域。即VXLAN技术在三层网络之上,构建出了一个虚拟的大二层网络,只要虚拟机路由可达,就可以将其规划到同一个大二层网络中。这就解决了虚拟机迁移范围受限问题。

1.3 受益

随着数据中心在物理网络基础设施上实施服务器虚拟化的快速发展,作为NVO3技术之一的VXLAN:

2 原理描述

2.1 vxlan网络架构

VXLAN是NVO3中的一种网络虚拟化技术,通过将原主机发出的数据包封装在UDP中,并使用物理网络的IP、MAC作为外层头进行封装,然后在IP网络上传输,到达目的地后由隧道终结点解封装并将数据发送给目标主机。

通过VXLAN,虚拟网络可接入大量租户,且租户可以规划自己的虚拟网络,不需要考虑物理网络IP地址和广播域的限制,降低了网络管理的难度,同时满足数据中心大二层虚拟迁移和多租户的需求。

类似于传统的VLAN网络,VXLAN网络也有VXLAN网络内互访和VXLAN网络间互访。

2.1.1 vxlan网络内互访

通过VXLAN技术可以实现在已有三层网络上构建虚拟二层网络,实现VM之间的二层互通。VXLAN网络内互访如下图所示。

VXLAN网络内互访中涉及的概念如下:

2.1.2 vxlan网络间互访

不同BD之间的VM不能直接进行二层通信,需要通过VXLAN三层网关实现VM的三层通信。VXLAN网络间互访网络架构如下图所示。

VXLAN网络间互访中涉及的概念如下:

2.1.3 与vlan对比

上面介绍VXLAN相关概念时与传统网络中的VLAN进行了对比,下面总结VXLAN与VLAN的差别。

对比项 VLAN网络 VXLAN网络
概念 虚拟局域网。 虚拟扩展局域网。
网络存在形式 将一个物理的LAN在逻辑上划分成多个广播域,并且将网络范围限制在一个较小的地域范围内。 在已有的任意路由可达的网络上叠加的二层虚拟网络,不受地域范围限制,具备大规模扩展能力。
可支持虚拟局域网范围 VLAN作为当前主流的网络隔离技术,在标准定义中只有12比特,因此可用的VLAN数量仅4096个。对于公有云或其它大型虚拟化云计算服务这种动辄上万甚至更多租户的场景而言,VLAN的隔离能力无法满足。 VXLAN作为新型的网络隔离技术,在RFC 7348定义中有24比特,支持多达16M(约1600万)租户隔离,有效地解决了云计算中海量租户隔离的问题。
网络划分方式 通过VLAN ID划分广播域,同一个广播域之间的主机能进行二层互通。 通过BD划分广播域,同一个BD内的VM可以进行二层互通。
封装方式 在报文中添加VLAN Tag。 原始报文在封装过程中先被添加一个VXLAN帧头,再被封装在UDP报头中,最后使用承载网络的IP、MAC地址作为外层头进行封装。
网络间互通方式 VLAN间互访通过VLANIF接口实现,VLANIF接口是一种三层的逻辑接口,可以实现VLAN间的三层互通。 VXLAN间互访以及VXLAN和非VXLAN之间的通信通过VBDIF接口实现。
VBDIF接口在VXLAN三层网关上配置,是基于BD创建的三层逻辑接口。
给用户带来的受益 限制广播域:广播域被限制在一个VLAN内,节省了带宽,提高了网络处理能力。 增强局域网的安全性:不同VLAN内的报文在传输时是相互隔离的,即一个VLAN内的用户不能和其它VLAN内的用户直接通信。
位置无关性:业务可在任意位置灵活部署,缓解了服务器虚拟化后相关的网络扩展问题。
网络部署灵活性:在传统网络架构上叠加新的网络,部署方便,同时避免了大二层的广播风暴,可扩展性极强。
适合云业务:支持千万级别租户隔离,支持云业务的大规模部署。
技术优势:采用MAC in UDP封装方式,无需关注VM的MAC地址,降低了大二层网络对MAC地址规格的需求。

2.2 报文封装格式

原始报文在封装过程中先被添加一个VXLAN帧头,再被封装在UDP报头中,并使用承载网络的IP、MAC地址作为外层头进行封装。

字段 描述
VXLAN header(VXLAN头封装) VXLAN Flags: 标记位,8比特,取值为00001000。
VNI: VXLAN网络标识,用于区分VXLAN段,由24比特组成,支持多达16M的租户。一个租户可以有一个或多个VNI,不同VNI的租户之间不能直接进行二层相互通信。
Reserved: 保留未用,分别由24比特和8比特组成,设置为0。
Outer UDP header(外层UDP头封装) DestPort: 目的UDP端口号,设置为4789。
Source Port: 源UDP端口号,根据内层以太报文头通过哈希算法计算后的值。
Outer IP header(外层IP头封装) IP SA: 源IP地址,VXLAN隧道源端VTEP的IP地址。
IP DA: 目的IP地址,VXLAN隧道目的端VTEP的IP地址。
Outer Ethernet header(外层Ethernet头封装) MAC DA: 目的MAC地址,为到达目的VTEP的路径上,下一跳设备的MAC地址。
MAC SA: 源MAC地址,发送报文的源端VTEP的MAC地址。
802.1Q Tag: 可选字段,该字段为报文中携带的VLAN Tag。
Ethernet Type: 以太报文类型,IP协议报文中该字段取值为0x0800。

2.3 VXLAN运行机制

在设备上部署VXLAN网络时,需要分别对下行接入业务选择部署以及上行VXLAN隧道建立部署,两者部署完成后,报文就能在VXLAN网络中进行转发。因此,VXLAN运行机制可以概括为:报文识别、隧道建立以及报文转发。

2.3.1 报文识别

在VXLAN网络中,将VNI以1:1方式映射到广播域BD。当报文到达VTEP后,VTEP只要能够识别出报文所属的BD,就能够选择正确的VXLAN隧道进行转发。VTEP有两种方式识别报文所属的VXLAN。

基于VLAN识别报文所属的VXLAN

基于网络规划,在VTEP上建立VLAN与BD的一对一或多对一的映射。这样,当VTEP收到业务侧报文后,根据VLAN与BD以及BD与VNI的对应关系即能够选择相应的VXLAN隧道进行转发。

如下图所示,VLAN 10与VLAN 20同属于BD 10,VTEP上存在BD 10与VLAN 10和VLAN 20的对应关系,同时BD 10对应的VXLAN的VNI为1000。这样当VTEP接收到PC_1或PC_2的报文时,就能够选择正确的VXLAN隧道进行转发。

基于报文流封装类型识别报文所属的VXLAN

报文的流封装类型可概括地分为携带指定VLAN Tag与不携带VLAN Tag两种。基于此,在VTEP连接下行业务的物理接口上创建二层子接口,并配置二层子接口对报文的不同处理方式,同时将二层子接口与BD进行一一映射。这样业务侧报文到达VTEP后,即会进入指定的二层子接口。VTEP即能够根据二层子接口与BD的映射关系,以及BD与VNI的映射关系,选择正确的VXLAN隧道进行报文转发。
如下表所示,不同流封装类型的二层子接口对报文的处理方式分为四种。

流封装类型 允许进入VXLAN隧道的报文类型 对VXLAN报文进行封装处理 对VXLAN报文进行解封装处理
dot1q 只允许携带指定VLAN Tag的报文进入VXLAN隧道。 进行VXLAN封装时,会剥离原始报文的VLAN Tag。 进行VXLAN解封装后,会根据子接口上dot1q终结配置的vid为报文添加VLAN Tag,再转发。
untag 只允许不携带VLAN Tag的报文进入VXLAN隧道。 进行VXLAN封装时,不对原始报文做处理,即不添加任何VLAN Tag。 进行VXLAN解封装后,不对报文做处理,包括VLAN Tag的添加、替换或剥离。
default 允许所有报文进入VXLAN隧道,不论报文是否携带VLAN Tag。 进行VXLAN封装时,不对原始报文做处理,包括添加、替换或剥离。 进行VXLAN解封装后,不对报文做处理,包括VLAN Tag的添加、替换或剥离。
qinq 只允许带有指定的两层VLAN Tag的报文进入VXLAN隧道。 进行VXLAN封装时,会剥离原始报文的所有VLAN Tag。

进行VXLAN解封装后:
S5720HI: 根据子接口上QinQ终结配置的ce-vid和pe-vid为报文添加两层VLAN Tag,再转发。
其他形态: 若报文不带VLAN Tag,则先根据子接口上QinQ终结配置的ce-vid和pe-vid为报文添加两层VLAN Tag,再转发;若报文带VLAN Tag,则先剥掉外层VLAN Tag再根据子接口上QinQ终结配置的ce-vid和pe-vid为报文添加两层VLAN Tag,再转发。

如下图所示,VTEP基于物理接口GE0/0/1有两个子接口,不同的流封装类型与不同的BD进行绑定。PC_1与PC_2分别属于VLAN 10和VLAN 30,二层交换机上行连接VTEP的接口上配置的接口类型是Trunk,允许通过的VLAN为10和30,PVID为VLAN 30。当PC_1发出的报文经过该接口时,由于接口的缺省VID与报文的VID不同,直接透传该报文到VTEP;当PC_2发出的报文经过该接口时,由于报文的VID与接口的缺省VID相同,剥离VID=30的Tag。因此,PC_1与PC_2发出的报文到达VTEP的GE0/0/1接口时,一个是携带VLAN 10的,一个是不携带VLAN Tag的。为了区分两种报文,就必须要在GE0/0/1上分别创建dot1q和untag类型的二层子接口:

当PC_1或PC_2的报文到达VTEP时,根据报文的Tag情况选择进入不同的二层子接口,之后,VTEP根据子接口与BD,以及BD与VNI的映射关系,即能够选择正确的VXLAN隧道进行报文转发。

2.3.2 隧道建立

VXLAN隧道由一对VTEPIP地址确定。静态VXLAN隧道的创建需要通过手工配置源端和目的端的VNI与VTEP的IP地址,只要VXLAN隧道两端VTEP IP是路由可达的,VXLAN隧道就可以建立成功。

如下图所示,Switch1上部署了Host2和Host3,Switch2上部署了Host1。为了实现各主机之间互相通信,需要建立VXLAN隧道。

VXLAN隧道建立情况分以下两种:

2.3.3 报文转发

VXLAN将二层网络报文封装为VXLAN格式的报文,可以跨传统的三层网络进行传输,使得用户能够在三层网络之上构建逻辑的大二层网络。

MAC地址学习

在VXLAN网络中,为了实现用户的互通,支持MAC地址动态学习。下图详细介绍同子网主机互通时MAC地址学习过程。由于是首次进行通信,PC_1上没有PC_2的MAC地址,所以会发送ARP广播报文请求PC_2的MAC地址。

ARP请求报文的转发流程如下:

  1. PC_1发送源MAC为MAC_1、目的MAC为全F、源IP为IP_1、目的IP为IP_2的ARP广播报文,请求PC_2的MAC地址。
  2. Switch1收到来自PC_1发出的ARP请求后,根据报文接入端口的配置判断报文需要进入VXLAN隧道。由于接入端口的配置与BD是1:1的映射关系,因此就确定了报文所属BD,同时,也就确定了报文所属的VNI。然后,VTEP1学习MAC_1、VNI和报文入接口的对应关系,并记录在本地MAC表中。之后,VTEP1根据对应的BD获取对应VNI的隧道列表,对报文进行复制并分别进行封装。封装的外层源IP地址为源端VTEP1的IP地址,外层目的IP地址为目的端VTEP2和VTEP3的IP地址;外层源MAC地址为源端VTEP1的MAC地址,而外层目的MAC地址为去往目IP的网络中下一跳设备的MAC地址。封装后的报文,根据外层MAC和IP信息,在网络中进行传输,直至到达对端VTEP2/VTEP3。
  3. Switch2/Switch3上VTEP2和VTEP3收到VXLAN报文后对报文进行解封装,得到PC_1发送的原始报文。同时,VTEP2和VTEP3学习PC_1的MAC地址、VNI和远端VTEP的IP地址的对应关系,并记录在本地MAC表中。之后,VTEP2和VTEP3根据接口上的配置对报文进行相应的处理并在对应的二层域内广播。
  4. PC_2和PC_3接收到ARP请求后,判断报文中的目的IP地址是否为本机的IP地址。如果目的IP不是本机IP,则将报文丢弃;如果目的IP是本机IP,则对ARP请求做出应答。

如上图所示,ARP应答报文的转发流程如下:

  1. 由于PC_2学习到PC_1的MAC地址,所以ARP应答报文为单播报文。报文源MAC为MAC_2,目的MAC为MAC_1,源IP为IP_2、目的IP为IP_1。
  2. VTEP2收到ARP应答报文后,识别报文所属VNI。同时,VTEP2学习MAC_2、VNI和报文入接口的对应关系,并记录在本地MAC表中。之后,VTEP2对报文进行封装。封装的外层源IP地址为源端VTEP2的IP地址,外层目的IP地址为目的端VTEP1的IP地址;外层源MAC地址为源端VTEP2的MAC地址,而外层目的MAC地址为去往目IP的网络中下一跳设备的MAC地址。封装后的报文,根据外层MAC和IP信息,在网络中进行传输,直至到达对端VTEP1。
  3. 报文到达VTEP1后,VTEP1对报文进行解封装,得到PC_2发送的原始报文。同时,VTEP1学习PC_2的MAC地址、VNI和远端VTEP2的IP地址的对应关系,并记录在本地MAC表中。之后,VTEP1将解封装后的报文发送给PC_1。PC_1和PC_2均已学习到了对方的MAC地址,之后,PC_1和PC_2将采用单播方式进行通信。
同子网报文转发

根据报文中包含的目的MAC地址类型,报文转发流程分为已知单播报文转发和BUM(Broadcast&Unknown-unicast&Multicast)报文转发两部分。

跨子网报文转发

VXLAN为站点内的用户提供三层业务时,需要在网络中部署VXLAN三层网关,以便站点内的用户通过三层网关与外界网络或其他VXLAN网络内的用户进行三层通信。跨子网报文转发的流程如下图所示。
由于是首次进行通信,且PC_1和PC_2处于不同的网段,PC_1需要先发送ARP广播报文请求网关VBDIF10的MAC,获得网关的MAC后,PC_1先将数据报文发送给网关;之后网关也将发送ARP广播报文请求PC_2的MAC,获得PC_2的MAC后,网关再将数据报文发送给PC_2。以上MAC地址学习流程与MAC地址学习的流程一致。

  1. Switch1收到来自PC_1的报文,根据报文中接入的端口和VLAN信息获取对应的二层广播域,在对应的二层广播域内查找出接口和封装信息。
  2. Switch1上VTEP1根据查找到的出接口和封装信息进行VXLAN封装,向Switch3转发报文。
  3. Switch3收到VXLAN报文后进行解封装,发现内层报文中的目的MAC是三层网关接口VBDIF10的MAC地址MAC_3,判断需要进行三层转发。
  4. Switch3剥除内层报文的以太封装,解析目的IP。根据目的IP查找路由表,找到目的IP的下一跳地址,再根据下一跳地址查找ARP表项,获取目的MAC、VXLAN隧道出接口及VNI等信息。
  5. Switch3重新封装VXLAN报文,向Switch2转发。其中内层报文以太头中的源MAC是三层网关接口VBDIF20的MAC地址MAC_4。
  6. Switch2上VTEP2收到VXLAN报文后,根据UDP目的端口号、源/目的IP地址、VNI判断VXLAN报文的合法有效性。依据VNI获取对应的二层广播域,然后进行VXLAN解封装,获取内层二层报文,并在对应的二层广播域内查找出接口和封装信息。
  7. Switch2根据查找到的出接口和封装信息,为报文添加VLAN Tag,转发给对应的PC_2。

2.4 VXLAN QoS

VXLAN QoS用来实现原始报文携带的QoS优先级、设备内部优先级(又称为本地优先 级,是设备内部区分报文服务等级的优先级)与封装后报文优先级之间的转换,从而 可以依据原始报文提供有差别的QoS服务。

上图,VXLAN QoS实现的原始报文携带的QoS优先级、设备内部优先级与封装后报文优先级之间的转换过程如下。

  1. 原始报文由二层子接口进入Switch1设备,原始报文按照主接口上绑定的DiffServ模板进行映射,将原始报文的802.1p优先级映射为设备内部优先级(PHB行为和报文颜色),以此入队列。
    2.报文进入隧道,对报文进行封装,封装报文外层的802.1p优先级和DSCP优先级由原始报文内部优先级按照DiffServ域的缺省模板进行映射。报文按照映射后的优先级在隧道中进行传输。
  2. 报文出隧道时,根据隧道接口上配置的信任类型802.1p或DSCP(以太网接口处于三层模式时只能信任DSCP),按照DiffServ域的缺省模板进行映射,映射为设备内部优先级,进入队列进行传输。
  3. 最后,由设备内部优先级按照主接口上绑定的DiffServ域模板进行映射,映射到出接口报文的802.1p优先级,报文按照映射后的优先级进行传输。

对于接入侧设备为S6720S-EI或S6720EI时,原始报文的DSCP值出方向不支持映射,入方向根据配置进行正常映射,其他映射规则如下表。

VXLAN网络接入侧接入方式 映射规则
基于VLAN接入VXLAN网络 入方向:根据报文的802.1p以及该接口上配置的DiffServ域进行映射。
出方向:根据接口上配置的DiffServ域修改报文的802.1p。
基于流封装类型接入VXLAN网络且封装类型为default 入方向:若报文不携带VLAN TAG,则根据报文所属主端口上通过port priority priority-value命令配置的优先级值以及该接口上配置的DiffServ域进行映射;若报文携带VLAN TAG,则根据报文的802.1p以及接口上配置的DiffServ域进行映射。
出方向:不修改报文的802.1p。
基于流封装类型接入VXLAN网络且封装类型为untag 入方向:根据报文所属主端口上通过port priority priority-value命令配置的优先级值以及接口上配置的DiffServ域进行映射。
出方向:不修改报文的802.1p。
基于流封装类型接入VXLAN网络且封装类型为dot1q 入方向:根据报文的802.1p以及该接口上配置的DiffServ域进行映射。
出方向:根据接口上配置的DiffServ域修改报文的802.1p。
基于流封装类型接入VXLAN网络且封装类型为qinq 入方向:根据报文外层的802.1p以及接口上配置的DiffServ域进行映射。
出方向:根据接口上配置的DiffServ域修改报文外层的802.1p。

3 应用场景

3.1 通过VXLAN在园区上构建虚拟数据中心网络

某企业已经建成比较成熟的园区网络,但是没有专用的数据中心网络,所有的服务器分布在不同的部门,并且不具备集中放置的条件,不同地域之间的服务器依靠园区网络互联。通过VXLAN技术,在园区网络之上构建虚拟的数据中心网络,实现资源整合和业务灵活部署。为了方便管理与维护,将具有同一业务需求的VM规划为同一网段,不同业务需求的VM规划为不同网段。例如:研发部门的VM之间需要互通,属于同网段互通;研发部和市场部的VM之间需要互通,属于不同网段互通。

VXLAN提供数据中心网络之间的二层通信。如上图所示,研发部门的VM之间进行互通时,Switch1与Switch2作为VXLAN二层网关,二者之间建立VXLAN隧道,实现同网段终端用户互通。
VXLAN提供数据中心网络之间的三层通信。例如:研发部与市场部进行互通时,Switch3作为VXLAN三层网关,分别与Switch1和Switch2建立VXLAN隧道,通过VXLAN三层网关实现不同网段终端用户互通。
在Switch上静态配置VXLAN隧道后,VXLAN网络中MAC地址表项、ARP表项等信息流表均可动态学习得到。所有表项建立好后,通过VXLAN隧道,实现同网段与不同网段终端用户互通。

3.2 数据中心网络与园区网络互访

如下图所示,企业的研发部通过VM部署,市场部通过传统网络部署,在日常工作中,数据中心网络与园区网络有互访的需求。

上图所示,数据中心网络和传统网络的边缘设备中Switch2与Switch1作为VXLAN二层网关,Switch3作为VXLAN三层网关,Switch3分别与Switch1和Switch2建立VXLAN隧道,通过VXLAN隧道进行VXLAN报文传输。

市场部向研发部VM1发送报文的流程如下:

  1. Switch1收到传统网络的报文后,将该报文封装成VXLAN报文,发送给Switch3。
  2. Switch3收到VXLAN报文后进行解封装,剥除内层报文的以太封装,解析目的IP,根据目的IP查找路由表,找到目的IP的下一跳地址,再根据下一跳地址查找ARP表项,确认目的MAC、VXLAN隧道出接口及VNI等信息。
  3. 查找到VXLAN隧道出接口及VNI信息后,Switch3重新封装VXLAN报文,发送给Switch2。
  4. 根据报文中目的MAC,Switch2查找到出端口信息后,将报文发送给对应的VM。

3.3 通过VXLAN实现虚拟机平滑迁移

为了实现业务的灵活变更,虚拟机动态迁移已经成为了数据中心网络中的一个常态性业务。虚拟机动态迁移是指在保证虚拟机正常运行的同时,将虚拟机从一个物理服务器移动到另一个物理服务器的过程,即平滑迁移。该过程对于最终用户来说是无感知的,管理员在不影响用户正常使用的情况下可以灵活调配服务器资源或者对物理服务器进行维护和升级。

虚拟机动态迁移的关键是要保证在迁移时,虚拟机上的业务不会中断,这就要求虚拟机的IP地址、MAC地址等参数保持不变,所以虚拟机的迁移只能在同一个二层域内进行,而不能跨二层域迁移。如下图所示,某企业在数据中心中有两个Server,其中研发部和市场部都在Server1上,财务部在Server2上。由于Server1上显示计算空间不足,而Server2未充分利用,网络管理员需要将研发部迁移到Server2上,并且不影响业务。

为了实现将研发部迁移到Server2,可以采用VXLAN技术,在不感知当前物理网络的情况下,能够在任意路由可达的网络上叠加二层虚拟网络。通过将研发部VM发出的原始报文进行封装后通过VXLAN隧道进行传输,隧道两端的VM不需感知传输网络的物理架构。这样,对于具有同一网段IP地址的VM而言,即使其物理位置不在同一个二层网络中,但从逻辑上来看,相当于处于同一个二层域。

研发部迁移流程如下:

  1. 研发部从Server1迁移到Server2。
  2. 研发部对应的VM发送免费ARP报文或RARP报文告知Switch2和其他设备。
  3. Switch1学习到VM的免费ARP报文或RARP报文后,删除老的MAC地址表和ARP表,更新为迁移后的VM对应的MAC地址表和ARP表。

研发部从Server1迁移到Server2后,VM会发送免费ARP或RARP报文,所有网关设备上保存的原VM对应的MAC地址表和ARP表都将会被删除,更新为迁移后的VM对应的MAC地址表和ARP表。

4 配置注意事项

特性依赖和限制

在交换机上部署VXLAN功能时,需要注意:

5 配置VXLAN

5.1 配置VXLAN接入业务部署方式

前置任务

在配置用户通过VXLAN隧道互通之前,需配置网络路由可达。

配置流程

通过VXLAN在园区上构建虚拟数据中心网络实现二层互通与三层互通的配置流程分别如下图所示。


通过VXLAN在园区上构建虚拟数据中心网络(二层互通)的配置流程图


通过VXLAN在园区上构建虚拟数据中心网络(三层互通)的配置流程图

5.1 配置VXLAN接入业务部署方式

背景信息

在设备上部署VXLAN网络时,需要对下行接入业务进行选择部署。

针对接入业务侧的部署,有两种方式:

操作步骤

  1. 执行命令system-view,进入系统视图。
  2. (可选)执行命令set vxlan resource super-mode,配置VXLAN的大规格模式。缺省情况下,设备支持配置的BD域规格为4096。配置为大规格模式后支持配置的BD域规格为16000。

    说明:

    • 配置VXLAN的大规格模式后需要保存配置并重启设备才能生效。
    • 当配置为VXLAN的大规格模式时,可能导致部分业务转发性能下降。如:IP组播业务、VPLS业务、VLAN Mapping业务、VLAN Stacking业务、以及子接口三层转发业务。
  3. 执行命令bridge-domain *bd-id*,创建广播域BD,并进入BD视图。 缺省情况下,没有创建广播域BD。
  4. (可选)执行命令description *description*,配置BD的描述信息。 缺省情况下,未配置BD的描述信息。
  5. 执行命令quit,退出BD视图,返回到系统视图。

    • 配置业务接入点接入业务:

      1. 执行命令vlan *vlan-id*,创建VLAN并进入VLAN视图。
      2. 执行命令quit,退出VLAN视图,返回到系统视图。
      3. 执行命令bridge-domain *bd-id*,进入已经创建的BD视图。
      4. 执行命令l2 binding vlan *vlan-id*,将指定VLAN与BD相关联,实现数据报文在BD内进行转发。缺省情况下,VLAN与BD无关联。

        说明:

        • 绑定到BD的VLAN必须已经创建。
        • 一个VLAN只能绑定一个BD,但是一个BD可以绑定多个VLAN。
        • 将全局VLAN与BD相关联后,需要将设备上相关接口加入该VLAN。
        • 若VLAN被指定为Voice VLAN后,该VLAN将不能与BD进行关联。
    • 基于报文流封装类型:

      1. 执行命令interface *interface-type interface-number*,进入需要创建二层子接口的主接口视图。
      2. 执行命令port link-type {trunk | hybrid},配置接口的链路类型为trunk或者hybrid
      3. 执行命令quit,返回系统视图。
      4. 执行命令interface *interface-type interface-number.subnum* mode l2,创建二层子接口,并进入二层子接口视图。
      5. 执行命令encapsulation {dot1q vid *pe-vid* | default | untag | qinq vid *vlan-vid* ce-vid *ce-vid*},配置二层子接口允许通过的流封装类型,实现不同的接口接入不同的数据报文。缺省情况下,二层子接口没有配置允许通过的流封装类型。
      6. 执行命令bridge-domain *bd-id*,将指定二层子接口与BD相关联,实现数据报文在BD内进行转发。缺省情况下,二层子接口与BD无关联。

        说明:
        配置二层子接口允许通过的流封装类型时,需要注意以下几点:

        • 二层子接口封装的dot1q的VLAN与qinq的外层VLAN,不能与对应主接口允许通过的VLAN相同,也不能与全局VLAN相同。
        • 在同一个主接口下,dot1q的VLAN与qinq的外层VLAN互斥。
        • 二层子接口下配置流封装类型为default时,必须确保对应的主接口没有加入任何VLAN,包括VLAN 1。
        • 二层子接口下配置流封装类型为default前,主接口下有且仅有一个子接口。
        • 二层子接口下配置流封装类型为default后,该主接口下不能再创建其他子接口。
        • 二层子接口下配置流封装类型为untag时,该主接口下不能在其他子接口下配置untag

公子青注: 本文因使用markdown编辑,关键字部分如 *vlan-id* 代表斜体格式,即 用户自定义参数部分(非命令字)。

5.2 配置VXLAN隧道

背景信息

在设备上部署VXLAN网络时,需要对上行VXLAN隧道建立部署。

VXLAN隧道是通过隧道两端的VTEP的IP地址建立的,所以需要在隧道两端的设备上分别配置源端VTEP与目的端VTEP的IP地址。

如下图所示,以Switch1为例,详细介绍VXLAN隧道所需配置。

操作步骤

  1. 执行命令system-view,进入系统视图。
  2. 执行命令bridge-domain *bd-id*,进入BD视图。
  3. 执行命令vxlan vni *vni-id*,配置BD所对应的VXLAN的VNI。 缺省情况下,没有配置BD所对应的VXLAN的VNI。
  4. 执行命令quit,退出BD视图,返回到系统视图。
  5. 执行命令interface nve *nve-number*,创建NVE接口,并进入NVE接口视图。
  6. 执行命令source *ip-address*,配置VXLAN隧道源端VTEP的IP地址。 缺省情况下,VXLAN隧道源端VTEP没有配置IP地址。
  7. 执行命令vni *vni-id* head-end peer-list *ip-address &<1-10>*,配置指定VNI的VXLAN隧道目的端VTEP的IP地址。 缺省情况下,未指定VNI的VXLAN隧道目的端VTEP的IP地址。
  8. 执行命令quit,退出NVE接口视图,返回到系统视图。

    说明:

    • 即使源端VTEP对应一个目的端VTEP,也需要执行命令vni head-end peer-list指定对应的VTEP地址。
    • 执行命令ping,检查隧道两端设备路由是否可达。当隧道两端设备路由可达时,隧道能建立成功并可以正常转发报文。若隧道两端仅存在到对方的路由,且路由不可达时,隧道仍然能UP,但是不能完成报文转发。
    • 若隧道侧通过静态路由转发,建议同时配置静态路由和BFD的联动,这样当链路出现故障时可以及时删除路由。避免存在不可达路由但隧道仍然UP,导致的VXLAN报文丢包。

5.3 配置VXLAN三层网关

背景信息

VBDIF接口在VXLAN三层网关上配置,用于跨网段报文的转发,因此同网段通信时不需要配置。

VXLAN为站点内的用户提供三层业务时,需要在网络中部署VXLAN三层网关,以便站点内的用户通过VXLAN三层网关与外界网络或其他VXLAN网络内的用户进行三层通信。

如下图所示,基于BD可创建三层逻辑接口VBDIF接口,每个BD对应一个VBDIF接口,在为VBDIF接口配置IP地址后,该接口即可作为本BD内租户的网关,对需要进行通信的报文进行基于IP地址的三层转发。
为了实现不同网段的终端用户互通,终端用户的缺省网关地址必须是对应VXLAN三层网关上的VBDIF接口的IP地址。

操作步骤

  1. 执行命令system-view,进入系统视图。
  2. 执行命令interface vbdif *bd-id*,创建VBDIF接口,并进入VBDIF接口视图。

    说明:

    • VBDIF接口的编号必须对应一个已经存在的ID的BD。
    • 对于S6720EI和S6720S-EI,设备通过命令assign resource-mode配置资源模式为96k-arp模式时,不支持对VXLAN报文进行三层转发。
  3. 执行命令ip address *ip-address* { mask | mask-length } [ sub ],配置VBDIF接口的IP地址,实现三层互通。缺省情况下,在VBDIF接口上没有配置IP地址。
  4. 执行命令quit,退出VBDIF接口视图,返回到系统视图。

后续处理

在配置VXLAN三层网关时,对于S6720EI和S6720S-EI配置VXLAN环回接口后,设备才能对接收的VXLAN报文解封装后进行三层转发,因此对于S6720EI和S6720S-EI作为VXLAN三层网关设备时,需要配置Eth-Trunk接口作为VXLAN的环回接口。配置步骤如下:

  1. 执行命令interface eth-trunk *trunk-id*,进入Eth-Trunk接口视图。
  2. 执行命令service type vxlan-tunnel,配置Eth-trunk接口为VXLAN环回接口。缺省情况下,设备上Eth-Trunk接口未配置为VXLAN的环回接口。
  3. 执行命令trunkport *interface-type interface-number*,将物理接口加入Eth-Trunk接口。

    说明:

    • 配置Eth-Trunk接口为VXLAN环回接口后,Eth-Trunk接口将自动去使能STP,也不支持在此接口下配置STP相关命令。取消Eth-Trunk接口为VXLAN环回接口后,该Eth-Trunk接口将自动使能STP功能。
    • 交换机上只能配置一个Eth-Trunk接口作为VXLAN环回接口,所有VDBIF接口的VXLAN报文均通过该环回接口进行封装和解封装。
    • 当Eth-Trunk接口下存在成员端口时,该Eth-Trunk接口不能作为VXLAN环回接口。
      若需要配置Eth-Trunk接口为环回接口时,该Eth-Trunk接口允许的配置有descriptionenable snmp trap updownjumboframe enableqos phb marking enable、set flow-stat intervalshutdowntraffic-policy(接口视图)和trust,若存在除此之外的配置时,该Eth-Trunk接口不能配置为环回接口。
    • 配置Eth-Trunk接口为环回接口后,该Eth-Trunk接口仅支持如下配置,authentication open ucl-policy enabledescriptionenable snmp trap updownjumboframe enablemixed-rate link enable、qos phb marking enableset flow-stat intervalshutdownstatistic enable(接口视图)、traffic-policy(接口视图)、vcmp disable和trust
    • 若要通过命令undo service type vxlan-tunnel取消Eth-Trunk接口作为VXLAN环回接口时,需先删除该Eth-Trunk接口下的所有成员接口。

5.4 (可选)配置BD内的流量抑制

背景信息

为了限制进入BD的广播、组播或未知单播报文的速率,防止广播风暴,可以在该BD内配置对应报文类型的流量抑制功能。

操作步骤

  1. 执行命令system-view,进入系统视图。
  2. 执行命令bridge-domain *bd-id*,创建广播域BD,并进入BD视图。
  3. 配置BD内的流量抑制。请根据实际需要,选择如下配置:
    • 执行命令broadcast-suppression cir *cir-value* [ cbs *cbs-value* ],开启BD内广播流量抑制功能。
      缺省情况下,BD内广播流量抑制功能处于关闭状态。
    • 执行命令multicast-suppression cir *cir-value* [ cbs *cbs-value* ],开启BD内组播流量抑制功能。
      缺省情况下,BD内组播流量抑制功能处于关闭状态。
    • 执行命令unknown-unicast-suppression cir *cir-value* [ cbs *cbs-value* ],开启BD内未知单播流量抑制功能。缺省情况下,BD内未知单播流量抑制功能处于关闭状态。

5.5 (可选)配置静态MAC地址表项

背景信息

设备通过源MAC地址学习并建立MAC地址表时,无法区分合法用户和非法用户的报文,为网络安全带来了隐患。如果非法用户将攻击报文的源MAC地址伪装成合法用户的MAC地址,并从设备的其他接口进入,设备就会学习到错误的MAC地址表项,于是就会将本应转发给合法用户的报文转发给非法用户。用户可以手工在VXLAN接入侧和隧道侧的MAC地址表中加入特定的MAC地址表项,将用户设备与接口绑定,从而防止仿冒身份的非法用户骗取数据。另外,手动配置静态MAC地址表项,可以有效指导报文进行单播转发,节省带宽。

操作步骤

5.6 (可选)配置静态ARP表项

背景信息

静态ARP表项通过手工配置和维护,不会被老化,不会被动态ARP表项覆盖。所以在VXLAN三层网关上配置静态ARP表项可以增加通信的安全性。静态ARP表项可以限制和指定IP地址的设备通信时只使用指定的MAC地址,此时攻击报文无法修改此表项的IP地址和MAC地址的映射关系,从而保护了本设备和指定设备间的正常通信。

操作步骤

5.7 检查配置结果

背景信息

完成VXLAN业务接入点和VXLAN隧道配置后,执行以下命令可以查看配置信息。

操作步骤

6 维护VXLAN

通过查看VXLAN报文统计信息,可以实时监控VXLAN网络的运行状况。当统计信息较多时,可以将这些统计信息清除。

6.1 统计VXLAN报文统计信息

背景信息

当需要检查网络状况或处理网络故障时,可以在设备上开启BD和VXLAN隧道的报文统计功能,统计并查看VXLAN报文的统计信息,根据获取的数据统计信息进行故障诊断。

操作步骤

后续处理

6.2 清除VXLAN报文统计信息

在确认需要清除统计信息后,请执行以下命令。

操作步骤

7 配置举例

7.1 通过VXLAN在园区上构建虚拟数据中心网络(二层互通)示例

组网需求

企业已经建成比较成熟的园区网络,但是没有专用的数据中心网络,所有的服务器分布在不同的部门,并且不具备集中放置的条件。现在用户希望在已有园区网络上构建一个虚拟的数据中心网络,需求如下:

如下图所示,企业在不同的数据中心都拥有自己的VM,Server1与Server2上的VM1都属于VLAN 10,现需要通过VXLAN隧道实现相同业务的VM之间的二层互通。

数据准备

设备 VXLAN隧道 BD VNI Source IP Peer IP
Switch1 Switch1—>Switch2 10 2010 10.1.1.2 10.2.2.2
Switch2 Switch2—>Switch1 10 2010 10.2.2.2 10.1.1.2

配置思路

采用如下思路配置同网段用户通过VXLAN隧道互通:

  1. 分别在Switch1、Switch2、Switch3上配置路由协议,保证网络三层互通。
  2. 分别在Switch1、Switch2上配置VXLAN接入业务部署方式。
  3. 分别在Switch1、Switch2上配置VXLAN隧道。

说明:
园区网络的三层互通是构建虚拟数据中心网络的基础条件,现网中,如果园区网络已经实现三层网络的互通,那么该举例中的步骤1可以省略。

操作步骤

  1. 配置路由协议

    • 配置Switch1各接口IP地址。Switch2和Switch3的配置与Switch1类似,这里不再赘述。配置OSPF时,注意需要发布设备上的32位Loopback接口地址。

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      <HUAWEI> system-view
      [HUAWEI] sysname Switch1
      [Switch1] interface loopback 1
      [Switch1-LoopBack1] ip address 10.1.1.2 32
      [Switch1-LoopBack1] quit
      [Switch1] interface gigabitethernet 0/0/1
      [Switch1-GigabitEthernet0/0/1] undo portswitch
      [Switch1-GigabitEthernet0/0/1] ip address 192.168.2.1 24
      [Switch1-GigabitEthernet0/0/1] quit
      [Switch1] ospf
      [Switch1-ospf-1] area 0
      [Switch1-ospf-1-area-0.0.0.0] network 10.1.1.2 0.0.0.0
      [Switch1-ospf-1-area-0.0.0.0] network 192.168.2.0 0.0.0.255
      [Switch1-ospf-1-area-0.0.0.0] quit
      [Switch1-ospf-1] quit
    • OSPF成功配置后,Switch之间可通过OSPF协议发现对方的Loopback接口的IP地址,并能互相ping通。以Switch1 ping Switch2的显示为例。

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
        [Switch1] ping 10.2.2.2
      PING 10.2.2.2: 56 data bytes, press CTRL_C to break
      Reply from 10.2.2.2: bytes=56 Sequence=1 ttl=255 time=240 ms
      Reply from 10.2.2.2: bytes=56 Sequence=2 ttl=255 time=5 ms
      Reply from 10.2.2.2: bytes=56 Sequence=3 ttl=255 time=5 ms
      Reply from 10.2.2.2: bytes=56 Sequence=4 ttl=255 time=14 ms
      Reply from 10.2.2.2: bytes=56 Sequence=5 ttl=255 time=5 ms
      --- 10.2.2.2 ping statistics ---
      5 packet(s) transmitted
      5 packet(s) received
      0.00% packet loss
      round-trip min/avg/max = 5/53/240 ms
  2. 分别在Switch1、Switch2上配置业务接入点

    • 配置Switch1。

      1
      2
      3
      4
      5
      6
      7
      8
      9
      [Switch1] bridge-domain 10
      [Switch1-bd10] quit
      [Switch1] interface gigabitethernet 0/0/2
      [Switch1-GigabitEthernet0/0/2] port link-type trunk
      [Switch1-GigabitEthernet0/0/2] quit
      [Switch1] interface gigabitethernet 0/0/2.1 mode l2
      [Switch1-GigabitEthernet0/0/2.1] encapsulation dot1q vid 10
      [Switch1-GigabitEthernet0/0/2.1] bridge-domain 10
      [Switch1-GigabitEthernet0/0/2.1] quit
    • 配置Switch2。

      1
      2
      3
      4
      5
      6
      7
      8
      9
      [Switch2] bridge-domain 10
      [Switch2-bd10] quit
      [Switch2] interface gigabitethernet 0/0/2
      [Switch2-GigabitEthernet0/0/2] port link-type trunk
      [Switch2-GigabitEthernet0/0/2] quit
      [Switch2] interface gigabitethernet 0/0/2.1 mode l2
      [Switch2-GigabitEthernet0/0/2.1] encapsulation dot1q vid 10
      [Switch2-GigabitEthernet0/0/2.1] bridge-domain 10
      [Switch2-GigabitEthernet0/0/2.1] quit
  3. 分别在Switch1、Switch2上配置VXLAN隧道

    • 配置Switch1。

      1
      2
      3
      4
      5
      6
      7
      [Switch1] bridge-domain 10
      [Switch1-bd10] vxlan vni 2010
      [Switch1-bd10] quit
      [Switch1] interface nve 1
      [Switch1-Nve1] source 10.1.1.2
      [Switch1-Nve1] vni 2010 head-end peer-list 10.2.2.2
      [Switch1-Nve1] quit
    • 配置Switch2。

      1
      2
      3
      4
      5
      6
      7
      [Switch2] bridge-domain 10
      [Switch2-bd10] vxlan vni 2010
      [Switch2-bd10] quit
      [Switch2] interface nve 1
      [Switch2-Nve1] source 10.2.2.2
      [Switch2-Nve1] vni 2010 head-end peer-list 10.1.1.2
      [Switch2-Nve1] quit
  4. 验证配置结果

配置文件

公子青注
原文此处有误,在此省略该部分。

7.2 通过VXLAN在园区上构建虚拟数据中心网络(三层互通)示例

组网需求

企业已经建成比较成熟的园区网络,但是没有专用的数据中心网络,所有的服务器分布在不同的部门,并且不具备集中放置的条件。现在用户希望在已有园区网络上构建一个虚拟的数据中心网络,需求如下:

如下图所示,企业在不同的数据中心都拥有自己的VM,Server1上的VM1属于VLAN 10,Server2上的VM1属于VLAN 20,现需要通过VXLAN隧道实现不同业务的VM之间的三层互通。

说明:
本举例中交换机以S5720HI为例

数据准备

设备 VXLAN隧道 BD VNI Source IP Peer IP
Switch1 Switch1—>Switch3 10 2010 10.1.1.2 10.3.3.2
Switch2 Switch2—>Switch3 20 2020 10.2.2.2 10.3.3.2
Switch3 Switch3—>Switch1 10 2010 10.3.3.2 10.1.1.2
Switch3 Switch3—>Switch2 20 2020 10.3.3.2 10.2.2.2

配置思路

采用如下思路配置不同网段用户通过VXLAN网关互通:

  1. 分别在Switch1、Switch2、Switch3上配置路由协议,保证网络三层互通。
  2. 分别在Switch1、Switch2上配置VXLAN接入业务部署方式。
  3. 分别在Switch1、Switch2、Switch3上配置VXLAN隧道。
  4. 在Switch3上配置VXLAN三层网关。

说明:
园区网络的三层互通是构建虚拟数据中心网络的基础条件,现网中,如果园区网络已经实现三层网络的互通,那么该举例中的步骤1可以省略。

操作步骤

  1. 配置路由协议

    • 配置Switch1各接口IP地址。Switch2和Switch3的配置与Switch1类似,这里不再赘述。配置OSPF时,注意需要发布设备上的32位Loopback接口地址。

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      <HUAWEI> system-view
      [HUAWEI] sysname Switch1
      [Switch1] interface loopback 1
      [Switch1-LoopBack1] ip address 10.1.1.2 32
      [Switch1-LoopBack1] quit
      [Switch1] interface gigabitethernet 0/0/1
      [Switch1-GigabitEthernet0/0/1] undo portswitch
      [Switch1-GigabitEthernet0/0/1] ip address 192.168.2.1 24
      [Switch1-GigabitEthernet0/0/1] quit
      [Switch1] ospf
      [Switch1-ospf-1] area 0
      [Switch1-ospf-1-area-0.0.0.0] network 10.1.1.2 0.0.0.0
      [Switch1-ospf-1-area-0.0.0.0] network 192.168.2.0 0.0.0.255
      [Switch1-ospf-1-area-0.0.0.0] quit
      [Switch1-ospf-1] quit
    • OSPF成功配置后,Switch之间可通过OSPF协议发现对方的Loopback接口的IP地址,并能互相ping通。以Switch1 ping Switch2的显示为例。

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      [Switch1] ping 10.2.2.2
      PING 10.2.2.2: 56 data bytes, press CTRL_C to break
      Reply from 10.2.2.2: bytes=56 Sequence=1 ttl=255 time=240 ms
      Reply from 10.2.2.2: bytes=56 Sequence=2 ttl=255 time=5 ms
      Reply from 10.2.2.2: bytes=56 Sequence=3 ttl=255 time=5 ms
      Reply from 10.2.2.2: bytes=56 Sequence=4 ttl=255 time=14 ms
      Reply from 10.2.2.2: bytes=56 Sequence=5 ttl=255 time=5 ms
      --- 10.2.2.2 ping statistics ---
      5 packet(s) transmitted
      5 packet(s) received
      0.00% packet loss
      round-trip min/avg/max = 5/53/240 ms
  2. 分别在Switch1、Switch2上配置业务接入点

    • 配置Switch1。

      1
      2
      3
      4
      5
      6
      7
      8
      9
      [Switch1] bridge-domain 10
      [Switch1-bd10] quit
      [Switch1] interface gigabitethernet 0/0/2
      [Switch1-GigabitEthernet0/0/2] port link-type trunk
      [Switch1-GigabitEthernet0/0/2] quit
      [Switch1] interface gigabitethernet 0/0/2.1 mode l2
      [Switch1-GigabitEthernet0/0/2.1] encapsulation dot1q vid 10
      [Switch1-GigabitEthernet0/0/2.1] bridge-domain 10
      [Switch1-GigabitEthernet0/0/2.1] quit
    • 配置Switch2。

      1
      2
      3
      4
      5
      6
      7
      8
      9
      [Switch2] bridge-domain 20
      [Switch2-bd20] quit
      [Switch2] interface gigabitethernet 0/0/2
      [Switch2-GigabitEthernet0/0/2] port link-type trunk
      [Switch2-GigabitEthernet0/0/2] quit
      [Switch2] interface gigabitethernet 0/0/2.1 mode l2
      [Switch2-GigabitEthernet0/0/2.1] encapsulation dot1q vid 20
      [Switch2-GigabitEthernet0/0/2.1] bridge-domain 20
      [Switch2-GigabitEthernet0/0/2.1] quit
  3. 分别在Switch1、Switch2、Switch3上配置VXLAN隧道

    • 配置Switch1。

      1
      2
      3
      4
      5
      6
      7
      [Switch1] bridge-domain 10
      [Switch1-bd10] vxlan vni 2010
      [Switch1-bd10] quit
      [Switch1] interface nve 1
      [Switch1-Nve1] source 10.1.1.2
      [Switch1-Nve1] vni 2010 head-end peer-list 10.3.3.2
      [Switch1-Nve1] quit
    • 配置Switch2。

      1
      2
      3
      4
      5
      6
      7
      [Switch2] bridge-domain 20
      [Switch2-bd20] vxlan vni 2020
      [Switch2-bd20] quit
      [Switch2] interface nve 1
      [Switch2-Nve1] source 10.2.2.2
      [Switch2-Nve1] vni 2020 head-end peer-list 10.3.3.2
      [Switch2-Nve1] quit
    • 配置Switch3。

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      [Switch3] bridge-domain 10
      [Switch3-bd10] vxlan vni 2010
      [Switch3-bd10] quit
      [Switch3] interface nve 1
      [Switch3-Nve1] source 10.3.3.2
      [Switch3-Nve1] vni 2010 head-end peer-list 10.1.1.2
      [Switch3-Nve1] quit
      [Switch3] bridge-domain 20
      [Switch3-bd20] vxlan vni 2020
      [Switch3-bd20] quit
      [Switch3] interface nve 1
      [Switch3-Nve1] source 10.3.3.2
      [Switch3-Nve1] vni 2020 head-end peer-list 10.2.2.2
      [Switch3-Nve1] quit
  4. 在Switch3上配置VXLAN三层网关

    1
    2
    3
    4
    5
    6
    [Switch3] interface vbdif 10
    [Switch3-Vbdif10] ip address 192.168.10.10 24
    [Switch3-Vbdif10] quit
    [Switch3] interface vbdif 20
    [Switch3-Vbdif20] ip address 192.168.20.10 24
    [Switch3-Vbdif20] quit
  5. 验证配置结果

配置文件

8 参考协议和标准

本特性的参考资料清单如下:

文档 描述 协议顺从性
RFC 7348 Virtual eXtensible Local Area Network (VXLAN): A Framework for Overlaying Virtualized Layer 2 Networks over Layer 3 Networks 部分顺从:
当前只支持通过头端复制方式完成BUM报文的广播,不支持组播复制方式。

9 附录

9.1 服务器虚拟化

服务器虚拟化是将一台物理服务器虚拟成多台逻辑服务器,即VM(Virtual Machine)。如下图所示,一台物理服务器虚拟为多台逻辑服务器VM。

服务器虚拟化的优点:

9.2 大二层网络

为了实现业务的灵活变更,虚拟机动态迁移已经成为了一个常态性的业务。虚拟机动态迁移是指在保证虚拟机正常运行的同时,将虚拟机从一个物理服务器移动到另一个物理服务器的过程,该过程对于最终用户来说是无感知的,使得管理员在不影响用户正常使用的情况下灵活调配服务器资源或者对物理服务器进行维修和升级。虚拟机动态迁移的关键是要保证在迁移时,虚拟机上的业务不会中断,这就要求虚拟机的IP地址、MAC地址等参数保持不变,所以虚拟机的迁移只能在同一个二层域内进行,而不能跨二层域迁移,如下图所示。

传统数据中心网络架构中二层网络部分为了提高可靠性,采用冗余设备和冗余链路,在虚拟机迁移过程中会不可避免地产生物理环路。

为了避免物理环路过程中产生的广播风暴,需要采用STP等破环协议进行破环,阻塞冗余链路。由于STP性能的限制,采用STP协议进行破环的二层网络通常不超过50个网络节点,导致虚拟机动态迁移只能在一个较小的局部范围内进行,应用受到极大限制。

为了实现虚拟机的大范围甚至跨地域的动态迁移,就要求将虚拟机动态迁移可能涉及的服务器都纳入同一个二层网络,形成一个更大范围的二层网络,这样才能实现虚拟机的大范围无障碍的迁移,这种二层网络称为大二层网络。

常见的实现大二层网络技术有:

然而,通过网络设备虚拟化技术、TRILL、EVN技术构建物理上的大二层网络,可以将虚拟机迁移的范围扩大。但是,构建物理上的大二层,难免需要对原来的网络做较大的改动,并且大二层网络的范围依然会受到种种条件的限制,然而VXLAN技术能够很好地解决上述问题。

如下图所示,在大二层网络中虚拟机动态迁移可以实现大范围无障碍的迁移。

公子青注:

至此本文断断续续写了半个月(其实是抄啦)终于结束,完了。感谢阁下拖拽到文末。 虽然本文内容是转载,但是基本手工迁移,并尽量保持原格式。