文档库 最新最全的文档下载
当前位置:文档库 › 计算机网络体系结构

计算机网络体系结构

计算机网络体系结构
计算机网络体系结构

11.1.1计算机网络工程的含义

?简单地说,计算机网络工程就是组建计算机网络的工作,凡是与组建计算机网络有关的事情统统归纳在计算机网络工程中。

?当前,对计算机网络工程的定义尚无权威。我们结合自己的工程实践尝试性地给计算机网络工程的含义进行一下描述:计算机网络工程是指为满足一定的应用需求和达到一定的功能目标而按照一定的设计方案和组织流程进行的计算机网络建网工作。

计算机网络工程必须具备

以下几个要素

?满足明确的业务和应用需求;

?具备相应的功能;

?遵照成熟可行的设计方案实施;

?在完善的组织流程规范下进行。

对计算机网络工程的理解

?狭义的理解认为计算机网络工程就是建设计算机网络的硬件系统平台。涉及的工作主要是硬件设备的选型、安装、网络布线和调试。

?广义的理解认为计算机网络工程要建设至少3个平台,即网络硬件系统平台、网络软件系统平台以及网络安全和管理平台。

网络硬件系统平台

?主机

?网络设备

?布线系统等硬件。

网络软件系统平台

?网络操作系统

?工作站操作系统

?通信及协议软件

?数据库管理系统

?开发工具软件。

网络安全和管理平台

?网络安全软件系统

–数据加密子系统

–入侵检测子系统

–防火墙子系统

–网络防病毒子系统

–身份认证子系统等。

?网络管理软件系统。

第1章计算机网络体系结构

1.1计算机系统互联参考模型

?计算机网络能够实现信息交换和资源共享。实现信息交换和资源共享的根本途径是数据通信。计算机网络中的数据通信是个很复杂的过程,需要解决多个问题。计算机网络解决数据通信问题的做法是由若干功能模块联合起来实现这个复杂过程。每个功能模块解决某些特定

的问题,各个功能模块协同起来实现数据从发送方到接收方的传输。

1.1.1计算机通信过程的层次化

?计算机网络通信的复杂过程被按照先后顺序划分为若干个功能层,每个功能层负责完成一定的任务,这些任务由几个功能模块分别完成。计算机网络用户数据逐层按照层的功能规范处理。每层的处理过程一般包括3方面的内容:

?一是数据格式的转换

?二是数据通路的管理

?三是通信控制。

数据格式转换

?是指第n层协议的数据单元(Protocol Data Unit,PDU)和相邻层的PDU之间的转换。当由第n 层PDU得到第n-1层的PDU时,称为封装,如图1-1(a)所示。当第n-1层PDU的数据部分长度小于第n层PDU时,封装之前要先将第n层PDU分成若干个片段(segment),称为分段。当由第n-1层PDU得到第n层的PDU时,称为拆装。

数据通路

?是指通信双方(层实体)之间交换PDU时使用的通路,它由一些通信资源组成。数据通路的管理是指数据通路的建立、使用和撤消。

值得注意的是

?高层的数据单元封装在低层数据单元中发送,这意味着高层数据通路要以低层数据通路为基础,换句话说,高层通信要使用低层的数据通路。

通信控制的作用

?保证数据通信的正确性、顺序性、可靠性和高效性。参与通信控制的信息一般包含在PDU的头部和尾部中。

1.1.2 ISO体系结构及重要概念

?当前有2个最有代表性的功能层划分方法,一个是ISO制订的开放系统互联参考模型(Open System Interconnection Reference Model,OSIRM。常简记为OSI),另一个是Internet遵循的TCP/IP参考模型。之所以称它们为参考模型,是因为设计网络协议时应该参考这些模型给出的功能规范。

1.OSI模型和TCP/IP模型的基本层次结构

?功能模块是按照高低层次排列的(为数不少的文献称参考模型为层次结构模型)。应用层、表示层和会话层被称为高层(早期文献还包括运输层),其他层被称为低层。

?另外,对等层之间(除物理层)的双向箭头连线是虚线,这表示对等层之间并不存在实际的数据传输,只有物理层(链路)上才存在实际的数据传输。事实上,第n层(n>1) 发送数据时,要先把数据交给第n-1层,然后逐层下传至物理层,最后由物理链路传输。这个过程如图1-4所示。

TCP/IP与OSI模型的区别

