3.7 计算机网络体系结构
通信网络是传递声音、文字、图像和计算机数据等多媒体信息的基础。要实现数字化、信息化,必须依靠完善的网络体系。这里所说的网络体系统是指电信网、有线电视网和计算机通信网,通常称为“三网”。
计算机网络是把地理上分散的多台独立自主的计算机,按照约定的通信协议,通过软、硬件互联的方法实现交互通信、资源共享、信息交换、协同工作和在线处理等功能的系统。它涉及通信和计算机两个领域。数据通信网络为计算机之间的数据传递和交换提供了必要的手段。
计算机网络实际上是20世纪60年代冷战的产物。20世纪60年代初,美国国防部领导的远景研究规划局ARPA(Advanced Research Project Agency)提出要研制一种崭新的、能够适应现代战争、残存性很强的网络,其目的是对付苏联的核进攻威胁。根据美国军方提出的要求,这种新型通信网络必须满足以下一些基本要求:
(1)新型网络不仅能打电话,更重要是能用于计算机之间的数据传送。
(2)能够连接不同类型的计算机。
(3)所有的网络结点(Node)都同等重要。即网络中的某些结点损坏了,不会影响系统工作,这样可大大提高网络的生存能力(残存性)。
(4)计算机通信时,必须有冗余的路由(Routes)。当网络中某个结点或链路被敌方破坏时,冗余路由能够使通信自动找到其他合适的路由,使通信仍然保持畅通。
(5)网络结构尽可能简单,并能非常可靠地传送数据。
为了解决不同厂商的计算机网络之间不能互联的问题,国际标准化组织(ISO)于1978年提出了开放系统互连参考模型(OSI/RM),即OSI网络体系结构,以推动网络标准化工作。
由于Internet互联网的社会需求增长非常迅猛,现在又面临多种挑战,包括网络的带宽和可扩展性,网络的安全性,网络的服务质量和引发的商业、文化及社会问题。为此,美国又提出了“下一代因特网计划”,即“NGI(Next Generation Initiative)计划”。
NGI计划要实现的一个目标是:下一代网络结构的传输速率要超过100Mbit/s~10Gbit/s;采用更加先进的网络服务技术和扩大应用领域,如远程医疗、远程教育、能源和地球系统的研究、高性能的全球通信、环境检测和预报、紧急情况的处理等等。NGI计划将使用超高速全光纤网络,实现更快速的交换和路由选择,具有实时应用保留带宽的能力。此外,在因特网的管理、信息安全等方面也会有很大的改进和提高。
3.7.1 电路交换和分组交换
所谓“交换”就是按照某种方式动态地分配传输线路资源,提高线路资源的利用率。电话机发明后,要让所有的电话机都能互相连接是难以实现的。图3-18a表示两部电话机只需一对电线。但如果要把5部电话机两两相连,则需要10对连接线,如图3-18b所示。如果N部电话机要两两相连,那么需要N(N-1)/2对电线。显然,这种连接方法需用的连接导线与电话机数量的二次方成正比。于是认识到只有采用交换机的连接方法,即把每一部电话机都连接到交换机上,通过交换机的交换连接,把各电话用户彼此连接通话,才能提高传输线路的利用率,如图3-18c所示。采用交换机进行交换连接的方式称为电路交换。
图3-18 电话机的不同连接方法
a)两部电话直接相连 b)5部电话两两直接相连 c)用交换机连接许多部电话
1.电路交换
从通信资源分配角度来看,“交换”就是按照某种方式动态地分配传输线路资源。在使用电路交换(Circuit switching)时,通话之前必须先呼叫(拨号/被叫方的地址),拨号信令通过各个交换机到达被叫用户所在的交换机时,向用户话机发出电话振铃信号。在被叫用户摘机并且摘机信令回传到主叫方的交换机后,呼叫即成功。此时,从主叫端到被叫端就建立了一条物理通路,双方可以开始通话,通话结束,主叫方挂机,释放连接,如图3-19所示。
图3-19 电路交换原理图
这种必须经过“建立连接→通信→释放连接”的三个步骤的联网方式称为面向连接(Connec-tion-Oriented)。显然,电路交换必定是面向连接;但在分组交换时,既可使用存储转发的无连接方式(Connectionless),也可使用面向连接方式(如广域网的X.25和ATM网络)。
电路交换中各交换机之间拥有大量话路的中继线,它们是全体用户共享的。在通话的全部时间内,通话的两个用户始终占用端到端的固定传输带宽。
2.分组交换
用电路交换方法传送计算机数据时,线路的传输效率是不高的。因为计算机数据是突发式地向传输线路上发送的,所以线路上真正用来传送数据的时间往往不到10%,甚至仅为1%,绝大部分时间内,通信线路实际上是空闲的。
分组交换(Packet switching)采用存储转发技术。图3-20是分组交换的概念。先将需发送的全部数据信息(称为报文Message)划分成一个个更小的等长数据段,例如,每个数据段为210=1024bit。在每个数据段前面加上一些必要的控制信息组成的首部(Header),构成一个分组(Pack-et)。分组又称为“打包”,分组的首部也称为“包头”,分组是计算机网络传输的数据单元。分组中的首部(包头)包含了诸如目的地址和源地址等重要控制信息,有了它才能使每个分组在分组交换网络中独立地选择路由。因此首部是分组交换的一种标记(Label-based),使得分组交换时,在传递数据之前可以不首先建立一条连接线路。这种不先建立连接而随时可发送数据的联网方式,称为无连接(Connectionless)传输。
图3-20 数据信息的分组
分组交换网由若干结点交换机(Nodeswitch)和与这些交换机连接的链路组成,如图3-21所示。大圆圈(或大方块)为结点交换机,是网络的核心部件。从概念上讲,一个结点交换机就是一个计算机。每个结点交换机都有两组端口。小半圆表示用于与计算机相连的一组端口,链路的速率较低。小方块表示的用于连接高速链路和网络中其他结点计算机的一组端口。结点计算机A……E是进行分组交换用的,用来转发分组数据信息和经常交换各结点计算机之间的路由信息,为转发分组找出一条最好的路线。结点计算机将收到的分组数据包先放入缓存,再根据包头(首部)的地址查找转发表,找出一条最佳转发路线。从缓存中将分组数据取出来,再传送给适当的端口转发出去。
图3-21 分组交换网络
a)分组交换网和主机 b)具有两组端口的结点交换机
结点交换机暂存的是一个个短的分组数据包,而不是整个长的报文。短的分组数据包是暂存在结点交换机的存储器(内存)中,而不是存储在它的磁盘中,这样可保证较高的交换速率。
由于采用了专门的技术措施,保证了数据传送的高可靠性。如果分组交换网中的某些结点或链路突然地被破坏,网络可使用路由选择协议自动找到其他的路径来转发分组数据包。此外,分组交换的网络拓扑结构,在发生网络拥塞或少数结点、链路出现故障时,可以灵活地改变路由而不致引起通信中断或全网瘫痪。
采用存储转发的分组交换方法,实际上是采用了数据通信过程中的中断(或动态)分配传输线带宽的策略。对突发式发送的计算机数据是非常合适的,大大提高了通信线路的利用率。
综上所述,分组交换的优点如下:
(1)高效。动态分配传输线带宽,对通信链路实行逐段占用。
(2)灵活。每个结点具有智能功能,可为每个分组数据包选择转发路由。
(3)迅速。以分组数据包作为传送单位,可以不先建立连接就可向其他主计算机发送分组。分组交换使用高速链路网络。
(4)可靠。完善的网络协议,分布式的路由分组交换网,使网络具有极好的残存性。
分组交换的缺点如下:
(1)延时较大。分组数据包在各结点存储转发时需排队,造成一定的延时。
(2)各分组数据包必须携带一个作为控制用的“首部”(包头)。数据包的首部描述了它的源地址和目的地址,以便确定将这个数据包发送到哪一条链路和哪个目的地址。但增加了数据传输的开销(overhead)。
(3)整个分组交换网需要专门的管理和控制机制。
3.7.2 计算机网络的特性和主要性能指标
数据通信网络通常是指计算机网络中的分组交换网。计算机网络是指各自主计算机互相连接的集合。最简单的计算机网络是由两台计算机和把它们连接起来的一条链路组成,即两个结点计算机和一条链路。最复杂的计算机网络是因特网,把非常多的计算机通过路由器(Router)等互连设备互连而成。通过软硬件的互联,实现计算机之间的交互通信、资源共享、信息交换、协调工作和在线处理等功能。计算机网络的定义有三个主要含义:
(1)计算机网络是指具有独立自主功能的计算机的互联集合。自主计算机的概念排除了网络系统中的主从关系,即网络中各计算机之间的关系是平等的,都可以强制启动、停止或控制另一台计算机。因此,如果由一台主控机和多台从属机组成的系统就不能称为计算机网络。一台带有远程打印机和终端打印机的系统也不能称为计算机网络。
(2)互联必须遵循约定的通信协议,并通过相应的软硬件实现。为了成功地通信,它们必须具有同样的语言、交流什么、怎样交流和何时交换等,都必须遵循相互能接受的规则,这些规则的集合称为通信协议。
(3)互联既可使用铜缆、光纤等有线传输介质,也可借助于微波、卫星等无线传输介质。
为满足计算机网络的可用性和高效性,下面的技术参数是计算机网络的重要特性:
计算机网络的主要技术特性指标包括:带宽(Bandwidth或称吞吐量Throughput)、延时(Delay或Latency)、延时带宽积和往返延时。
(1)带宽。信号的带宽是指该信号包含的不同频率成分所占有的频率范围,例如,音乐节目信号的带宽为50Hz~16kHz或更宽些,电话语音信号的带宽为300Hz~3.4kHz,视频信息的带宽为6MHz。带宽的单位为赫兹(Hz)、千赫(kHz)、兆赫(MHz)和千兆赫(GHz)等。
过去,通信线路都是传送模拟信号,因此线路的带宽表示可以通过信号的频率范围,用频率的单位来衡量。但是,当通信线路用来传送数字信号时,再用模拟通信线路的带宽来表示就不大确切了,应该使用数字信号的传送速率来表示线路带宽。线路带宽越宽,它传送数字信号的速率也越高。它们之间有密切关系,但不能混淆,更不能直接替代。
数字信号的传送速率(或称数据率、比特率)是指每秒钟内传送二进制码(bit)的数量。比特(bit)是计算机中的最小数据单元,它也是信息量的度量单位。一个bit就是二进制数字中的一个“1”或“0”。
在计算机网络中,数据传送的带宽单位为每秒比特(bit/s),更常用的单位为千比特每秒(kbit/s)、兆比特每秒(Mbit/s)、吉比特每秒(Gbit/s)和太比特每秒(Tbit/s)。现在人们常用更简单的但很不严格的记法来描述网络或链路的带宽,如100k、10M或10G等,省略了后面的bit/s单位。
因为数字网络的带宽代表数字信号的发送速率,因此有时也称为“吞吐量”。在实际应用中,吞吐量常用每秒发送的比特数或字节数或帧数来表示。
在数字通信和计算机领域中,数字单位“千”、“兆”和“吉”等用英文表示的意思与实际的数字表达略有不同。计算机中的大写K表示210,即1024,而不是1000;1MB表示220(1048576)B,并非是106=1000000B。1GB表示230(1073741824)B,并非是109=1000000000B。此外,一个字节(Byte)代表8个比特(bit)。字节的用英文表示为大写B,比特用英文表示为bit。
(2)延时。延时(Delay或Latency)是指一个报文(即要发送的整块数据)或一个分组(将较长的报文划分成一个个更小的等长数据段,例如每个数据段为1024bit,并在每个数据段前面加上由一些控制信息组成的首部后,就构成了一个分组,如图3-20所示)从网络的一端传送到另一端需要的时间由以下几个部分组成:
1)传输延时。传输延时是电磁波在信道中传播所需要的时间,计算公式如下:
传输延时=信道长度L/电磁波在传输媒体中的传输速度V (3-4)
式中,传输延时的单位为秒(s);L为信道长度,单位为公里(km);V为电磁波的传输速度,单位为km/s。
电磁波在不同介质中的传播速率如下:
①电磁波在自由空间的传播速度同光速,即3.0×108km/s;
②电磁波在电缆中的传播速率为2.3×105km/s;
③电磁波在光纤中的传播速率为2.0×105km/s。
例如:1000km长的光纤线路带来的传输延时约为5ms。3.6万km高空的同步通信卫星的传输延时(往返)约为0.24s(240ms)。
2)发送延时。发送延时是指发送数据所需要的时间,计算公式如下:
发送延时=数据块长度/信道带宽 (3-5)
式中,发送延时的单位为秒(s);数据块长度的单位为比特(bit)或字节(B);数据在信道上的传输速率单位为每秒传送的比特数(bit/s)或字节数(B/s);
信道带宽的单位为bit/s或B/s。
例如:要在Cat.5UTP非屏蔽五类双绞线链路上传送10MB的一个数据块(报文),计算发送这个数据块所需的时间。
解:Cat.5UTP的信道带宽为100MB/s,因此发送延时=10MB/100MB/s=0.1s。
再看一个例子。传送的数据仅一个字节(即在键盘上输入一个字符,也就是8bit)。在1Mbit/s的信道上的发送延时为8bit/1Mbit/s=8μs。
3)排队延时。这是在数据交换结点排队等候发送缓存中的数据分组所需的时间。这种延时决定于网络中当时的数据通信量。当网络通信拥挤时,还会发生数据溢出,使数据丢失,这就相当于排队延时为无穷大。因此
数据传输的总延时=传输延时+发送延时+排队延时(3-6)
在总延时中,哪一种延时占主导地位,必须具体分析。
(3)延时带宽积。延时带宽积,即[传输延时]×[网络带宽]。这是一个说明网络中能容纳多少数据量的一个有用的性能指标。图3-22表示延时带宽积的示意图。
图3-22 网络的延时带宽积
这是一个代表链路的空心管道,管道的长度是链路的传输延时,管道的截面积是链路的带宽。因此,延时带宽积就表示这个管道的体积(容积),表示这个链路可容纳多少个比特。例如,链路的传输时间为20ms,带宽为10Mbit/s。延时带宽积=20×10-3×10×106=2×105bit。这就表示,如果发送端连续发送数据,当发送的第一个比特到达终点时,发送端已连续发送了20万个比特,这20万个比特都正在链路上传输。因此,链路的延时带宽积又称为以比特为单位的链路长度。对于一条传送数据的链路,只有在链路管道都充满比特时,链路才能得到充分利用。
有时在发送端和接收端之间相隔有好几个网络。发送端发送出去的数据要经过多次转发才能到达接收端。这时我们仍然可使用上面这样的从发送端到接收端的传输管道和延时带宽积这个度量。但这时的延时不再仅仅是网络的传输延时,还包括各中间结点产生的排队延时和发送延时。管道中的比特数表示从发送端到接收端之间的比特数量。
(4)往返延时
往返延时(Round-Trip Time,RTT)也是数据传送网络的一个重要特性指标。它表示数据从发送端开始发送直至在发送端收到来自接收端的确认接收,总共经历的时间。例如链路的传输时间为20ms,那么它的往返延时RTT是40ms。往返延时与带宽的乘积比延时带宽积大一倍。同样,对于复杂的网络系统,往返延时应包括中间各结点的排队延时和数据发送的发送延时。
往返延时带宽积的意义是当发送端连续发送数据时,在收到对方确认之前,就已经把这样多的比特数量发送到链路上了。对于上述的例子,如果数据传输的接收终点发现了差错,那么当发送端收到这一出错信息时,即使立刻停止发送,也已经发送了40万bit了。
(5)网络的安全性。网络信息安全是指对计算机信息的处理、存储、传输和访问等全过程所提供的安全保护,防止信息被窃取、篡改和非法操作。它包括网络安全和信息安全两个层面。前者是指对信息载体的处理、存储和传输的安全,后者是指信息自身的安全,即信息的机密性、完整性和可审查性等。
(6)网络传输的可靠性。网络传输的可靠性包括发生故障的频度、恢复运行所需的时间和突发特性故障时的网络健壮性。所有各种网络都可能会发生故障。但是,如果网络经常发生故障,那么,对用户来说,这种网络的使用价值就不大了。此外,发生故障后恢复时间的长短也直接影响网络的可用性。网络必须有对突发性事件的应急措施。突发性事件包括火灾、地震、偷窃和病毒侵袭等。对不可预见的危害要用网络软件的后备予以保护。
3.7.3 网络分类
计算机网络可以从网络技术、覆盖地域、拓扑结构和交换功能等各种不同角度加以分类。
(1)按地域范围,可分为局域网、城域网和广域网三类。
(2)按拓扑结构,可分为总线型、星形、环形和网状型等网络。
(3)按交换方式,可分为电路交换网、分组交换网、信元交换网和帧中继交换网。
(4)按网络协议,可分为TCP/IP、SNA、SPX/IPX、APPLETALK和ATM等。
1.按覆盖地域分类
(1)局域网。局域网(Local Area Network,LAN)是将小区域范围内的各种通信设备互联在一起的通信网络。大多数局域网只局限于一幢大楼、一个校园或一个企业。它可通过各类传输介质与相距很远的另一个局域网相连。局域网由建设单位自己管理和使用。它的数据传输速率一般等于或小于100Mbit/s。
(2)城域网。城域网(Metropolitan Area Network,MAN)的地理覆盖范围为5~100km,是一种以支持高速率数据、声音和图像等信息传输的通信网络。以光纤为主要传输媒体,传输速率高于1000Mbit/s。城域网是城市通信的主干网,也是不同区域局域网之间的通信桥梁,并可向外接入广域网。
(3)广域网。广域网(Wide Area Network,WAN)的地理覆盖范围为数十千米到数千千米,可以连接若干城市、地区,甚至跨越国家和遍及全球的一种通信网络,因此也称为远程网(Long Home Network)。
广域网可采用不同通信技术,包括公用交换电话网(PSTN)、综合业务数字网(ISDN)、分组交换数据网(PSDN)、数字数据网(DDN)、异步传输模式(ATM)网、移动通信网以及卫星通信网等。
随着计算机网络技术的发展,现在局域网、城域网和广域网的界限变得逐渐模糊了。
(4)国际互联网。国际互联网(Internet)又称因特网。它是全球最大的、开放的、由众多网络互联而成的计算机互联网,采用开放的TCP/IP通信协议。
Internet国际互联网提供了极为丰富的信息资源和应用服务。它为发展信息网络技术和网络应用提供了丰富的经验,对信息市场的开拓和信息社会的发展具有深远的影响。
(5)内部网。内部网(Intranet)又称为内联网,是专门为政府机关或企业网内部服务的网络。它采用防止外部侵入的安全措施与外界联接。
(6)外部网。外部网(Extranet)又称外联网,它是以企业的内部网为基础,企业通过计算机技术形成为扩展了的企业,使企业延伸到客户、供应商和合作伙伴。从一个有形的企业变成一个更大的企业虚拟网络。改变了现有的人际交往和组织部门间的通信方式。
2.根据网络拓扑结构分类
网络的拓扑结构是从网络拓扑观点来讨论网络中的信号结点和通信线路或通信信道的连接所构成的各种网络几何结构。网络的拓扑结构是用来反映网络各组成成分之间的结构关系。实际上,这里考虑得更多的是通信子网的拓扑结构问题。通信子网可以设计为两种类型:点对点通信(point-to-point)和广播通信(Broadcast)。
(1)点对点信道的特点是一条线路连接一对结点。两台主机常常经过几个结点相连接。信息传输采用存储转发方式。这种信道形成的通信子网络的拓扑结构有星形、树形、回路形、相交回路形、全连接形和分布形等。
(2)广播信道的特点是只有一条供各结点共享的通信信道。任一结点发出的信息报文可被所有其他结点接收。当然对信道需有一定的访问控制。这类通信子网的拓扑结构有总线型、环形、卫星型或无线广播通信方式。
按网络拓扑结构形状可分为:星形、环形、总线型、树形、总线/星形等六种类型的网际拓扑结构。
(1)星形拓扑结构。星形拓扑结构是以中央结点为中心与其他各结点相连组成,各结点与中央结点通过点对点方式连接,中央结点执行集中式通信控制,如图3-23所示。在星形结构的拓扑网络中,任何两个站点进行通信都必须经过中央结点控制。在文件服务器/工作站局域网中,中央结点为文件服务器,存放共享资源。中心点与多台计算机相连,大多采用集线器Hub连接。Hub具有信号再生转发功能,通常有4个、8个、12个、16个和24个端口等规格。
星形拓扑结构的特点是:网络结构简单、便于管理、集中控制、组网容易、网络延迟时间短、误码率低;但网络共享能力较差,通信线路的利用率不高、中央结点的负担过重。网络中可同时连接双绞线、同轴电缆及光纤等多种传输媒体。
图3-23 星形拓扑结构
(2)环形拓扑结构。环形网中各结点通过环路接口连接在一条首尾相连的闭合环形通信线路上。环路上任何一个结点均可请求发送信息和接收信息,环形网中的数据流既可单向传输(单环)也可以双向传输(双环)。由于环线是公用的,一个结点发出的数据信息必须穿越环中所有的环路接口,信息流中的目的地址与环上某个结点地址相符时,信息会被该结点的环路接口所接收,后面的信息继续流向下一个接口,直至回到发送该信息的环路接口结点为止,如图3-24所示。图3-25是双环环形网络,数据信息流在一个环中按顺时针方向传输,另一个环按逆时针方向传输。任何一个环发生故障时,另一个可作为备份。如果两个环在同一点发生故障,则两个环可合成一个单环,但传输线长度几乎增加一倍。
图3-24 典型的单环环形拓扑结构
图3-25 双环环形网络拓扑结构
环形网的特点是:信息在网络中沿固定方向流动,两个结点间仅有唯一的通路,大大简化了路径选择的控制。某个结点发生故障时,可以自动旁路,可靠性较高。当网络确定后,其延时也固定了,实时性较强。但当环路结点过多时,影响传输效率,网络响应时间变长,此外,由于环路是封闭的,所以扩充不方便。
环形网是局域网常用的拓扑结构之一,适合于信息处理系统和工厂的自动化系统。1985年IBM公司推出的令牌环形网(IBM Token Ring)是它的典范。它在FDDI(光纤分布式数据接口)中应用较广泛。
(3)总线型拓扑结构。用一条称为总线的中央主电缆将各计算机连接起来的布局称为总线型拓扑,如图3-26所示。
图3-26 总线型拓扑结构
在总线结构中,所有网上的计算机都通过相应的硬件接口直接连到总线上。任何一个结点的数据信息都可沿着总线向两个方向传输扩散,并能被总线上任何一个结点接收。
总线的长度有一定限制,一条总线只能连接一定数量的结点。在总线的两个端头,必须连接终端负载(末端阻抗匹配器),终端负载的大小应与总线的特性阻抗相符合,这样可达到最大限度地吸收传送到总线终端被反射回来的信号能量,避免反射回波的干扰。
总线型拓扑结构的特点是:结构简单灵活,便于扩充,可靠性高,网络响应速度快,价格低,便于安装,共享资源能力强,因此是目前使用最广泛的拓扑结构。
(4)树形拓扑结构。树形结构是总线结构的扩展,它是在总线网上加上分支形成的,传输介质可有多条分支,但不形成闭合回路。树形网是一种分层网络,具有一定的容错能力,一般来说,一个分支或一个结点的故障不会影响另一个分支结点的工作,任何一个结点发送出的数据信息可以传遍整个传输介质,如图3-27所示。
(5)网际拓扑结构。在实际组网中,拓扑结构不一定是单一的,通常是几种结构的混用。还可将多个子网或多个局域网连接起来构成网际拓扑结构。
图3-27 树形拓扑结构
在子网中,用集线器(Hub)、中继器将多个设备连接起来。多个子网可用网桥(Bridge)、路由器(Router)、交换机(Switch)和网关(Gateway)等设备将子网连接起来。
图3-28是用交换式集线器(SwitchHub)把4个网段连接起来的例子。
图3-28 用交换式集线器连接网段
3.7.4 网络体系结构和通信协议
计算机网络是一个非常复杂的系统。连接在网络上的两台计算机要互相传送文件或交互信息,除了在这两台计算机之间必须有一条传送数据的链路外,至少还需完成以下一些工作:
(1)发起通信的计算机必须将数据通信的通路进行激活(Activate)。所谓激活就是要发出一些指令(信令),保证要传送的计算机数据能够在这条通路上正确地发送和接收。
(2)告诉网络如何识别将要接收数据的计算机。
(3)发起通信的计算机必须查明对方计算机是否已准备好接收数据。
(4)查明对方接收计算机中的文件管理程序是否已做好文件接收和文件存储的准备工作。
(5)如果计算机文件格式不兼容,则至少其中一台计算机应具有格式转换功能。
(6)对出现的各种差错和意外事故,如数据传送错误、重复或丢失数据和网络中某个结点交换机故障等,应当有可靠的保障措施,保证对方计算机最终能够收到正确的文件。
由此可见,相互通信的两台计算机系统必须高度协调一致才行。为设计这样复杂的计算机网络,早在最初的Arpanet设计时就采用分层处理方法。“分层”处理可将一个复杂问题转化为若干较小的局部问题,这些较小的局部问题就可较容易研究和处理了。
分层处理的特点:各层分工明确、各司其职、不包罗万象、便于处理和容易维护。
两个实体要想成功地进行通信和有条不紊地交换数据,它们必须具有同样的语言。交流什么,怎样交流及何时交流,那么,通信实体之间都要遵守事先约定好的一些规则和标准。
这些规则、标准和约定的集合称为通信协议。协议的关键成分是
(1)语法(Syntax),包括数据格式、编码和信号电平等。
(2)语义(Semantics),包括用于协调和差错处理、流量控制等控制信息。
(3)定时(Timing),包括同步和时序。
网络体系结构(Architecture)是指网络的各功能层及其协议的集合。网络的体系结构是抽象的,它的功能需要用硬件和软件来实现。
1974年,美国IBM公司宣布研制成功了系统网络体系结构(System Network Architecture,SNA)。随着全球经济的快速发展,使用不同网络体系结构的用户要求能够互相交换信息。为使不同体系结构的数据通信网都能互连,1979年国际标准化组织(ISO)成立了一个专门研究机构。不久,这个机构提出了一个解决各种计算机在世界范围内互联成网的标准框架,即著名的开放系统互连基本参考模型(Open System Interconnection Reference Model,OSI-RM),简称OSI。“开放”是指只要遵循OSI标准,一个系统就可以和位于世界上任何地方的、也遵循这同一标准的其他任何系统进行通信。OSI-RM是个抽象的概念。1983年形成了正式文件,即ISO7498国际标准,也就是所谓的七层协议的体系结构。
20世纪90年代初,虽然整套的OSI国际标准已全部制订出来了,但由于因特网已抢先在全世界覆盖了相当大的范围。与此同时,市场上几乎很少找到符合OSI标准的商用产品。于是OSI因缺少执行的软、硬件产品而无法推广应用。
从OSI失败的原因可得出这样的结论:能够占领市场的就是标准。现在得到最广泛应用的不是法律上承认的国际标准OSI,而是占领市场的非国际标准TCP/IP。
1.OSI开放系统互连参考模型简介
网络体系结构的每一层功能及其所提供的服务都有非常精确的说明。层数如果设置得太少,就会使每一层的协议太复杂。但是层次设置得太多,又会在描述和综合各层功能的系统工程任务时遇到较多的困难。通常每一层需要实现的功能往往是下面的一种或多种:
(1)差错控制。使网络对口端的相应层次的通信更加可靠。
(2)流量控制。使发送端的发送速率能适应接收端的接收速率。
(3)分段和重装。将发送端要发送的数据块划分为更小的单位,便于接收端还原。
(4)复用和分用。发送端几个高层复用一条低层的连接,在接收端再进行复用。
(5)建立连接和释放。在数据交换之前,先交换一些控制信息,以建立一条逻辑连接。数据传送结束时,将逻辑连接释放(断开)。
OSI采用七层协议的网络体系结构:物理层、数据链路层、网络层、传输层、会话层、表示层和应用层,如图3-29所示。各层中,每层的目的都是为上边的层提供服务的。各层之间是独立的。每一层并不需要知道它的下面一层是如何实现服务功能的,而只需知道该层通过层间接口(界面)所提供的服务。由于每一层只实现一种相对独立的功能,所以可将一个难以处理的复杂问题分解为若干较容易处理的更小一些的问题。此外,它的灵活性好,任何一层发生技术上的改变时,只要层间接口关系保持不变,它的上、下层均不会受到影响。
下面将对这些层的服务功能进行说明。
(1)物理层。物理层(physical layer)是OSI分层结构中的最低层,是开放系统与物理介质(传输链路)的接口。它是开放系统互连的基础,可分为永久连接或动态交换连接、双工传输或半双工传输和同步传输或异步传输。物理层的任务是透明地传送比特流,在它的下面是传送信息的物理介质,如双绞线、同轴电缆或光缆等。
“透明”是一个专用术语。它表示某一个实际存在的事物,看起来好像不存在一样。“透明地传送比特流”表示经实际电路传送的比特流没有发生任何变化,因此这个实际电路对比特流来说是“透明”的。这样,任意组合的比特流都可以在这个电路上传送。至于比特流中的哪几个比特代表什么意思,则不是物理层所要管的。
物理层应向上面的数据链路层提供的服务有:数据电路标识、物理连接及其端点、服务数据单元、排序、故障状态通知和服务质量参数。
图3-29 OSI开放系统互连参考模型
物理层协议的处理功能有:激活和拆除物理连接、传输物理服务数据单元和完成物理层的管理工作。
(2)数据链路层。数据链路层(Datalink layer)的任务是在网络相邻两个结点之间的线路上无差错地传送以帧(frame)为单位的数据。每一帧包括数据和必要的控制信息。在传送数据时,如果接收结点检测到收到的数据中有差错时,马上通知发送方重发这一帧,直到这一帧正确无误地到达接收结点为止。每一帧的控制信息包括同步信息、地址信息、差错控制和流量控制信息等。
数据链路层向网络层提供的功能有:建立、维护和释放数据链路,数据服务单元的透明传送,数据传送的流量控制,差错指示和服务质量管理。
(3)网络层。网络层(Network layer)的任务是选择合适的路由,按照地址找到目的主机,为分组交换网上的不同主机提供通信服务。给传输层提供如下服务功能:网络地址服务、网络连接及端点标识、差错通知、保证接收顺序、流量控制、网络层差错处理、接收确认和释放网络连接等。
(4)传输层。传输层(Transport layer)又称运输层,它的任务是负责两个正在运行程序(称为进程)的主机之间的通信。具有承上启下的作用。它给OSI高层提供高可靠、低费用的透明数据传输,并保证低层的服务质量能满足高层的要求。
(5)会话层。会话层(Session layer)不参与具体的数据传输,它的任务是对数据传输进行管理。如建立会议(通信)、使用和拆除、会话管理、确定是双工工作还是半双工工作和异常报告等。
(6)表示层。表示层(Presentation layer)的任务是给用户提供执行会话服务的方式。即把交换的数据从某个抽象的语法变换为适合于OSI内部使用的传送语法(Transfer syntax)。
(7)应用层。应用层(Application layer)是体系结构中的最高层,它直接为用户的应用过程(正在运行的程序)提供服务,完成一系列业务处理需要的服务功能,因此应用层的协议量是很多的。
OSI的七层协议体系结构既复杂又不实用,但它的概念清楚、理论较完整,是局域网、互联网等网络体系结构的基础。
2.TCP/IP的体系结构
应用最广泛的Internet互联网采用的是4个层次构成的TCP/IP体系结构。TCP(Transmission Control Protocol)表示传输控制协议,IP(Internet Protocol)表示网络协议。4个层次结构包括应用层、TCP运输层、IP网际层和网络接口层。
(1)应用层。应用层是TCP/IP体系结构的最高层。用户可以调用应用程序访问TCP/IP互联网提供的多种服务。应用程序将按要求的数据格式传送给运输层。
(2)运输层。运输层(传输层)的任务是提供应用层之间的通信,即端到端的通信。运输层的管理信息流提供可靠的传输服务,确保数据无差错地按序到达目的地。
(3)IP网际层。IP网际层的任务是处理两个通信终端之间的通信。它接收来自运输层的请求,将带有目的地址的分组发送出去;将分组封装到数据包中,填入数据报头,用路由算法决定是直接把数据传送至目的主机,还是传送给路由器,然后把数据报送至相应的网络。IP运输层还要处理接收到的数据报,检验其正确性,并决定是由本地接收,还是路由至相应的目的站。
(4)网络接口层。网络接口层又称数据链路层,这是TCP/IP体系结构的最低层,负责收发IP数据报。图3-30是TCP/IP分层工作的原理图。图3-31是使用路由器的TCP/IP分层工作的原理图。
图中的报文使用了两种不同的网络帧,一个是从主机A到路由器R,另一个是从路由器R到主机B。主机A发出的帧和路由器R接收到的帧相同,但可不同于路由器R和主机B之间帧的传送。
图3-30 TCP/IP分层工作的原理图
图3-31 使用路由器的TCP/IP分层工作的原理图
3.OSI与TCP/IP体系结构的比较
图3-32画出了TCP/IP与OSI两种体系结构的对比。在OSI参考模型中把应用层再划分为三个层次,它们分别为:应用层、表示层和会话层。在一些问题的处理上,TCP/IP与OSI是不相同的。例如:
(1)TCP/IP一开始就考虑到多种异构网的互联问题,并将网际协议IP作为TCP/IP的重要组成部分。ISO和CCITT(国际电话电报咨询委员会)最初只考虑到使用一种标准的公用数据网将各种不同的系统互连在一起。
(2)TCP/IP一开始就对面向连接服务和无连接服务并重。所谓面向连接服务是指具有建立连接、数据传输和释放(拆除)三个阶段的服务。无连接服务是指两个实体之间的通信不需要先建立好一个连接,它的下一层资源将在数据传输时动态地进行分配。此外,两个通信实体不必同时处于激活状态,发送端进行发送时,它才被激活;接收端进行接收时,它也才需被激活。也就是说,发送与接收两个通信实体不必同时激活。因此,无连接服务的优点是灵活方便和迅速。但是无连接服务不能防止报文丢失和重复发送,适用于传送少量零星的报文。
图3-32 TCP/IP与OSI体系结构的比较
(3)TCP/IP有较好的网络管理功能。
(4)TCP/IP模型的不足之处是没有将“服务”、“协议”和“接口”等概念很清楚地区分,会给采用新技术设计的新型网络带来一些麻烦。