论文部分内容阅读
互联网带给我们一个虚拟的世界,但它并非看不见摸不着。
现实世界中,互联网由千千万万的光缆、金属和塑料构建,范围遍及全球,就好像一个机器怪兽环抱地球。
它好比管道,在其中总是忙碌地运送着一些“物质”,将你在电脑上随意的一次网址请求、一封电子邮件的发送、一次远渡重洋的MSN聊天从你家里的网线传递到你所希望达到的目的地。
习惯于这些应用的你是否会想到,一旦有一天,互联网管道中的某个部位发生了断裂,在互联网中传输的物质将会有怎样的运行轨迹?事实上,随着技术的成熟,互联网已经做到坚不可摧,它的复杂程度好比人体的血管,总有多条通道运送人体所需要的有用物质,也有诸如静脉、动脉等关键部位。
本期封面报道就为你抽丝剥茧,探秘一下全球互联网的静脉、动脉、心脏等如何形成良好的血液循环。
互联网的中枢——数据中心
喜欢在线办公的朋友都知道,如果我们将文件保存在了网盘上,那么无论在哪里我们都可以通过互联网访问这些文件,网友每一次提取自己的文件都是在访问网盘的数据中心。
互联网的本质是电脑与电脑之间互相通信并交换信息。
在早期,电脑发明之后,单独一台电脑会完成大量的运算,可是发展到后来,人们发现,电脑与电脑之间也要进行信息交换,于是人们开始进行这方面的尝试。
1969年美国军方的阿帕网是目前世上公认的最早的互联网,但与现在庞大的网络相比,那只是个局域网,后来加入这个局域网的机构越来越多。到了1983年,美国国防部索性将阿帕网分为军网和民网,其中的民用网面向市场开放,加入的公司和个人越来越多,连进互联网的设备也日益丰富,渐渐扩大为连接世界你我的互联网(图1)。
互联网发展到今天,技术已经非常成熟,连接全球互联网的物理网络错综复杂,很难理清它们之间的关系。但是,就好比人体的血液循环一样,不管血液循环系统有多么复杂,要想让一个机体的血液循环正常运转,心脏、静脉和动脉的协同作战才是构成这个复杂网络的关键。
在全球互联网的世界里,数据中心、根服务器和海底光缆这三个部分构成了这个世界运作的主干,让我们一起来揭开它们的神秘面纱。
平时我们从网站下载的软件、上传的数据、浏览的网页、访问的论坛、搜索的资料,诸如此类的数据其实都是保存在网站服务器的数据中心上,只不过每个数据中心的存储容量大小不一,实际存储的数据不同而已。
交通枢纽——托管数据中心
从这个意义上来说,数据中心在全球很多,然而,在全球互联网的系统里,托管数据中心的作用和级别更为高级,数量也相对较少。
那么托管数据中心和普通数据中心有什么不同呢?
大家知道数据中心是数据互联的中枢,托管数据中心一般是由专业通信公司(如中国电信、中国联通)建设和运营的。
因为这些公司是互联网提供商,需要接入、输出和处理的数据非常多,因此都会建设庞大的数据中心以满足自己的使用,大部分则出租给其他厂商使用。因此这类专业大型数据中心我们称之为托管数据中心,因为其中大部分数据是其他企业托管在此的。普通数据中心则指公司的数据机房,它只是一个企业的数据互联中枢,规模和专业程度都要逊于托管数据中心。
一句话,托管数据中心就是国家高速公路的互通立交,普通数据中心则只不过是小县城的十字路口。
位于纽约市的哈德逊街(Hudson Street)60号的建筑是一个很不起眼的建筑,但是你可知道,它是全球互联网数据中心的重要枢纽,这个大型的托管数据中心的内部看上去类似一些大公司的计算机机房(图2)。
这个数据中心是当地、美国以及全球多层光纤电缆的汇聚地。在这里,每个载体的服务器、存储数据和网络设备连在一起,就像那一系列光学接口、同轴电缆等通过一系列连接板与其他网络连通。
目前中国有9个托管数据中心,北京有2个,上海有4个,成都、浙江、深圳各有1个。
那么为什么中国托管数据中心要分布在北京、上海、成都、浙江和深圳?前面说了,数据中心要连接其他交汇高速干线,因此它的分布必须要均衡,以支撑全国互联网的运行。托管数据中心分布在上述各地,是由数据中心接入点和地缘位置决定的。
北京是全国政治中心和各大ISP总部所在地,上海、浙江是全国经济中心,深圳则是中国通信、电子行业最发达的区域(而且和港澳毗连),成都是中国西部枢纽。因此上述各地数据中心可以均匀分布在地图上的上北(北京)下南(深圳)、左西(成都)右东(上海、浙江),形成全国互联网的中枢。
托管数据中心的功能
从上面的描述我们知道,托管数据中心是一个城市(甚至是一个国家)多层光纤电缆的汇聚地。高速公路的互通立交(数据中心)作为各个道路的交汇点,一方面它要负责交汇汽车(数据)的引导和分流,另一方面作为高速公路的中枢,它还要连接其他交汇高速干线(全国各地ISP服务器),因此它的分布要均匀,能够起到承上启下、左右互通的作用。具体说来,数据中心的主要功能有:
路由功能。数据中心一方面要从国际互联网入口接收数据(同时将数据通过出口分发出去),另一方面则要将数据分发到连接的各地服务器(同时接收各地服务器发送的数据)。因此数据中心得具备大型路由器的功能,互联网的物理中心,本质上说就是一个巨大的以太网交换机。
在线存储服务。由于各种数据在此交集,数据中心肯定必须要有数据存储功能,这样才能对数据进行有效的管理和各种处理。
数据处理。因为数据中心保存海量的数据,同时每天每个时刻都有成千上万的服务器连接,因此数据中心必须有强大的数据处理能力,这样才能满足各种数据的吞吐。
揭秘谷歌数据中心
通过上面的介绍,我们知道托管数据中心是互联网的中枢。那么它是怎么工作的呢?我们以全球最著名的数据中心——谷歌的数据中心为例来说明。
目前,Google在全球有36个数据中心,以每个中心有150个机柜计算, Google的服务器至少超过20万台,而实际数字还要比这大得多,且每天都在增加中,下图就是谷歌数据中心的一角(图3)。 谷歌数据中心为什么要那么多?我们在谷歌进行搜索时,这些数据中心是怎么为我们服务的呢?
大家知道谷歌作为全球IT巨头,几乎每时每刻都有成千上万的用户在使用谷歌的搜索服务。那么谷歌是如何快速地对全球各地用户的搜索进行响应的呢?这主要归功于谷歌高性能的数据中心。
结构先进的服务器
大部分公司都是向Dell、HP、IBM和SUN厂商直接购买服务器。不过Google的所有服务器均为自己一手打造。Google服务器厚度3.5英寸,2U(两机柜式),它有2个CPU、2个硬盘,采用技嘉主板,有8个内存插槽。Google采用AMD与英特尔的X86处理器。在同样大的空间内,Google的服务器比其他厂商的服务器能容纳更多的CPU,而且功能更为强劲,可以执行更为高效的操作。根据一项统计,谷歌公司的数据中心能在半秒之內回应700至1000台服务器的搜索请求(图4)。
技术优越的核心技术
Google一直都钟情于开源软件,也一直支持开源技术。Google服务器使用的是Linux操作系统,Google的工程师按照平行计算的要求对Linux进行了优化。Google开发自有核心软件,开发语言是Java和C++,它的三大核心元素:
1.Google文件系统(GFS):GFS负责服务器数据的存储工作。
2.Google大表——Bigtable:是Google的一种对于半结构化数据进行分布存储与访问的接口或服务。由于Google的文件系统异常庞大,以至于甲骨文和IBM公司的商业数据库在这里无用武之地。另外,商业数据库都是按CPU数量来收费,如果Google使用商业数据库,可想而知,花费将是一笔天文数字。所以,Google量体裁衣地设计了符合自身的大表。
3.MapReduce算法:它是Google开发的C++编程工具,用于大于1TB数据的大规模数据集并行运算。MapReduce能够找出一个词语在Google搜索目录中出现的次数、一系列网页中特定词语出现的频率、链接到某个特定网站的所有网站数量等。
全球分布数据中心
现在谷歌全球数据中心在美国有19个、欧洲12个、俄罗斯1个、南美1个和亚洲3个(北京Google.cn、香港Google.com.hk和东京各1个)(图5)。
通过分布在全球主要区域的数据中心,谷歌才能对我们的搜索请求进行快速响应。比如中国香港数据中心主要负责东亚、南亚数据处理,当这些国家的用户在使用搜索时,谷歌优先使用中国香港数据中心为他们服务,速度当然要比使用美国数据中心快。另一方面,谷歌全球数据中心是一个整体(而且使用分布式计算),各个数据中心之间互相支援、互为备份,当某一区域搜索请求繁忙时,谷歌其他地方数据中心会自动进行分担,从而让用户在任何地方、任何时候都可以感受最佳的搜索体验。
节能减排——数据中心节能探秘
大家知道大型数据中心一般是由成千上万台服务器组成的,而且大多是24小时运转,它们的功耗惊人。
据测算,Google数据中心的耗电量已经超过了全球总用电量的1%。而根据Google所公布的官方数据,其数据中心在2010年的耗电量即达到了22.6亿千瓦时,超过老挝一个国家的用电量。因此让数据中心更节能、降低成本便成为很多厂商一直在追求的目标。
数据中心最大的支出是电费,除了维持服务器正常运转外,大部分电费支出是花在冷却服务器的开销上。因此现在很多数据中心都建立在气候寒冷的地方,充分利用低温自然天气为服务器冷却。比如谷歌在芬兰的数据中心,它运用当地低温和芬兰湾的冷水作为降温利器,成功地利用旧纸厂原有的海水冷却系统,有助于减少大量的耗电与电费。
谷歌通过将海水引流到隧道,然后使用抽水泵将海水打入设立在服务器房间内的海水交换器里,通过海水的循环来为数据中心的服务器设备降温。其实它的原理和很多超级骨灰级玩家制作的水冷系统类似,只不过谷歌的规模更庞大而已。
现在这个数据中心已经成为谷歌公司全球最节能的据点之一,它内部的海水冷却管是不是有些像大型锅炉房呢(图6)。
Most
全球数据中心之最
最环保数据中心:惠普服务器打算使用奶牛粪便供电,根据计算,10000头牛能保证1000台服务器正常运作所需的电量。
最绿色数据中心:惠普全新一代Wynyard温亚德数据中心,坐落于英格兰的东北部,它采用了可循环自由空气冷却技术和高能效独特绿色技术,使用可回收材料,并通过收集来的雨水进行冷却。
最苗条数据中心:罗斯维尔工艺癌症研究中心将自身的200台物理服务器整合到174台虚拟机中,而这174台虚拟机仅仅通过3台服务器运行。
最大数据中心:微软位于芝加哥的数据中心,这个数据中心的一层放置了多达56个集装箱,每个集装箱内放置了1800到2500台服务器。
最安全数据中心:Iron Mountain(铁山)公司数据中心在地下约66米深处拥有一座安全级别仅次于白宫和国防部的秘密资料库,声称是地球上最安全的地方之一。
互联网翻译大师——根服务器
除了全球主要的托管数据中心,根服务器也是全球互联网的“主干”,它最主要的作用是解析域名。所谓域名解析,就是将原始的IP地址的数字表达“翻译”为我们所熟知的英文形式。一起来看看根服务器是如何完成的吧。
我们知道,互联网上的每一台计算机都被赋予唯一的IP地址,这一地址是该计算机走进网络世界,实现不同计算机之间通信的唯一地址。因此,IP地址具有唯一性。
尽管IP地址的作用非常重要,但IP地址是数字型的,导致用户记忆十分不便。因此,人们又发明了另一套字符型的地址方案,也就是域名地址。
将IP地址中标志的数字进行英文字母的“翻译”,这一过程就是域名解析。说来也许你不相信,全球互联网有数不清的IP地址,却只有13台根服务器完成域名解析工作。 为什么全球只有13台根服务器
根域名服务器(root-servers.org),是互联网域名解析系统(DNS)中最高级别的域名服务器。目前,全球共有13台主要的根服务器。它的主要分布是:主根服务器(A)美国1个,设置在弗吉尼亚州的杜勒斯;辅根服务器(B至M)美国9个,瑞典、荷兰、日本各1个。
另外借由任播(Anycast)技术,部份根域名服务器在全球设有多个镜像点(mirror),因此可以抵抗针对其所进行的分布式拒绝服务攻击(DDoS)。所有根服务器均由美国政府授权的互联网域名与号码分配机构ICANN统一管理,负责全球互联网域名根服务器、域名体系和IP地址等的管理。13台根服务器组织结构如图所示(图7)。
看到这里,你可能会问,为什么全球互联网只设置13台根服务器?
这还要从DNS协议(域名解析协议)说起。DNS协议使用了端口上的UDP和TCP协议,UDP通常用于查询和响应,TCP用于主服务器和从服务器之间的传送。由于在所有UDP查询和响应中能保证正常工作的最大包长是512字节,512字节的限制影响了根服务器的数量和名字。
要让所有的根服务器数据能包含在一个512字节的UDP包中,根服务器只能限制在13个,而且每个服务器要使用字母表中的单个字母命名,这也是为什么根服务器是从A~M命名。
根服务器是如何工作的
在互联网刚开始发展的时候,由于联网的计算机不多,计算机与计算机之间的通信是借助IP地址来实现的。不过随着互联网的发展,联网的计算机越来越多,人们已经无法通过记忆纯粹由数字组成的IP地址来进行通信。这样就提出域名的概念。域名是由一串英文字符组成的单词,比如微软公司使用microsoft.com域名,这样大大方便人们记忆和访问微软网站。
不过使用域名虽然方便了我们的记忆,但是计算机却无法识别这些域名,因此引入了域名解析服务器,用来将域名和具体的IP地址对应起来。这样当我们在浏览器地址栏输入www.microsoft.com的时候,首先是连接到域名服务器,接着服务器再将此域名解析为相应网站的IP地址,完成这一任务的过程就称为域名解析,从而实现计算机与计算机之间仍然是通过IP地址进行通信(图8)。
从理论上说,任何形式的标准域名要想实现解析,按照技术流程,都必须经过全球“层级式”域名解析体系的工作才能完成。
在“层级式”域名解析体系中,第一层就是根服务器,负责管理世界各国的域名信息,就是我们上面所说的13台根服务器。在根服务器下面是顶级域名服务器,即相关国家域名管理机构的数据库,如中国的CNNIC,然后是再下一级的域名数据库和ISP的缓存服务器。
举个例子来说,现在我们在浏览器地址栏输入www.163.com进行访问,按照层级式解析流程整个解析过程如下:
第1步:当我们联网并输入www.163.com时,电脑首先连接到本地DNS服务器(就是网络服务商如电信、网通提供的DNS服务),假设这是一个新的域名,本地DNS服务器就无法进行解析。
第2步:此时会连接到13台根服务器中的d.root-servers.net(它负责.com域名的解析),问它:哎,那个163.com对应的IP地址是多少?但是根服务器都是流量较大的服务器,它只接受迭代查询(因为如果它们对每一个解析请求都代为查询的话,那将会消耗极大的服务器资源,可能会导致服务器过载甚至崩溃)。于是它就会告诉你:这是c.gtld-servers.net域名服务器(13台顶级域名服务器之一)这个家伙管的,你问它好了。
第3步:顶级域名服务器c.gtld-servers.net收到查询请求后,它会告诉你“163.com域名服务器”是专门管这事的,于是又将查询转到了163.com域名服务器,在这查询后找到了答案:163.com域名对应的IP是123.58.180.8。
第4步:查询到具体的IP地址后,163.com域名服务器就会把结果返回到本地域名服务器并加以记忆,然后我们在浏览器输入www.163.com就可以打开网易的页面了,这就完成了一个常规的域名解析过程(图9)。
假如根服务器遭到攻击
上文我们分析过根服务器在域名解析的最顶级,是最优先的查询,如果根服务器出现故障,整个流程就无法继续。因此如果全球的13台根服务器遭到攻击或者出现故障,那么将影响地球上数不清的网站的域名解析。
经常使用百度服务的朋友可能都还有一个印象,2010年1月12日7时左右,百度首页出现大面积访问故障。与此同时,百度旗下贴吧域名(tieba.com)也无法正常访问,更要命的是全国绝大多数地区均无法正常访问百度网站。
直至中午12时,百度才宣布北京恢复正常,随后全国访问才陆续恢复。
按道理类似百度这样的大型网站,黑客的攻击是无法将其服务器瘫痪这么长时间的,那么这次故障背后的原因是什么?
真实原因就是美国负责百度域名的根服务器遭到了黑客攻击,导致百度瘫痪。可见根服务器对互联网的影响有多大。难怪在这次事件之后,百度CEO李彦宏在i贴吧里发了“史无前例,史无前例呀!”9个字,表达对域名解析服务受制于人的无奈。
根服务器域名解析几乎关系到每一个互联网企业的生死。但是13台DNS解析服务器都是由美国控制,可以说,美国垄断了国际互联网,中国虽然上网人数多但是没有话语权。因此,我国专家把争取全球互联网的话语权的机会寄托在IPv6身上。
那么什么是IPv6?它就有突破DNS顶级解析服务器封锁的能力?
IPv6协议的前世今生
IPv6(Internet Protocol version 6,互联网通信协定第6版)是被指定为IPv4继任者的下一代互联网协议版本。IPv4则是目前广泛使用的互联网通信协议,它的最大问题是网络地址资源有限,因为IPv4采用A、B、C三类编址方式,可用的网络地址和主机地址的数目变得极为有限,实际上目前的IP地址已于2011年2月3日分配完毕。由于IP地址是网络中每台电脑的唯一标示符,IP地址的短缺给互联网的普及带来了极大的不便。 一方面是地址资源数量的限制,另一方面是随着电子技术及网络技术的发展,计算机网络将进入人们的日常生活,可能身边的每一样东西都需要连入全球互联网。比如随着物联网的发展,以后你家的冰箱、彩电都需要IP地址的支持。
因此在这样的环境下,IPv6应运而生。单从数量级上来说,IPv6使用32个十六进制数表示IP地址,理论上可能的地址有2128 ≈ 3.4×1038个。IPv6所拥有的地址容量是IPv4的约8×1028倍,达到2128个。这不但解决了网络地址资源数量的问题,同时也为除电脑外的设备连入互联网在数量限制上扫清了障碍。
对于Windows来说,Win7已经内置了对IPv6的支持,当我们打开网卡属性设置窗口时就可以看到Win7系统内置的IPv6协议组件(图10)。
IPv6如何破解根服务器垄断
在前面的叙述中我们知道了13台根域名解析服务器全部在美国,这样美国的垄断就很容易给他国互联网的发展带来限制。
2003年伊拉克战争期间,美国政府就曾授意ICANN终止对伊拉克国家项级城名“.iq”的解析,一夜之间,所有以“.iq”为后缀的网站都从互联网上蒸发了。而2004年4月利比亚顶级域名“.ly”瘫痪事件,则让利比亚在虚拟互联网世界里消失了整整4天。
正是看到域名解析受制于人的可怕后果,现在中科院计算机网络信息中心已成功建立了试验性的IPv6域名系统根服务器,可向全球范围内的IPv6网络用户提供根服务器级的域名解析服务。
在下一代互联网地址访问新技术IPv6即将推广的今天,域名系统的根服务器也将随之调整。对于中国来说,有实力也有能力建立域名系统的根服务器,但是IPv4解析已经被美国牢牢控制而且成为国际标准,中国不可能也没有能力去取代这个已经存在全球性的解析服务。但是IPv6则是正在发展的协议,我们可以创建(至少也是参与创建)IPv6 DNS根服务器。
因此,中科院计算机网络信息中心承担了一部分基于IPv6 DNS根服务器研究的相关项目,借助中国互联网络信息中心(CNNIC)运行国家.CN域名服务器和中文域名根服务器的优势,该项目建立了IPv6试验网,基本解决了IPV6域名系统根服务器的一系列关键技术,在全球最大的IPv6试验网络6Bone上建立了骨干网络节点,开展了顶级地址分配机构(pTLA)测试工作。
这样在IPv6技术下,我们通过在中国建立全球IPv6域名解析服务器来突破美国域名解析的垄断,目前已经取得了长足的进步。假设在中国建立IPv6根域名服务器,那么不仅可以大大加快域名解析速度,而且给中国互联网的安全带来更多的保障(图11)。
互联网的桥梁——光缆
在全球互联网的“血液循环”中,除了托管数据中心、13个根服务器之外,三条最主要的海底光缆是全球互联网运作的关键,一旦这三条海底光缆同时遭到破坏,整个互联网界将会宣布Game Over!让我们一起来继续揭秘。
最重要的三条海底光缆
据TeleGeography报道,全球互联网的主要光缆只有三条,分别分布在长岛Mastic海滩、纽约州Manahawkin市和纽约州Tuckerton。那么为什么这三条光缆如此重要?
首先我们来看一张根服务器分布图(图13),可以看到在美国的东海岸分布了A、C、D、G、H、J六台根服务器,显然这是全球互联网最重要的区域,每天全球有数以亿计的解析要连接到这些服务器。长岛Mastic海滩、纽约州Manahawkin市和纽约州Tuckerton正是处于美国的东海岸这片区域,而且这片区域集中了大量的互联网服务商和高科技IT公司。这几条光缆的两端连接美国的东海岸和西欧,是一些世界最稠密、重要的基础设施点。
那么这么多的数据是通过什么传输到此地的?答案是:海底光缆。所以为了保证这些海量数据的传输和各类大型公司的数据传输,通信服务商就在这里架设了三条光缆,美国的东海岸和西欧的海量数据就通过这些光缆双向传输。而且光缆两端作为世界互联网的骨干节点,它们的功能就类似高速公路之间相连的两座巨型高速立交环岛,从海底接出来的光缆再通过各种线缆连接到世界各地,因此这三条光缆成为世界互联网最重要的光缆就不足为奇了。那些从海底爬出来的往外连接的光缆是不是很像连接互通立交上的那些公路呢(图14)。
为什么要用光缆连接电脑
大家知道最早的互联网连接的电脑数量并不多,连接电脑彼此之间的距离也不遥远。
但是随着互联网向全球拓展,连接到互联网的电脑越来越多,彼此之间的距离也越来越遥远。地球上五大洲之间的电脑如何连接?在地球上海洋占用的面积最大,因此互联网骨干服务器之间的连接大多是通过国际海底光缆来完成的。
这是因为海底电缆不容易受到人们的生产作业的破坏,而且传输的距离也比较简洁。现在全世界大大小小总共建设了170多个海底光缆系统,总长近亿公里,大约有130余个国家通过海底光缆联网。
目前,全世界超过80%的通信流量都由海底光缆承担,最先进的光缆每秒钟可以传输7TB(1TB等于1024GB)的数据,几乎相当于普通1M家用网络带宽的730万倍。有个网友利用微软的Bing地图以及Wikipedia的数据,做出了一幅互动式的世界海底光缆分布图,看看世界上海底光缆是不是和蜘蛛网一样呢(图15)。
怎么维护海底光缆
由于海底光缆大多铺设在大洋几百米深的海底下,常规的渔业生产一般不会对光缆造成破坏。但是进行深海捕捞作业以及海底地震、海啸时,这些因素却会严重影响到海底光缆的安全。一旦光缆出现故障,怎么进行维护?
现在大型光缆公司都有专业的维护公司,GlobalMarineSystems就是一家专业的海下安装和维护公司,总部位于英国。他们的专业维护工具是一艘6吨重、价值1000万美金的深海遥控操作机——代号“野兽”。
它的工作地点位于水下超过一英里深的地方,采用履带在海底行进。每当需要对海底光缆进行维护时,操作人员在母床上用一个操纵杆控制“野兽”,利用其声纳、摄像机和金属探测仪来定位受损坏的光缆。找到受损的光缆后“野兽”会将故障光缆干净利索地切断,并将两端都带到水面,然后在船甲板上进行维修后再放入海中,有些“野兽的英姿”,是不是有点像月球车(图16)? 光缆如何连接电脑
实际上互联网就是一个庞大的局域网,它的结构和我们公司里的局域网并没有什么不同,一般是由服务器、交换机和终端三部分组成,三部分之间就是通过缆线连接的。当然小的局域网都是用普通的网线而不是光缆(图17)。
在上面的图中,我们也可以将其看成互联网,把WEB服务器看成是提供互联网出口服务的大型服务器(如电信服务器,它的另一端则连接世界上其他服务商的服务器),它的数据中心则可以看成是交换机,其他电脑则看成是连接到互联网的个人用户。
不过在现实生活中,每个用户实际上是先连接到本国提供出口带宽的宽带服务商服务器上,这些服务器再和其他国家的服务器组成局域网。由于世界上各个国家服务器的距离遥远,为了减少数据在传输过程的衰减,并且能够稳定地传输海量的数据,服务器之间是通过海底光缆进行连接的。光缆大多是由连接两国的通信服务商投资兴建的,在港口城市的各个网络服务商总部机房,这些光缆宛如花束一样从海洋底钻出来,然后从这里接至全球各地。
当海底光缆发生意外
有一些技术狂人会发出这样的想象,这三条海底光缆如果同时发生故障将会是什么情况?
其实道理很简单,上文我们提及的全球互联网的三个关键部位数据中心、根服务器、光缆,它们是互联网这个虚拟世界的硬件组成,是硬件就会发生故障,三条海底光缆发生故障不是没有先例。
2008年12月19日,地中海下面的三条光缆遭到破坏时,整个中东和南亚部分地区的互联网服务先后出现故障。
其中埃及“伤得最重”,整个国家80%的网络服务瘫痪;沙特阿拉伯和其他海湾国家也好不到哪里去,电子邮件发不出去、收不进来,网页无法登录。远至马来西亚和中国台湾地区的网络服务都受到影响。
同样的事情在2012年1月和2月两度重演,致使整个地区的家用和商务网络服务中断多日,无法正常运行。
脆弱的互联网
通过上面几个章节的揭秘,我们已经知道全球互联网的运作原理,虽然随着技术的完善,全球互联网已经呈现坚不可摧的现状,但是在这个虚拟世界里,美国具有绝对的话语权。从这个意义上来说,互联网是脆弱的。
作为全球互联网的发源地,全球13个根服务器中美国占了9个,而全世界主要的三条海底光缆中,有两条位于美国……这些条件都会给美国攻击别国的互联网提供了先天条件。从这个意义上来说,全球互联网是脆弱的。
硬件攻击的可能性
事实上,互联网诞生的背景是在上世纪美苏争霸期间,现在互联网的民用欣欣向荣,丝毫不能削弱它作为诞生于军用之需的基因。
1991年海湾战争期间,美国向伊拉克派出特工,将伊从法国购买的防空系统使用的打印机芯片换上了含有计算机病毒的芯片。在美国对伊实施战略空袭前,美特工用遥控手段激活了这些芯片中的病毒,致使伊防空指挥中心主计算机系统程序错乱,伊防空C3I系统失灵。这次行动也让美军尝到了将信息技术用于网络战的甜头,网络攻防开始被提升到战略高度。
而上文我们提到的2010年1月12日百度网页大规模瘫痪的事件,虽然事后发现是黑客攻击了负责百度域名解析的根服务器,但是怎能不重视9台根服务器在美国本土、服务器的机房由美国维护的事实。在硬件上,美国具有攻击别国互联网的可能性。
病毒攻击
除了有硬件攻击的可能性,病毒攻击往往使互联网成为另一个战场。
2008年,在发生军事冲突的同时,格鲁吉亚与俄罗斯互相指责对方发动网络战。由于俄罗斯的攻击,格鲁吉亚总统萨卡什维利的网站不得不依靠美国一家公司的服务器运行。
2010年9月,伊朗有约3万个互联网终端和布什尔核电站员工个人电脑受震网(Stuxnet)蠕虫病毒攻击,伊朗指认美国和以色列发动网络攻击。
2012年5月,俄罗斯安全专家发现一种威力强大的电脑病毒“火焰”(Flame)在中东地区大范围传播。俄罗斯电脑病毒防控机构卡巴斯基称,这种新病毒可能是“某个国家专门开发的网络战武器”。
“火焰”病毒最早可能于2010年3月就被攻击者放出,但一直没能被其他网络安全公司发现。“火焰”病毒出现的最早时间甚至可追溯到2007年。在火焰病毒重灾区伊朗,病毒攻击了伊朗石油部门的商业情报。由于情报的泄露,这给伊朗带来了不可估量的损失。
此次“火焰”病毒与之前的“震网(Stuxnet)”、“毒区(Duqu)”等病毒类似,重点攻击国家命脉行业!但是,“火焰”病毒比“震网”病毒要严重很多,其所包含的代码数量大约相当于之前发现“震网”病毒的20倍。
“火焰”病毒具有混合型特征,集文件传染、蠕虫、木马、黑客程序等特点于一身,是迄今为止发现的最大规模和最为复杂的网络攻击病毒。同时,“火焰”病毒构造十分复杂,据了解,该病毒用了 5 种不同加密算法、3 种不同压缩技术和至少 5 种不同文件格式,包括其专有格式,病毒文件达到20MB之巨(代码打印出来的纸张长度达到2400米)。
美国到底有多强
若干年前,美国军事记者詹姆斯·亚当斯曾在其撰写的《下一场战争》一书中假设:借助事先植入的木马程序,美国政府远程关闭了德黑兰的民用电力网络,瘫痪了中国的三峡水库控制系统,扰乱了沙特阿拉伯的程控电话交换网络,进而得以兵不血刃地胁迫这些可能拥有庞大常规武器装备的“强国”服从美国的要求,阻止了冲突的发生。
现在这一假想越来越有实现的可能,原因是美国的互联网实力具有强势地位,那么美国网络战实力到底如何?
从1990年代起,美军大量招募网络人才。1995年,美军16名“第一代网络战士”从美国国防大学信息资源管理学院毕业。两年后,第一批国家级“网络战士”参加了美国国家安全局组织的秘密演习。
在1999年科索沃战争中,南联盟方面使用多种计算机病毒,组织黑客实施网络攻击,使北约军队一些网站被垃圾信息阻塞,一度瘫痪。而美军则通过截取的通信链路把制造的假雷达图像插入南联盟防空网络系统中,致使南防空系统陷于瘫痪。美军的网络战规模和效果都有增无减,时任美国国防部副部长哈默称之为全球“第一次网络战争”。 在此前后,美国及时将网络作战的经验“理论化”、“再实践化”。从1998年10月的《联合信息行动条令》到当年建立的“全球网络作战联合特遣队”,从2001年7月的“网络中心战”概念到次年诞生的“网络中心战”新型作战模式,一直到美军战略司令部组建了美军历史上也可能是世界上第一支“黑客”部队——网络战联合功能构成司令部(JFCCNW)。
根据对美军网络战项目跟踪多年的防务专家乔尔·哈丁的评估,美军涉及网络战的军人已经增至5万~7万人,其中网络战专家3000~5000人,加上原有的电子战人员1.5万人,总数已接近9万人——这意味着美军网络战部队人数已经相当于7个101空降师。
在硬杀伤网络战武器方面,美国已研制成或正在发展电磁脉冲弹、次声波武器、激光反卫星武器、动能拦截弹和高功率微波武器,可对别国网络的物理载体进行攻击。
由于计算机芯片、操作系统、网络协议、路由、域名解析等是绝大多数国家和地区的绝大多数网络运行的基础,而它们大都打上了“美国制造”的标签,美军通过指令启动可能存在的芯片内置程序,不管是自毁还是“反水”,都易如反掌。
另外,美国控制了全球13台域名根服务器中的10台,只要停止解析服务,对方的网络就会立即陷入瘫痪或停顿。
因此,虽然美国不断渲染各种针对美国计算机网络的攻击事件,但实际上美国无论是网络运行的稳定性、可靠性和安全性,还是其锻炼出来的人才队伍水平、培养出来的网络安全意识水平等,都远远超过其他国家,美国自身的网络战能力更是无人能及!
延伸阅读
近几年发生的主要的互联网故障事件
A2006年12月26日20点25分,我国台湾省南部海域发生7.2级海底地震,造成该海域13条国际海底光缆受损,致使我国至欧洲大部分地区和南亚部分地区的语音通信接通率随即明显下降;致欧洲、南亚地区的数据专线大量中断;互联网大面积拥塞、瘫痪,雅虎、MSN等国际网站无法访问,1500万MSN用户长期无法登录,1亿多中国网民一个多月无法正常上网,日本、韩国、新加坡等地网民也受到影响。直到5艘海缆维修船经过一个月的努力,才将断裂的海缆修复。海底光缆已经和我们的日常生活紧紧相连在一起了。
B 2009年5月19日,北京、天津、上海、河北、山西、内蒙古、辽宁、吉林、江苏、黑龙江、浙江、安徽、湖北、广西、广东等地区均有网民反映上网遭遇故障,大量网站无法打开,网速也受到了很大影响。20日,工信部在官方网站上发布公告称,故障原因是由于暴风影音网站(baofeng.com)的域名解析系统受到网络攻击出现故障。
C 2012年2月9日,来自ISC的Mark Andrews发现通过L根服务器无法访问根区数据。这直接导致数以百万计电脑无法访问L根服务器解析的域名。最终确认是位于澳大利亚境内的一个L根镜像服务器出现了故障。
D2012年2月24日,澳洲最大的运营商电讯(Telstra)由于网络数据中心发生网络中断故障,导致数百万当地用户受到影响。电讯的固网和移动网络服务均中断,使预计三百万名用户断网了一个小时左右。发生故障时,用户们无法连接NextG移动服务、固网宽带、BigPond邮件服务,并且无法连接国际站点。
E2012年8月6日,维基百科位于佛罗里达州的数据中心发生光纤断线的技术性意外,致使数百万使用者无法存取其中的资料。
现实世界中,互联网由千千万万的光缆、金属和塑料构建,范围遍及全球,就好像一个机器怪兽环抱地球。
它好比管道,在其中总是忙碌地运送着一些“物质”,将你在电脑上随意的一次网址请求、一封电子邮件的发送、一次远渡重洋的MSN聊天从你家里的网线传递到你所希望达到的目的地。
习惯于这些应用的你是否会想到,一旦有一天,互联网管道中的某个部位发生了断裂,在互联网中传输的物质将会有怎样的运行轨迹?事实上,随着技术的成熟,互联网已经做到坚不可摧,它的复杂程度好比人体的血管,总有多条通道运送人体所需要的有用物质,也有诸如静脉、动脉等关键部位。
本期封面报道就为你抽丝剥茧,探秘一下全球互联网的静脉、动脉、心脏等如何形成良好的血液循环。
互联网的中枢——数据中心
喜欢在线办公的朋友都知道,如果我们将文件保存在了网盘上,那么无论在哪里我们都可以通过互联网访问这些文件,网友每一次提取自己的文件都是在访问网盘的数据中心。
互联网的本质是电脑与电脑之间互相通信并交换信息。
在早期,电脑发明之后,单独一台电脑会完成大量的运算,可是发展到后来,人们发现,电脑与电脑之间也要进行信息交换,于是人们开始进行这方面的尝试。
1969年美国军方的阿帕网是目前世上公认的最早的互联网,但与现在庞大的网络相比,那只是个局域网,后来加入这个局域网的机构越来越多。到了1983年,美国国防部索性将阿帕网分为军网和民网,其中的民用网面向市场开放,加入的公司和个人越来越多,连进互联网的设备也日益丰富,渐渐扩大为连接世界你我的互联网(图1)。
互联网发展到今天,技术已经非常成熟,连接全球互联网的物理网络错综复杂,很难理清它们之间的关系。但是,就好比人体的血液循环一样,不管血液循环系统有多么复杂,要想让一个机体的血液循环正常运转,心脏、静脉和动脉的协同作战才是构成这个复杂网络的关键。
在全球互联网的世界里,数据中心、根服务器和海底光缆这三个部分构成了这个世界运作的主干,让我们一起来揭开它们的神秘面纱。
平时我们从网站下载的软件、上传的数据、浏览的网页、访问的论坛、搜索的资料,诸如此类的数据其实都是保存在网站服务器的数据中心上,只不过每个数据中心的存储容量大小不一,实际存储的数据不同而已。
交通枢纽——托管数据中心
从这个意义上来说,数据中心在全球很多,然而,在全球互联网的系统里,托管数据中心的作用和级别更为高级,数量也相对较少。
那么托管数据中心和普通数据中心有什么不同呢?
大家知道数据中心是数据互联的中枢,托管数据中心一般是由专业通信公司(如中国电信、中国联通)建设和运营的。
因为这些公司是互联网提供商,需要接入、输出和处理的数据非常多,因此都会建设庞大的数据中心以满足自己的使用,大部分则出租给其他厂商使用。因此这类专业大型数据中心我们称之为托管数据中心,因为其中大部分数据是其他企业托管在此的。普通数据中心则指公司的数据机房,它只是一个企业的数据互联中枢,规模和专业程度都要逊于托管数据中心。
一句话,托管数据中心就是国家高速公路的互通立交,普通数据中心则只不过是小县城的十字路口。
位于纽约市的哈德逊街(Hudson Street)60号的建筑是一个很不起眼的建筑,但是你可知道,它是全球互联网数据中心的重要枢纽,这个大型的托管数据中心的内部看上去类似一些大公司的计算机机房(图2)。
这个数据中心是当地、美国以及全球多层光纤电缆的汇聚地。在这里,每个载体的服务器、存储数据和网络设备连在一起,就像那一系列光学接口、同轴电缆等通过一系列连接板与其他网络连通。
目前中国有9个托管数据中心,北京有2个,上海有4个,成都、浙江、深圳各有1个。
那么为什么中国托管数据中心要分布在北京、上海、成都、浙江和深圳?前面说了,数据中心要连接其他交汇高速干线,因此它的分布必须要均衡,以支撑全国互联网的运行。托管数据中心分布在上述各地,是由数据中心接入点和地缘位置决定的。
北京是全国政治中心和各大ISP总部所在地,上海、浙江是全国经济中心,深圳则是中国通信、电子行业最发达的区域(而且和港澳毗连),成都是中国西部枢纽。因此上述各地数据中心可以均匀分布在地图上的上北(北京)下南(深圳)、左西(成都)右东(上海、浙江),形成全国互联网的中枢。
托管数据中心的功能
从上面的描述我们知道,托管数据中心是一个城市(甚至是一个国家)多层光纤电缆的汇聚地。高速公路的互通立交(数据中心)作为各个道路的交汇点,一方面它要负责交汇汽车(数据)的引导和分流,另一方面作为高速公路的中枢,它还要连接其他交汇高速干线(全国各地ISP服务器),因此它的分布要均匀,能够起到承上启下、左右互通的作用。具体说来,数据中心的主要功能有:
路由功能。数据中心一方面要从国际互联网入口接收数据(同时将数据通过出口分发出去),另一方面则要将数据分发到连接的各地服务器(同时接收各地服务器发送的数据)。因此数据中心得具备大型路由器的功能,互联网的物理中心,本质上说就是一个巨大的以太网交换机。
在线存储服务。由于各种数据在此交集,数据中心肯定必须要有数据存储功能,这样才能对数据进行有效的管理和各种处理。
数据处理。因为数据中心保存海量的数据,同时每天每个时刻都有成千上万的服务器连接,因此数据中心必须有强大的数据处理能力,这样才能满足各种数据的吞吐。
揭秘谷歌数据中心
通过上面的介绍,我们知道托管数据中心是互联网的中枢。那么它是怎么工作的呢?我们以全球最著名的数据中心——谷歌的数据中心为例来说明。
目前,Google在全球有36个数据中心,以每个中心有150个机柜计算, Google的服务器至少超过20万台,而实际数字还要比这大得多,且每天都在增加中,下图就是谷歌数据中心的一角(图3)。 谷歌数据中心为什么要那么多?我们在谷歌进行搜索时,这些数据中心是怎么为我们服务的呢?
大家知道谷歌作为全球IT巨头,几乎每时每刻都有成千上万的用户在使用谷歌的搜索服务。那么谷歌是如何快速地对全球各地用户的搜索进行响应的呢?这主要归功于谷歌高性能的数据中心。
结构先进的服务器
大部分公司都是向Dell、HP、IBM和SUN厂商直接购买服务器。不过Google的所有服务器均为自己一手打造。Google服务器厚度3.5英寸,2U(两机柜式),它有2个CPU、2个硬盘,采用技嘉主板,有8个内存插槽。Google采用AMD与英特尔的X86处理器。在同样大的空间内,Google的服务器比其他厂商的服务器能容纳更多的CPU,而且功能更为强劲,可以执行更为高效的操作。根据一项统计,谷歌公司的数据中心能在半秒之內回应700至1000台服务器的搜索请求(图4)。
技术优越的核心技术
Google一直都钟情于开源软件,也一直支持开源技术。Google服务器使用的是Linux操作系统,Google的工程师按照平行计算的要求对Linux进行了优化。Google开发自有核心软件,开发语言是Java和C++,它的三大核心元素:
1.Google文件系统(GFS):GFS负责服务器数据的存储工作。
2.Google大表——Bigtable:是Google的一种对于半结构化数据进行分布存储与访问的接口或服务。由于Google的文件系统异常庞大,以至于甲骨文和IBM公司的商业数据库在这里无用武之地。另外,商业数据库都是按CPU数量来收费,如果Google使用商业数据库,可想而知,花费将是一笔天文数字。所以,Google量体裁衣地设计了符合自身的大表。
3.MapReduce算法:它是Google开发的C++编程工具,用于大于1TB数据的大规模数据集并行运算。MapReduce能够找出一个词语在Google搜索目录中出现的次数、一系列网页中特定词语出现的频率、链接到某个特定网站的所有网站数量等。
全球分布数据中心
现在谷歌全球数据中心在美国有19个、欧洲12个、俄罗斯1个、南美1个和亚洲3个(北京Google.cn、香港Google.com.hk和东京各1个)(图5)。
通过分布在全球主要区域的数据中心,谷歌才能对我们的搜索请求进行快速响应。比如中国香港数据中心主要负责东亚、南亚数据处理,当这些国家的用户在使用搜索时,谷歌优先使用中国香港数据中心为他们服务,速度当然要比使用美国数据中心快。另一方面,谷歌全球数据中心是一个整体(而且使用分布式计算),各个数据中心之间互相支援、互为备份,当某一区域搜索请求繁忙时,谷歌其他地方数据中心会自动进行分担,从而让用户在任何地方、任何时候都可以感受最佳的搜索体验。
节能减排——数据中心节能探秘
大家知道大型数据中心一般是由成千上万台服务器组成的,而且大多是24小时运转,它们的功耗惊人。
据测算,Google数据中心的耗电量已经超过了全球总用电量的1%。而根据Google所公布的官方数据,其数据中心在2010年的耗电量即达到了22.6亿千瓦时,超过老挝一个国家的用电量。因此让数据中心更节能、降低成本便成为很多厂商一直在追求的目标。
数据中心最大的支出是电费,除了维持服务器正常运转外,大部分电费支出是花在冷却服务器的开销上。因此现在很多数据中心都建立在气候寒冷的地方,充分利用低温自然天气为服务器冷却。比如谷歌在芬兰的数据中心,它运用当地低温和芬兰湾的冷水作为降温利器,成功地利用旧纸厂原有的海水冷却系统,有助于减少大量的耗电与电费。
谷歌通过将海水引流到隧道,然后使用抽水泵将海水打入设立在服务器房间内的海水交换器里,通过海水的循环来为数据中心的服务器设备降温。其实它的原理和很多超级骨灰级玩家制作的水冷系统类似,只不过谷歌的规模更庞大而已。
现在这个数据中心已经成为谷歌公司全球最节能的据点之一,它内部的海水冷却管是不是有些像大型锅炉房呢(图6)。
Most
全球数据中心之最
最环保数据中心:惠普服务器打算使用奶牛粪便供电,根据计算,10000头牛能保证1000台服务器正常运作所需的电量。
最绿色数据中心:惠普全新一代Wynyard温亚德数据中心,坐落于英格兰的东北部,它采用了可循环自由空气冷却技术和高能效独特绿色技术,使用可回收材料,并通过收集来的雨水进行冷却。
最苗条数据中心:罗斯维尔工艺癌症研究中心将自身的200台物理服务器整合到174台虚拟机中,而这174台虚拟机仅仅通过3台服务器运行。
最大数据中心:微软位于芝加哥的数据中心,这个数据中心的一层放置了多达56个集装箱,每个集装箱内放置了1800到2500台服务器。
最安全数据中心:Iron Mountain(铁山)公司数据中心在地下约66米深处拥有一座安全级别仅次于白宫和国防部的秘密资料库,声称是地球上最安全的地方之一。
互联网翻译大师——根服务器
除了全球主要的托管数据中心,根服务器也是全球互联网的“主干”,它最主要的作用是解析域名。所谓域名解析,就是将原始的IP地址的数字表达“翻译”为我们所熟知的英文形式。一起来看看根服务器是如何完成的吧。
我们知道,互联网上的每一台计算机都被赋予唯一的IP地址,这一地址是该计算机走进网络世界,实现不同计算机之间通信的唯一地址。因此,IP地址具有唯一性。
尽管IP地址的作用非常重要,但IP地址是数字型的,导致用户记忆十分不便。因此,人们又发明了另一套字符型的地址方案,也就是域名地址。
将IP地址中标志的数字进行英文字母的“翻译”,这一过程就是域名解析。说来也许你不相信,全球互联网有数不清的IP地址,却只有13台根服务器完成域名解析工作。 为什么全球只有13台根服务器
根域名服务器(root-servers.org),是互联网域名解析系统(DNS)中最高级别的域名服务器。目前,全球共有13台主要的根服务器。它的主要分布是:主根服务器(A)美国1个,设置在弗吉尼亚州的杜勒斯;辅根服务器(B至M)美国9个,瑞典、荷兰、日本各1个。
另外借由任播(Anycast)技术,部份根域名服务器在全球设有多个镜像点(mirror),因此可以抵抗针对其所进行的分布式拒绝服务攻击(DDoS)。所有根服务器均由美国政府授权的互联网域名与号码分配机构ICANN统一管理,负责全球互联网域名根服务器、域名体系和IP地址等的管理。13台根服务器组织结构如图所示(图7)。
看到这里,你可能会问,为什么全球互联网只设置13台根服务器?
这还要从DNS协议(域名解析协议)说起。DNS协议使用了端口上的UDP和TCP协议,UDP通常用于查询和响应,TCP用于主服务器和从服务器之间的传送。由于在所有UDP查询和响应中能保证正常工作的最大包长是512字节,512字节的限制影响了根服务器的数量和名字。
要让所有的根服务器数据能包含在一个512字节的UDP包中,根服务器只能限制在13个,而且每个服务器要使用字母表中的单个字母命名,这也是为什么根服务器是从A~M命名。
根服务器是如何工作的
在互联网刚开始发展的时候,由于联网的计算机不多,计算机与计算机之间的通信是借助IP地址来实现的。不过随着互联网的发展,联网的计算机越来越多,人们已经无法通过记忆纯粹由数字组成的IP地址来进行通信。这样就提出域名的概念。域名是由一串英文字符组成的单词,比如微软公司使用microsoft.com域名,这样大大方便人们记忆和访问微软网站。
不过使用域名虽然方便了我们的记忆,但是计算机却无法识别这些域名,因此引入了域名解析服务器,用来将域名和具体的IP地址对应起来。这样当我们在浏览器地址栏输入www.microsoft.com的时候,首先是连接到域名服务器,接着服务器再将此域名解析为相应网站的IP地址,完成这一任务的过程就称为域名解析,从而实现计算机与计算机之间仍然是通过IP地址进行通信(图8)。
从理论上说,任何形式的标准域名要想实现解析,按照技术流程,都必须经过全球“层级式”域名解析体系的工作才能完成。
在“层级式”域名解析体系中,第一层就是根服务器,负责管理世界各国的域名信息,就是我们上面所说的13台根服务器。在根服务器下面是顶级域名服务器,即相关国家域名管理机构的数据库,如中国的CNNIC,然后是再下一级的域名数据库和ISP的缓存服务器。
举个例子来说,现在我们在浏览器地址栏输入www.163.com进行访问,按照层级式解析流程整个解析过程如下:
第1步:当我们联网并输入www.163.com时,电脑首先连接到本地DNS服务器(就是网络服务商如电信、网通提供的DNS服务),假设这是一个新的域名,本地DNS服务器就无法进行解析。
第2步:此时会连接到13台根服务器中的d.root-servers.net(它负责.com域名的解析),问它:哎,那个163.com对应的IP地址是多少?但是根服务器都是流量较大的服务器,它只接受迭代查询(因为如果它们对每一个解析请求都代为查询的话,那将会消耗极大的服务器资源,可能会导致服务器过载甚至崩溃)。于是它就会告诉你:这是c.gtld-servers.net域名服务器(13台顶级域名服务器之一)这个家伙管的,你问它好了。
第3步:顶级域名服务器c.gtld-servers.net收到查询请求后,它会告诉你“163.com域名服务器”是专门管这事的,于是又将查询转到了163.com域名服务器,在这查询后找到了答案:163.com域名对应的IP是123.58.180.8。
第4步:查询到具体的IP地址后,163.com域名服务器就会把结果返回到本地域名服务器并加以记忆,然后我们在浏览器输入www.163.com就可以打开网易的页面了,这就完成了一个常规的域名解析过程(图9)。
假如根服务器遭到攻击
上文我们分析过根服务器在域名解析的最顶级,是最优先的查询,如果根服务器出现故障,整个流程就无法继续。因此如果全球的13台根服务器遭到攻击或者出现故障,那么将影响地球上数不清的网站的域名解析。
经常使用百度服务的朋友可能都还有一个印象,2010年1月12日7时左右,百度首页出现大面积访问故障。与此同时,百度旗下贴吧域名(tieba.com)也无法正常访问,更要命的是全国绝大多数地区均无法正常访问百度网站。
直至中午12时,百度才宣布北京恢复正常,随后全国访问才陆续恢复。
按道理类似百度这样的大型网站,黑客的攻击是无法将其服务器瘫痪这么长时间的,那么这次故障背后的原因是什么?
真实原因就是美国负责百度域名的根服务器遭到了黑客攻击,导致百度瘫痪。可见根服务器对互联网的影响有多大。难怪在这次事件之后,百度CEO李彦宏在i贴吧里发了“史无前例,史无前例呀!”9个字,表达对域名解析服务受制于人的无奈。
根服务器域名解析几乎关系到每一个互联网企业的生死。但是13台DNS解析服务器都是由美国控制,可以说,美国垄断了国际互联网,中国虽然上网人数多但是没有话语权。因此,我国专家把争取全球互联网的话语权的机会寄托在IPv6身上。
那么什么是IPv6?它就有突破DNS顶级解析服务器封锁的能力?
IPv6协议的前世今生
IPv6(Internet Protocol version 6,互联网通信协定第6版)是被指定为IPv4继任者的下一代互联网协议版本。IPv4则是目前广泛使用的互联网通信协议,它的最大问题是网络地址资源有限,因为IPv4采用A、B、C三类编址方式,可用的网络地址和主机地址的数目变得极为有限,实际上目前的IP地址已于2011年2月3日分配完毕。由于IP地址是网络中每台电脑的唯一标示符,IP地址的短缺给互联网的普及带来了极大的不便。 一方面是地址资源数量的限制,另一方面是随着电子技术及网络技术的发展,计算机网络将进入人们的日常生活,可能身边的每一样东西都需要连入全球互联网。比如随着物联网的发展,以后你家的冰箱、彩电都需要IP地址的支持。
因此在这样的环境下,IPv6应运而生。单从数量级上来说,IPv6使用32个十六进制数表示IP地址,理论上可能的地址有2128 ≈ 3.4×1038个。IPv6所拥有的地址容量是IPv4的约8×1028倍,达到2128个。这不但解决了网络地址资源数量的问题,同时也为除电脑外的设备连入互联网在数量限制上扫清了障碍。
对于Windows来说,Win7已经内置了对IPv6的支持,当我们打开网卡属性设置窗口时就可以看到Win7系统内置的IPv6协议组件(图10)。
IPv6如何破解根服务器垄断
在前面的叙述中我们知道了13台根域名解析服务器全部在美国,这样美国的垄断就很容易给他国互联网的发展带来限制。
2003年伊拉克战争期间,美国政府就曾授意ICANN终止对伊拉克国家项级城名“.iq”的解析,一夜之间,所有以“.iq”为后缀的网站都从互联网上蒸发了。而2004年4月利比亚顶级域名“.ly”瘫痪事件,则让利比亚在虚拟互联网世界里消失了整整4天。
正是看到域名解析受制于人的可怕后果,现在中科院计算机网络信息中心已成功建立了试验性的IPv6域名系统根服务器,可向全球范围内的IPv6网络用户提供根服务器级的域名解析服务。
在下一代互联网地址访问新技术IPv6即将推广的今天,域名系统的根服务器也将随之调整。对于中国来说,有实力也有能力建立域名系统的根服务器,但是IPv4解析已经被美国牢牢控制而且成为国际标准,中国不可能也没有能力去取代这个已经存在全球性的解析服务。但是IPv6则是正在发展的协议,我们可以创建(至少也是参与创建)IPv6 DNS根服务器。
因此,中科院计算机网络信息中心承担了一部分基于IPv6 DNS根服务器研究的相关项目,借助中国互联网络信息中心(CNNIC)运行国家.CN域名服务器和中文域名根服务器的优势,该项目建立了IPv6试验网,基本解决了IPV6域名系统根服务器的一系列关键技术,在全球最大的IPv6试验网络6Bone上建立了骨干网络节点,开展了顶级地址分配机构(pTLA)测试工作。
这样在IPv6技术下,我们通过在中国建立全球IPv6域名解析服务器来突破美国域名解析的垄断,目前已经取得了长足的进步。假设在中国建立IPv6根域名服务器,那么不仅可以大大加快域名解析速度,而且给中国互联网的安全带来更多的保障(图11)。
互联网的桥梁——光缆
在全球互联网的“血液循环”中,除了托管数据中心、13个根服务器之外,三条最主要的海底光缆是全球互联网运作的关键,一旦这三条海底光缆同时遭到破坏,整个互联网界将会宣布Game Over!让我们一起来继续揭秘。
最重要的三条海底光缆
据TeleGeography报道,全球互联网的主要光缆只有三条,分别分布在长岛Mastic海滩、纽约州Manahawkin市和纽约州Tuckerton。那么为什么这三条光缆如此重要?
首先我们来看一张根服务器分布图(图13),可以看到在美国的东海岸分布了A、C、D、G、H、J六台根服务器,显然这是全球互联网最重要的区域,每天全球有数以亿计的解析要连接到这些服务器。长岛Mastic海滩、纽约州Manahawkin市和纽约州Tuckerton正是处于美国的东海岸这片区域,而且这片区域集中了大量的互联网服务商和高科技IT公司。这几条光缆的两端连接美国的东海岸和西欧,是一些世界最稠密、重要的基础设施点。
那么这么多的数据是通过什么传输到此地的?答案是:海底光缆。所以为了保证这些海量数据的传输和各类大型公司的数据传输,通信服务商就在这里架设了三条光缆,美国的东海岸和西欧的海量数据就通过这些光缆双向传输。而且光缆两端作为世界互联网的骨干节点,它们的功能就类似高速公路之间相连的两座巨型高速立交环岛,从海底接出来的光缆再通过各种线缆连接到世界各地,因此这三条光缆成为世界互联网最重要的光缆就不足为奇了。那些从海底爬出来的往外连接的光缆是不是很像连接互通立交上的那些公路呢(图14)。
为什么要用光缆连接电脑
大家知道最早的互联网连接的电脑数量并不多,连接电脑彼此之间的距离也不遥远。
但是随着互联网向全球拓展,连接到互联网的电脑越来越多,彼此之间的距离也越来越遥远。地球上五大洲之间的电脑如何连接?在地球上海洋占用的面积最大,因此互联网骨干服务器之间的连接大多是通过国际海底光缆来完成的。
这是因为海底电缆不容易受到人们的生产作业的破坏,而且传输的距离也比较简洁。现在全世界大大小小总共建设了170多个海底光缆系统,总长近亿公里,大约有130余个国家通过海底光缆联网。
目前,全世界超过80%的通信流量都由海底光缆承担,最先进的光缆每秒钟可以传输7TB(1TB等于1024GB)的数据,几乎相当于普通1M家用网络带宽的730万倍。有个网友利用微软的Bing地图以及Wikipedia的数据,做出了一幅互动式的世界海底光缆分布图,看看世界上海底光缆是不是和蜘蛛网一样呢(图15)。
怎么维护海底光缆
由于海底光缆大多铺设在大洋几百米深的海底下,常规的渔业生产一般不会对光缆造成破坏。但是进行深海捕捞作业以及海底地震、海啸时,这些因素却会严重影响到海底光缆的安全。一旦光缆出现故障,怎么进行维护?
现在大型光缆公司都有专业的维护公司,GlobalMarineSystems就是一家专业的海下安装和维护公司,总部位于英国。他们的专业维护工具是一艘6吨重、价值1000万美金的深海遥控操作机——代号“野兽”。
它的工作地点位于水下超过一英里深的地方,采用履带在海底行进。每当需要对海底光缆进行维护时,操作人员在母床上用一个操纵杆控制“野兽”,利用其声纳、摄像机和金属探测仪来定位受损坏的光缆。找到受损的光缆后“野兽”会将故障光缆干净利索地切断,并将两端都带到水面,然后在船甲板上进行维修后再放入海中,有些“野兽的英姿”,是不是有点像月球车(图16)? 光缆如何连接电脑
实际上互联网就是一个庞大的局域网,它的结构和我们公司里的局域网并没有什么不同,一般是由服务器、交换机和终端三部分组成,三部分之间就是通过缆线连接的。当然小的局域网都是用普通的网线而不是光缆(图17)。
在上面的图中,我们也可以将其看成互联网,把WEB服务器看成是提供互联网出口服务的大型服务器(如电信服务器,它的另一端则连接世界上其他服务商的服务器),它的数据中心则可以看成是交换机,其他电脑则看成是连接到互联网的个人用户。
不过在现实生活中,每个用户实际上是先连接到本国提供出口带宽的宽带服务商服务器上,这些服务器再和其他国家的服务器组成局域网。由于世界上各个国家服务器的距离遥远,为了减少数据在传输过程的衰减,并且能够稳定地传输海量的数据,服务器之间是通过海底光缆进行连接的。光缆大多是由连接两国的通信服务商投资兴建的,在港口城市的各个网络服务商总部机房,这些光缆宛如花束一样从海洋底钻出来,然后从这里接至全球各地。
当海底光缆发生意外
有一些技术狂人会发出这样的想象,这三条海底光缆如果同时发生故障将会是什么情况?
其实道理很简单,上文我们提及的全球互联网的三个关键部位数据中心、根服务器、光缆,它们是互联网这个虚拟世界的硬件组成,是硬件就会发生故障,三条海底光缆发生故障不是没有先例。
2008年12月19日,地中海下面的三条光缆遭到破坏时,整个中东和南亚部分地区的互联网服务先后出现故障。
其中埃及“伤得最重”,整个国家80%的网络服务瘫痪;沙特阿拉伯和其他海湾国家也好不到哪里去,电子邮件发不出去、收不进来,网页无法登录。远至马来西亚和中国台湾地区的网络服务都受到影响。
同样的事情在2012年1月和2月两度重演,致使整个地区的家用和商务网络服务中断多日,无法正常运行。
脆弱的互联网
通过上面几个章节的揭秘,我们已经知道全球互联网的运作原理,虽然随着技术的完善,全球互联网已经呈现坚不可摧的现状,但是在这个虚拟世界里,美国具有绝对的话语权。从这个意义上来说,互联网是脆弱的。
作为全球互联网的发源地,全球13个根服务器中美国占了9个,而全世界主要的三条海底光缆中,有两条位于美国……这些条件都会给美国攻击别国的互联网提供了先天条件。从这个意义上来说,全球互联网是脆弱的。
硬件攻击的可能性
事实上,互联网诞生的背景是在上世纪美苏争霸期间,现在互联网的民用欣欣向荣,丝毫不能削弱它作为诞生于军用之需的基因。
1991年海湾战争期间,美国向伊拉克派出特工,将伊从法国购买的防空系统使用的打印机芯片换上了含有计算机病毒的芯片。在美国对伊实施战略空袭前,美特工用遥控手段激活了这些芯片中的病毒,致使伊防空指挥中心主计算机系统程序错乱,伊防空C3I系统失灵。这次行动也让美军尝到了将信息技术用于网络战的甜头,网络攻防开始被提升到战略高度。
而上文我们提到的2010年1月12日百度网页大规模瘫痪的事件,虽然事后发现是黑客攻击了负责百度域名解析的根服务器,但是怎能不重视9台根服务器在美国本土、服务器的机房由美国维护的事实。在硬件上,美国具有攻击别国互联网的可能性。
病毒攻击
除了有硬件攻击的可能性,病毒攻击往往使互联网成为另一个战场。
2008年,在发生军事冲突的同时,格鲁吉亚与俄罗斯互相指责对方发动网络战。由于俄罗斯的攻击,格鲁吉亚总统萨卡什维利的网站不得不依靠美国一家公司的服务器运行。
2010年9月,伊朗有约3万个互联网终端和布什尔核电站员工个人电脑受震网(Stuxnet)蠕虫病毒攻击,伊朗指认美国和以色列发动网络攻击。
2012年5月,俄罗斯安全专家发现一种威力强大的电脑病毒“火焰”(Flame)在中东地区大范围传播。俄罗斯电脑病毒防控机构卡巴斯基称,这种新病毒可能是“某个国家专门开发的网络战武器”。
“火焰”病毒最早可能于2010年3月就被攻击者放出,但一直没能被其他网络安全公司发现。“火焰”病毒出现的最早时间甚至可追溯到2007年。在火焰病毒重灾区伊朗,病毒攻击了伊朗石油部门的商业情报。由于情报的泄露,这给伊朗带来了不可估量的损失。
此次“火焰”病毒与之前的“震网(Stuxnet)”、“毒区(Duqu)”等病毒类似,重点攻击国家命脉行业!但是,“火焰”病毒比“震网”病毒要严重很多,其所包含的代码数量大约相当于之前发现“震网”病毒的20倍。
“火焰”病毒具有混合型特征,集文件传染、蠕虫、木马、黑客程序等特点于一身,是迄今为止发现的最大规模和最为复杂的网络攻击病毒。同时,“火焰”病毒构造十分复杂,据了解,该病毒用了 5 种不同加密算法、3 种不同压缩技术和至少 5 种不同文件格式,包括其专有格式,病毒文件达到20MB之巨(代码打印出来的纸张长度达到2400米)。
美国到底有多强
若干年前,美国军事记者詹姆斯·亚当斯曾在其撰写的《下一场战争》一书中假设:借助事先植入的木马程序,美国政府远程关闭了德黑兰的民用电力网络,瘫痪了中国的三峡水库控制系统,扰乱了沙特阿拉伯的程控电话交换网络,进而得以兵不血刃地胁迫这些可能拥有庞大常规武器装备的“强国”服从美国的要求,阻止了冲突的发生。
现在这一假想越来越有实现的可能,原因是美国的互联网实力具有强势地位,那么美国网络战实力到底如何?
从1990年代起,美军大量招募网络人才。1995年,美军16名“第一代网络战士”从美国国防大学信息资源管理学院毕业。两年后,第一批国家级“网络战士”参加了美国国家安全局组织的秘密演习。
在1999年科索沃战争中,南联盟方面使用多种计算机病毒,组织黑客实施网络攻击,使北约军队一些网站被垃圾信息阻塞,一度瘫痪。而美军则通过截取的通信链路把制造的假雷达图像插入南联盟防空网络系统中,致使南防空系统陷于瘫痪。美军的网络战规模和效果都有增无减,时任美国国防部副部长哈默称之为全球“第一次网络战争”。 在此前后,美国及时将网络作战的经验“理论化”、“再实践化”。从1998年10月的《联合信息行动条令》到当年建立的“全球网络作战联合特遣队”,从2001年7月的“网络中心战”概念到次年诞生的“网络中心战”新型作战模式,一直到美军战略司令部组建了美军历史上也可能是世界上第一支“黑客”部队——网络战联合功能构成司令部(JFCCNW)。
根据对美军网络战项目跟踪多年的防务专家乔尔·哈丁的评估,美军涉及网络战的军人已经增至5万~7万人,其中网络战专家3000~5000人,加上原有的电子战人员1.5万人,总数已接近9万人——这意味着美军网络战部队人数已经相当于7个101空降师。
在硬杀伤网络战武器方面,美国已研制成或正在发展电磁脉冲弹、次声波武器、激光反卫星武器、动能拦截弹和高功率微波武器,可对别国网络的物理载体进行攻击。
由于计算机芯片、操作系统、网络协议、路由、域名解析等是绝大多数国家和地区的绝大多数网络运行的基础,而它们大都打上了“美国制造”的标签,美军通过指令启动可能存在的芯片内置程序,不管是自毁还是“反水”,都易如反掌。
另外,美国控制了全球13台域名根服务器中的10台,只要停止解析服务,对方的网络就会立即陷入瘫痪或停顿。
因此,虽然美国不断渲染各种针对美国计算机网络的攻击事件,但实际上美国无论是网络运行的稳定性、可靠性和安全性,还是其锻炼出来的人才队伍水平、培养出来的网络安全意识水平等,都远远超过其他国家,美国自身的网络战能力更是无人能及!
延伸阅读
近几年发生的主要的互联网故障事件
A2006年12月26日20点25分,我国台湾省南部海域发生7.2级海底地震,造成该海域13条国际海底光缆受损,致使我国至欧洲大部分地区和南亚部分地区的语音通信接通率随即明显下降;致欧洲、南亚地区的数据专线大量中断;互联网大面积拥塞、瘫痪,雅虎、MSN等国际网站无法访问,1500万MSN用户长期无法登录,1亿多中国网民一个多月无法正常上网,日本、韩国、新加坡等地网民也受到影响。直到5艘海缆维修船经过一个月的努力,才将断裂的海缆修复。海底光缆已经和我们的日常生活紧紧相连在一起了。
B 2009年5月19日,北京、天津、上海、河北、山西、内蒙古、辽宁、吉林、江苏、黑龙江、浙江、安徽、湖北、广西、广东等地区均有网民反映上网遭遇故障,大量网站无法打开,网速也受到了很大影响。20日,工信部在官方网站上发布公告称,故障原因是由于暴风影音网站(baofeng.com)的域名解析系统受到网络攻击出现故障。
C 2012年2月9日,来自ISC的Mark Andrews发现通过L根服务器无法访问根区数据。这直接导致数以百万计电脑无法访问L根服务器解析的域名。最终确认是位于澳大利亚境内的一个L根镜像服务器出现了故障。
D2012年2月24日,澳洲最大的运营商电讯(Telstra)由于网络数据中心发生网络中断故障,导致数百万当地用户受到影响。电讯的固网和移动网络服务均中断,使预计三百万名用户断网了一个小时左右。发生故障时,用户们无法连接NextG移动服务、固网宽带、BigPond邮件服务,并且无法连接国际站点。
E2012年8月6日,维基百科位于佛罗里达州的数据中心发生光纤断线的技术性意外,致使数百万使用者无法存取其中的资料。