互联网

阿帕网还不是互联网,它只是一个网络。短短几年之内,又有其他与之类似,但无法相互连接的分组交换网络陆续面世。例如,20世纪70年代初,施乐帕洛阿尔托研究中心的工程师想建一个局域网来连接他们正在设计的办公室工作站,在该中心就职的一位刚从哈佛大学毕业的博士生鲍勃·梅特卡夫(Bob Metcalfe)发明了一种使用同轴电缆(即插入有线电视机顶盒的那种电缆)来创建高带宽系统的方法,他把这种系统命名为“以太网”(Ethernet)。随后,人们在夏威夷以此为模板建立了一个名为ALOHA网络的无线网,通过超高频和卫星信号来发送分组数据。此外,旧金山有一个名为PRNET的分组无线电网络,还有一个名为SATNET的卫星网络。尽管这些分组交换网络有类似之处,但它们不能兼容,也不可互通。

1973年年初,罗伯特·卡恩开始动手解决这个问题。他认为,应该设法让所有这些网络都能相互连接,而他所处的位置恰好有助于推动这一目标的实现。当时他已经离开了BBN公司(他曾在BBN公司协助开发IMP),在ARPA的信息处理技术局担任项目经理。先后从事过阿帕网和PRNET项目的卡恩把连接这两个网络及其他分组网络作为自己的使命,他和同事们开始把该系统称为“互联网络”(internetwork)。过了一段时间,这个词又略微缩短为“互联网”(internet)。

卡恩请文特·瑟夫来担任他的项目合作伙伴。在负责撰写征求修正意见书和制定阿帕网协议的团队里,瑟夫曾是斯蒂芬·克罗克的左膀右臂。瑟夫成长在洛杉矶,他父亲曾在一家为阿波罗空间项目生产发动机的公司工作。和戈登·摩尔一样,他小时候也喜欢玩危险但有趣的化学实验套装。他回忆说:“我们有镁粉、铝粉,还有硫黄、甘油和高锰酸钾这样的东西。把它们倒在一起的时候,就会蹿出火焰。”五年级时,他厌倦了学校教的数学,于是老师给了他一本七年级的代数书。他说:“我花了整个暑期把这本书上每道题都解了一遍。我最喜欢解方程,因为它们就像小小的推理故事。你得弄清楚‘X’是谁,我一直都很想弄清‘X’究竟会是什么。”他还对科幻小说非常着迷,尤其是罗伯特·海因莱因(Robert Heinlein)的小说,从那时起,他几乎每年都会重读J·R·R·托尔金的《指环王》三部曲。102

瑟夫是早产儿,因此有听力障碍,他从13岁开始使用助听器。也正是在那个时候,他开始穿大衣、打领带,并提着一只公文包去上学。他说:“我不想跟其他人都一样。我想让自己看起来与众不同,想让人注意到我。这是一种非常有效的方式,比戴鼻环效果要好,况且当时是20世纪50年代,我估计我父亲不能容忍我戴鼻环。”103

高中时他和克罗克成为最好的朋友,周末他们一起做科学项目,玩三维国际象棋。从斯坦福毕业后,他在IBM工作了两年,然后进入加州大学洛杉矶分校读博士,在克兰罗克的组里工作。在这里,他结识了鲍勃·卡恩,后来卡恩先后在BBN公司和ARPA任职,但两人依然保持着密切的关系。

1973年春天,卡恩在自己的互联网络项目启动后拜访了瑟夫,向他介绍了阿帕网之外的所有其他分组交换网络。卡恩问:“我们怎么才能把这些不同的分组网络连接到一起呢?”瑟夫接受了这项挑战,随后,两人开始了为期三个月的合作,正是这项合作推动了互联网的诞生。卡恩后来说:“我俩立马就动手做了起来。文特是那种喜欢把袖子一卷,说我们动手干的人。我觉得他就像是一股清新的空气。”104

他们1973年6月先在斯坦福组织了一次会议来征询意见。瑟夫后来表示,由于采用了这种协作方式,因此解决方案“成为一种人人都能随时动手修改的开放协议”。105 但多数工作都是由卡恩和瑟夫这对搭档完成的,他们会扎进帕洛阿尔托的Rickeys Hyatt House酒店或是在杜勒斯机场旁边一家酒店里进行深入讨论。卡恩回忆说:“文特喜欢站起身来,画这些像蜘蛛网一样的图,我们常常翻来覆去地讨论,然后他会说:‘我来画幅图吧。’”106

1973年10月的一天,瑟夫在旧金山一家酒店的大堂里画了张简单的草图,把他们的方法确定下来。这张图上有阿帕网和PRNET等各种网络,每个网络都连接了很多主机,还有一批在各网络之间传递数据包的“网关”(gateway)计算机。最后,他们一起在五角大楼旁边的ARPA办公室里花了整个周末的时间工作,几乎熬了两个通宵,然后在附近的万豪酒店吃了顿庆功早餐。

他们没有让这些网络各自保留不同的协议,尽管这种设想比较容易接受。他们想要一种共同协议。这种共同协议能使新的互联网络呈爆发式增长,因为使用新协议的任何计算机或网络都能在无须转换系统的情况下接入。阿帕网和其他任何网络之间的流量都应该能够无缝传输。于是他们产生了这样一种设想,即让每台计算机都采用同样的方式和模板来标注数据包地址。这好比世界上寄出的所有明信片都必须有四行地址栏,都要用罗马字母注明街道号码、城市和国家名称。

他们制定了一项IP协议(Internet Protocal,互联网协议),该协议对如何在数据包标头上标注目的地做了具体规定,有助于确定数据包通过网络到达目的地的方式。IP协议的上一层是TCP协议(Transmission Control Protocol,传输控制协议),该协议的目的是规定如何以正确的顺序重组数据包,检查数据包是否存在缺失,如果有信息丢失,则会要求重新传输。这些协议合称TCP/ IP。卡恩和瑟夫在一篇题为《分组网络互联协议》的论文中发表了相关成果。互联网从此便诞生了。

1989年,在阿帕网诞生20周年纪念活动中,克兰罗克、瑟夫以及许多其他网络先驱者纷纷聚集在曾安装过阿帕网首个节点的加州大学洛杉矶分校。他们写了诗、歌曲和打油诗来庆祝这一盛事。瑟夫朗诵了一段仿莎士比亚的诗章,题为《罗森克兰茨和以太网》,他在其中提出一个如何在分组交换和专用电路之间进行选择的哈姆雷特式问题:

整个世界都是一张网!网中所有数据都不过是信息包罢了。

它们排队等待存储转发,

然后就消失不见。这是一个等待交换的网络!

交换还是不交换?这是个问题:

是忍受随机网络中存储转发带来的痛苦,

还是为海量数据包搭建电路,

并一心一意为它们服务?107

2014年,人类又迈入了一个新的时代。此时的瑟夫任职于华盛顿的谷歌,仍在做着自己喜欢的事情,为他们发明的互联网所产生的奇迹而惊叹。戴着谷歌眼镜的瑟夫说,互联网每一年都会带来新生事物。他说:“社交网络(我加入了脸谱网,想尝试一下社交网络)、商务应用、移动设备等新鲜事物不断涌向互联网。互联网规模已经增长了100万倍以上。没有多少事物能像互联网这样不间断地发展,但我们创建的那些老协议却依然可以用。”108

《创新者:一群技术狂人和鬼才程序员如何改变世界》