解密谷歌 络帝国背后的故事

6月18日消息, 三年半之前,一个包裹被快递到了爱荷华州一个农业小镇的某办公楼里,一段关于谷歌的神奇故事就此拉开了帷幕。

包裹里面是几个奇怪的计算设备,它们非常的宽大扁平,就像装披萨的盒子。盒子的一边是密集的开口,显然是用来接入大量 线用的,另一边贴着一个“海王星交换机”(Pluto Switch)的标签。它们的外形与常规的 络设备大相径庭,而且盒子的背面还印着许多芬兰语的字符。这个公司的工作人员显然并不知道这些盒子的具体用途,于是有人把这些盒子转寄到了他们威斯康辛的总部,希望那里的IT专家们可以解答这些盒子的秘密。总部的IT工作人员一开始同样一头雾水,但是不久之后他们在一个非常小众的 络论坛上得到了一些答复:这些盒子是 络交换机,它们工作在因特 纷繁复杂丰富多彩的表面之下,负责在数据中心之间大量的传输和转移数据,并且,它们的主人是谷歌。

谷歌的确在爱荷华州的那个小镇附近设有数据中心,所以显然是邮递员粗心把这个设备寄到了错误的地址。这个公司的工作人员把这些盒子两两装好之后寄给了谷歌,并且迅速的从那个论坛上销声匿迹,但是他们在论坛上曾经发过的照片和技术讨论还是为人们打开了一扇窥探谷歌帝国内部的神秘 络世界的窗户。它指向了一个也许会改变整个互联 世界的神秘项目,而谷歌却从未在公开的场合谈论过它。

图为谷歌代 为”海王星“(Pluto)的高性能架顶式交换机

多年以来,谷歌在搭建自己的服务器 络时并没有使用传统 络设备商的设备,他们并没有大规模的购买思科,惠普或者爱立信的交换机和路由器。为了适应谷歌急速扩张的服务器 络,他们专门设计了自己的 络设备并且为他们编写了自己的软件用于配置和管理自己的 络。而直到这次阴差阳错的邮递员事件,外界才第一次看到这些设备的真容。由于这个项目对于谷歌的重大意义,在对外界保密的同时谷歌一直在持续增加对这个项目的投入。直到今天早上,在硅谷的一个技术会议中,来自谷歌的Amin Vahdat才第一次作为这个项目的负责人展示了支撑谷歌 络帝国长达10年的前5代的硬件软件解决方案,并且对这个领域的一些基础技术进行了介绍和探讨。这些探讨对于整个互联 世界都具有一定的前瞻性,毕竟未来会有更多的互联 公司将要走上谷歌已经走过的路。

图为Amin Vahdat, 谷歌“消防水管”(Firehose)项目的负责人

Amin Vahdat最早是UCSD的教授,他的研究领域就是 络的拓展,当意识到在学术圈的世界里已经无法构建规模足够大的 络之后,他来到了谷歌。据Vahdat介绍,谷歌这个秘密项目名字叫做“消防水管”(Firehose),始于2004年。到2005,2006年的时候,这个项目的产品已经部署在谷歌若干个数据中心日夜运行。除了快递员投错的那些类似于“高性能架顶式”(Top-of-Rack)交换机的产品,他们还开发了另外一种用于连接大规模 络之间相互连接的“集群交换机”(Cluster swtiches)。不仅如此,谷歌甚至还设计开发了自己专属的路由协议和 络管理软件。对此Vahdat的解释是:“那时的设备完全不能应付我们的 络所需要处理的带宽和数据吞吐量,那样的设备在这个星球上根本就不存在。”

谈到消防水管这个项目最初的动机,Vahdat表示主要有两个方面,一方面在于谷歌的服务器 络扩张太快,传统 络设备商的产品已经无法满足他们在各个不停扩张的数据中心之间快速交换数据的需求;另一方面谷歌也需要为这个长期持续的挑战找到一个低成本的解决方案,运用传统的手段搭建谷歌所需要的规模的数据中心和 络,成本将是真正意义的天文数字。而这个低成本的解决方案就是大量购买价格低廉的民用级的芯片,并且让他们协同工作完成交换处理海量数据的任务,听起来很像当下被炒得火热的云计算的概念雏形。

十几年之前当谷歌刚刚开始搭建自己的服务器 络时,他们的选择跟其他所有公司如出一辙。他们尝试从思科购买最大最强的集群交换机(Cluster swtiches),在每个数据中心的内部,这些集群交换机构成了 络的骨架。每一部这样的集群交换机都要花费谷歌几十万到几百万美元,而每一部这样的交换机上只有固定数量的 络接口可以连接到其他的交换机,这意味着搭建一个可以满足谷歌需要的数据 络将会耗费无尽的美元。“那时候我们的采购只会跟他们说,嘿哥们,把你们现有最牛的交换机给我们,只要最牛的。”

于是从2004年开始谷歌内部成立了一个小组开始研究自己的 络设备解决方案。这个方案简而言之就是用普通的民用级芯片搭建通用的硬件,然后在上面跑任何需要运行的软件。思科为不同级别的需求提供不同的硬件,并每套硬件上面都运行特定的相匹配的软件。而谷歌的解决方案则简单粗暴的多,所有的硬件都是相同的,面对不同的需求时解决方案的差别仅在于一起协作的硬件的数量,一个“高性能架顶式”交换机就相当于一个“集群交换机”上的一块板,性能的提升几乎等同于数量的叠加,而这些相同的硬件都可以运行任何需要运行的软件。根据Vahdat的介绍,现在谷歌“朱庇特”(Jupiter)系列集群交换机的处理能力已经达到了每秒40Tb,等同于4000万个家庭用户接入的带宽和吞吐量。

图为谷歌的”朱庇特“(Jupiter)系列集群交换机,每秒可以处理40Tb的数据,相当于4000万家庭用户接入的吞吐量。

谷歌的服务器 络很可能是世界上最大的一个。一个惊人的事实是,如今谷歌 络内部数据中心之间交换的数据量已经超过了谷歌和整个互联 之间交换的数据量。如今像微软,亚马逊和Facebook也都面临着和谷歌类似的挑战,而他们也各自进行着类似的项目。Facebook从一开始就公开了他们的SDN(software-defined networking)计划,而美国最大的 络服务提供商AT&;T也已经在紧锣密鼓的进行着向这种新的 络技术的迁移。

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2015年5月14日
下一篇 2015年5月15日

相关推荐