对于“虚拟机规模受网络设备表项规格的限制”这个问题,可能有人会想:换成规格大一些的接入
交换机(比如跟核心或网关同档次的设备)不就行了。我只能说,如果你是“壕”,确实可以这么
做。但是在不提高网络建设成本的前提下,如何能解决问题呢?
既然无法提升设备表项规格,那就只能限制设备上的 MAC 表项,将大量 VM 的 MAC 地址“隐形”。
那么,如何做到隐形呢?这时,就该 VTEP 出场了。
VTEP 会将 VM 发出的原始报文封装成一个新的 UDP 报文,并使用物理网络的 IP 和 MAC 地址作
为外层头,对网络中的其他设备只表现为封装后的参数。也就是说,网络中的其他设备看不到
VM 发送的原始报文。
如果服务器作为 VTEP,那从服务器发送到接入设备的报文便是经过封装后的报文,这样,接入
设备就不需要学习 VM 的 MAC 地址了,它只需要根据外层封装的报文头负责基本的三层转发就
可以了。因此,虚拟机规模就不会受网络设备表项规格的限制了。
当然,如果网络设备作为 VTEP,它还是需要学习 VM 的 MAC 地址。但是,从对报文进行封装的
角度来说,网络设备的性能还是要比服务器强很多。
l 招式二:扩容
对于“传统网络的隔离能力有限”这个问题,VXLAN 采用了“扩容”的解决方法,引入了类似 VLAN
ID 的用户标示,也就是前文提到的 VNI。一个 VNI 代表了一个租户,属于不同 VNI 的虚拟机之
间不能直接进行二层通信。VTEP 在对报文进行 VXLAN 封装时,给 VNI 分配了 24 比特的空间,
这就意味着 VXLAN 网络理论上支持多达 16M(即:2
24
-1)的租户隔离。相比 VLAN,VNI 的隔
离能力得到了巨大的提升,有效得解决了云计算中海量租户隔离的问题。
l 招式三:暗度陈仓À
前面提到,为了保证业务不中断,VM 的迁移就必须发生在同一个二层域内。现在,再回头看下
VXLAN 网络模型,你是不是惊奇地发现,有了 VTEP 的封装机制和 VXLAN 隧道后,所谓的À“二
层域”就可以轻而易举的突破物理上的界限?也就是说,在 IP 网络中,À“明”里传输的是跨越三层
网络的 UDP 报文,“暗”里却已经悄悄将源 VM 的原始报文送达目的 VM。就好像在三层的网络之
上,构建出了一个虚拟的二层网络,而且只要 IP 网络路由可达,这个虚拟的二层网络想做多大就
做多大。现在,你应该明白为什么说 VXLAN 是一种 NVO3 技术了吧。
2.4 VXLAN 报文长啥样
看过上面的描述,你一定对于封装后的 VXLAN 报文有了自己的想象。下面就让我们来看下,
VXLAN 报文到底长啥样。
评论0
最新资源