我们的故事得从第二次世界大战以后开始。

二战后, 美国和苏联两个超级大国划分了各自的势力范围,在政治、经济、军事等领域激烈较量,一道铁幕在欧洲大陆落下, 冷战开启。

随着苏联爆破成功原子弹和发射洲际导弹,美国本土立刻面临远程核导弹的打击,美国人开始慌了。

作为应对,美国总统艾森豪威尔授权成立了一个新的研究机构:高级研究计划署(DARPA)

DARPA有很多项目,包括弹道导弹防御、卫星导航、核试验检测等等,其中一项是建立一个可经受敌军打击的军用通信系统。

1955年,兰德公司的巴兰被这个课题深深吸引。

经过研究,巴兰提出了两个重要思想,第一个是:网络的控制权应该完全分散

分布式的思想让每个节点在路由数据流时都具备同等地位,这成为未来的互联网的最根本特征。

巴兰的第二个思想是“分组交换”, 要向理解它,我们得先看看“电路交换”, 最典型的就是电话网络

由于有专有的连接,预留的带宽,那么发送方可以用固定的速率向接收方传输数据。

但是电路交换的缺点也很明显,假设两个人打电话,突然,其中一个人离开了,这个时候预览的带宽没法被别的通信复用,白白浪费了。

巴兰提出的分组交换,不会为两个用户建立物理的连接, 也不会预留带宽,相反, 数据被划分成一个个小的数据块进行传输,称为“分组”。

就像把一封长信分割为几十张明信片一样,每张明信片都有编号,目标地址也一样。每张明信片可能会通过不同的路径抵达终点,然后它们会被重新拼在一起。

可以说,巴兰提出的思想,正好和DARPA要做的事情不谋而合,当时的项目主管是罗伯茨, 他已经做出了规划,要建立一个叫做阿帕网的网络。

但是,当时的每种计算机都有自己独特的控制方式和文件组织方式,相当于每个人都在说自己的语言,根本无法交谈,这怎么能够实现联网呢?

解决的办法就是制定一套通用的协议。

协议听起来很高大上,但实际上就是通信双方的一种约定而已,例如两个人见面了,可能会这么说:

再来看一个计算机发信的协议:

可以看出,和人类对话是很相似的, 但是有三个非常重要的要素:

阿帕网的通信协议叫1822, 这是因为那份报告的编号是1822, 可见当时工程师也不知道该起什么名称。

在罗伯茨的规划中,主机不应该处理数据路由的任务,这个任务应该有一个小型的廉价计算机来承担, 罗伯茨把它称为IMP 。

主机把数据包发给IMP,IMP查看目标地址,或者把它传递到本地连接的主机,或者传递给另外一个IMP。

