随着网络技术的发展,云计算凭借其系统利用率高、人力/管理成本低以及灵活性/扩展性方面展现的优势,已经成为目前各大行业IT建设的新趋势。而服务器的虚拟化作为云计算的核心技术之一,也得到了越来越多的应用,从而极大的增加了数据中心的计算密度;同时,为了实现业务的灵活变更部署,虚拟机在二层网络中的无限制迁移需求越来越迫切。而传统的经典二、三层网络已无法完全满足这些需求。
比如传统的VLAN(虚拟局域网)技术由于最多只能支持4096个VLAN,已经不能满足云提供商的严格要求,但是VXLAN(虚拟可扩展局域网)技术因为可以通过将第2层扩展到第3层网络来构建大型多租户数据中心而备受青睐,这种技术可以有效克服VLAN带来的扩展局限性。
一、什么是VLAN?
1. VLAN 概念:
Virtual Local Area Network意为虚拟局域网,是在交换机实现过程中涉及到的概念,由802.1Q标准所定义。由于交换机是工作在链路层的网络设备,连接在同一台交换机的终端处于同一个三层网中,同时也处于同一个广播域。当交换机接入较多的终端时,任意一台终端发送广播报文时(例如:ARP请求),报文都会传遍整个网络。
2. VLAN优点:
对于规模较大的组网场景,广播报文的泛滥对于网络通信将会造成较大的影响。VLAN技术为这一问题提供了解决方案,VLAN将同一网络划分为多个逻辑上的虚拟子网,并规定当收到广播报文时,仅仅在其所在VLAN中进行广播从而防止广播报文泛滥。VLAN技术在链路层的层次中实现了广播域的隔离,一张图看懂VLAN作用:
虽然有这些优点,然而它的弊端也很明显:
基于以上需求,VXLAN技术被提出。
二、什么是VXLAN
1. VXLAN概念:
Virtualextensible Local Area Network,虚拟扩展局域网。IETF定义NVO3标准技术之一,采用MAC-in-UDP报文封装模式,通过将二层报文使用三层协议封装实现二层网络在三层范围内扩展,满足数据中心大二层虚拟机迁移和多租户需求;VXLAN技术可以基于三层网络结构来构建二层虚拟网络,通过VLAN技术可以将处于不同网段网络设备整合在同一个逻辑链路层网络中,对于终端用户而言,这些网络设备似乎“真实地”部署在了同一个链路层网络中。
也就是说,它可以通过将第2层扩展到第3层网络来构建大型的多租户数据中心,同时将虚拟网络与物理基础设施分离,并实现无与伦比的网络可靠性和可扩展性。因此,您可以使用VXLAN技术创建多达1600万个网络。
2. VXLAN术语介绍:
3. VXLAN技术的优势和局限性
相比VLAN技术,VXLAN技术具有以下的优势:
为了保证VXLAN机制通信过程的正确性,rfc7348标准中规定,涉及到VXLAN通信的IP报文一律不允许分片,这就要求物理网络的链路层实现中必须提供足够大的MTU值,保证VXLAN报文的顺利传输,这一点可以理解为当前VXLAN技术的局限性。
4. VXLAN的应用场景:
VXLAN在云数据中心之间虚拟机迁移中的应用,如某个企业在不同的数据中心有不同业务应用的虚拟机,数据中心之间虚拟机迁移是经常会遇到的,为了保证虚拟机迁移过程中业务不中断,则需要保证迁移虚拟机的IP地址、MAC地址等参数保持不变,这就要求虚拟机迁移前后属于统一个二层网络。如果使用传统方法解决此问题,可能需要购买新的物理设备以分离流量,并可能导致诸如VLAN散乱、网络成环以及系统和管理开销等问题。
为了成功实现虚拟机在业务不中断情况下的迁移,可通过VXLAN技术实现。VXLAN是MAC in UDP的网络虚拟化技术,只要物理网络支持IP转发,所有IP路由可达的终端用户即可建立一个大范围二层网络;在虚拟机上联的交换机上配置VXLAN相关信息,虚拟机上联交换机之间建立VXLAN隧道和VXLAN网关,通过VXLAN隧道和VXLAN网关,可实现在不同数据中心之间虚拟机成功迁移,并且可保证虚拟机迁移过程中网络无感知、业务不中断。
VXLAN在SDN环境下的应用,SDN环境下,可以通过SDN控制器来实现VXLAN的IP和VID之间相关信息的对应关系,SDN控制器可以作为ARP代答设备,这样大大提高了VXLAN的灵活性与扩展性。所以VXLAN技术在SDN环境中可以被广泛应用。
本文由 Funstec非凡实验室 作者:Albert 发表,转载请注明来源!