首页»其它»揭秘谷歌网络基础设施十年演变过程

揭秘谷歌网络基础设施十年演变过程

来源:techcrunch.cn 发布时间:2015-08-20 阅读次数:

  谷歌今天 宣布 ,它想要修复用户家中的 Wi-Fi 网络连接问题,但在公司内部,这家搜索巨头很早以前便在解决远比这 复杂 的网络问题了。为了将构成谷歌数据中心的数十万台机器连接起来,你不能仅仅使用路由器和交换机这些最基本的工具,还要管理在服务器之间流动的所有数据。为此,谷歌一直在开发自己的硬件和软件,今天该公司揭开了它们的神秘面纱,让我们得以一窥其网络基础设施的演变过程。

  谷歌当前网络基础设施即所谓的“木星”(Jupiter)网络,容量是第一代网络的 100 倍,能以每秒 1 Petabit 的惊人速度提供总对分带宽(total bisection bandwidth)数据。该公司表示,在这种速度下,10 万台服务器可以在不到十分之一秒的时间内,阅读完美国国会图书馆中所有已经扫描的数据。

  谷歌工程师艾明·瓦达特(Amin Vahdat)今天 写道 :“对于谷歌的服务来说,这种网络性能始终是巨大的益处。工程师们可以从给各种水平的带宽优化代码的繁杂工作中解脱出来。例如,一开始,在如何处理连接于相同的架顶式交换机(top of rack switch)的服务器的数据本地化和部署上,以及单个交换机故障引发的相关损失上,我们就面临着痛苦的抉择。”

image02

  但是,谷歌在 10 年前远未达到这种数据处理能力。之后,谷歌收购了视频网站 YouTube,不久后又推出了 Gmail、谷歌地球和谷歌地图之类的产品,所以该公司的需要也在发生着快速转变。

  以下即是早期服务器网络在 2005 年时的模样:

fh10_board

firehose1-1_chassis

copy-of-fh_cabling-1

  正如谷歌在今天的 文章 中所写,该公司基本上在 2004 年就部署了标准的服务器集群(server cluster),这些 2005 年产的机器也是谷歌在 Firehose 1.1 数据中心架构部署的网络设备的第一个例证。在 2005 年部署的机器的目标是,在 1 万台服务器之间实现 1 Gbps 的对分带宽。为了实现这个目标,谷歌曾试图将交换结构(switching fabric)整合到其自主开发的服务器中,但事实证明“服务器的正常运行时间不及理想状态。”

  有了 Firehose 1.1 数据中心架构以后,谷歌部署了其第一个定制数据中心集群结构(cluster fabric)。谷歌的工程师今天写道:“根据我们从 FH1.0 了解到的情况,我们不使用常规服务器来存放交换芯片。”相反,谷歌开发了定制式构架,并且转移到所谓的 Clos 数据中心网络构架。

  到 2008 年,Firehose 1.1 已演变为 WatchTower,后者转而使用 10G 光纤,而非传统的网线。谷歌面向全球的数据中心推出了这个版本的架构。

  下面即是那些架顶的模样:

wt2

  一年后,WatchTower 又变成了“土星”(Saturn)。WatchTower 的架构可以扩大至 87 Tbps,而“土星”架构则可以在更稠密的架顶下扩大至 207 Tbps。

saturn_chassis

wtbundles

pluto-png

  很显然,“土星”很好地满足了谷歌的需要,因为三年以后该公司才向好于“土星”能力的架构转变。

  谷歌工程师写道:“随着每台服务器的平均带宽要求持续提高,数据中心所有集群的相同带宽也具有了这种需要。随着 40G 标准的硅基结构的问世,我们可以考虑将我们的 Clos 架构扩大至整个数据中心(可归入内集群网络层)。”

  正是这类架构,现在让谷歌可以将一个数据中心看作是一台巨型计算机,用软件来分配整个网络中所有服务器的计算和存储资源。

  诚然,“木星”硬件看上去不同于谷歌在打造定制式网络设备上的最早努力,但从许多方面讲,它还证明谷歌迅速采用了 软件定义网络(Software Defined Networking),从而实现了快速创新能力。

  谷歌今天公布了 四篇论文 ,详细叙述了该公司网络构架的各个方面。由于谷歌往往先于其他公司触及传统硬件和软件构架的极限,所以类似论文常常在谷歌之外的公司引发新一轮创新活动。

  所有的创业公司都想要创建自己的数据中心,但这是不可能的,其他数据中心运营方肯定会详细研究这些论文,也许会随着时间的推移执行类似的解决方案。当然,他们的用户也会从这种转变中受益。

jupiter-superblock3

  翻译:皓岳

  via:How Google’s Networking Infrastructure Has Evolved Over The Last 10 Years

QQ群: WEB开发者官方总群(83010142) 加群密码:关注下方微信公众号,发送消息 mm 获取
提示:更多精彩内容关注微信公众号:全栈开发者中心(admin10000_com)
网友评论(共0条评论) 正在载入评论......
理智评论文明上网,拒绝恶意谩骂 发表评论 / 共0条评论
登录会员中心