?TCP/IP参考模型不存在OSIRM中的表示层和会话层,表示层和会话层的功能实际上可以由应用层和运输层完成。

?另外,TCP/IP参考模型中不存在数据链路层和物理层,取而代之的是网络接口层(有的文献称为主机至网络层)。

?TCP/IP模型是对协议族的抽象,换句话说,先有协议后有模型。这是TCP/IP模型与OSIRM另一个主要不同之处。

2. OSI中的三级抽象

?在OSI标准的制定过程中,所采用的方法是将整个庞大而复杂的问题划分为若干个较容易处理的范围较小的问题。在OSI中,问题的处理采用了自上而下逐步求精的方法。先从最高一

级的抽象开始,这一级的约束最少,然后逐渐更加精细地进行描述,同时加上越来越多的约束。在OSI中,采用了图1-5所示的三级抽象,这三级抽象分别是:体系结构、服务定义和协议规范。

OSI体系结构

?是OSI所制定的标准中最高一级的抽象。用比较形式化的语言来讲,体系结构相对于对象或客体的类型,而具体的网络则相当于对象的一个实例。OSI参考模型正是描述了一个开放系统所要用到的对象的类型、它们之间的关系以及这些对象类型与这些关系之间的一些普遍的约束。

服务定义

?比OSI参考模型更具体的抽象是OSI的服务定义。服务定义较详细的定义了各层所提供的服务。某一层的服务就是该层及其子层的一种能力。服务通过接口提供给更高的一层使用。各层所提供的服务与这些服务是怎样实现的无关。

?此外,各种服务还定义了层与层之间的抽象接口,以及各层为进行层与层之间的交互而使用的服务原语,但并不涉及到这个接口是怎样实现的。可见,ISO抽象中不对如何实现所抽象的内容作出规范。

协议规范

?OSI标准中最具体的抽象是OSI协议规范。协议规范精确地描述了应当发送什么样的控制信息,以及应当用什么样的过程来解释这个控制信息。协议的规范具有最严格的约束。

3.服务和协议的含义

?OSI参考模型用―实体(entity)‖一词来表示任何可以发送或接收信息的硬件或软件进程。位于不同子系统的同一层内相互交互的实体,就构成了对等实体。不同的开放系统中对等实体之间的通信称为对等层通信。控制两个对等(N)实体进行通信(对等层通信)的规则的集合称为(N)协议。

?两个(N)实体之间的通信使(N)层能够向上一层提供服务,这种服务就称为(N)服务。接收(N)服务的是上一层的实体,即(N+1)实体。它们也称为用户或更严格的说是(N)服务用户。每个(N+1)实体得到的(N)服务,都是通过(N)实体和另一个(N)实体通信而提供的,而这两个(N)实体间的通信,又必须借助于(N-1)实体的通信而得到。依次类推直到物理层。

服务和协议有以下区别:

?(N)协议的实现保证了(N)服务得以向上一层提供,但(N)服务用户只能看见(N)服务而无法看到(N)协议。(N)协议对服务用户是透明的。

?协议是―水平的‖,即协议控制的是对等实体之间的通信。但服务是―垂直的‖,服务是由下层向上层通过层间接口提供的。上层通过与下层的服务原语的交换来使用下层所提供的服务。?注意:并非在(N)内实现的全部功能都称之为(N)服务,只有那些能够被高一层看见的功能才能称之为―服务‖。

4.SAP、层间接口和传送数据单元

?同一个系统相邻两层的实体的信息交换,都是通过对服务访问点(Service Access Point,SAP)的访问而进行的,SAP实际上就是(N)实体和上一层的(N+1)实体之间的逻辑接口,有时也称之为端口(port)或插口(socket)。

5.服务原语

?当(N+1)实体向(N)实体请求服务时,服务用户与服务提供者之间要进行一些交互。在进行交互时所交换的一些必要信息称为服务原语,用以表明要求本地的或远端的对等实体需要做哪些事情。为此,OSI规定了每一层均可以使用的四种服务原语类型。

四种服务原语类型及意义

?对一个实体的服务请求进行确认并告诉它

6.服务类型

?从通信的角度来看,服务可以分为两种方式,

?面向连接服务(connection-oriented service)

?无连接服务(connectionless service)。

面向连接服务

?在面向连接服务中,使用该服务之前用户先要建立连接,而在使用完服务之后,用户应该释放连接。当被叫用户拒绝连接时,连接宣告失败。

