互联网之父拉里·罗伯茨:用创新算法提高押注胜率

2021年08月06日 13:30  

本文7079字,约10分钟

编者:本文选编自《互联网口述历史第1辑·英雄创世记》之《永不陨落的“互联网之父”》(中信出版集团)。

近日,由互联网实验室、中信出版集团、浙江大学融媒体研究中心和浙江传媒学院互联网与社会研究院等联合主办的《互联网口述历史第1辑·英雄创世记》专家研讨会在京举行。

互联网对人类的贡献绝对不亚于电灯的发明。更重要的是,电灯无法照亮人们的内心,而互联网是点亮了人类精神世界的一盏灯。当然,我们需要铭记和感谢一代先驱们的贡献。

——国家信息化专家咨询委员会常务副主任  周宏仁

互联网口述史给我们带来的思考要远远大于技术层面。它会带来我们对人类社会发展的思考。怎么去真正思考互联互通,并存互补,以及共享,融合创新。

——清华大学教授  方兴东

 

访  谈  者:方兴东

访谈地点:美国加利福尼亚州

访谈时间:2018年9月12日

 

访谈者:很高兴,我们又见面了。后来我们也访谈了不少人,关于互联网到底是谁发明的,有不少争议,您怎么看?

拉里·罗伯茨: 对于互联网到底是谁发明的争议, 在我看来这个问题的关键是关于当时真正重要的发明是什么?我认为就是分组交换,事实上你可以通过使用共享和分组网络,来省下本来会花在电路交换里的所有的钱。

分组交换的第一次应用是与大规模并行处理网络控制协议一起实现的,大规模并行处理网络控制协议是我的研究生斯蒂芬 · 克罗克领导的团队为我开发的一个项目。他们提出了计算机之间的协议,基本上当时的 NCP 和输入处理器没有能力实现我的要求,即在哪里存储信息。他们最终做到了。他们把信息保存在一台计算机里,然后让它来发送。但是计算机没有足够的内存来大范围地进行这项工作。NCP 允许你在没有任何 TCP 类型操作和任何端到端协议的情况下进行操作,你所要做的就是发送文件,然后网络在很大程度上会帮你解决剩下的问题。

斯蒂芬 · 克罗克告诉我,这里可能会有一个超负荷的情况,这是一个技术上的缺陷。当时文特是研究生小组的一员。在我雇了鲍勃 · 卡恩到我办公室之后,他就雇了文特。文特和鲍勃在 TCP 上尝试做一个端到端的事情,这样他们就可以有绝对清晰的文件传输,没有任何潜在的错误。这基本上是文特在做的。所以当时的讨论主要是文特和鲍勃谁来接管办公室,许多事情的功劳应该记在谁的头上。这就是他们获得德雷珀奖的原因,因为在我看来,网络必须要有一个标准,特别是在有了阿帕网的情况下,有一个全世界通用的 TCP/IP 作为标准特别重要。我们需要一个标准,鲍勃确实做到了这一点,因为鲍勃得到了政府的批准,基本上让它成为唯一一个大家接受的标准,这就迫使其他厂商去按这个标准做。现在所有人都是自由的, 他们不必去建立一个新的标准或做任何事情。文特主要进行 TCP 设计,他们要求所有网络协议操作在 1983 年转换为 TCP。

1973 年,他们讨论过用“互联网”这个词来谈论一个连接其他网络的网络。现在我们正在连接其他网络,我们在英国有一个联网的网络,在夏威夷有一个网络连接了分组无线电。我们正在建造其他网络,在每一所大学里都会看到一个小的计算机网络,就像在麻省理工学院一样,各种各样的计算机都连接在一起。他们总是通过网络相互交谈。但是,他们一直在争论概念,尤其是文特,因为他在麻省理工学院和谷歌工作的时候跟大多数媒体都打过交道, 有一些媒体上的关系。媒体上就有了类似基本上 TCP 才是主要的发明,分组交换是不相关的这样的说法。这不是什么大问题。当然,它们其实都挺重要的,但 TCP 可以帮助阿帕网避免出现增长问题,而这些问题可能不会被重新设计,比如告诉你要有正确的缓冲空间分配。缓冲区分配问题,我们很容易解决。我是说,在 ATM 论坛上,我们做了很多,讨论了哪一个最好。但无论如何,TCP 是一个奇怪的应用程序,除此之外,它只是帮助人们获取移动文件和结束获取,而且效果非常好。从 1983 年到 1985 年, 因为没有任何方法来控制负载,网络很容易崩溃。

