云计算意味着可以更便捷的使用计算、网络、存储资源,每一个元素都可根据用户业务灵活组合配置,其中网络环境直接关系到云中的信息流通,如何构建控制、可靠、效率俱佳的网络环境,是云计算在IaaS层面必须面对的挑战,而虚拟交换机作为IaaS体系中连接虚拟网络、物理网络的桥梁的地位已经无可撼动。
SDN是数通行业大约每十年一次变革的***版本,不同于以往的ISO与TCP/IP之争,也不同于ATM与IP之争,SDN从一开始就不打算作现有网络的颠覆者,而是在现有网络基础上,提供***的面向应用的控制方式,虚拟交换机在这轮变革中充当了急先锋,作为***个Openflow交换机,Openvswitch已经广为业界所熟悉并采用。
同时在两波浪潮中扮演重要角色,虚拟交换机地位不言而喻,他将可控的网络边缘延伸到服务器中,除了在服务器内高效地转发,还可将统一的控制策略和安全策略无缝地从物理网络过度到虚拟网络。
一、虚拟交换机的问题和对策
虚拟化服务器中,如何将虚拟机的流量以更优的方式接入到物理网络中经历了一系列技术变动,包括VNTag(802.1Qbh)、VEPA(802.1Qbg),做法不一而同,但到目前为止,使用虚拟交换机作为支撑服务器网络的基石已经基本成为共识,因为更方便部署、对物理网络要求更低、扩展和控制更简便。
图1 虚拟交换机运行环境
如图1所示虚拟交换机运行在虚拟服务器Hypervisor内部,VM之间的流量、VM到物理网络之间的流量均通过vSwitch转发,vSwitch 的转发行为完全由SDN Controller控制。
基于虚拟交换机的主机Overlay方案更易于虚拟网络的管理,进一步减少了对Overlay物理承载网络的额外要求,使虚拟网络***限度摆脱了物理网络的限制,可以说主机Overlay是对虚拟交换机地位的强化。
为了交付高品质的虚拟交换机产品,需要在性能、开放性、安全性、多平台、适应性方面下一番功夫。
怎样才算是开放的虚拟交换机?提供开放的API控制接口,控制器与虚拟交换机之间的会话基于开放的标准,承载网络的封装基于开放的协议,比如Openstack网络组件兼容的REST API,Openflow控制协议,VxLAN/VLAN封装,这些关键技术都是开放的标志,但还不仅于此,能够在开放技术基础上进一步发展、交付丰富的特性,并与开源云平台系统、第三方云平台系统和第三方SDN网络深度融合,而又不失上述开放性,也许才是更有价值的开放,这样的虚拟交换机带给客户的将不仅是透明的技术方案,还有抓住未来发展趋势的可能。
如何提高虚拟交换机的转发性能?从石头中挤水是从实现级别进行优化的形象比喻。 对网络和SDN内涵的深入理解,可以帮助我们从局部优化的深井中爬出,看到DVR技术、DFW技术如何促成虚拟机间的流量如何避开绕行网关,高效、安全的转发。
图2 DVR原理示意
如图2所示红色VM属于同租户的不同虚机,并且分属不同网段,按照某些系统的设计,跨主机的VM通信必须经过L3 Gateway做集中的三层转发,DVR(Distribute Vritual Routing,分布式虚拟路由)技术是指在控制器控制下,这些VM之间的流量无需绕行L3 Gataway,直接在服务器内部或通过二层交换机即可实现跨三层转发,较绕行L3 Gateway性能提高,同租户内虚机从逻辑上好像拥有了一台逻辑上存在的路由器,也就是DVR所代表的含义。
系统级的性能提升技术也是从根本上解决问题的手段之一,比如基于服务器主流的硬件X86平台的性能提升技术Intel DPDK(Data Plane Development Kit),甚至连基于DPDK的实验性质的OVDK(Openvswitch的DPDK版本)项目也备受关注,业界的期待程度可见一斑,各厂商都在积极研究,并以可靠可用的方式逐步落地为工业级数通产品。
DPDK的技术思路有别于传统的数据平面,他试图抛弃已有系统的负担,通过无锁化、去掉中断干扰、高效使用内存、充分利用多核CPU并行等手段创造一个全新的数据平面运行环境,在这个全新的环境中,超高效的转发成为可能,已知的业界数据表明可以在Intel CPU和网卡上得到十Gbps、甚至百Gbps的吞吐量性能,虽然DPDK在某些场景还存在一定限制,但是必将成为未来提高基于软件转发的虚拟交换机性能的方向之一。
安全性方面,支持主流的VLAN、VxLAN网络虚拟化技术,实现对租户内、租户间网络的底层隔离,同时支持多种安全策略,基于ACL的***滤防火墙和分布式状态防火墙,这些技术将服务器网络的安全控制粒度和处理性能提升高到了新的高度,核心技术思路是控制和处理贴近流量来源,将安全的管理和处理真正延伸的到服务器。
图3 vSwitch内嵌防火墙
当VM2向VM1发起访问时,控制器根据访问策略感知访问是否受限,若策略允许转发,则在两个服务器上同时下发正向和反向流表,确保双向流量畅通。
相对于将所有VM间流量引入集中式的防火墙统一处理,分布式防火墙在安全策略处理位置上都更加贴近流量的源头或目标,所以他的优势不仅在于利用分布式的vSwitch提高整体转发性能,规避集中式防火墙可能成为性能瓶颈和可能的单点故障,更在于***时间将非法流量从网络中清除,不让它影响网络的,这也是未来vSwitch的业务能力在多个维度增强的现实依据,值得包括用户和厂商在内的生态系统各方展开想象,充分研究和利用。
如果说DFW解决了虚拟网络侧的安全性能和***时间安全处理问题,那么vSwitch结合丰富的服务链(Service Chain),则是为整个云网络提供了***的安全、业务综合能力:
图4 vSwitch与服务链综合组网
通过对vLB、vFW等类型服务节点的编排和组合,可以在流量的转发路径中根据控制其的统一策略完成一些列预定的安全、业务处理,达到整体网络安全性的目标,流量的方向包括虚拟机之间、虚拟机到外部网络,而虚拟交换机作为虚拟机流量的接入设备,需要首先对报文进行标识,这样,所经过服务链节点才得以了解所需处理的业务。
多虚拟化平台方面,目前可商用的虽然种类繁多,但是主流不外乎VMware vSphere、H3C VCK(CAS)、KVM和XEN等一系列基于Linux的Hypervisor,每种虚拟化平台均可看到成熟的虚拟交换机产品,比如VMware vSphere平台上既可以运行VMware自有的NSX,也可以运行Cisco的F1000V,而KVM、XEN上则是开源的Openvswitch,控制和运行机制也有所不同,在一些需要互操作、兼容性的场合,往往让用户的管理方式、运维方式难以统一,造成一定的困扰,如何将适用于多种虚拟化平台的虚拟交换机统一管理也是未来云环境中网络发展的重要课题。
适应性方面,可以把虚拟交换机的运行环境按照控制方式的“轻”、“重”分为两种,一种是在高度智能、可靠的SDN控制器控制下的“重”控制网络;一种是在云计算系统中或第三方云系统中,仅通过VSM(Virtual Supervisor Module)响应少量的关键事件即可完成对虚拟交换机的信息下发的“轻”控制网络。“重”控制方式下,虚拟交换机侧重于对控制器的响应,“轻”控制方式下,则侧重于自身的功能和灵活性,和与第三方系统的融合程度,表面上看更“轻”了,其实要求更“重”了,这种适应性往往也是衡量虚拟交换机是否具有弹性和扩展性的重要标志。