什么是VXLAN?

VXLAN是“虚拟可扩展局域网”(Virtual eXtensible Local Area Network)的缩写,是一种将以太网帧封装在IP数据包中的隧道协议。使用VXLAN,可以在第3层(L3)网络之上构建逻辑第2层(L2)网段。

自20世纪90年代中期以来,VLAN(虚拟局域网)已广泛用于在物理交换机上创建逻辑(虚拟)L2网段。然而,标准VLAN实现使用12位VLAN ID,因此L2网段数量上限约为4,000个,不适用于大规模网络。VXLAN解决了这一限制。

在VXLAN中,VXLAN ID扩展至24位,最多可创建约1,600万个L2网段。此外,VXLAN支持在L3网络上构建逻辑L2网段,从而可在通过路由器连接的多个站点之间构建无缝衔接的L2网段。

这些功能可带来显著优势,例如将虚拟机实时迁移到不同的物理服务器时。在传统架构中,跨L2域迁移会导致无法保持一致的IP子网,因此必须为迁移后的虚拟机分配不同的IP地址,客户端也必须更改目标IP地址。借助VXLAN,单个L2网段可以跨越路由器,从而避免这些问题并简化实时迁移。此外,VXLAN能够跨多个位置透明地创建逻辑网络,因此也适用于灾难恢复和容错场景。

利用VXLAN等隧道协议在现有基础设施之上构建逻辑网络,称为网络叠加。NVGRE是另一种与VXLAN类似的网络叠加技术。通过网络叠加实现网络虚拟化,是构建软件定义网络(SDN)的关键组成部分;SDN支持通过软件配置网络。