当时网络基本上是通过改变 TCP 规则来修复的。这主要是由国际互联网工程任务组的人来完成的,其他人没有机会去修复它。这种分配是正确的,这样网络就不会把事情搞砸,不会在传输过程中崩溃,所以在 1985 年网络崩溃问题就修好了。当然,它现在仍然运行得很好。现在 IPv6 必须慢慢更换,它应该有可变长度的寻址,所以它不需要做成第 6 版。当时我们都没有想过对长度也进行设定,因为在硬件上很难做到,现在这是个微不足道的问题。所以更换是一个困难的过程,固定长度反而更容易。他们确定了一个比这个小得多的地址空间,实际上用的是我在Telenet 创建的国际电信联盟标准,那个标准有很大的地址空间。它现在已经在国际电信联盟标准中,所以基本上, 在媒体上发生了这样的争论,不是我们几个人认为什么更重要的是关于 TCP 与分组交换的争论。在这个背景下,卡恩和文特放下了分组交换,推出了 TCP,声称这才是网络互联, 基本上所有的网络都能联成一个网络,这就是互联网。这不是大问题。事实上,一旦你收到一个协议,你就可以把它转换成另一个协议。他们在伦敦做了,在夏威夷也这么做了。在任何需要的地方都可以这么做,还有两个地方我记不起来了,实际上是在另一个网络上收到另一个协议。

随着时间的推移,他们在法律上还存在一点小问题, 因为这是他们的争议所在,并且曝光给了媒体。关于这件事,我没有太多的话要说,我不想在公开场合争论这个案子, 这不值得。我的意思是,分组交换显然是技术上的改变。TCP 是当时接连出现的三个或四个协议中的一个,有一段时期起到了很大作用。现在它在网络上进行得太慢了,TCP 成了一个真正的问题。我不认为它是一个协议,因为它在网络上运行的方式就是假装网络是无能为力的。它不能让网络很好地工作,因为网络会把信息丢在后面。这是因为它没有任何内存分配,没有任何方法来管理传输速度。所以你可以从你的计算机上管理它。这是一场灾难,使我们陷入依赖于距离的延迟,这是 TCP 无法克服的,所以你不能发送超过 20 兆比特到 100 兆比特的数据。今天的网络以 100 吉比特每秒的速度运行,你可以以高于 100 兆比特每秒的速度发送文件。

 

访谈者:您离开美国高级研究计划局后,是鲍勃 · 卡恩接管了吧?

拉里·罗伯茨:我离开美国高级研究计划局时,把项目交给鲍勃接管。他一开始是在 BBN 工作, 但他和弗兰克 · 卡韦关系不好。他想来美国高级研究计划局,我就把他招进来了。他很聪明,能力也很强。我离开后,他接管了项目,虽然其间利克莱德也来帮过我,但时间不长,他是来帮我交接项目的。所以,鲍勃后来接手了。我们没什么交往,关系并不亲密,也会有分歧。

后来 20 世纪 80 年代的时候,他聘用了温顿 · 瑟夫, 二人一起研究 TCP/IP。温顿是因为 TCP/IP 为人所知的。鲍勃当时是管理办事处的,他参与了 TCP/IP 对 DoD 模型 ①的标准化项目,也就是说,要用 DoD 模型的话,你买了计算机,还需要连系装置。他要求所有人都备好和TCP/IP 对接的连系装置,这是让TCP/IP 通过审核的重要步骤。当时可以说是TCP/IP 和其他协议的一场乱战。我认为,他在这个项目的参与度很高,他也将TCP/IP 变成了全球通用的网络标准,就像 DoD 模型一样。

 

访谈者:您和温顿 瑟夫联系多吗?

拉里·罗伯茨:我在做第一个项目的时候就认识温顿了, 但我和他关系一般,因为他一直在贬低分组交换数据网络,还把他在做TCP 的时候遇到的问题都归结在分组交换数据网络上,这是我们之间长久以来的大问题。不过我们和平共存。

现在,大家越来越爱研究历史了。的确我们都参与了历史的进程,我们所做的的确是给这个时代带来了举足轻重的变化。

机器之间的不和都比我们之间的多。我们之间关系也还不错,不怎么吵架。只有谈到工作的时候才可能会吵, 但都知道的,我们从不把这种事搬到台面上。

后来我们也不会聚会见面,只有在获奖的时候才会重聚。即使在这种场合,常常也只能聚三个人,聚不齐四个人。比如德雷珀奖我们都会出席,但其他的奖有人会在西班牙领,有人在日本领。我们不会为了见面而见面,我们彼此没那么亲近,有事我们就发邮件,现在大多时候是这样的, 毕竟我们不会花太多的时间打电话。

 

访谈者:“包”这个概念,是唐纳德 · 戴维斯① 最先提出的吗?

拉里·罗伯茨:1967 年的剑桥学术会议上,我见到了英国计算机科学家唐纳德 · 戴维斯和他的团队。我对他们并不了解,此前从未听说过他们。

