计算机网络
上QQ阅读APP看书,第一时间看更新

1.3 计算机网络体系结构

计算机网络是一个复杂的、具有综合性技术的系统,它由计算机系统、通信处理机、通信线路和通信设备、操作系统以及网络协议等组成。为了更好地描述计算机网络结构,使计算机网络系统有条不紊地处理工作,需要定义一种较好的网络体系结构。分层结构就是一种较好地描述网络体系结构的方法。计算机网络体系结构可以从网络体系结构、网络组织和网络配置三个方面来描述。

● 网络体系结构是从功能上来描述计算机网络

● 网络组织是从网络的物理结构和网络的实现两方面来描述计算机网络

● 网络配置是从网络应用方面来描述计算机网络的布局软硬件和通信线路配置等

1.3.1 计算机网络的分层结构

计算机网络的分层结构一般是指将计算机网络所需的功能根据相互之间的依赖关系划分为多个层次,将相同的功能划分在同一层中,不同功能划分在不同层次。

1.计算机网络层次划分的原则和优点

计算机网络体系结构层次划分原则如下。

● 每层功能相对独立

● 相邻层功能具有一定的依赖关系

● 对每层要完成的服务及实现过程进行明确规定

● 对网络中处于不同地区的系统进行相同的层次结构划分

● 不同系统的同等层具有相同功能服务)。

● 高层使用低层提供的服务时不需知道低层服务的具体实现方法

因此,计算机网络划分层次结构具有很多优点,主要优点如下。

● 各层相对独立层次结构中每一层相对独立一个层次只需要通过接口使用其下层提供的服务来完成本层功能并对上一层提供服务它只需知道下层能够提供哪些服务而不需知道下层是如何实现这些功能的

● 简化体系结构设计难度由于各层相对独立实现某种功能从而将一个庞大复杂的大型问题拆解处理简化问题难度

● 网络体系的灵活性更好因为网络结构层次间相对独立因此当某一层功能发生变更时只要上下接口不发生变化即向上层提供的服务和向下层要求的服务不变则在更改层之上或之下的层次都不会受到影响层次间的灵活性保证了每层可以根据自己的需求进行不断改进而不影响其他层次的设计

● 结构易于实现和维护分层结构使得一个庞大系统的实现变得容易因为整个系统的大问题转化成了若干易于处理的小问题了

2.网络协议

为了实现计算机网络中不同系统实体互连和互操作,各实体通信时必须遵守一定的规则,这些规则的集合称为协议(Protocol)。网络协议是网络节点之间沟通与交流的通信规则,网络节点之间只有遵循同一种协议才能保证通信顺畅。网络协议对信息传输的速率、信息代码、信息结构、信息控制步骤、出错控制等做出了一系列标准和规范。

网络协议主要由语义、语法和时序三大要素组成。

● 语义是指协调通信完成某些动作或操作而指定的控制和应答信息如规定通信双方要发出的控制信息执行的动作和返回的应答等

● 语法是指规定通信双方彼此的操作方式确定协议中各个元素的格式如数据和控制信息的结构编码及信号电平等

● 时序也称为定时或同步是指对事件实现顺序的详细说明指出事件的顺序和速率匹配等

一个完整的计算机网络需要有一套复杂的协议集合,组织复杂的计算机网络协议的最好方式是层次结构。

1.3.2 计算机网络分层参考模型

通常将计算机网络层次模型和各层协议的集合定义为计算机网络体系结构(Network Architecture),也称为参考模型,它是利用统一协议制定软件标准和硬件标准,并将计算机网络及其部件所应完成的功能精确定义,从而使不同的计算机能够在相同功能中进行信息对接。计算机网络体系结构为不同的计算机之间互连和互操作提供相应的规范和标准。计算机网络分层参考模型目前流行的主要是开放系统互连参考模型(Open System Interconnection Reference Model,OSI/RM,简称OSI)和TCP/IP参考模型。

1.OSI参考模型

(1)OSI的产生和发展

在OSI出现之前,计算机网络中存在着众多的体系结构,其中以IBM公司的系统网络体系结构(System Network Architecture,SNA)和DEC公司的数字网络体系结构(Digital Network Architecture,DNA)最为著名,各种网络体系结构有着自身的特点和规则,相互之间互连有一定的困难。为了解决不同网络体系结构的互连、互操作问题,ISO(国际标准化组织)于1981年制定了开放系统互连参考模型(OSI模型),定义了网络互连的7层框架。

所谓开放是指标准开放,只要遵循开放的标准就可以与同样遵循该开放标准的设备进行通信。OSI标准制定过程中采用的是分层体系结构方法,将庞大而复杂的问题划分为若干个相对独立、容易处理的小问题。OSI规定了若干层次,各层一般由若干协议组成,以实现该层功能。OSI模型的目标是使两个不同的系统能够较容易地通信,而不管它们低层的体系结构如何,即通信中不需要改变低层的硬件或软件的逻辑。

