计算机网路体系结构可以从网路体系结构、网路组织、网路配置三个方面来描述,网路组织是从网路的物理结构和网路的实现两方面来描述计算机网路,网路配置是从网路套用方面来描述计算机网路的布局,硬体、软体和通信线路来描述计算机网路,网路体繫结构是从功能上来描述计算机网路结构。
网路协定是计算机网路必不可少的,一个完整的计算机网路需要有一套複杂的协定集合,组织複杂的计算机网路协定的最好方式就是层次模型。而将计算机网路层次模型和各层协定的集合定义为计算机网路体系结构(Network Architecture)。
计算机网路由多个互连的结点组成,结点之间要不断地交换数据和控制信息,要做到有条不紊地交换数据,每个结点就必须遵守一整套合理而严谨的结构化管理体系·计算机网路就是按照高度结构化设计方法採用功能分层原理来实现的,即计算机网路体系结构的内容。
通常所说的计算机网路体系结构,即在世界範围内统一协定,制定软体标準和硬体标準,并将计算机网路及其部件所应完成的功能精确定义,从而使不同的计算机能够在相同功能中进行信息对接。
基本介绍
- 中文名:计算机网路
- 外文名:Computer network
- 协定:网路体系结构
- IBM公司:SNA
组成结构
一、计算机系统和终端
计算机系统和终端提供网路服务界面。地域集中的多个独立终端可通过一个终端控制器连入网路。
二、通信处理机
通信处理机也叫通信控制器或前端处理机,是计算机网路中完成通信控制的专用计算机,通常由小型机、微机或带有CPU的专用设备充当。在广域网中,採用专门的计算机充当通信处理机:在区域网路中,由于通信控制功能比较简单,所以没有专门的通信处理机,而是在计算机中插入一个网路适配器(网卡)来控制通信。
三、通信线路和通信设备
通信线路是连线各计算机系统终端的物理通路。通信设备的採用与线路类型有很大关係:如果是模拟线路,线上中两端使用Modem(数据机);如果是有线介质,在计算机和介质之间就必须使用相应的介质连线部件。
四、作业系统
计算机连入网路后,还需要安装作业系统软体才能实现资源共享和管理网路资源。如:Windows 98、Windows 2000、Windows xp等。
五、网路协定
网路协定是规定在网路中进行相互通信时需遵守的规则,只有遵守这些规则才能实现网路通信。常见的协定有:TCP/IP协定、IPX/SPX协定、NetBEUI协定等。
体系结构
计算机网路是一个複杂的具有综合性技术的系统,为了允许不同系统实体互连和互操作,不同系统的实体在通信时都必须遵从相互均能接受的规则,这些规则的集合称为协定(Protocol)。
系统指计算机、终端和各种设备。
实体指各种应用程式,档案传输软体,资料库管理系统,电子邮件系统等。
互连指不同计算机能够通过通信子网互相连线起来进行数据通信。
互操作指不同的用户能够在通过通信子网连线的计算机上,使用相同的命令或操作,使用其它计算机中的资源与信息,就如同使用本地资源与信息一样。
计算机网路体系结构为不同的计算机之间互连和互操作提供相应的规範和标準。
层次结构
计算机网路体系结构可以定义为是网路协定的层次划分与各层协定的集合,同一层中的协定根据该层所要实现的功能来确定。各对等层之间的协定功能由相应的底层提供服务完成。
层次化的网路体系的优点在于每层实现相对独立的功能,层与层之间通过接口来提供服务,每一层都对上层禁止如何实现协定的具体细节,使网路体系结构作到与具体物理实现无关。层次结构允许连线到网路的主机和终端型号、性能可以不一,但只要遵守相同的协定即可以实现互操作。高层用户可以从具有相同功能的协定层开始进行互连,使网路成为开放式系统。这里"开放”指按照相同协定任意两系统之间可以进行通信。因此层次结构便于系统的实现和便于系统的维护。
对于不同系统实体间互连互操作这样一个複杂的工程设计问题,如果不採用分层次分解处理,则会产生由于任何错误或性能修改而影响整体设计的弊端。
相邻协定层之间的接口包括两相邻协定层之间所有调用和服务的集合,服务是第i层向相邻高层提供服务,调用是相邻高层通过原语或过程调用相邻低层的服务。
对等层之间进行通信时,数据传送方式并不是由第i层发方直接传送到第i层收方。而是每一层都把数据和控制信息组成的报文分组传输到它的相邻低层,直到物理传输介质。接收时,则是每一层从它的相邻低层接收相应的分组数据,在去掉与本层有关的控制信息后,将有效数据传送给其相邻上层。
网路体系结构
国际标準化组织ISO(International Standards Organization)在80年代提出的开放系统互联参考模型OSI(Open System Interconnection),这个模型将计算机网路通信协定分为七层。这个模型是一个定义异构计算机连线标準的框架结构,其具有如下特点:
①网路中异构的每个节点均有相同的层次,相同层次具有相同的功能。
②同一节点内相邻层次之间通过接口通信。
③相邻层次间接口定义原语操作,由低层向高层提供服务。
④不同节点的相同层次之间的通信由该层次的协定管理,
⑤每层次完成对该层所定义的功能,修改本层次功能不影响其它层、
⑥仅在最低层进行直接数据传送。
⑦定义的是抽象结构,并非具体实现的描述。
在OSI网路体系结构中、除了物理层之外,网路中数据的实际传输方向是垂直的。数据由用户传送进程传送给套用层,向下经表示层、会话层等到达物理层,再经传输媒体传到接收端,由接收端物理层接收,向上经数据链路层等到达套用层,再由用户获取。数据在由传送进程交给套用层时,由套用层加上该层有关控制和识别信息,再向下传送,这一过程一直重複到物理层。在接收端信息向上传递时,各层的有关控制和识别信息被逐层剥去,最后数据送到接收进程。
现在一般在制定网路协定和标準时,都把ISO/OSI参考模型作为参照基準,并说明与该参照基準的对应关係。例如,在IEEE802区域网路LAN标準中,只定义了物理层和数据链路层,并且增强了数据链路层的功能。在广域网WAN协定中,CCITT的X.25建议包含了物理层、数据链路层和网路层等三层协定。一般来说,网路的低层协定决定了一个网路系统的传输特性,例如所採用的传输介质、拓扑结构及介质访问控制方法等,这些通常由硬体来实现;网路的高层协定则提供了与网路硬体结构无关的,更加完善的网路服务和套用环境,这些通常是由网路作业系统来实现的。
物理层(Physical Layer)
物理层建立在物理通信介质的基础上,作为系统和通信介质的接口,用来实现数据链路实体间透明的比特 (bit) 流传输。只有该层为真实物理通信,其它各层为虚拟通信。物理层实际上是设备之间的物理接口,物理层传输协定主要用于控制传输媒体。
(1)物理层的特性
物理层提供与通信介质的连线,提供为建立、维护和释放物理链路所需的机械的、电气的、功能的和规程的特性,提供在物理链路上传输非结构的位流以及故障检测指示。物理层向上层提供位 (bit) 信息的正确传送。
其中机械特性主要规定接口连线器的尺寸、芯数和芯的位置的安排、连线的根数等。电气特性主要规定了每种信号的电平、信号的脉冲宽度、允许的数据传输速率和最大传输距离。功能特性规定了接口电路引脚的功能和作用。规程特性规定了接口电路信号发出的时序、应答关係和操作过程,例如,怎样建立和拆除物理层连线,是全双工还是半双工等。
(2)物理层功能
为了实现数据链路实体之间比特流的透明传输,物理层应具有下述功能:
①物理连线的建立与拆除
当数据链路层请求在两个数据链路实体之间建立物理连线时,物理层能够立即为它们建立相应的物理连线。若两个数据链路实体之间要经过若干中继数据链路实体时,物理层还能够对这些中继数据链路实体进行互联,以建立起一条有效的物理连线。当物理连线不再需要时,由物理层立即拆除。
②物理服务数据单元传输
物理层既可以採取同步传输方式,也可以採取异步传输方式来传输物理服务数据单元。
③物理层管理
对物理层收发进行管理,如功能的激活 (何时传送和接收、异常情况处理等)、差错控制 (传输中出现的奇偶错和格式错)等。
数据链路层(Data Link Layer)
数据链路层为网路层相邻实体间提供传送数据的功能和过程;提供数据流链路控制;检测和校正物理链路的差错。物理层不考虑位流传输的结构,而数据链路层主要职责是控制相邻系统之间的物理链路,传送数据以帧为单位,规定字元编码、信息格式,约定接收和传送过程,在一帧数据开头和结尾附加特殊二进制编码作为帧界识别符,以及传送端处理接收端送回的确认帧,保证数据帧传输和接收的正确性,以及传送和接收速度的匹配,流量控制等。
(1)数据链路层的目的
提供建立、维持和释放数据链路连线以及传输数据链路服务数据单元所需的功能和过程的手段。数据链路连线是建立在物理连线基础上的,在物理连线建立以后,进行数据链路连线的建立和数据链路连线的拆除。具体说,每次通信前后,双方相互联繫以确认一次通信的开始和结束,在一次物理连线上可以进行多次通信。数据链路层检测和校正在物理层出现的错误。
(2)数据链路层的功能和服务
数据链路层的主要功能是为网路层提供连线服务,并在数据链路连线上传送数据链路协定数据单元L-PDU,一般将L-PDU称为帧。数据链路层服务可分为以下三种:
①无应答、无连线服务。传送前不必建立数据链路连线,接收方也不做应答,出错和数据丢失时也不做处理。这种服务质量低,适用于线路误码率很低以及传送实时性要求高的 (例如语音类的)信息等。
②有应答、无连线服务。当传送主机的数据链路层要传送数据时,直接传送数据帧。目标主机接收数据链路的数据帧,并经校验结果正确后,向源主机数据链路层返回应答帧;否则返回否定帧,传送端可以重发原数据帧。这种方式传送的第一个数据帧除传送数据外,也起数据链路连线的作用。这种服务适用于一个节点的物理链路多或通信量小的情况,其实现和控制都较为简单。
③面向连线的服务。该服务一次数据传送分为三个阶段:数据链路建立,数据帧传送和数据链路的拆除。数据链路建立阶段要求双方的数据链路层作好传送的準备;数据传送阶段是将网路层递交的数据传送到对方;数据链路拆除阶段是当数据传送结束时,拆除数据链路连线。这种服务的质量好,是ISO/OSI参考模型推荐的主要服务方式。
(3)数据链路数据单元
数据链路层与网路层交换数据格式为服务数据单元。数据链路服务数据单元,配上数据链路协定控制信息,形成数据链路协定数据单元。
数据链路层能够从物理连线上传输的比特流中,识别出数据链路服务数据单元的开始和结束,以及识别出其中的每个栏位,实现正确的接收和控制。能按传送的顺序传输到相邻结点。
(4)数据链路层协定
数据链路层协定可分为面向字元的通信规程和面向比特的通信规程。
面向字元的通信规程是利用控制字元控制报文的传输。报文由报头和正文两部分组成。报头用于传输控制,包括报文名称、源地址、目标地址、传送日期以及标识报文开始和结束的控制字元。正文则为报文的具体内容。目标节点对收到的源节点发来的报文,进行检查,若正确,则向源节点传送确认的字元信息;否则传送接收错误的字元信息。
面向比特的通信规程典型是以帧为传送信息的单位,帧分为控制帧和信息帧。在信息帧的数据栏位 (即正文)中,数据为比特流。比特流用帧标誌来划分帧边界,帧标誌也可用作同步字元。
网路层(Net Work Layer)
广域网路一般都划分为通信子网和资源子网,物理层、数据链路层和网路层组成通信子网,网路层是通信子网的最高层,完成对通信子网的运行控制。网路层和传输层的界面,既是层间的接口,又是通信子网和用户主机组成的资源子网的界限,网路层利用本层和数据链路层、物理层两层的功能向传输层提供服务。
数据链路层的任务是在相邻两个节点间实现透明的无差错的帧级信息的传送,而网路层则要在通信子网内把报文分组从源节点传送到目标节点。在网路层的支持下,两个终端系统的传输实体之间要进行通信,只需把要交换的数据交给它们的网路层便可实现。至于网路层如何利用数据链路层的资源来提供网路连线,对传输层是透明的。
网路层控制分组传送操作,即路由选择,拥塞控制、网路互连等功能,根据传输层的要求来选择服务质量,向传输层报告未恢复的差错。网路层传输的信息以报文分组为单位,它将来自源的报文转换成包文,并经路径选择算法确定路径送往目的地。网路层协定用于实现这种传送中涉及的中继节点路由选择、子网内的信息流量控制以及差错处理等。
(1)网路层功能
网路层的主要功能是支持网路层的连线。网路层的具体功能如下:
①建立和拆除网路连线
在数据链路层提供的数据链路连线的基础上,建立传输实体间或者若干个通信子网的网路连线。互连的子网可採用不同的子网协定。
②路径选择、中继和多路复用
网际的路径和中继不同与网内的路径和和中继,网路层可以在传输实体的两个网路地址之间选择一条适当的路径,或者在互连的子网之间选择一条适当的路径和中继。并提供网路连线多路复用的数据链路连线,以提高数据链路连线的利用率。
③分组、组块和流量控制
数据分组是指将较长的数据单元分割为一些相对较小的数据单元;数据组块是指将一些相对较小的数据单元组成块后一起传输。用以实现网路服务数据单元的有序传输,以及对网路连线上传输的网路服务数据单元进行有效的流量控制,以免发生信息"堵塞"现象。
④差错的检测与恢复
利用数据链路层的差错报告,以及其他的差错检测能力来检测经网路连线所传输的数据单元,检测是否出现异常情况。并可以从出错状态中解脱出来。
(2)数据报和虚电路
网路层中提供两种类型的网路服务,即无连线服务和面向连线的服务。它们又被称为数据报服务和虚电路服务。
①数据报 (Datagram)服务
在数据报方式,网路层从传输层接受报文,拆分为报文分组,并且独立地传送,因此数据报格式中包含有源和目标节点的完整网路地址、服务要求和标识符。传送时,由于数据报每经过一个中继节点时,都要根据当时情况按照一定的算法为其选择一条最佳的传输路径,因此,数据报服务不能保证这些数据报按序到达目标节点,需要在接收节点根据标识符重新排序。
数据报方式对故障的适应性强,若某条链路发生故障,则数据报服务可以绕过这些故障路径而另选择其他路径,把数据报传送至目标节点。数据报方式易于平衡网路流量,因为中继节点可为数据报选择一条流量较少的路由,从而避开流量较高的路由。数据报传输不需建立连线,目标节点在收到数据报后,也不需传送确认,因而是一种开销较小的通信方式。但是发方不能确切地知道对方是否準备好接收、是否正在忙碌,故数据报服务的可靠性不是很高。而且数据报传送每次都附加源和目标主机的全网名称降低了信道利用率。
②虚电路 (Virtue Circuit) 服务
在虚电路传输方式下,在源主机与目标主机通信之前,必须为分组传输建立一条逻辑通道,称为虚电路。为此,源节点先传送请求分组Call-Request,Call-Request包含了源和目标主机的完整网路地址。Call-Request途径每一个通信网路节点时,都要记下为该分组分配的虚电路号,并且路由器为它选择一条最佳传输路由发往下一个通信网路节点。当请求分组到达目标主机后,若它同意与源主机通信,沿着该虚电路的相反方向传送请求分组Call-Request给源节点,当在网路层为双方建立起一条虚电路后,每个分组中不必再填上源和目标主机的全网地址,而只需标上虚电路号,即可以沿着固定的路由传输数据。当通信结束时,将该虚电路拆除。
虚电路服务能保证主机所发出的报文分组按序到达。由于在通信前双方已进行过联繫,每传送完一定数量的分组后,对方也都给予了确认,故可靠性较高。
③路由选择
网路层的主要功能是将分组从源节点经过选定的路由送到目标节点,分组途经多个通信网路节点造成多次转发,存在路由选择问题。路由选择或称路径控制,是指网路中的节点根据通信网路的情况 (可用的数据链路、各条链路中的信息流量),按照一定的策略 (传输时间最短、传输路径最短等)选择一条可用的传输路由,把信息发往目标节点。
网路路由选择算法是网路层软体的一部分,负责确定所收到的分组应传送的路由。当网路内部採用无连线的数据报方式时,每传送一个分组都要选择一次路由。当网路层採用虚电路方式时,在建立呼叫连线时,选择一次路径,后继的数据分组就沿着建立的虚电路路径传送,路径选择的频度较低。
路由选择算法可分为静态算法和动态算法。静态路由算法是指总是按照某种固定的规则来选择路由,例如,扩散法、固定路由选择法、随机路由选择法和流量控制选择法。动态路由算法是指根据拓扑结构以及通信量的变化来改变路由,例如,孤立路由选择法、集中路由选择法、分布路由选择法、层次路由选择法等
传输层(Transport Layer)
从传输层向上的会话层、表示层、套用层都属于端一端的主机协定层。传输层是网路体系结构中最核心的一层,传输层将实际使用的通信子网与高层套用分开。从这层开始,各层通信全部是在源与目标主机上的各进程间进行的,通信双方可能经过多箇中间节点。传输层为源主机和目标主机之间提供性能可靠、价格合理的数据传输。具体实现上是在网路层的基础上再增添一层软体,使之能禁止掉各类通信子网的差异,向用户提供一个通用接口,使用户进程通过该接口,方便地使用网路资源并进行通信。
(1) 传输层功能
传输层独立于所使用的物理网路,提供传输服务的建立、维护和连线拆除的功能;选择网路层提供的最适合的服务。传输层接收会话层的数据,分成较小的信息单位,再送到网路层,实现两传输层间数据的无差错透明传送。
传输层可以使源与目标主机之间以点对点的方式简单地连线起来。真正实现端一端间可靠通信。传输层服务是通过服务原语提供给传输层用户(可以是套用进程或者会话层协定),传输层用户使用传输层服务是通过传送服务连线埠TSAP实现的。当一个传输层用户希望与远端用户建立连线时,通常定义传输服务访问点TSAP。提供服务的进程在本机TSAP连线埠等待传输连线请求,当某一节点机的应用程式请求该服务时,向提供服务的节点机的TSAP连线埠发出传输连线请求,并表明自己的连线埠和网路地址。如果提供服务的进程同意,就向请求服务的节点机发确认连线,并对请求该服务的应用程式传递讯息,应用程式收到讯息后,释放传输连线。
传输层提供面向连线和无连线两种类型的服务。这两种类型的服务和网路层的服务非常相似。传输层提供这两种类型服务的原因是因为,用户不能对通信子网加以控制,无法通过使用通信处理机来改善服务质量。传输层提供比网路层更可靠的端一端间数据传输,更完善的查错纠错功能。传输层之上的会话层、表示层、套用层都不包含任何数据传送的功能。
(2)传输层协定类型
传输层协定和网路层提供的服务有关。网路层提供的服务于越完善,传输层协定就越简单,网路层提供的服务越简单,传输层协定就越複杂。传输层服务可分成五类:
0类:提供最简单形式的传送连线,提供数据流控制。
1类:提供最小开销的基本传输连线,提供误差恢复。
2类:提供多路复用,允许几个传输连线多路复用一条链路。
3类:具有0类和1类的功能,提供重新同步和重建传输连线的功能。
4类:用于不可靠传输层连线,提供误差检测和恢复。
基本协定机制包括建立连线、数据传送和拆除连线。传输连线涉及四种不同类型的标识:
用户标识:即服务访问点SAP,允许实体多路数据传输到多个用户。
网路地址:标识传输层实体所在的站。
协定标识:当有多个不同类型的传输协定的实体,对网路服务标识出不同类型的协定。
连线标识:标识传送实体,允许传输连线多路复用。
会话层(Session Layer)
会话是指两个用户进程之间的一次完整通信。会话层提供不同系统间两个进程建立、维护和结束会话连线的功能;提供交叉会话的管理功能,有一路交叉、两路交叉和两路同时会话的3种数据流方向控制模式。会话层是用户连线到网路的接口。
(1)会话层的主要功能
会话层的目的是提供一个面向套用的连线服务。建立连线时,将会话地址映射为传输地址。会话连线和传输连线有三种对应关係,一个会话连线对应一个传输连线;多个会话连线建立在一个传输连线上;一个会话连线对应多个传输连线。
数据传送时,可以进行会话的常规数据、加速数据、特权数据和能力数据的传送。
会话释放时,允许正常情况下的有序释放;异常情况下由用户发起的异常释放和服务提供者发起的异常释放。
(2)会话活动
会话服务用户之间的互动对话可以划分为不同的逻辑单元,每个逻辑单元称为活动。每个活动完全独立于它前后的其他活动,且每个逻辑单元的所有通信不允许分隔开。
会话活动由会话令牌来控制,保证会话有序进行。会话令牌分为四种,数据令牌、释放令牌、次同步令牌和主同步令牌。令牌是互斥使用会话服务的手段。
会话用户进程间的数据通信一般採用互动式的半双工通信方式。由会话层给会话服务用户提供数据令牌来控制常规数据的传送,有数据令牌的会话服务用户才可传送数据,另一方只能接收数据。当数据发完之后,就将数据令牌转让给对方,对方也可请求令牌。
(3)会话同步
在会话服务用户组织的一个活动中,有时要传送大量的信息,如将一个档案连续传送给对方,为了提高数据传送的效率,会话服务提供者允许会话用户在传送的数据中设定同步点。一个主同步点表示前一个对话单元的结束及下一个对话单元的开始。在一个对话单元内部或者说两个主同步点之间可以设定次同步点,用于会话单元数据的结构化。当会话用户持有数据令牌、次同步令牌和主同步令牌时就可在传送数据流中用相应的服务原语设定次同步点和主同步点。
一旦出现高层软体错误或不符合协定的事件则发生会话中断,这时会话实体可以从中断处返回到一个已知的同步点继续传送,而不必从档案的开头恢复会话。会话层定义了重传功能,重传是指在已正确应答对方后,在后期处理中发现出错而请求的重传,又称为再同步。为了使传送端用户能够重传,必须保存数据缓冲区中已传送的信息数据,将重新同步的範围限制在一个对话单元之内,一般返回到前一个次同步点,最多返回到最近一个主同步点。
表示层(Presentation Layer)
表示层的目的是处理信息传送中数据表示的问题。由于不同厂家的计算机产品常使用不同的信息表示标準,例如在字元编码、数值表示、字元等方面存在着差异。如果不解决信息表示上的差异,通信的用户之间就不能互相识别。因此,表示层要完成信息表示格式转换,转换可以在传送前,也可以在接收后,也可以要求双方都转换为某标準的数据表示格式。所以表示层的主要功能是完成被传输数据表示的解释工作,包括数据转换、数据加密和数据压缩等。表示层协定主要功能有:为用户提供执行会话层服务原语的手段;提供描述负载数据结构的方法;管理当前所需的数据结构集和完成数据的内部与外部格式之间的转换。例如,确定所使用的字元集、数据编码以及数据在萤幕和印表机上显示的方法等。表示层提供了标準套用接口所需要的表示形式。
套用层(Application Layer)
套用层作为用户访问网路的接口层,给套用进程提供了访问OSI环境的手段。
套用进程藉助于套用实体 (AE)、实用协定和表示服务来交换信息,套用层的作用是在实现套用进程相互通信的同时,完成一系列业务处理所需的服务功能。当然这些服务功能与所处理的业务有关。
套用进程使用OSI定义和通信功能,这些通信功能是通过OSI参考模型各层实体来实现的。套用实体是套用进程利用OSI通信功能的唯一视窗。它按照套用实体间约定的通信协定 (套用协定),传送套用进程的要求,并按照套用实体的要求在系统间传送套用协定控制信息,有些功能可由表示层和表示层以下各层实现。
套用实体由一个用户元素和一组套用服务元素组成。用户元素是套用进程在套用实体内部,为完成其通信目的,需要使用的那些套用服务元素的处理单元。实际上,用户元素向套用进程提供多种形式的套用服务调用,而每个用户元素实现一种特定的套用服务使用方式。用户元素禁止套用的多样性和套用服务使用方式的多样性,简化了套用服务的实现。套用进程完全独立于OSI环境,它通过用户元素使用OSI服务。
套用服务元素可分为两类,公共套用服务元素 (CASE)和特定套用服务元素 (SASE)。公共套用服务元素是用户元素和特定套用服务元素公共使用的部分,提供通用的最基本的服务,它使不同系统的进程相互联繫并有效通信。它包括联繫控制元素、可靠传输服务元素、远程操作服务元素等;特定套用服务元素提供满足特定套用的服务。包括虚拟终端、档案传输和管理、远程资料库访问、作业传送等。对于套用进程和公共套用服务元素来说,用户元素具有传送和接收能力。对特定服务元素来说,用户元素是请求的传送者,也是回响的最终接收者。