交流中我谈到了我正在实施建设中的互联网计划。他也谈到了他在这一方面的研究,但是他找不到政府或者哪个实验室来资助他。他研发了一个交换装置,这个装置在阿帕网出现之后也发展运行得很好。事实上,尽管他写了很多论文,而且是除了我和保罗 · 巴兰①31之外第一批研究分组交换概念的人之一。但后来他的工作对美国高级研究计划局和互联网联结任何事情都没有影响,我自己并没有参考他们的实验,我是通过研究数据包完成项目的。

他们提到有了 50 千比特的网线。9.6 千比特的网线是任何人都能搞到的最高速的调制解调器的网线。但是,秘而不宣的是,AT&T 研发出了一个巨大的盒子,里面装着七条或九条电话线,总之是有很多条电话线,来做 50 千比特的事情。不过,我在美国高级研究计划局内,在政府框架内做这件事更经济。我可以去建 50 千比特网线的网络,

这是比使用 9.6 千比特网线好得多的方式。

在 1965 年,我做第一个实验时,那个实验是用小块信息做的,而且我设计的这一块是最适合电话线的错误率。因为当时背景中有继电器,所以有很大的第一声噪声。这样你就会同时丢失一堆数据,而不仅仅是一点点。今天我们在线路上可能会损失更多,但后来我们失去了传输信息。

当时自动磁带和旧的纸带转发系统用于保存消息,这会极大地延迟后面的任何其他消息,这是一个非常糟糕的协议,只有小信息,没有大量信息。所以我必须重复整个包, 如果它丢失了,包就会被损坏。我找不到可以代替它的东西——我并不因此感到骄傲,所以我设计了这个主题来研究电话线的错误率,包的长度,大约是 1000 位。

但是,不管怎么说,保罗的助理启发了我“包”这个概念,我当时说太棒了,我需要这个单词,它微言大义, 一下子形象化了很多抽象的理论。(笑)

·

访谈者:保罗 巴兰、克兰罗克、戴维斯三人都提出过这个概念?

拉里·罗伯茨:是的。不过,克兰罗克提出理论的时间比任何人都早,这在他的文献中可以清楚地看到①。他发表论文的时间比保罗 · 巴兰所做的任何事情,比唐纳德 · 戴维斯所想的任何事情都要早。他出版的书也在戴维斯和其他任何的关于分组交换的理论之前。

保罗 · 巴兰在 1964 年发表了论文《论分布式通信系统》, 却一直没有产生什么影响。1967 年 10 月的加特林堡会议后, 我关注了他的报告,也让他参与了阿帕网的研发。但是,伦纳德· 克兰罗克是第一个和我谈列队理论概念的人,1964 年也发表了毕业论文。保罗 · 巴兰的论文确实说明了应该先搭建网络这一观点,但只是在谈论这个话题而已,并没有设计出网络。而且我在设计完网络后才看到他的论文,对我的设计并没什么帮助。

唐纳德 · 戴维斯在去世前发表论文说,伦纳德 · 克兰罗克根本没资格说自己首创了分组交换理论,我觉得他的评价是错误的。伦纳德 · 克兰罗克对于数据包当然有贡献, 他在 1961 年自己的博士论文开题报告中就提出了要探索网状中流量阻塞的数学基础,描述了信息可以拆分为大小完全相同的微小单元,只是没用“包”这个名称而已。我觉得唐纳德 · 戴维斯提出的“包”这个术语不错,于是在

1967 年的学会会议上采用了这个术语。虽然我比戴维斯研究得稍晚一些,但他却一直没有拿到资金支持,没发现任何新东西,而我当时已经设计好网络实施计划,并开始运作了。

在戴维斯去世后,他的儿子发表了一篇文章,说“包” 这个概念不是克兰罗克发明的,而是戴维斯发明的。这个词本是英语中用于邮政服务的单词,所以这个词的由来并不重要,当时我们考虑的只是用它来称呼信息片段,克兰罗克的书中清楚地说明了这一点。

 

访谈者:您和克兰罗克关系如何?

拉里·罗伯茨:我跟克兰罗克的关系很密切,相处得很合拍。有很多时候我是跟他一起工作的,我们在林肯实验室的时候就很熟悉了。

我能理解克兰罗克的工作,因为他实际上在研究分组交换网络理论。1964 年他出版了一本书,这本书能够帮助我了解他,了解他的论文及工作,时间越久了解越深入。

