面向云的软件定义网络与OpenFlow商业发展

在云计算时代,数据中心将成为我们应用和数据交付关键中心,用户从园区、远程分支点、无线和互联网不同位置访问数据与服务,连接这些服务的网络比以往来得更重要一些。云计算需要可靠的、横向扩展和高性能网络,从用户接入、互联网到数据中心。大规模部署虚拟化与云计算催生了以工作负载为中心的下一代数据中心网络,复杂的网络需要为工作负载提供端对端网络资源响应。如何应对业务快速响应需求是下一代数据中心网络人员不得不面对的挑战。以新观点来解决网络在新应用下的挑战,控制平面与转发平面分离,软件定义网络为人们提供了新思路和新方法。笔者结合实际工作经验,与大量用户交流与反馈,阅读了国内外一些书籍、互联网资料,在本文就近十网络发展、软件定义网络技术、发展趋势和商业应用等方面给出了业务挑战、技术、经济分析和解决方案,希望对读者有所启发。 

云计算网络发展挑战

云计算是实现方便、快速、简单、按需访问可配置计算资源的管理模型 (部分定义来自nist),云计算是企业IT资源管理的高级阶段,随业务变化而变化,而不仅仅是IT技术简单合并与应用。云计算所包含内容非常广泛,分成不同层次,从最接近用户的上层到最下面的物理层,包含有业务接口层、应用平台层、分布式操作系统层、虚拟化层、硬件架构层和数据中心设施层、运营商网络层,同时有支撑不同层次之间管理和平台,技术之外就作为商业模式出现的云服务交付体系和互联互通标准等。而架构即服务云计算是什么呢,很简单,就是根据用户需求,在虚拟化层、硬件层和数据中心设施基础等实现动态资源管理与调配的云计算服务,具备了这些特征计算模式就可以称之为架构即服务云。

云计算高级智能模式将使每个计算节点进化成独立反应单元,计算节点无条件反射处理由本身独立处理完成,而高级条件反射和智能分析则通过云计算高级神经中枢完成。与生物进化过程相比较,云计算进化过程类似于生物从低等到高等进化过程。目前计算资源对业务反应模式还只是处于无脊椎动物十分有限能力阶段,非常不灵活,而随着芯片技术和软件能力进阶,慢慢地计算资源调度模式就会进化到有脊椎动物高级复杂阶段。在进化过程中,计算单元单位体积内的芯片处理能力和密度每一年半翻倍提升,与此同时,起着传输神经信息的网络变得更加复杂,神经网络路径数目与计算细胞单元是几何平方匹配。

用户需求不断变化,导致网络越来越复杂

十年以来,用户数量指数增长,网络数据、流量和管理发展使得用户和网络设备不堪重负。Cisco交换机固件文件大小从原来的300K到现在的几十兆,路由器IOS软件从1998的8兆左右到现在几百兆到几个G都是常见的的事。网络设备操作系统源代码行数也增长到几百万条,越来越多的网络控制协议被加入到网络操作系统中,厂家的研发难度不断加大,用户的学习成本不断增加。尤其是控制平面的功能特性,从基本的OSPF、BGP、多播和查分服务质量保证到多协议标记交换(MPLS)、流量工程Traffic Engineering(又分为基于路由协议的流量工程如OSPF-TE和基于4层应用的流量工程如RSVP-TE)、大规模地址转换(NAT)、智能分析处理防火墙、不同形式2/3层虚拟专用网VPN、IPv6与IPv4互相混搭、移动 IP网络、用户管理认证授权和访问、记录功能等等,无数越来越多的用户要求被加入到网络交换节点里面来,以致领先网络公司都宣称自己是软件公司而不是硬件公司了。每个网络设备变成了恐龙一样的怪物,让人见而生畏。虽然在第一时间解决用户痛点和满足市场要求是我们网络供应商的责任和期望,不够遗憾的是由于网络软件控制特性与硬件集成度高,从初期协议想法到协议标准化大一般需要十年,而从标准化到规模部署又需要三到五年,导致用户需求总是被严重地推迟满足。另一方面,由于网络协议与厂家硬件系统架构高度集成,而传统网络主体架构都是封闭(尽管厂家可能使用通用商业化产品作为收发芯片),所以与之配套的软件开发和验证只能由网络厂家根据商业利益最大化决定推动,用户不得不忍受被锁定的痛苦。而用户被锁定后,基于用户最大利益创新愿望对厂家来讲就没有那么强烈了,形成了需求与研发的负反馈效应。

云计算虚拟化移动性,需要更加灵活敏捷的网络响应

根据IDC统计,到2013年底虚拟机部署数量将是物理机的2.5倍,达到8千2百万台,虚拟机节省了大量的物理购买成本,但在管理复杂度上面造成运营成本增加也非常显著,比如虚拟资源脱离了物理设备相对静态信息,排错难度大大增加。虚拟交换机既要与现有虚拟管理平台兼容,又要应对高度动态变化端设备,维护虚拟逻辑抽象链接,集成与交换硬件设备功能,从移动性、机动性、维护性和集成性分类如下:

跟踪设备移动状态。网络端节点实体(比如虚拟机)的网络状态需要简单确定,不同主机之间可相互迁移节点状态。

响应网络动态变化。虚拟化环境最大特点是网络高度状态变化,跟踪虚拟机加入和离开,虚拟机往前或往后即时移动,逻辑网络环境快速变化,开放式控制平面控制流量和全局网络自动发现管理。

维护虚拟化逻辑标记。分布式虚拟交换机通常通过增加或管理虚拟机网络数据,来维护虚拟网络或逻辑区域上下文,这是容易理解的简单方式,需要正确和高效管理这些虚拟化标记。

集成操作系统和硬件。把虚拟数据转发路径设计成“卸载”模式,数据包处理由硬件芯片完成,以独立软件或硬件芯片方式实现灵活控制,增加虚拟化网络性能。