?面向连接服务是电话系统的抽象。在建立连接阶段,在有关的服务原语以及PDU中,必须给出源用户和目的用户的完整地址。但在数据传递阶段,可以只使用一个连接标识符来表示使用的连接。连接本质上像个管道:发送者在管道的一端放入物体,接收者在另一端按同样的次序取出物体。

面向连接服务包括两种

?即报文序列和字节流。

?前者保持报文的界限。例如,发送两个1kByte的报文,收到时仍是两个1kByte的报文,决不会变成一个2kByte的报文。而对于后者,连接上传送的字节流,没有报文界限。2kByte的字节到达接收方后,根本无法分辩它是一个2kByte报文,还是两个1kByte报文,还是作为2084个单字节报文发送的。

无连接服务

?在无连接服务的情况下,两个实体之间的通信不需要先建立好一个连接。因此,不需要事先对其下层的有关资源预定保留,这些资源是在数据传输时动态进行分配的。无连接服务是邮政系统的抽象。

无连接服务有以下三种类型

?数据报(datagram):它的特点是把数据连续发送完毕,不需要接收任何响应。

?带确认传输(confirmed delivery):又称为可靠数据报。这种服务对每一个报文产生一个确认信息反馈给发方的用户。不过这个确认不是来自接收端的用户,而是来自提供服务的层。?请求回答(request reply):在这种类型的无连接服务中,接收端用户每收到一个报文,就向发端用户发送一个应答报文。

1.1.3如何理解参考模型

?考察参考模型是学习和研究计算机网络的一个方法。研究、设计和学习计算机网络都离不开前面介绍的参考模型,因为它定义了网络行为规范。读者在阅读计算机网络教程时,一般都会先遇到关于参考模型的章节。那么如何尽快地理解参考模型,抓住它的思想实质是读者普遍关心和犯难的问题。下面,我们从几个方面介绍如何深入理解参考模型。

1.变空间顺序为时间顺序

?从前面介绍可以看到,参考模型是分层的结果。分层把主机之间端到端数据通信问题划分为若干个子问题,每个子问题又包含一些更具体的问题。参考模型的每一层都对应这些子问题中的一个,相应的标准描述应该解决的具体问题,定义层应该具有的功能、完成的任务以及解决问题的方法。

?读者应该注意到,层是有高低之分的。实际上,层的高低并不是本质,层的功能实现的顺序是本质的,换句话说,只有在某些问题解决之后,其他问题才能着手解决,这样,先要解决的问题所在的层与其他问题所在的层之间就存在先后顺序。

?因此,按照这种理解,参考模型就可以表示为图1-13所示的样子。

2.操作系统在什么位置

?我们知道单机系统的软件硬件结构可以用图1-14(a)的模型来描述,那么网络主机系统可以类似地用如图(b)所示的模型来描述。

?因此从实现上看,计算机网络参考模型可以表述成图1-15的样子。

3.层功能概述-应用层

?应用层主体是一些与用户网络应用程序配套的协议,例如支持网络管理的简单网络管理协议(Simple Network Management Protocol,SNMP),支持电子邮件(Email)的简单邮件传输协议(Simple Mail Transfer Protocol,SMTP)和邮局协议(Protocol Of Post office,POP),支持WWW 应用的超文本传送协议(HyperText Transfer Protocol,HTTP),支持域名解析的DNS(Domain Name System)等。应用层负责建立应用程序进程之间的连接关系(如用户拨号上网的连接过程),提供网络与用户应用软件之间的接口服务。

表示层

?表示层主体是标准的例行程序,其工作与用户数据的表示和格式有关,而且与程序所使用的数据结构有关。该层涉及的主要问题是数据的格式和结构。表示层完成数据格式转换,确保一个主机系统应用层发送的信息能被另外一个系统的应用层识别,另外还负责文件的加密和压缩。

会话层

?会话层专为解决远程终端访问问题而设置。会话包括两个或多个表示层实体之间的连接,它是应用层建立连接动作的下级执行者。会话层是建立、管理以及终止两个应用系统之间连接的功能层。会话层提供在两个进程之间建立、维护和结束连接的手段;负责数据传递、服务分类。

运输层

?运输层提供数据运输服务,使上面几层避开网络通信的细节,所以运输层可以被看作高层协议与下层协议之间的边界:它与下面3层结构与数据传输问题有关,其上3层结构与应用问题有关。运输层的主要功能是在端与端之间提供无差错可靠的,透明的数据传输;提供端到端的差错恢复和流量控制。