当时我认识的所有人和通信机构,AT&T 和 SDC(国防通信局)以及其他机构都认为分组交换是无望的,因为它会全部失败,这些包只是一个符号。但是克兰罗克的列队理论证明了进行分组交换而不丢失数据是可行的。这对我来说是相当重要的理论背景。正如我在一次采访中所说,如果没有这个,我不敢做实验,也不会去做,因为我没有证据证明它是有效的,以为包可能真的像大家所说的那样难以实现。

我们俩一起工作的时候,有段时间我仍然在实验室里研究 TX-2 计算机,就是在一个比这栋房子还要大的地下室, 里面到处都是设备架。我在设备架后面走来走去,他在一旁开始工作。然后我通过设备架的间隙悄悄和他说话,这把他吓坏了,后来他到处讲这个事儿。

 

访谈者:您和克兰罗克关系很密切,听说你们还一起去赌场?

拉里·罗伯茨:是啊。我和克兰罗克经常一块去拉斯维加斯赌钱,针对赌场的二十一点,我设计了一种算法, 用的是索普布理论,这是一种难度很高的算法,然后我在二十一点中运用许多数学原理,设计了我自己的算法,来推算出最优策略。最优策略就是要累加累减。这套理论在今天的二十一点中也广泛使用。现在,他们会用两幅迷你牌,还把它们混着用,推算起来就很难了。

克兰罗克当时住在洛杉矶,到拉斯维加斯去很方便。我住在东海岸,只能坐飞机去。有一次,我做了一个小机器,可以藏在我的口袋里的,机器里有石英石,有很精准的计时机制。它关得很紧,如果我碰它的话,它会开始计时,计时结束就会电我一下。赌场里没人会发现它。

我观察赌场里的幸运转盘。我发现,如果你可以推算出球会落到哪里,你就能赢。因为我要把赌注押在它可能会停留的数字的附近。也不是每次都能赢,因为需要估测到它会停到哪里,但这很难做到。

所以,当小球通过双 0 的时候,我开始让我的机器计时。这样我就可以知道它的停留点。通过之前的实验,我知道停留的概率。这样,我就可以推测出它会停在双 0 的哪一边,并把赌注押在那一边的数字上。

但后来呢,这个机器失灵了。它是用标准的晶体管集成电路做的,一热就失灵,因为我口袋里很热,所以它无法正常运作,也就没法电我一下,就失灵了。感觉小机器不是很有用。

冷却之后,我把小机器校准,又验证了它是有效的。之后,我们去了另一家赌场。我手里拿着录音机,用来录转盘的声音,因为我想改进我的小机器来假冒转盘的声音。转盘的声音体现了多普勒效应,每次转声音都不一样。我自己不用计算,声音会计算。于是,我就去录转盘的声音。

伦纳德当时在赌钱,我什么都没赌,我每次都押在类似的东西上。我录音的时候,赌台的管理员说:“你的手是怎么回事?”“你的胳膊是不是不想要了?”然后我们俩赶紧跑。当时他还赢钱了,是运气好的赢钱。后来我们不再去赌场了,实验终止,我不再研究它了,之后再也没有制造过类似的小机器。

每次我俩组队时,我们的赢面最大,这是更保险的做法。如果一方牌面大,一方牌面小的话,那就扯平了。但我们都赢过。他还用我的算法,因为我的算法比他的好用太多。那段时间我大概赢了一万美元。

其实我差不多每次去都能赢,但并不是说我每把都赢。我的理论依据是:你有一定的赢面,就不会输太多。因为打牌的话,他们用几副牌,你就要算几副牌。用我的算法, 我可以同时算两副,甚至四副牌,算四副牌难度就很高了。他也用我的算法,是因为我的算法可以算四副牌,这个算法后来我还发表了。今天人们一直在用的“高牌低牌”机制就是我开创的。当时,这套算法很有效,现在就不行了。

 

访谈者:您年轻时候的生活是怎样的,方便说吗?

拉里·罗伯茨:我的个人生活很单调,没什么故事性。我的感情经历也很简单。高中时谈过一次恋爱,但是

懵懵懂懂的,直到后来分手的时候,都感觉和那个女孩不怎么熟悉。大学时也谈过恋爱,但是每段恋情都不长, 我太忙了,心思都用在做实验、写论文上面。本科毕业之后,

1959 年我就结婚了。虽然后来离婚了,但是其实在那段感情中我第一次认认真真地和别人谈恋爱。

我的社交依然很少,一般就是独处,拼命工作,精力都放在工作和团队运作上面,我需要管理数百人,技术工作、管理工作一大堆。

我也不算爱运动,但是也参加过不同种类的体育活动。

“互联网口述历史”项目于2007年启动,历时近15年,已访谈全球50多个国家和地区的超500位互联网先驱与关键人物,它用口述历史的方式,真实记录下了全球人类新文明缔造者与引领者的群像,展示了互联网自诞生至今的发展细节。