为了防止数据包丢失,发送方IMP会暂存数据包,直到获得接收方IMP的确认为止, 如果没能收到确认,它就重新发送。(注意,这时候是中间的路由节点实现了失败重传

1969年底, 阿帕网初步建成,将位于加州大学洛杉矶分校,加州大学圣巴巴拉分校,犹他大学,斯坦福研究院的4个计算机中心成功连接在一起,人类从此进入了网络时代。

在阿帕网的激励下,越来越多的网络建立起来,夏威夷建立了无线电网络,硅谷发明了以太网,太空的卫星也组建了卫星网络。

它们虽然都是分组交换网,但是都不兼容,无法互联。

1973年, 鲍伯·卡恩(Bob Kahn)决定解决这个问题,他拉来了温顿·瑟夫(Vinton G.Cerf)当合作伙伴

鲍伯·卡恩和温顿·瑟夫做出的这个决定极其关键:可靠性的重担从此由终端(发送和接收信息的主机)来负责,这样网络自身就可以极大简化

这样就对网络的要求就达到了最低:只需要接过这个数据包,尽力地传递它就好了。

在此思想的基础上, 卡恩和瑟夫最后写出了著名的TCP/IP协议草案。

但是TCP/IP到底怎么样呢?1977年11月,卡恩和瑟夫做了一个有里程碑意义的实验。

数据包从一辆载有无线传输器的箱式货车发出,进入阿帕网,然后通过专用卫星链路到达伦敦,再通过卫星传输网络,到达阿帕网, 最后传回南加州大学信息科学研究所,行程 9.4 万英里,没有丢失一个比特的数据信息!

TCP/IP的发展也不是一帆风顺的,它遇到了一个强劲的竞争对手:国际标准化组织(ISO)。

几十年以来,ISO曾经为一系列产品制定了世界标准,这一次他们希望主导网络领域, 于是一个叫做OSI的参考模型被制订出来,并且大力推广。

瑟夫努力劝说让 IBM、DEC、HP 等大厂支持 TCP/IP, 但都遭拒绝,在他们看来TCP/IP只是一项研究试验,甚至是学术玩具

1988年,欧洲很多国家都加入了OSI的阵营,美国政府立即回应,将TCP/IP作为官方标准。 如果有更多的国家选择OSI,互联网的历史将会彻底被改写。

然而,多年前的一次无心之举,让TCP/IP取得了关键的竞争优势。

1981年,DARPA资助BBN公司(阿帕网的承包商)和加州大学伯克利分校,把TCP/IP协议加入Unix操作系统。

当时还在上研究生的天才Bill Joy拒绝了BBN公司的代码,理由是BBN写的TCP/IP代码实在是差劲,Bill Joy另起炉灶,很快就在BSD Unix当中实现了一个高性能的TCP/IP协议。

Unix的广泛传播极大助力了TCP/IP的发展,事实证明,从实践中来的TCP/IP协议非常优秀,非常开放,很快,TCP/IP无处不在,轻松击退了OSI的进攻,成为互联网的标准。

OSI现在只能停留在教科书中,让大家瞻仰了。

1989年,欧洲原子能研究中心的蒂姆·伯纳斯·李提出了万维网(World Wide Web)的概念, 并且基于TCP/IP发明了HTTP协议、 HTML页面和Web服务器。

这三项技术迅速普及开来,构建了无比精彩的互联网世界。

向这些互联网的先驱们致敬!

你看到的只是冰山一角!

点击下方图片,查看更多文章吧 !

下面是我开的一个备份号,防止被人投诉后失联,请小伙伴们保存一下吧。

这个号不会空着,经常会发一下轻松有趣的东西,让大家在紧张的工作之余乐呵一下。

漫画 | 为什么美国人发明了互联网?相关推荐

  1. 美国媒体称互联网不能成为低级趣味天堂

    美国媒体称互联网不能成为低级趣味天堂 http://netsecurity.51cto.com  2010-08-31 17:03  信莲  中国日报网  我要评论(0) 摘要:据美国<纽约时报 ...

  2. 全球首例!这台机器人发明了两项新技术,已获专利授权!

    文章来源:EETOP 几天前前人工智能系统专利申请权有最新发展.南非率先成为第一个授予人工智能专利权的国家,承认人工智能机器人DABUS为「发明者」,6日澳大利亚联邦法院也做出裁决:发明者可以是非人类 ...

  3. 美国人发了横财干什么?

    2008-03-23 01:59:45 大 中 小 标签: 杂谈 几年前,媒体上报道了一个中了彩票的人的命运.此公无所事事,时常吸毒.后来中彩,一夜之间身价千万.他买了豪宅,自以为可以享受终身.结果, ...

  4. 以太坊联合创始人发明了新语言叫板Vyper,主链之后语言将引领新一轮大战?...

    作者 / Blockgeeks 编译 / Aholiab 在之前的文章中,营长从特性.规则和应用的角度,向大家全面介绍了以太坊新的合约语言Vyper的内容,很多朋友表示想看Vyper编程的实例. 在今 ...

  5. 现代人发明了计算机和,假如10000个现代人回到150万年前,需要多久才能制造出计算机?...

    本文参加百家号 #科学了不起# 系列征文赛. 人类的祖先灵长目大概是在6600~6700万年出现在地球上,人属的第一个人种能人是在大概200万年出现在地球上.从能人一直持续至今,人类走过了漫长的征途. ...

  6. 互联网之父等83位专家联名炮轰美国互联网政策

    新浪科技讯 北京时间12月16日晚间消息,美国83位互联网投资者和工程师今日联名向美国国会议员发表了一封公开信,反对美国参.众两院正在分别审议的<禁止网络盗版法>(以下简称"SO ...

  7. 字符编码:计算机的巴别塔

    首发于 字符编码:计算机的巴别塔 巴别塔:<圣经·旧约·创世记>第11章宣称,当时人类联合起来兴建希望能通往天堂的高塔:为了阻止人类的计划,上帝让人类说不同的语言,使人类相互之间不能沟通, ...

  8. Spring入门到放弃篇(1)- Spring国际化

    Java原生国际化 文档地址 java官方文档 参考官方文档 自定义国际化案例 public class LocaleDemo {public static void main(String[] ar ...

  9. 立哥版-无线电通讯简史

    互联网+时代,无线电通信使我们的生活方便快捷,丰富多彩.享受便利生活同时,我们应该了解无线电波被发现和利用的历史. 19世纪60年代,麦克斯韦(无线电之父)提出电磁场的理论,并从理论上推测了电磁波的存 ...

  10. 苏州大学机电工程学院院长孙立宁:医疗机器人的机遇、现状和未来

    7月7日,中国计算机学会(CCF)主办,雷锋网(公众号:雷锋网)与香港中文大学(深圳)承办的第二届CCF-GAIR全球人工智能与机器人峰会在深圳如期开幕.在7月9日举行的未来医疗专场上,苏州大学机电工 ...

最新文章

  1. npm install遇到ENOENT: no such file or directory, rename错误
  2. Xen设计的理念--超级调用
  3. CodeForces-734E Anton and Tree 树的直径
  4. 双屏鼠标经常跑到副屏_这个电脑的双屏幕,让我重新找回了修图的乐趣
  5. matlab第二版实验七,matlab实验七.doc
  6. clickinrefresh.php,IDCZE_v3.0 IDCZE商业导航系统全新仿照114la网址导航 - 下载 - 搜珍网...
  7. 输入广义表建立双亲表示的树and给定双亲表示的树输出广义表表示的树
  8. nProtect的一些知识
  9. 软件测试禅道是什么?如何使用?
  10. NetLimiter Pro
  11. POJ-3368 Frequent values
  12. Windows系统资源监控工具perfmon-只能查看报告。
  13. 关于图片以及格式UTI
  14. 被领导嘉奖了,该不该请同事吃饭?
  15. 玩安卓从 0 到 1 之列表一键置顶
  16. 大规模并行 量子计算机,QC资讯丨IBM发布量子路线图——将在2023年底推出1000量子比特量子计算机...
  17. 年年岁岁花相似,岁岁年年人不同
  18. C语言入门:华氏温度转换为摄氏温度
  19. 【C/C++ 经典小程序(一)】
  20. python画矩阵图_Python可视化25_seaborn绘制矩阵图

热门文章

  1. Algorithm Analysis: common functions, asymptotic notation
  2. 计算机辅助教育题库和答案,计算机考试题库及参考答案.docx
  3. html修改鼠标手势,css设置鼠标手势的方法
  4. 微信公众号推送模板消息(三):获取关注者列表 openid
  5. web显示实时时间动态刷新
  6. android viewholder静态,使用内部viewHolder时声明为static的原因
  7. 惠普传真服务器位置,惠普传真机的使用方法
  8. matlab进化树的下载,mega7.0进化树软件下载-mega 7.0 win 64位下载【附详细使用教程】 - 百当下载站...
  9. JAVA的教师档案管理系统_教师档案管理信息系统
  10. ESP8266制作简单wifi风扇控制器