网络层

?网络层是主机与通信网的接口,它以数据链路层提供的无差错传输为基础,向高层(运输层)提供两个主机间的数据传输服务。网络层的主要功能包括:

–网络互联:不同网络的数据链路层PDU在网络层进行转换。

–路由选择:确定网络层PDU发送到什么方向。

–拥塞控制:解除网络中通信量的拥挤现象。

·多路复用:网络层PDU可以装载多种运输层PDU。

–地址解析:在网络层地址和数据链路层地址之间进行映射,例如网际层IP地址与局域网物理地址的映射。

数据链路层

?数据链路层的传输单位是帧。一般的,帧是由地址段、数据段、标志段及校验段等字段组成的具有一定格式的数据传输单元。数据链路是为传输数据帧而建立的节点间的逻辑连接,它是数据帧的通路。围绕帧的传输所制定的规则就是数据链路协议,又叫控制规程。数据链路层把传输介质的不可靠因素尽可能地屏蔽起来,保证数据链路上相邻节点间数据的正确传输。

物理层

?物理层是网络中最低层,它是连接数据终端设备(Data Terminal Equipment, DTE)和数据电路端接设备(Data Circuit-terminating Equipment,DCE)的接口。物理层协议是进行原始位流传输所遵循的规则,有时称为物理接口。

?物理层协议的内容涵盖了数据通信系统的所有方面。具体讲,物理层涉及的问题包括–以多大电压代表码元―1‖和―0‖

–比特宽度(发送一个比特的时间)是多少

–接口的插脚数

–插脚功能

–如何建立初始连接、如何终止初始连接等。

1.2局域网层次结构

?局域网的体系结构不包括高层结构,它所涵盖的功能层只有物理层和数据链路层,另外还包括与第3层(网络层/网际层)的接口。

局域网的主要功能

是数据传输。具体来说,是在数据链路层通信实体之间传输数据帧。数据链路层通信实体包括计算机系统的网络适配器、局域网设备以及数据链路层协议软件实体。

物理层的主要功能

?把计算机要发送的数据编码成信号,或把从通信线路上接收的信号译码成数据;

?处理用于发送与接收同步的前同步码(preamble);

?编码信号比特流的发送与接收。

1.2.1数据链路层的子层

?数据链路层的功能由2个子层实现,这2个子层是逻辑链路控制(Logical Link Control,LLC)子层和介质存取控制(Medium Access Control,MAC)子层。

为什么数据链路层会有2个子层呢﹖

?首先,从功能上看,数据链路层的任务是在点到点的物理线路(中间没有任何节点设备,称为链路)上形成数据帧的通道。这个通道就是上一节提到的数据链路,它是一种逻辑链路,它是通过对物理链路施加差错控制和流量控制操作而形成的。一般情况下,一条物理链路上可以存在多条逻辑链路。因此,逻辑链路的控制是数据链路层相对独立的一组功能。

?另外,从层次上看,数据链路层紧挨着物理层,它要直接与物理介质打交道,具体讲,就是向介质发送数据(存)和从介质接收数据(取),因此数据链路层还存在一个介质存取问题。?局域网的出现和广泛应用使数据链路层做出修改,增加了MAC子层,用于共享链路控制,而原来的内容集中到LLC子层。

1.MAC子层的功能

?我们知道,物理层传输的是比特流的编码,因此位于物理层之上的MAC层就要有把比特流组装成MAC帧(成帧)和把MAC帧映射到物理层比特流的功能。因此,MAC子层就要具有帧同步和帧定界功能。

?另外,因为LAN中最早都使用共享链路,而非点到点链路,因此MAC子层要在帧中标明帧的发送者和接收者。

?再有,由于物理链路可能造成比特传输错误,而物理层又不能检查和纠正这样的错误,因此需要在MAC层进行差错控制。这个功能通过对帧进行校验来实现。

2.LLC子层的功能

?提供与高层的接口。

?建立和释放数据链路。

?LLC帧差错控制。

?给LLC帧编号,保证按发送顺序接收帧。

LLC子层服务类型

?操作类型1——即LLC1,不确认的无连接服务;

?操作类型2——即LLC2,面向连接服务;

?操作类型3——即LLC3,带确认的无连接服务;

相关文档