探索中国CIO人才现状 | 第四季调研报告
Google案例:利用SDN实现数据中心互联
2013-03-25  作者:企业网 

  近日,谷歌为用户提供多种业务,包括搜索、Google+、Gmail邮箱、YouTube以及地图服务等。为了使得全球范围内的用户能够更快更方便地获取信息,每天大量的数据从一个地区传送到另一个地区。如此一来,广域网流经的应用或服务流量呈现密集型发展态势。


  当我们重新审视基础网络设施的管理、成本和性能时,“规模经济”特别适用于存储、计算部件,然而广域网却不需要。传统的网络解决方案并不会随着网络主干的规模变化而获得任何显著的成本效益。


  不适合的原因有很多,比如非线性的网络设备交互性的复杂度、手动配置复杂、管理成本高昂以及非标准化的API接口配置表。因此,我们需要一个规模经济同样适用的广域网,它具有更高的效率、更高的性能、更好的容错和可管理性。


  我们需要能够方便地管理广域网,就像管理一个矩阵,而不是一个不同铁皮盒子堆积在一起的杂乱无章的网络。


  谷歌SDN理念


  谷歌的广域网由两张骨干网平面组成:外网,用于承载用户流量,被称为I-scale网络;内网,用于承载数据中心之间的流量,被成为G-scale网络。这两张网络的需求差别性很大,流量特性也存在着很大的差别。


  根据G-scale网络的需求和流量特性,并为了解决广域网在规模经济下遇到的问题,我们试图利用目前备受关注的Openflow协议,通过SDN解决方案来实现我们的目标。


  开始这个项目时,我们发现没有合适的Openflow网络设备能够满足我们的需求,所以谷歌决定自己开发网络交换机,当然里面采用了成熟的商用芯片。我们还基于OpenFlow开发了开放的路由协议栈。


  每个站点部署了多台交换机设备,保证可扩展性(高达T比特的带宽)和高容错率。站点之间通过Openflow交换机实现通信,并通过OpenFlow控制器实现网络调度。多个控制器的存在就是为了确保不会发生单点故障。


  在这个广域网矩阵中,我们建立了一个集中的流量工程模型。这个模型从底层网络收集实时的网络利用率和拓扑数据,以及应用实际消耗的带宽。有了这些数据,谷歌计算出最佳的流量路径,然后利用Openflow协议写入程序中。如果出现需求改变或者意外的网络事件时,模型会重新计算路由路径,并写入程序中。


  如今我们已经在G-scale网络中大规模的部署了SDN解决方案,支持了G-scale网络的高效运营。谷歌高级副总裁UrsHolzle表示,SDN能够有效地降低网络的复杂性和管理成本。虽然目前预言SDN的成功还为时过早,但是谷歌的实际经历却证明SDN以及Openflow已经做好了规模商用的准备。


  谷歌的数据中心广域网以SDN和OpenFlow为基础架构。SDN和OpenFlow提升了网络的可管理、可编程、网络利用率以及成本效益。2010年1月,Google开始采用SDN和OpenFlow,2012年初,Google全部数据中心骨干连接已经都采用这种架构。网络利用率提升到95%,这一数字让人难以置信。(本文原载于ONF官网。)


  PC的软硬分离造就了微软的崛起,缔造了WinTel帝国。毫不夸张地说,OpenFlow的影响不亚于PC的软硬分离。但不同的是;当年IBM并不重视PC,才给了微软崛起的机会。而今天思科却明显感觉到了OpenFlow带来的挑战,甚至,思科比任何竞争对手都要积极。对于新出现的厂家来说,这也许是能争得一席之地最后的机会。


  Google总结SDN优点


  提供网络结构的统一视图:对整个网络架构实现统一的查看,从而简化配置、管理和优化。


  高利用率:集中化的流量工程使得我们能够有效地调整端到端的流量路径,从而达到网络资源的高效利用。


  快速故障修复:链路、节点故障都能实现快速修复。而且系统能够快速的聚合网络资源,实现平均分配,并且对于一些网络行为可进行预测。


  平滑升级:控制平面和转发/数据平面的分离可以做到软件平滑升级的同时保证没有数据丢包或者性能衰减。


  弹性计算:大规模的计算、路径分析都被集成在子控制器中,由最新代的服务器完成


  Google分析SDN挑战


  协议不成熟:Openlow协议还处于发展初期。不过,正如我们的研发成果呈现的,现有的Openflow协议已经足够支撑很多网络应用的开发了。


  高容错的控制器:为了提高容错率,必须在网络中部署多个控制器。从而就要区分主次控制器,以便于高效配合。