1700496793
在人际关系方面,这些协议证明了一种微妙却又持久的焦虑来源。我在很多天前给某人发了一条消息,但我怀疑他们根本没有收到?现在是中午12点5分,我们的通话定在中午,我们都在期待对方打来电话吗?你的回答似乎很奇怪,是我听错了,还是你听错了?再说一遍好吗?
1700496794
1700496795
我们大多数的通信技术(从电报到文本)仅仅为我们提供了一种新的渠道,用以体验人与人之间那些熟悉的挑战。但是,随着互联网的发展,计算机不仅成为一种渠道,也成为终点:对那些说话的人来说。因此,他们需要为解决自己的沟通问题负责。这些机器对机器的问题,以及它们的解决方案,都是在模仿和照亮我们自己。
1700496796
1700496797
1700496798
1700496799
1700496801
算法之美:指导工作与生活的算法 分组交换
1700496802
1700496803
我们现在所认为的“互联网”实际上是许多协议的集合,但其中的主要内容(如此之多,以至于它经常被理解为互联网的同义词)是所谓的传输控制协议,即TCP。这是温顿·瑟夫和鲍勃·卡恩在1973年的一次演讲和1974年的一篇论文中首先提出的,他们还提出了他们所设想的“互联网络”的语言。
1700496804
1700496805
传输控制协议最初使用的是电话线,但更恰当地说它是邮件的演变,而不是电话。电话使用所谓的“电路交换”:系统在发送方和接收方之间打开一个通道,只要通话持续,就可以在两个方向之间提供持续的带宽。电路交换对人类的相互作用有很大的意义,但早在20世纪60年代,就很明显地能看出,这种模式对机器通信是不适用的。
1700496806
1700496807
正如加州大学洛杉矶分校的莱昂纳多·克莱洛克所回忆的那样:
1700496808
1700496809
我知道,电脑在说话的时候不会像我现在这样——不停地说。否则它们就会爆炸!它们会安静一会儿。过了一会儿,他们突然又爆发了。而且,你不能把通信连接用于几乎从来不说话的东西,但是只要它想要说话的时候,它就要立即访问。所以我们不得不使用电话网络,它是为连续的通话而设计的(电路交换网络)但它有些不同。
1700496810
1700496811
对于电话公司来说,他们似乎不太愿意谈论他们协议的根本转变。网络研究人员范·雅各布森曾说,不采用电路开关被认为是疯狂的“绝对异端之举”。克兰罗克是这样回忆他与电信行业的故事的:
1700496812
1700496813
我去了美国电话电报公司,那里有当时最大的网络,我向他们解释,你们应该给我们提供良好的数据通信。他们的回答是,你在说什么?美国是一座铜矿,所以到处都是电话线,直接用吧。我说,不,不,你不明白。打电话只需要35秒,而你们最少按3分钟收费,而我想发送100毫秒的数据!他们的回答是:“小男孩,走开。”于是,这个小男孩就和其他人一起走开了,但他之后开发了这项技术,抢了那些人的饭碗。
1700496814
1700496815
抢电路交换饭碗的技术将被称为包交换。包交换的网络没有给每个链接设立专用渠道,发送方和接收方将它们的消息拆分放入一个个称为“数据包”的小碎片中,再将这些碎片合并到数据的公共流中(有点儿像以光速移动的明信片)。
1700496816
1700496817
在这样的网络中,“你可能会说连接的是两个端点之间共同的幻觉,”苹果网络专家斯图尔特·切希尔解释道。“互联网上没有联系。在互联网上谈论一个连接就像是在谈论美国邮件系统中的一个连接。你给人写信,每封信都是独立的,你可能会有信件往来,并且有一定的连续性,但美国邮政不需要知道这些……他们只是投递信件。”
1700496818
1700496819
高效利用带宽并不是在20世纪60年代推动对包交换研究的唯一动力,另一个原因是核战争。兰德公司的保罗·巴兰正试图解决网络鲁棒性问题,以便军方通信系统能够在核进攻中幸存下来,而核进攻可以毁坏大部分的网络。受20世纪50年代为迷宫导航而开发的算法的启发,巴兰提出了一种设计,在这个设计中,每一条信息都可以通过自己的方式抵达目的地,即使网络处于动态变化中,或者已成碎片。
1700496820
1700496821
这是电路交换及其专用、稳定连接的第二个缺点:非常稳定意味着通话中断就会一直中断。电路交换不够灵活或适应能力不够强,体现不出足够的鲁棒性。而且,在这里,包交换也可以提供这个时代所需要的东西。在电路交换网络中,如果其中的任何一个链接被中断,通话就会失败,这意味着当网络变得更大时,可靠性会呈指数级下降。另一方面,在包交换中,不断增长的网络的路径扩散成为它的一种优点:现在有更多的方法可以让数据流动起来,因此网络的可靠性随着它的变大成倍地增长。
1700496822
1700496823
尽管如此,正如范·雅各布森所言,即使发明了包交换技术,电话公司也不为所动。“所有的电信人员都很大声地说,那不是网络!”那只是利用我们网络的一种糟糕的方式!你用我们的电线,用我们创造的路径进行传输!但你又在上面放了很多胶水,因此你就无法有效地使用它。但是,从包交换的角度来看,电话线只是一种达到目的的方式,发送方和接收方实际上并不关心数据包是如何传递的。在不同数量的不同媒体上进行不确定操作的能力将是包交换的伟大美德。在20世纪60年代末和70年代早期的初期网络(如阿帕网络)之后,所有类型的网络都证明了这一概念的可行性,并开始在全美国范围内发展壮大,包交换不仅可以在铜线上进行,还可以通过卫星和无线电。2001年,挪威卑尔根市的一群计算机科学家甚至曾短暂地实施了一项名为“信鸽”的包交换网络,即写在纸上并包装起来,然后绑在鸽子的脚上。
1700496824
1700496825
当然,分组交换也不是没有一点儿问题。对于任何协议、人类或机器来说,首先要问的问题之一就是:你如何知道你的消息已经发送了?
1700496826
1700496827
1700496828
1700496829
1700496831
算法之美:指导工作与生活的算法 信息确认
1700496832
1700496833
温顿·瑟夫和鲍勃·卡恩
1700496834
1700496835
任何传输都不是绝对可靠的。
1700496836
1700496837
“上帝创造了什么”并不只是在美国发出的第一条远程电报信息,它也是第二个:艾尔弗雷德·韦尔把这段引文又发回了在最高法院的莫尔斯,作为确认收到之前信息的一种方式。
1700496838
1700496839
现在,韦尔的回答可能会使莫尔斯和美国的立法者们都聚集在他周围,他相信莫尔斯的信息已经收到,当然,韦尔事先并不知道这会是什么样的信息。但是,怎样才能使韦尔知道他的确认已被接收了呢?
1700496840
1700496841
计算机科学家们知道这个概念是“拜占庭将军的问题”。想象一下有两个将军,站在一个山谷的两边,他们有共同的敌人,试图共同协调进攻。只有通过完美的同步,他们才能成功,因为单独攻击就意味着自取灭亡。更糟糕的是,两名将军之间如果要传送任何消息都必须通过敌人所在的阵地,这意味着任何信息都传送不出去。
1700496842
[
上一页 ]
[ :1.700496793e+09 ]
[
下一页 ]