随着计算机网络和通讯技术的发展,在20世纪后期,诞生了神通巨大、广袤无边的因特网(Internet)。中国的许多文献把Internet称为“互联网”或“国际互联网”,这是不合适的:首先,凡是计算机网络都是把计算机互相联结在一起组成的;其次,早期的Internet并不是国际性的,而是美国国内的网络。实际上,因特网(Internet)是由网络联结在一起组成的网络。
早在1958年,美国总统艾森豪威尔就批准建立了高级研究计划局(ARPA),以便保证美国技术在世界的领先地位。正是这个高级研究计划局成了研制因特网的领导机构和资助机构。
1963年,ARPA计算机研究组组长利克莱德尔(J. C. R. Licklider)阐述了一种可以联接全国甚至全世界机器的网络设想。这是现在的因特网的最初设想。那时,ARPA确认需要一种网络,将ARPA资助的研究用的计算机和研究项目联接起来。1966年,ARPA决定启动“创建采用分组交换技术的ARPA网项目”。
1969年1月,马萨诸诸塞州波士顿市郊区剑桥镇的哈特(Frank Heart)、鲍尔特(Bolt)、伯兰尼克(Beranek)和纽曼(Newman)得到了ARPA的项目。经过仅仅8个月的时间,他们就建成了ARPA需要的网络,并于1969年9月在洛杉矶加州大学(UCLA)首次展示。这一网络成为日后因特网发展的基础。
高等院校和科研机构是首批加入ARPA的网络的机构。
Frank小组编辑本段回目录
1968 群雄争夺,以小取胜
1968年6月3日,信息处理技术办公室(IPTO)向国防部高级研究计划局(ARPA)递交了《资源共享的电脑网络》研究计划。时间过去不到20天,ARPA就正式批准了这个计划,预算金额高达50万美元。而这时,Roberts首先要解决的就是接口信号处理机(IMP)的设计问题。
8月,Roberts代表ARPA的IPTO正式提出了课题,要求设计并制造出网络通信的关键设备——包交换装置。他们把这种装置称为“接口信号处理机”(IMP:Interface Message Processor)。希望通过IMP来研究在小型的、交互连接式的电脑上进行通信的系统。这个课题的具体要求是制造出给4个节点用的4个IMP,实现这4个节点之间的联网,并且设计出今后可以容纳17个网站的电脑网络。
为了广泛地筛选适合做这项工作的公司,Roberts代表信息处理技术办公室发出了140份“项目招标”。这下子引来了几十家对该项目感兴趣的公司。
其中就有IBM这样实力雄厚的大公司。不过,IBM给出的方案是使用他们自己生产的360MODEL 50型电脑来作为IMP。尽管其性能非常优越,但价格太高。要知道,国防部对IMP的需求量是很大的,每一个主机都要配上一台这样的机器。要是都用360 MODEL 50的话,代价也实在太大了。另外,AT&T给出的方案与IBM的相似,因此也遭到否决。
ARPA经过大会招标之后选择了12份标书,再经过反复考虑,很快把范围缩小到4家公司。可是完全出乎意料的是,1968年12月,马萨诸塞州的BBN公司在Frank Heart领导下的一个小组正式得到了ARPA的IMP项目。而这规模很小的公司,当时职工不过600余人,在Frank Heart领导的小组也不过10来个人,的确让人觉得有些不可思议。事实上,ARPA选择Frank小组的理由是,他们选择了一种名叫Honeywell DDP-516的微型计算机作为IMP的原型, 该机不仅价格适当,而且坚固耐冲击,完全胜任ARPA规定的战争环境要求。
Frank小组要把DDP- 516电脑改造成一台谁也没有见过的机器。 与当时所有的电脑一样, DDP-516机既没有硬盘,也没有软盘,由磁芯阵列充当存储装置,穿孔纸带阅读机输入程序,用汇编语言设计软件。以如此简陋的设备完成如此艰巨的使命,他们面临着无数的困难和挑战。 除此之外,Frank小组还要与网络各节点相互协调,一个一个解决接口问题。千钧重担压在Bob Kahn肩上,许多时间他都伴随着电话生活,起草出一份精确明晰的接口技术参数说明书。在此期间,他的伙伴们也克服种种困难,按期完成了复杂的接口设备制作任务。
而为了以后的联网实验,Roberts在美国西海岸选择了4个节点作为实验对象。
第一个节点选在加州大学洛杉矶分校(UCLA),因为Roberts他过去麻省理工学院的同事Leonard Kleinrock教授在该校主持网络研究。
第二个节点选在斯坦福研究院(SRI),那里有D.Engelbart等一批电脑网络先驱人物。
此外,加州大学圣巴巴拉分校(UCSB)和盐湖城犹他大学(UTAH)分别被确定为第三和第四节点。这两所大学都是电脑绘图研究的先驱,Robert Taylor的前任Ivan Sutherland教授此时正任教于UTAH
另外参加联网试验的机器包括Sigma-7、IBM360、PDP-10和XDS-940四种大型计算机。
1968年备忘录
★6月3日,信息处理技术办公室(IPTO)向ARPA提交建立网络的计划。
★美国斯坦福大学的Joshua Lederberg开发出第一个医疗诊断程序Dendral。
★以前在Digital负责PDP-8开发的主任工程师Edson DeCastro和Digital的其他几位工程师创办了Data General公司。
★9月28日,Raymond Schoolfield赤身露体站在亚特兰大IBM公司总部大楼的前面,手里举着一块牌子,上面写着“计算机可恶”。
★Edsger Dijkstra提出了“结构化编程”的概念,并且声称不应再用“GOTO”语句。
★12月,BBN公司由Frank Heart领导的小组得到ARPA的接口信息处理机(IMP)的项目
分组交换和TCP/IP编辑本段回目录
假设在芝加哥的A计算机要与在圣安东尼奥的B计算机通信。在网上,芝加哥和圣安东尼奥之间有着不同的路径。一个可能的通信方法是选择其中一条路径,然后在这条路径上建立计算机A和B之间的联接。这条路径会在计算机A和B进行信息交换期间作为专用。在两者信息交换期间在网上建立一条特定的路径叫做线路转接。这正是公共电话网(PSTN)工作的方式,它也被称作普通的旧式电话服务(POTS)。公共电话系统也相类似,这意味着信息在其上以波形运行。
线路转接的问题是,不论交换多少信息,线路总是堵塞。为弄清这个问题.可考虑将线路转接应用于公路系统。假设图2现在代表一个公路系统,某人想要从芝加哥开车到圣安东尼奥。根据线路转接的基本原理,你会选择一条路径。比如,从芝加哥经孟斐斯到圣安东尼奥,在这两座城市之间的公路系统中,当他开车从芝加哥到圣安东尼奥期间,预定这条路径上所有的公路。这意味着如果第二个人想要开车从芝加哥到纳什维尔,他会被堵住而不能使用从芝加哥到孟斐斯的路段,直到第一人抵达圣安东尼奥为止。
因为信息交换是典型的爆炸式而非平稳不变式,所以线路转接是计算机的一个大问题。两部计算机可能要交换文件,但是在文件交换之后两台计算机之间可能很长时间都不再通信。因此,我们称计算机之间的数据交换需要是离散的而非连续的。线路转接的替代品是分组交换。分组交换的概念是二十世纪六十年代由Paul Baron和Donaid Watts Davies分别提出的。有兴趣的读者可能愿意在RAND公司Paul Baron原始备忘录之一中看到分组交换的描述。这项工作在冷战时期进行,他开发分组交换的部分动机是设计可以抵抗核攻击的网络。
分组交换是当时基本的思路。AT&T曾直接断言分组交换将无法运行。然而,在分组交换的工作大大影响了在ARPA 工作的Larry Roberts,那时他已经被Bob Taylor所雇用。他招标为ARPA建立一个分组交换网. IBM和AT&T这两家重要的公司甚至没有参加投标。中标的是波士顿一家咨询公司BoIt Beranek andNewman.即闻名的BBN.领导该项目的是Frank Heart.
分组交换是一种网络通信的基本理论,而不是一种特定的协议。因特网使用的协议称为TCP/IP。 TCP/ IP协议应归功于Robert Kahn和vint Cerf. IP在TCP/ IP中代表因特网协议,是计算机在因特网上相互通信的协议。使用因特网的计算机必须拥有IP软件。遵循IP规范的数据包叫做IP数据包。这些数据包分为两个部分:标题信息和数据。与信件类似,可将标题信息看作指向信封上的信息。而将数据看作装在信封里的信函。标题信息包括以下内容如:
数据包的总长度;
目标IP地址:
IP源地址;
生存时间—有时当数据包通过路由器时,生存时间被路由器逐渐消耗:当它触到零位的时候,就放弃数据包:这就避免了数据包进入“无限循环”和堵塞网络。
IP数据包不依赖于基本硬件结构。为了通过不同类型的网络,数据包被压缩成帧。基本硬件明白特别的帧格式,能发送压缩数据包。
TCP在TCP/IP中代表传输控制协议。如其名字暗示,这是一种负责以正确的次序集合数据包而且检查丢失数据包的软件。如果数据包失,TCP软件就要求新的数据包。它也检查数据包副本。TCP软件还负责在一个网络上的两部计算机之间开展对话。TCP和IP软件一起工作。
所有的IP地址都是这种格式:四组数字被三个点分开,这叫做点分十进制记号法。四组数字的每一组都需要一个字节(8比特),总共为32比特。按惯例,我们称IP地址为十进制而非二进制格式。
我们已经定义因特网是使用TCP/IP协议的计算机网络。谁创建了该网络?你如何与之连接?因特网主干,连接美国主要城市的高带宽光纤,由像MCI WorldCom, Sprint. AGIS. PSINet和BBN这样的大型电讯公司所控制。
大型因特网服务器从位于像旧金山、芝加哥,纽约和华盛顿特区的网络访问点直接连入网络主干。个人或公司则使用因特网服务提供商连接到因特网。你应该知道.除了TCP/IP之外,还有很多网络协议.
除了图形用户接口(GUI) , Macintosh的重大改进之一是易于联网。在某点上,Macitosh计算机比IBM个人计算机要容易联网得多。Macintosh网络协议称为AppleTalk,其他的著名协议包括Token Ring和NovellNetWare.
4Web
因特网是使用TCP/IP的计算机网络。Web是什么?它是Tim Bemers-Lee的创造,并且基于他将超文本与业已存在的因特网结合的非凡洞察力。Bemers-Lee的解决方案是将超文本与因特网相结合,结果诞生了Web及其三个主要组成部分:HTTP, HTML和URL,所有这些都是Bermers-Lee开发的。
1.HTTP(超文本输协议):我们回忆一下。所谓协议就是一组网上交换信息的规则。HTTP 是用来在浏览器和服务器之间交换数据的高层次协议。HTTP协议使用TCP/ IP定位并连结浏览器和服务器。在浏览器和服务器之间传送的信息,不是请求信息就是应答信息,请求信息包括:1)含有被请求文件名以及是请求GET还是POST的请求行;2)包含诸如浏览器类型和操作系统信息的标题;3)包含数据(如进入表格的数据)正文。来自服务器的应答包括:1)表示被请求文件找到的代码回应行,或如果有问题时的出错代码(如几乎每个人都要处理的令人担心的HTTP 404错误—文件没发现):2)如服务器软件类型的标题信息:3)包含被请求文件的HTML。
2. HTML(超文本标记语言)这是浏览器在网页上显示文本和图形的一种语言。
3 URL(统一资源定位器):这是网页的“地址”。当你点击网页中的某个链接时,就进入一个新的地址。链接包含目标地址URL,同时,URL在命名目标时要依照特定的构造。
URL含三个部分,即:
使用的因特网协议,比如HTTP或FTP或Telnet),
服务器名址;
服务器上的文件名址。
参考图3上的URL,在这个例子中,协议是HTTP。服务器或主机名是gsbkip.uchicago.edu。浏览器要找的目标文件名是foo.html,它位于htmls的子目录下的tmp目录。这样,URL为所请求文件指出了目录路径。
假如某个用户通过浏览器浏览某个网页,网页上有一个超文本与主机gsbkip.uchicago.edu上的文件foo.html链接。网页的文本和图形依照下面的HTML显示。链接包含上面例子中所给的URL,因此数据包知道去到什么服务器和取回什么文件。当用户点击链接时,请求foo.html文件的HTTP就通过因特网传送到服务器gsbkip.uchicago.edu。服务器然后传回请求文件。这个过程的优点是台式机和服务器使用的操作系统并力不相关,它们之间不必兼容。
这个过程需要两种软件。台式个人计算机必须有像Netscape Navigator或Internet Explorer的浏览。服务器必须有HTTP服务器程序。HTTP服务器软件要“听”地址上的数据包。当我们使用服务器这一术语的时候,我们是指两样东四,有形的计算机和机器上支持文件的软件。当服务器软件接到请求文件数据包时它把请求文件传送回台式个人计算机。