由于众多原因,OSI参考模型仅仅是一个模型,并没有完成相应的协议实现,只提供了一系列描述性的概念,用来协调进程之间的通信标准的制定。即OSI并不是一个标准,而是一个在制定标准时需要使用的概念性框架。OSI参考模型作为一个框架,定义了整个系统的层次结构、层次间的相互关系以及各层所包括的可能功能及服务,以实现开放系统环境中的互连性、互操作性与应用的可移植性;协调与组织各层协议的制定,对网络内部结构进行准确概括与描述。OSI标准中的每种层次协议都精确地定义了应该发送的控制信息和这种信息的解释方式。

OSI采用三级抽象,即体系结构(Architecture)、服务定义(Service Definition)与协议规范(Protocol Specifications)。

(2)OSI参考模型体系结构

OSI模型将网络体系结构划分为7层,其划分原则如下。

● 在可以存在抽象体的地方创建一个层级

● 每一个层级应该实现一个明确的功能

● 每一个层级功能的选择应该向定义国际标准化协议的目标看齐

● 同一节点内相邻层之间的通信通过接口实现

● 不同节点间同等层通过协议来实现同等层之间的信息通信

OSI模型的7层结构由低到高分别是物理层(Physical Layer)、数据链路层(Data Link Layer)、网络层(Network Layer)、传输层(Transport Layer)、会话层(Session Layer)、表示层(Presentation Layer)和应用层(Application Layer)。OSI参考模型7层结构如图1-15所示。

图1-15 OSI参考模型7层结构

● 第1层到第3层属于OSI参考模型的低层负责创建网络通信连接的链路通常称为通信子网

● 第4层是OSI参考模型的高层与低层之间的连接层起着承上启下的作用是OSI参考模型中从低到高第一个端到端的层次

● 第5层到第7层是OSI参考模型的高层具体负责端到端的数据通信加密/解密会话控制等通常称为资源子网

每层完成一定的功能,直接为其上层提供服务,并且所有层次都互相支持,网络通信可以自上而下(在发送端)或者自下而上(在接收端)双向进行。但是,并不是每个通信都需要经过OSI的全部7层,有的甚至只需要双方对应的某一层即可。例如,物理接口之间的连接、中继器与中继器之间的连接只需在物理层中进行;路由器与路由器之间的连接只需经过网络层以下的三层(通信子网)。

计算机网络由通信子网和资源子网组成通常研究的数据传输和交换指的是通信子网资源子网主要提供共享资源

(3)OSI参考模型各层功能

OSI参考模型的主要功能如下。

1)物理层。物理层的任务是在一条物理通信线路上传输原始比特。发送方发送1(或0)时,接收方应当接收到1(或0),而不是0(或1)。因此物理层需要考虑的是使用多大的电压来代表1或0,以及接收方采用何种方式来识别发送方的比特数据,从而实现比特流的透明传输,为数据链路层提供数据传输服务。物理层的传输单元为比特。

2)数据链路层。数据链路层的任务是在物理层提供的服务基础上,为实体间的通信建立真正的数据链路连接。发送方将数据拆分成数据帧,顺序地发送这些数据帧。接收方正确接收到发送过来的数据帧之后,向发送方发送一个确认帧,作为回复消息。数据链路层的传输单元为帧,并采用差错控制与流量控制方法,确保数据线路的无差错传输。

3)网络层。网络层的任务是通过路由算法为分组选择最适合子网通信的路径,实现网络互连和拥塞控制。路由可以建立在静态表的基础上,也可以采用一种自动更新的方式,以此避免网络中出现的故障组件。路由可以处于高度动态中,这样针对每一个数据报都重新确定路径,反映当前网络的负载情况。网络层的传输单元是分组。

4)传输层。传输层的任务是向用户提供一种端到端的服务。传输层是通信体系中关键的一层,因为它实现了向高层屏蔽下层数据通信的全部细节。传输层接收上一层传来的数据,将数据分割成较小的单元,将这些数据单元传送给网络层。传输层自始至终将数据从源端带到目的端。也就是说,源端在传输层利用报文首部和控制信息与目的端的类似程序进行会话,其下面各层通过协议与同等层级进行通信,其通信过程涉及多少路由,传输层并不需知道,也不涉及源端与目的端。

5)会话层。会话层的任务是负责维护两个节点之间会话的建立、管理和终止。会话层允许不同机器上建立用户会话。会话可以提供各种服务,包括对话控制、令牌管理以及同步功能。目前,会话层没有具体的协议。

