VXLAN控制层面与数据层面的优化
2019-12-24曾宪力梁永堂
◆曾宪力 梁永堂
VXLAN控制层面与数据层面的优化
◆曾宪力 梁永堂
(广东睿江云计算股份有限公司 广东 528000)
随着互联网的发展,SDN概念&思维部署网络开始逐步进驻行业,先进的互联网企业逐步往传统的运营商落地。SDN的好处在于更加智能,更加灵活调度资源负载。SDN和VXLAN没有太大的关系,但是从行业的发展来看,VXLAN是新兴的2层overlayer技术,SDN可以在这么灵活的架构下使用,更加方便,通过开源的架构可以不依赖传统的设备厂家,让行业发展更加健康。本文从SDN兴起去思考VXLAN的应用优化。
VXLAN;由来;用途;分层;优化思考
1 VXLAN的由来
随着云计算(公有云、私有云、混合云等)的发展,企业的计算资源按需按时地提供服务,但客户的需求组网复杂,同时涉及安全性等问题。传统的VLAN隔离也只是4096个VLAN号,限制了租户的发展;同时,复用VLAN号给不同的租户带来安全的隐患。
为解决云计算带来海量的用户群体,然后出现了VXLAN的机遇,当然不是只有VXLAN一种方法才能完成海量的隔离,但是其合理性却得到众多互联网企业与传统企业的支持;还实现了横跨网络路由设备,跨地域的overlayer大2层网络。
VXLAN(Virtual Extensible LAN),是一种网络虚拟化技术,也是基于IP网络且采用“MAC in UDP”封装形式的二层VPN技术。
VXLAN可以为网络提供以下作用:
突破VLAN号的数量限制,以满足大规模云计算数据中心的需求。当前,由于虚拟化技术的发展,数据中心里的服务器都模拟成虚拟机(VM),而且VM一般都会需要分割成不同的组以实现二层隔离,大多是透过VLAN技术实现。但是,VLAN技术的缺陷是VLAN Header预留的长度只有12 bit,最多只能支持4096个,无法满足日益增长的需求。当前,VXLAN的报文Header内有24 bit,可以支持2的24次方的VNI个数(VXLAN中透过VNI来识别,相当于VLAN ID)。
2 VXLAN的常见用途
2.1 跨地域的组网
如北京跟广州IDC机房的租户需要自行组网,传统的做法是申请MPLS专线,从成本、时间与销量来说,VXLAN灵活且快速交付。
优势:灵活性,施工周期短,依赖于现网的overlay。
2.2 层网络可以无边延伸
传统的2层网络通过VLAN的透传,延展租户的局域网范围,而且没有风险的时候,众多的VLAN穿透、数据配置错误就会带来致命的影响,可能会采用STP技术来规避环路风险,但是STP是有级联半径的限制,并不能无限延展,但是VXLAN大二层可以实现。
优势:建立VXLAN网络,没有环路概念,因为他是overlay UDP协议建立的通道,人员学习入手成本更低。
3 VXLAN的分层
VXLAN技术的设计优势非常巨大,跟BGP协议一样,分2个层次,两者相互配合,相互独立,但是相辅相成,发挥最大化。
3.1 控制层
该层负责链路的建立,大2层网络的延伸,链路维护。
控制层是底层的建筑架构,负责节点之间的相互链路,建立隧道的基本保证。VXLAN控制层通过配置链路维护配置指令,即可构成VXLAN的基本沟通。
除负责VTEP设备角色之间的链路建立外,控制层还要负责VTEP之间VNI的封装与解封装。VTEP对终端设备的流入数据(需进行远端投递)进行封装;对终端设备的接口流出数据进行解封装,发送数据包是透明的,客户跨网跨地域的大2层局域网,就在不知不觉中建立完成。
3.2 数据层
该层负责租户具体的数据传输,在建立的隧道之上
数据层就是终端客户设备,实际的业务数据在VXLAN隧道中,进行传输投递,对终端客户/设备来说,就是一个2层的局域网,与传统的局域网判断问题基本保持一致,导致客户使用VXLAN隧道非常清晰并且方便上手。由于通过控制层的VNI进行隔离,从而不知不觉地增强对租户局域网。
总之,控制层面与数据层面就像一个生产车间,每一个工序都有它自己的要求与作用,各自独立工作,但又相辅相成地把最终的产品实现完整构成一个缺一不可的整体。
4 VXLAN的优化思考
4.1 从控制层面优化
通常,行业中有3种常见的解决方法:
(1)使用硬件网卡芯片实现判断是否经过远程的投递,判断流入的数据包是否需要送至远端,对数据包进行VNI封装判断。
(2)传统的通信设备提供商为了这份市场份额也纷纷支持开放式的协议,在交换机接口上实现方法1的操作,只是把终端的硬件功能放到交换机端,降低终端投入成本。
(3)通过开放开源的协议技术,像openvswitch可以部署在终端服务器中,进行VXLAN的控制层操作内容,硬件投入成本降低了,但是损耗设备性能,过大的并发业务必然会对客户体验带来一定的影响。对系统管理员、网络管理员、综合解决方案的人员提出对设备监控告警、业务调优提出更高的要求。
以上3种方法都不同程度地提出了VXLAN技术的解决方案,用户根据自身成本效益进行选择,但是我们提出局域网更优秀的解决方案,针对不需要跨网跨地域的用户始终都需要被以上3种方法中进行数据句包的判断,若设备性能较高对响应延时会有影响,我们这里提出VTEP设备与TOR分类的方式:
VTEP设备仍然是负责控制层的工作、隧道链路维护、VNI的封装与解封装,但不需要通过隧道的局域网数据投递直接在TOR交换机进行直接投递,通过VLAN或QinQ技术进行不同租户之间的隔离,让局域网的不需要远程投递的数据包得到最快的响应与转发。
(4)VTEP角色设备冗余优化。
通常,传统的通信设备厂家都是建立网状并且可调度的架构保证VXLAN链路冗余。
从开源与灵活自主的架构考虑,我们可通过多台x86的设备进行VRRP组通过VIP去负责链路建立,一旦出现设备故障VRRP进行自主的切换,保证业务正常;
其次,通过建立环路的VXLAN隧道环网环境,我们通过使用STP协议对VXLAN隧道环网进行闭环与冗余切换,保证业务网出现故障的时候进行无缝切换。
(5)回收长时间不利用的VXLAN隧道。
建立了热备余链路环网,但如果链路长时间不用,也需要数据包进行链路维护或保持心跳检测隧道的存活性,通过判断与心跳检测隧道长时间没有数据暂停隧道建立降低带宽使用,同时一旦有新数据发送优先触发链路建立,隧道链路重新得到建立,然后终端设备重新发送业务数据包。
4.2 数据层面优化
用户数据通常依赖租户的大2层局域网ARP表,进行终端设备之间的数据包投递,与交换机MAC表进行交换机端口的转发投递,完成这个数据包转发过程。
传统的通信厂家,为了VXLAN隧道更加优化,通过优化ARP的维护降低租户的终端设备不断广播的数据包。我们可以通过延长ARP表的老化时间,通过VTEP设备建立租户的局域网关地址,定时主动去收集与广播租户存活设备的arp信息,同时延长MAC地址表的老化时间。
5 结论
本文通过控制层面的链路热备冗余方案与数据层面的存活数据包延长老化寿命增强的方法,进行了VXLAN控制层面与数据层面的优化,实现稳定、可靠的VXLAN隧道与优化业务数据可用性。
[1]袁珍.面向云计算的控制层面与数据层面的柔性分离理论与方法研究[D].东北大学,2014