本周二,在伦敦举办的 ACM SIGCOMM 2015 大会上,Google 在一份文件中概述了其长达十年之久的一段架构建设“旅程”——构建软件定义网络(SDN)。Google 展示了他们是如何从在2004年还在使用供应商的交换机,转变到一年后开发自己的硬件,再到在其数据中心的服务器中传输数据。
过去10年,Google的网络架构是如何进化的?
在2005年,大多数公司还没有考虑要开发自己的数据交换机,但 Google 有这方面的带宽需求,因为当时其需求大概每12至15个月就翻一番。面对市售设备的高昂成本和操作的复杂性,Google 决定尝试使用一种自定制的方法。这一努力的灵感来自于它在将商用服务器用于高性能计算方面的成功。
Google 的这一举动引发了新一轮创新浪潮,即软件定义网络(SDN),SDN 诞生的目的是替代传统的网络硬件,如交换机。许多人都认为 SDN 让联网不再昂贵,因为它不需要过多的手动管理交换机,变化可以远程通过软件来进行。
在过去的十年里,Google 已经开发了五代网络,与此同时也面临了一些挫折。例如,其第一代网络 Firehose 1.0 就从来没有投入过生产。Google 试图将交换结构直接集成到服务器中,但它并没有如想象的那样很好地工作,并因为服务器故障导致网络中断。
五代数据中心网络的蓝图
在这五代网络设备中,一些核心原则仍然是没有改变的。他们的特点是,采用专为网络硬件而设计的现成的芯片组件,这些组件都可以从博通这样的公司购买,并且全部采用了先进的中央控制软件用于管理复杂的网络。Jupiter,也就是其网络的当前版本,其能力相比 Firehose 1.0 有了100倍的提升。
Google 表示,共享其网络信息的主要原因是,它正在开放所建设的基础设施,并为其他人提供 Google Cloud 云平台服务。拥有巨大的分布式计算基础设施,需要世界级的网络把服务器连接在一起。Google 官方也表示,它希望其他公司可以将工作交给 Google 所建设设施来协助运行(如大数据分析工作),因为它具有可靠的速度和性能。
此前,Google 从没分享过如此多的细节,因为它认为这是它的一大优势。如今,由于 Google 所运行的网络规模之大,以至于很少有其他公司会这么做,Google 试图与学术界分享一些网络架设上所面临过的挑战,希望得到学术界的帮助。Google在可用性、配置、基础设施的管理和总体预测性方面,都遇到了一些大的挑战。
根据 Google 博客在周二所公布的信息,他们的数据中心网络是全球最大的。凭借其现有的 Jupiter 网络,Google 数据中心中10万台服务器的每一个,都可以用任意模式以每秒10千兆比特的速度互相通信。
虽然思科公司仍然是全球主要的网络供应商,但如今有许多公司都已经开始尝试使用商用硬件和其他的替代品,以取代数据中心中的传统交换机。因此不免有人对思科的业务产生担忧。
不过思科表示,SDN 的威胁无疑被夸大了。他们的网络业务仍然表现良好,而且在数据中心上,即 SDN 已经被广泛认可的领域,思科自己的 SDN 解决方案 Application Centric Infrastructure 较去年同期获得了惊人的200%增长。
而且根据 IDC 的研究数据显示,思科仍是网络硬件最大的制造商,而且在2015年第一季度期间,在10千兆以太网交换机市场中,它市场占有率超过61.1%。