6)表示层。表示层的任务是处理两个通信系统之间交换信息的表示方式。表示层关注的是信息的语法和语义。不同的数据结构必须以相同的一种抽象方式来定义,以实现这些计算机之间的通信。表示层正是用来定义和管理这些抽象的数据结构,主要包括数据格式变换、数据加密和解密、数据压缩与恢复等功能。目前,表示层也没有具体的协议。

7)应用层。应用层是OSI参考模型的最高层,它是服务于用户,是唯一直接为用户应用进程访问OSI环境提供手段和服务的层次,应用层以下各层通过应用层间接地向应用进程提供服务。因此,应用层向应用进程提供的服务是所有层提供服务的总和。应用层需要识别并保证通信双方的可用性,保证应用程序之间的同步,建立传输错误纠正机制和保证数据完整性控制机制。应用层包含了用户通常需要的各种协议。

2.TCP/IP参考模型

1990年以前,在数据通信和联网的文献中占主导地位的是OSI模型,OSI模型的理论较为完整,但由于多种原因,OSI并没有具体功能实现,也没有真正广泛应用在网络通信中。相反,并非国际标准的TCP/IP参考模型在大范围内实现了网络工程中的应用,成为事实上的国际标准,又称为工业标准(或业界标准)。

(1)TCP/IP的发展

TCP/IP的研究和应用先于OSI,而且其协议实现在先,体系结构定义在后。TCP/IP最早由斯坦福大学的两名研究人员于1973年提出。1983年,TCP/IP被UNIX 4.2BSD操作系统采用。随着UNIX的成功,TCP/IP逐步成为UNIX操作系统的标准网络协议。Internet的前身ARPAnet最初使用NCP(Network Control Protocol),由于TCP/IP具有跨平台特性,ARPAnet的实验人员在对TCP/IP改进后,规定联入ARPAnet的计算机都必须采用TCP/IP。随着ARPAnet逐渐发展成为Internet,TCP/IP也就成为Internet的标准连接协议,因此,TCP/IP成了事实上的国际工业标准。TCP/IP从其发展历程来看,共出现了6个版本,后3个版本是版本4、版本5与版本6。目前广泛使用的TCP/IP是版本4,称之为IPv4。

(2)TCP/IP体系结构

TCP/IP体系结构分为4层,如图1-16所示,其体系结构模型自下而上分别是网络接口层、网络层、传输层和应用层。其中虚线框中的数据链路层和物理层严格说并不属于TCP/IP体系结构,但被TCP/IP的网络接口层很好地调用。

图1-16 TCP/IP体系结构

TCP/IP在Internet中得到迅速发展,一个重要原因是它适应了世界范围内数据通信的需要,实现了异构网络的互连。TCP/IP的主要特点如下。

● TCP/IP独立于特定的计算机硬件与操作系统是一个开放的协议标准可以免费使用可以运行在局域网广域网更适用于互连网络中

● 采用统一的网络地址分配方式Internet网中的所有设备都有唯一的地址

● TCP/IP通常指的并不是TCP和IP而是Internet网络体系中使用的整个TCP/IP族

(3)TCP/IP参考模型各层功能

TCP/IP各个层次功能与特点主要如下。

1)网络接口层。TCP/IP体系结构严格地说并未实现数据链路层和物理层的功能,它只定义了一个接口,称为网络接口层,因此网络接口层严格地说并不是一个独立层次,仅仅是一个接口,用于提供对下面的数据链路层和物理层的接口。而且,网络接口层在TCP/IP中并没有规定具体的内容,只是借助目前已成熟的、具体的物理网络协议来实现,如IEEE 802协议族等。

2)网络层。TCP/IP的网络层基本对应于OSI模型的网络层,它是TCP/IP模型中最主要的层次,是整个体系结构的关键部分。它的功能是负责将源主机的报文分组独立地发送到目的主机,源主机和目的主机可以处在一个网络中,也可以处在不同网络中,可以完成路由选择和流量控制等功能。并且分组到达目的主机的顺序与发送的顺序可能相同,也可能不同,乱序到达的分组需要高层协议完成重新排序。IP的数据单元是IP分组。

3)传输层。TCP/IP的传输层对应于OSI的传输层和会话层。传输层的功能主要包括对应用层数据进行分段,对接收数据进行检查以保证所接收数据的完整性,为多个应用进程同时传输数据,多路复用数据流,对乱序接收的数据重新排序,提供端到端的可靠传输等。传输层定义了两个协议,即传输控制协议(TCP)和用户数据报协议(UDP)。

4)应用层。TCP/IP的应用层是最高层,对应于OSI模型的应用层。TCP/IP的应用层主要是为用户提供一些常用的应用程序,并规定各种应用程序之间通过什么样的应用协议来使用网络所提供的服务。应用层包含所有的高层协议,如超文本传送协议(HTTP)、远程登录协议(Telnet)、文件传输协议(FTP)、简单邮件协议(SMTP)、域名系统(DNS)等。