传统数据中心咨询服务
4602人浏览
客户面临的挑战
虚拟机规模受网络规格限制
在传统二层网络环境下,数据报文是通过查询MAC地址表进行二层转发,而MAC地址表的容量限制了虚拟机的数量。
网络隔离能力限制
当前主流的网络隔离技术是VLAN,由于IEEE 802.1Q中定义的VLAN Tag域只有12比特,仅能表示4096个VLAN,在大规模的虚拟化网络中无法满足大二层网络中标识大量租户或租户群的需求,而且传统二层网络中的VLAN无法满足网络动态调整的需求。
虚拟机迁移范围受网络架构限制
为了保证虚拟机迁移过程中业务不中断,这就要求业务网络是一个二层网络。数据中心区域规模和业务处理需求的增加,对于集群处理的应用越来越多,集群内的服务器需要在一个二层网络下。而且随着数据中心多中心的部署,虚拟机的跨数据中心迁移、灾备,跨数据中心业务负载分担等需求,使得二层网络的扩展不仅是在数据中心的边界为止,还需要考虑跨越数据中心机房的区域,延伸到同城备份中心、远程灾备中心。但是在传统的数据中心网络架构中,通常采用STP协议提高可靠性以及避免产生广播风暴,由于STP的性能限制,二层网络通常不超过50个网络节点,影响了二层网络的规模,这导致了虚拟机动态迁移只能在一个较小的局部范围内进行,应用收到的极大的限制。
技术要点
为了实现虚拟机的大范围甚至跨地域的动态迁移,就要求把虚拟机迁移可能涉及的所有服务器都纳入同一个二层网络域,形成一个更大范围的二层网络,这样才能实现虚拟机的大范围无障碍迁移,这样适合于虚拟机随时随地无障碍迁移的大范围二层网络我们称之为大二层网络。VXLAN 是为了解决云计算时代虚拟化中的一系列问题而产生的一项技术。下面就让我们来看下VXLAN 是如何见招拆招来解决这一系列问题的。
隐形
对于“虚拟机规模受网络设备表项规格的限制”这个问题,可能有人会想:换成规格大一些的接入交换机(比如跟核心或网关同档次的设备)不就行了。确实可以这么做。但是在不提高网络建设成本的前提下,如何能解决问题呢?既然无法提升设备表项规格,那就只能限制设备上的 MAC 表项,将大量 VM 的MAC 地址“隐形”。那么,如何做到隐形呢?这时,就该 VTEP 出场了。VTEP 会将 VM 发出的原始报文封装成一个新的 UDP 报文,并使用物理网络的 IP和 MAC 地址作为外层头,对网络中的其他设备只表现为封装后的参数。也就是说,网络中的其他设备看不到 VM 发送的原始报文。如果服务器作为 VTEP,那从服务器发送到接入设备的报文便是经过封装后的报文,这样,接入设备就不需要学习 VM 的 MAC 地址了,它只需要根据外层封装的报文头负责基本的三层转发就可以了。因此,虚拟机规模就不会受网络设备表项规格的限制了。
扩容
对于“传统网络的隔离能力有限”这个问题, VXLAN 采用了“扩容”的解决方法,引入了类似 VLAN ID 的用户标示,也就是前文提到的 VNI。一个 VNI 代表了一个租户,属于不同 VNI 的虚拟机之间不能直接进行二层通信。 VTEP 在对报文进行VXLAN 封装时,给 VNI 分配了 24 比特的空间,这就意味着 VXLAN 网络理论上支持多达 16M(即: 224-1)的租户隔离。相比 VLAN, VNI 的隔离能力得到了巨大的提升,有效得解决了云计算中海量租户隔离的问题。
前面提到,为了保证业务不中断,VM 的迁移就必须发生在同一个二层域内。现在,再回头看下 VXLAN 网络模型,你是不是惊奇地发现,有了 VTEP 的封装机制和 VXLAN 隧道后,所谓的 “二层域”就可以轻而易举的突破物理上的界限?也就是说,在 IP 网络中, “明”里传输的是跨越三层网络的 UDP 报文, “暗”里却已经悄悄将源 VM 的原始报文送达目的 VM。就好像在三层的网络之上,构建出了一个虚拟的二层网络,而且只要 IP 网络路由可达,这个虚拟的二层网络想做多大就做多大。
客户收益
提升设备性能
除VXLAN网络边缘设备,网络中的其他设备不需要识别虚拟机的MAC地址,减轻了设备的MAC地址学习压力,提升了设备性能。
满足海量用户
通过24比特的VNI可以支持多达16M的VXLAN段的网络隔离,对用户进行隔离和标识不再受到限制,可满足海量租户。
降低管理的难度
通过采用MAC in UDP封装来延伸二层网络,实现了物理网络和虚拟网络解耦,租户可以规划自己的虚拟网络,不需要考虑物理网络IP地址和广播域的限制,大大降低了网络管理的难度。