【互联网传奇】
第五章 心有灵犀
无论从什么角度讲,雷纳德·克兰罗克都是拉里·罗伯茨最好的“益友”,也是他网络技术启蒙的“良师”。
早在1959年,罗伯茨就在林肯实验里认识克兰罗克。在克兰罗克的回忆录里,曾生动地记录了他俩首次邂逅时的有趣情景:
那年,我恰好获得了MIT给的奖学金研究项目,需要完成一项仿真实验,它只能在计算机上进行。虽然林肯实验室有TX-2晶体管电脑,但作为一个学生,我只获得每星期上机四天的许可,而且规定只能在午夜到早晨7点钟使用机器。没办法,这完全打破了我的作息习惯。
有天深夜,我正在机房里独自运行我的程序。夜深人静,昏暗的机房显得有点恐怖。突然,我听到了一种刚刚能辨别的奇怪响声“扑嘶嘶嘶……”,令人汗毛竖立。当时我想,实验室里就我一个人,学校把价值数万美元机器交给我使用,万一出了什么差错,我可担当不起。TX-2属于模块式的结构,这些模块经常被人偷走,现在很可能又来了盗贼。
我壮着胆子,掂起脚走近电脑。果然看见有个插槽上安装的模块不翼而飞。我瞪大双眼,仔细察看那个空空的插槽,顿时被吓得魂飞魄散:上帝啊,插槽前方有两只大眼睛!一个家伙从黑暗中站出来。我大声质问:“你是谁?想干什么?”
这家伙不慌不忙地回答说:“拉里·罗伯茨。我在修机器啊,可你是谁呢?”
罗伯茨就此认识了正在攻读博士学位的克兰罗克,对于计算机共同的爱好,使他们结为密友,也促成了他俩今后在阿帕网项目攻关中的携手奋斗。在林肯实验室的那些岁月,虽然克兰罗克比罗伯茨的资历浅,但是,如果说有谁影响了罗伯茨对于早期电脑网络的理解,那个人只能是克兰罗克。1961年,克兰罗克就以他的网络理论闻名电脑界,而罗伯茨直到1964年才知道什么是网络。
克兰罗克出身贫寒,中学读的是技术高中,到上大学时连社区学院低廉的学费都交不起,只好在夜校里注册,用晚上的时间读书,白天则用来给别人打工。5年后,他居然以优异成绩获得麻省理工学院(MIT)全额奖学金,如愿以偿进入电机工程系深造。美国有篇传记文章以《从连环画到赛伯空间》的标题记载了他少年的传奇经历。文章这样写道:“因特网的奇迹始于连环画”:
克兰罗克6岁那年阅读了一本描写“超人”的连环画,萌生了自己动手制作矿石收音机的想法。他搜罗到父亲的剃须刀片、母亲丢弃的卫生纸卷筒、一段铅笔芯和一些铜线,然后溜进公用电话亭,偷来一个电话耳机。在不具备任何无线电常识的前提下,他准备根据连环画“按图索骥”,制作一台不用电池的矿石收音机。
所有的零件基本备齐,仅仅差一只用来调谐的“可变电容器”。克兰罗克说服母亲给了他一点钱,匆匆跑到运河街地铁车站附件的一家电子商店。店员问他需要什么型号,把他问得一愣一愣。好在这位店员十分耐心,问清楚了克兰罗克的打算后,帮他选择了合适的可变电容,使他完成了这台“连环画上的收音机”。当耳机里传来“空中”的音乐,克兰罗克说不出有多么激动——这毕竟是他第一个“伟大”的发明。
克兰罗克可能错过了他一生中最大的发财机会。1957年在MIT的第一个暑期,他在林肯实验室找到了一份临时工作。他回忆说:“肯·奥尔森是我们研究小组的头,而那个夏天他正准备辞职创办DEC公司,邀请我与他一起下海。我想等拿到学位后再说,没有答应他的好意。这或许是个正确的选择,我没能发财,却发明了互联网技术。”
1958年,克兰罗克获得硕士学位,继续攻博,导师是“信息论之父”申龙。电机工程系绝大多数学生都选择信息理论为研究专业,只有克兰罗克独辟蹊径,为自己的博士论文选择了一个全新的题目——数据网络。1961年他发表第一篇论文《大型通讯网络的信息流》,1964年,他的博士论文《通讯网络》出版,其中都涉及到“分组交换”概念,虽然没有明确提出这个名称,他提出的方法是把信息切割成“散片”传送,以便提高通讯效率。
遗憾的是,罗伯茨的挚友克兰罗克早已离开了MIT,目前正在加州大学洛杉矶分校(UCLA)从事教学工作,再也没有更多的时间为罗伯茨提供网络技术支持。况且,克兰罗克的论文还只是一种理论模型,而保罗·巴兰和唐纳德·戴维斯已经将这种先进技术付诸了实践。他们俩人在不同的国家分别从事截然不同的项目,但是,先后得出的结论却惊人地相似:既能高效、可靠传送信息,又能承受攻击的组网方法只能是“分组交换技术”。
罗伯茨只能把帮他解决难题的希望,寄托在保罗·巴兰和唐纳德·戴维斯完成的技术创新上。
不久,罗伯茨亲自上门拜访了心仪已久的保罗·巴兰,聘请他担任联网计划的非正式顾问。巴兰给人的直观印象就是个典型的工程师,他说话简洁,思路清晰,从不夸大其辞,但也不乏幽默。在多次交谈后,罗伯茨渐渐熟悉和理解了巴兰提出的这项技术的真谛,也了解到巴兰发明这项技术时的坎坷。
保罗·巴兰是一位来自东欧的移民,1926年出生在波兰,2岁时随父母移民美国。父亲在费城开了一家杂货店谋生,孩提时代的巴兰不得不帮助父亲干活,用红色小推车给顾客送货。在艰难困苦的生活中,他在德克塞尔技术学院读完了大学,1949年拿到了电子工程学位。
德克塞尔技术学院没有开设计算机课程,巴兰觉得自己应该了解一点这方面的知识,便跑到宾夕法尼亚大学听课。他因故迟到了一个星期,心里想,大学课程的第一节无非是序言什么的,听不听无所谓。所以他直接去上第二节课。哪知道,老师一进来就在黑板上写下“1+1=0”的公式,让他大吃一惊:这是什么算式?“我环顾四周,期待有人站起来反驳这道糟糕的算术题,结果没有人反应。我才意识到其实是我大错特错了,一定是自己错过了什么重要的东西,无法弥补了。”
大学毕业后,巴兰曾经在ENIAC发明人创办的公司(E&M计算机公司)里,干过一段时期的技师,负责检验第一代商用电脑UNIVAC,然后转到了休斯飞机制造厂,从事雷达数据处理工作。1959年,29岁的巴兰到圣莫尼卡的兰德(RAND)公司谋到了一份计算机研究的职位。由于接触到许多大型军事项目,巴兰开始对所谓“生存性”通讯系统产生了浓厚的兴趣。巴兰任职的兰德公司是美国政府著名的“智囊”,当时承接的科研项目多数来自空军,通讯网络的安全是他们倍感头痛的问题。巴兰认为,美苏两家都在建立一触即发的弹道导弹系统,如果美苏爆发核战争,能否有效地躲避第一次弹道导弹的打击是取胜的关键,保持远距离通讯畅通显得至关重要,而美国的通讯网络系统却极其脆弱,根本经受不起打击,或者说网络缺乏“生存性”。
与克兰罗克一样,巴兰也是一边工作,一边独自进行通讯安全方面的研究,一边还在加州大学洛杉矶分校(UCLA)攻读博士学位。他经常往返于圣莫尼卡和洛杉矶,整天疲于奔命,实在感到力不从心。有一天,他驱车来到UCLA校园,天色已晚,又找不到任何地方停车。“这或许是天意,”巴兰对自己说,“我不应该因为求学,而影响了自己喜爱的研究。”就这样,他毅然放弃学业,一头扎进通讯技术里。
巴兰花了几乎3年时间,艰难地做出了设计方案,幻想着找到一种更稳定、更坚韧的基础网络构造方法。他仔细分析了目前正在使用的两种网络,其一是传统的集中式网络,就像电话网络那样有一个网络控制中心;其二是分散式网络,具有多个网络控制中心。这两种网络都容易遭受打击。受到MIT一位精神病学家的启发, 他把人类大脑神经网组织的模式,搬到了新的网络设计中。他说:“去掉网络中心,你就可以构造出一张新的网络,它由许许多多的节点联接而成,就像一张巨大的鱼网。”他最初画出的草图,就是这样一张“鱼网”图,“鱼网”的每一节点,都有多条道路与其他节点相连,被他称之为“分布式网络”。与前述集中式或分散式网络不同,在分布式网络中,参与联网的各台电脑都是平等的。这就像人脑细胞那样,哪个神经元都不能自称是大脑的“中心”。
在一篇《论分布式通讯网络》的论文里,巴兰写道:“即使在受到敌人打击后,分布式网络也能
保证数百个通讯站继续工作。”例如,从华盛顿经由芝加哥,向洛杉矶传递一份情报,即使芝加哥地区遭到了导弹的袭击,分布式网络也能保证这份情报改由其他节点传递。他通过研究表明,只要每个节点能与四个以上的其他节点连通,网络就会具有相当高的强度和稳定性。
他还进一步设想:分布式网络的通讯,可以把传送的信息切分为被称作“信息块”的较小单元,每个信息块自动选择网络中可以走得最快的“道路”传输,同时携带着有关其“发信地点”(起始地)和“收信地点”(目的地)的数据;一旦所有的“块”都到达了目的地,就重新编排恢复成原来的信息。形象地讲,就是把一封信的内容分成若干自然段,每个自然段都装进一个信封;每个信封上都写着收信人的姓名地址;这些信封分别经过相同的路线,或者沿不同的路线传送,哪里好走就走哪里;到达目的地后,再合成为一封完整的信。因此,巴兰将他的发明称为“分布式自适应信息块交换”,用他的比喻说,每个中间站点都在传送着一颗“烫土豆”——从上站接过的“土豆”烫手,只好不停留地向下站传送。
人们后来才知道,巴兰这些天才的设想并非坐在宁静的实验室想出,而是完成于颠簸的飞行途中。那时,他被兰德公司提名参加五角大楼一个技术委员会,每周都必须乘坐飞机,从加利福尼亚到华盛顿参加碰头会。不过,这也给他创造了独自思考的机会。他说:“我的文章要么是在侯机厅里,要么是在飞机座舱里写就。”
1962年,巴兰终于完成了他宏大的“生存性通讯网络”的设计。他把自己的设想写成了11篇系列论文,然后四处游说,把新的通讯方式的优越性向美国电话电报公司(AT&T)推荐。然而,就连贝尔实验室的科学家都拒绝了他的建议。他沮丧地回忆道:“人们一致认为,这家伙简直是疯了。”他不知道,反对者最主要的理由在于信息块交换需要数字网络,而处于垄断地位的AT&T是电话公司,它的业务只是提供声音信号通讯,巴兰的数字网络必将引发新的竞争,这个垄断集团投入大量资金建立起来的技术受到了巴兰设想的威胁,即使面对先进的技术,他们也绝对不会让步。
巴兰足足花了3年时间宣传自己的思想,撰写的文章堆积如山,仍然没有打动高层决策人士。直到1965年,在付出5年艰辛努力后,兰德公司终于同意把巴兰的方案推荐给空军,空军倒是很有热情,但项目最后还是在官僚们手中给弄砸了。巴兰没能实现自己的理想,不得不告别了心爱的网络研究。
无巧不成书, 就在这年秋天,英国国家物理实验室(NPL)唐纳德·戴维斯在研究分时系统过程中,也冒出了相似的念头,虽然他没有可能知道巴兰的研究。
工人家庭出身的戴维斯,童年经历与巴兰十分类似,只不过在2岁就失去了父亲,靠母亲在邮局当营业员菲薄的工资扶养成人。艰难的生活反而玉成了他,戴维斯从小就是全校最优秀的学生,好几所大学都愿意提供奖学金,使他在23岁就获得物理和数学两个学位。
在同事眼里,戴维斯是个温文尔雅、很有绅士风度的人。他具有超常的智力,处事含蓄但追求精细。他唯一的业余爱好是破译密码,二战期间,英国布雷契莱庄园的情报人员,就是根据他提出的算法破解了德军的“爱尼格玛”密码机。
1947年,戴维斯来到NPL,在“人工智能之父”阿兰·图林手下工作,研制当时最快的ACE电脑。图林逝世那年,他有幸拿到了奖学金,被派往美国麻省理工学院进修,从而接触到当时最新的计算机技术。回国后,他一直承担着英国通讯方面的工程设计。直到又过了10年,他再次前往美国,做了一段时间的访问学者,亲身参加过MIT的分时系统研究项目。
正是在对“分时系统”的研究中,戴维斯举一反三地认识到,网络数字通信也是一种“间歇”性的过程,传送信息只需要很少的时间片段,在多数时间网络是空闲的,因此完全可以把电脑主机“时间共享”的原理用在网络通信上,也就是说,把信息分成若干份“分时”传送,其结果将允许多人“同时”使用一条线路而不会相互影响,任何人都感觉不到别人也在使用这条线路。1965年11月的一个夜晚,戴维斯构想出了这种适合数据通讯的特殊网络。
1966年,戴维斯发表论文,将自己的研究结果公布于众。经过深思熟虑,戴维斯把“信息块”命名为“包”或“分组”,即选择“分组交换”(Packet
Switching)作为这一技术的正式名称,人们也把“分组交换”称作“包交换”。在他设计的网络里,穿行着无数“信息包”,每个“包”都能自动找到自己的传送路线。某个信息被分成若干“包”后,虽然它们走的道路可能不是一条,到达的时间也可能有先有后,但在终点会自动组合起来,还原成完整的信息——这些设计思想,几乎就是巴兰数字网络思想的“翻版”,但他俩不仅互不相识,而且从来没有交流过一次。
戴维斯希望用自己的发明,为英国建立一个全国性的分组交换网络,以提供成本低廉的数据通信。当年6月,他写了一份长达25页的《数字通讯网络计划》。戴维斯比巴兰幸运,由于他那时已经荣升NPL计算机研究所主任,能够得到英国电讯界的支持,帮他申请政府的资助。戴维斯申请到了20万英镑的经费,但这些经费只够建造一个分组交换的小型局域网,连接10台计算机和40多个终端。因此,戴维斯不得不将联网范围局限于在NPL内部。
直到这时,戴维斯才得知巴兰已先于自己发明了类似的东西。他诙谐地说道:“或许巴兰比我早到一步,但‘分组交换’的名字却是我取的。”而保罗·巴兰对他的贡献也十分赞许:“戴维斯造出了一个非常棒的名字。”
“分组交换”和分布式网络奠定了互联网络发展的基础,人们普遍认为,它的出现标志着现代电信时代的开始。对于罗伯茨的阿帕网计划来说,“分组交换技术”首先意味着信息传送的安全性,因为分组交换网络抵御故障能力强,只有出了问题的“信息包”而不是全部信息需要重新传输;如果“包”遇到发生故障的电脑或者部分线路中断,它会另找其他的传输路径,既使发生局部核战争,通讯也不会中断。“分组交换技术”也大大提高了信息传送的效率,比起“线路交换”每个人必须占用一整条线路来,“分组交换”则意味着一条线路能被许多人同时使用。
就在罗伯茨最困难的时期,他突然发现,克兰罗克、巴兰和戴维斯,三位网络先驱先后在1961年、1964年和1965提出的基本类似的“信息散片”、“信息块”和“信息分组”理论,不啻于为他准备了一份厚礼,互联网络原理设计中最后一道障碍迎刃而解了。
“心有灵犀一点通”。1968年6月,罗伯茨正式向“阿帕”提交了一份题为《资源共享的电脑网络》的报告,最终确定了阿帕网的基本结构,主要内容包括:采用分组交换的分布式网络,构造由“小精灵”组成的中介网络承担通讯任务,这些“小精灵”必须具有自动选择信息传递线路的功能等等。
他还提出,阿帕网将首先在美国西海岸选择4个节点进行试验。不用说,第一个节点自然选在加州大学洛杉矶分校(UCLA),因为雷纳德·克兰罗克教授正在该校主持网络研究。他把第二个节点选在了斯坦福研究院(SRI),那里有道格拉斯·恩格巴特(D. Engelbart)博士,恩格巴特是制订阿帕网初期计划的13
个主要研究人员之一,正在进行“扩展人类智能”的实验,用他自己的话说:“这正是我求之不得的事情。”此外,加州大学圣巴巴拉分校(UCSB)和犹他大学(UTAH)分别被确定为第三和第四节点,这两所大学都是电脑绘图研究的先驱,对资源共享需求迫切,泰勒的前任伊凡· 苏泽兰教授此时正任教于UTAH。参加联网试验的机器包括Sigma-7、IBM360、PDP-10和SDS-940等不同类型的大型主机,正好满足了泰勒梦寐以求的心愿。
从当时勾画的草图上可以看到,4个节点的阿帕网,其实只有三个节点属于“分布式网络”,另外一个节点——犹他大学(UTAH)的PDP-10小型电脑,则是经由斯坦福研究院(SRI)的XDS-940主机连接到网络的。尽管如此,四台联网的电脑(方形图)都无一例外地通过“小精灵”(圆形图)互连。
于是,设计和制造“小精灵”,成了罗伯茨下一步的重点目标。他还记得,那天在车上听完卫斯理·克拉克讲述“中介电脑”的设想后,曾向克拉克询问:“谁最合适为我主持中介电脑的研究项目?”
“全美国只有一个人可担此重任,”克拉克斩钉截铁毫不犹豫地回答,“那就是弗兰克·哈特!”