VXLAN(Virtual eXtensible LANs)是VMWare和CISCO提出的Overlay技术方案。VXLAN的阵营中还包括了Arista、Broadcom、Citrix和Red Hat等厂商,可谓阵容豪华。当前处于IETF草案阶段。
VXLAN采用Mac in UDP的封装方式,虚拟机发出的数据包在VXLAN接入点(被称为VTEP)加上VXLAN帧头后再被封装在UDP报头中,并使用承载网络的IP/MAC地址作为外层头进行封装,承载网络只需要按照普通的二三层转发流程进行转发即可。
VXLAN在VXLAN帧头中引入了类似VLAN ID的网络标识,称为VXLAN网络标识VNI(VXLAN Network ID),由24比特组成,支持多达16M((2^24-1)/1024^2)的VXLAN段,从而满足了大量的网络标识需求。
VTEP通过(目的MAC地址、目的VNI、目的VTEP的IP地址)映射表来实现报文封装,对于不认识的MAC地址,通过组播方式在网络内进行查询(当然,如果有统一的控制器,就可以单播向控制器进行查询)。
关于VXLAN的详细技术原理,后面会有专题详细介绍,本文不详述。 3.3 番外
VXLAN和NVGRE等技术是服务器虚拟化的IT厂商主推的大二层网络技术方案,这也很好理解,对于VXLAN和NVGRE技术来说,报文的封装/解封装都是在服务器内部的虚拟交换机vSwitch上进行的,外部网络只对封装后的报文进行普通的二层交换和三层转发,所以技术控制权都在IT厂商手里,CT厂商就是一个路人看客了。 当然,目前CT厂商也在积极参与到Overlay方案中来,所以当前的VXLAN和NVGRE技术也可以把Overlay网络的接入点部署在TOR等网络设备上,由网络设备来完成VXLAN和NVGRE的报文封装。
?
一方面对于虚拟化的服务器来说,网络设备的性能还是要比vSwitch强很多的,用TOR等设备来进行封装,性能更好一些。
?
另外一方面,在TOR上部署Overlay接入点,也可以把非虚拟化的服务器统一纳入Overlay网络。
这样CT厂商和IT厂商就可以在大二层这个领域实现了和谐共赢。
(4)跨数据中心的大二层网络怎么实现?
上一篇我们谈了很多大二层网络的技术和流派,但是细心的读者可能已经发现,我们谈这些方案和技术,实际上都是讲的同一个数据中心内的大二层网络技术,未考虑跨数据中心的情况。
跨数据中心情况下,那么如果要实现跨数据中心的VM动态迁移,就要保证不同数据中心的服务器也都在同一个二层域内。也就是说要构建一个覆盖所有数据中心的大二层网络。
在讨论跨数据中心的大二层网络时,我们可以从数据中心内的情况往跨数据中心的情况进行延伸。看看对于釜底抽薪派、移花接木派、瞒天过海派的技术来说,一旦要跨数据中心构建大二层网络时,又会遇到什么?该如何解决?
1 釜底抽薪派的跨数据中心互联方案
釜底抽薪派通过网络设备虚拟化来消除二层网络环路,从而实现大二层网络。比如通过CSS/iStack技术,把接入、汇聚、核心层的交换机都虚拟成单节点设备。
当釜底抽薪派遇到跨数据中心的情况时,有两种方式可以实现跨数据中心的大二层网络: 1.1 跨数据中心堆叠
这种方式就是把网络设备虚拟化的范围扩大到所有数据中心,把不同数据中心里的交换机堆叠成单台交换机,这种方式就把所有数据中心都当成一体来处理。
但是这种方式要求数据中心之间可以实现堆叠线缆和光纤线路的直连,所以数据中心之间距离一般不能太远,通常不超过10km。而且最重要的一点,很多企业是不具备自己铺设长距离光纤或者传输设备的条件的。所以,这种方式局限性非常大,一般很少采用。 1.2 L2 over L3
如果不具备跨数据中心堆叠的条件,那么想通过纯二层的方式实现跨数据中心的互联就不太现实了。而在一般情况下,多数据中心之间是通过三层路由互通的,那么就只能把每个数据中心内的二层网络作为大二层网络的一个局部,再把这些局部网络通过L2 over L3的方式进行互联,进而构建一个全局范围的大二层网络。
相关推荐: