OSI七层模型详解

  • 格式:docx
  • 大小:69.01 KB
  • 文档页数:27

第一层 物理层

O S I 模型的最低层或第一层,该层包括物理连网媒介,如电缆连线连接器。物理层的协议产生并检测电压以便发送和接收携带数据的信号。在你的桌面P C

上插入网络接口卡,你就建立了计算机连网的基础。换言之,你提供了一个物理层.尽管物理层不提供纠错服务,但它能够设定数据传输速率并监测数据出错率。网络物理问题,如电线断开,将影响物理层。

(一)物理层的主要功能

⑴ 为数据端设备提供传送数据的通路,数据通路可以是一个物理媒体,也可以是多个物理媒体连接而成.一次完整的数据传输,包括激活物理连接,传送数据,终止物理连接。所谓激活,就是 不管有多少物理媒体参与,都要在通信的两个数据终端设备间连接起来,形成一条通路。

⑵ 传输数据。物理层要形成适合数据传输需要的实体,为数据传送服务.一是要保证数据能在其上正确通过,二是要提供足够的带宽(带宽是指每秒钟内能通过的比特(BIT)数),以减少信道上的拥塞。传输数据的方式能满足点到点,一点到多点,串行或并行,半双工或全双工,同步或异步传输的需要。

第二层 数据链路层

数据链路(Data Link Layer)可以粗略地理解为数据通道。物理层要为终端设备间的数据通信提供传输媒体及其连接.媒体是长期的,连接是有生存期的。在连接生存期内,收发两端可以进行不等的一次或多次数据通信。每次通信都要经过建立通信联络和拆除通信联络两过程。这种建立起来的数据收发关系就叫作数据链路.而在物理媒体上传输的数据难免受到各种不可靠因素的影响而产生差错,为了弥补物理层上的不足,为上层提供无差错的数据传输,就要能对数据进行检错和纠错。数据链路的建立,拆除,对数据的检错,但是并不纠正错误。

(一)链路层的主要功能

数据链路层是OSI参考模型的第二层,该层解决两个相邻结点之间的通信问题,实现两个相 邻结点链路上无差错的协议数据单元传输。数据链路层传输的协议数据单元称为数据帧。

所谓链路就是数据传输中任何两个相邻结点间的点到点的物理线路。数据帧通常是由网卡(NIC)产生:上一层的协议数据单元(数据包)传递到NIC后,NIC通过添加头部和尾部将数据打包(封装成帧),如图3-2—6所示;然后数据帧沿着链路再传送至目的结点。

数据帧首部和尾部含有对等数据链路进程需要使用的协议信息。头部的信息包括发送结点和接收结点的地址(MAC地址)以及错误校验信息等.

数据链路层不关心数据包中包含什么信息,而仅是将其传递到网络中的下一结点。数据链路层的主要功能概括如下: (1) 数据链路的管理

和物理层相似,数据链路层要负责建立、维持和释放数据链路的连接。

在局域网中,数据链路层又被划分为逻辑链路控制子层和介质访问控制子层。

(2) 帧同步

帧同步要解决的问题是接收方如何能从收到的比特流中准确地区分出一帧的开始和结束。一般可采用以下方法(目前普遍使用的是后两种):

☆ 字节计数法

采用一个特定的字符(例如:SOH)来表示一帧的开始,并以一个专门的字段(Count)来表示帧内的字节数.

☆ 字符填充法

采用一些特定的字符来表示一帧的开始和结束。

☆ 比特填充法

采用一串特定的比特组合来表示一帧的开始和结束。

☆ 违法编码法

采用“违法"的编码来表示一帧的开始和结束.

(3) 差错控制

差错控制是指在数据通信过程中发现能检测或纠正差错,并将差错限制在尽可能小的允许范围内.差错检测可通过差错控制编码来实现的;而差错纠正则通过差错控制方法来实现。详见“差错控制技术”一节中的相关介绍。 (4) 流量控制

如果发送结点的发送能力大于接收结点的接收能力,将导致接收方来不及接收。流量控制所要解决的就是控制发送方的速率,使其不超过接收方所能承受的能力。

第三层 网络层

O S I 模型的第三层,其主要功能是将网络地址翻译成对应的物理地址,并决定如何将数据从发送方路由到接收方。

网络层通过综合考虑发送优先权、网络拥塞程度、服务质量以及可选路由的花费来决定从一个网络中节点A 到另一个网络中节点B 的最佳路径.由于网络层处理路由,而路由器因为即连接网络各段,并智能指导数据传送,属于网络层.在网络中,“路由”是基于编址方案、使用模式以及可达性来指引数据的发送。

网络层在数据链路层提供的两个相邻端点之间的数据帧的传送功能上,进一步管理网络中的数据通信,将数据设法从源端经过若干个中间节点传送到目的端,从而向传输层提供最基本的端到端的数据传送服务.网络层的目的是实现两个端系统之间的数据透明传送,具体功能包括路由选择、拥塞控制和网际互连等。

第四层 传输层

传输层是OSI中最重要, 最关键的一层,是唯一负责总体的数据传输和数据控制的一层.传输层提供端到端的交换数据的机制.传输层对会话层等高三层提供可靠的传输服务,对网络层提供可靠的目的地站点信息.

传输层也称为运输层.传输层只存在于端开放系统中,是介于低3层通信子网系统和高3层之间的一层,但是很重要的一层.因为它是源端到目的端对数据传送进行控制从低到高的最后一层。

(一)传输层端口的概念

传输层的任务是根据通信子网的特性,最佳的利用网络资源,为两个端系统的会话层之间,提供建立、维护和取消传输连接的功能,负责端到端的可靠数据传输。在这一层,信息传送的协议数据单元称为段或报文。

网络层只是根据网络地址将源结点发出的数据包传送到目的结点,而传输层则负责将数据可靠地传送到相应的端口。

计算机网络中的资源子网是通信的发起者和接收者,其中的每个设备称为端点;通信子网提供网络中的通信服务,其中的设备称为结点。OSI参考模型中用于通信控制的是下面四层,但它们的控制对象不一样.

(二)传输层的基本功能

传输层提供了主机应用程序进程之间的端到端的服务,基本功能如下

(1) 分割与重组数据

(2) 按端口号寻址

(3) 连接管理 (4) 差错控制和流量控制

传输层要向会话层提供通信服务的可靠性,避免报文的出错、丢失、延迟时间紊乱、重复、乱序等差错.

(三)传输层在OSI中的地位和作用

传输层是整个协议层次结构的核心,是惟一负责总体数据传输和控制的一层。

在OSI七层模型中传输层是负责数据通信的最高层,又是面向网络通信的低三层和面向信息处理的高三层之间的中间层。因为网络层不一定保证服务的可靠,而用户也不能直接对通信子网加以控制,因此在网络层之上,加一层即传输层以改善传输质量。

传输层利用网络层提供的服务,并通过传输层地址提供给高层用户传输数据的通信端口,使系统间高层资源的共享不必考虑数据通信方面和不可靠的数据传输方面的问题.它的主要功能是:对一个进行的对话或连接提供可靠的传输服务,在通向网络的单一物理连接上实现该连接的复用,在单一连接上提供端到端的序号与流量控制、差错控制及恢复等服务。

第五层 会话层

(一)会话层简介

设置会话层的目的是管理用户应用进程之间的对话过程,即提供进程间的会话服务。所谓对话(dialogue)即是指本地系统的会话实体与远地对等的会话实体之间交换数据的过程。会话层的主要功能如下:

 会话连接的管理。

 对话管理.对传送的报文划分成对话单元(dialogue unit),在适当的时候中断对话,并在预定的同步点上恢复对话。

同步管理。在传送的数据流中插入适当的同步点,一旦出现差错,对等的会话服务用户在商定的同步点上恢复对话。

 活动管理.将报文流分成活动(activity)逻辑单元,对用户应用的交互活动过程进行结构化管理,即每一个活动独立于其前、后到达的活动。

异常情况的处理.在会话期间报告来自下面网络的异常情况,保证在会话连接释放之前所有的数据单元都被应用进程所接收。

(二) 会话层服务的功能单元

会话层服务是定义在ISO 8326这一文件中,在1984年完成了最后的标准版本,相应的ITU—T建议书为X.215。

ISO 8326规定了会话服务三个阶段(连接建立、数据传送和连接释放)的目的,以及服务描述和服务原语等,共规定了21种服务和58条面向连接的服务原语。要想全面实现会话层服务是十分复杂的,而且也无此必要,因为几乎没有一个应用会用到所有的服务。因此ISO 8326将若干相关联的服务组成一个功能单元(function unit),每一个功能单元则提供一种可供选择的工作类型。所需要的功能单元在会话连接建立时协商.目前共定义了12个功能单元,最重要的一个功能单元是核心功能单元,它是最小的功能单元,在任何具体实现中都包含这个核心单元,它包括的服务有:会话连接、正常数据传送、有序释放连接、用户终止连接和提供者终止连接等。单独的核心功能单元对于微型计算机是有用的。

为了方便用户从12个功能单元中选择一些合适的功能单元来用,会话服务还定义了3个功能单元子集,作为对特定的具体实现的建议。每个子集包括核心功能以及若干功能单元。这3个子集是:  基本组合子集BCS(Basic Combined Subset)。

 基本同步子集BSS(Basic Synchronization Subset)。

 基本活动子集BAS(Basic Activity Subset)。它是在BCS的基础上增加了活动的管理、用户和服务提供者发出的异常报告等服务,以保证可靠的报文传输,适合于电子邮件方面的应用。

表5-1给出了会话层的3个子集和功能单元的关系,表中的√表示某个子集具有这个功能单元。

序号 功能单元 基本组合子集

BCS 基本同步子集

BSS 基本活动子集

BAS

1 核心(不可协商) √ √ √

2 半双工 √ √ √

3 全双工 √ √

4 特权数据 √ √

5 异常报告 √

6 协商释放 √

7 次同步 √ √

8 主同步 √

9 重新同步 √

10 加速数据

11 活动管理 √

12 能力数据交换 √

表5-1 会话层的子集和功能单元的关系

在上表中,加速数据功能单元不包含在3个子集之中。值得注意的是,以上划分的三个子集并不能作为会话协商的单位,在建立会话连接时必须单独对各个功能单元进行协商。

会话层和传输层有着显著区别:传输协议负责产生和维持在两个端点之间的逻辑连接。会话协议则在上述基本的连接服务的基础上,用增值的办法提供一个用户接口.传输层的服务很简单,就是要提供一个可靠的传输数据的服务。但传输协议是很复杂的,因为要在各种不利的条件下保证传输服务是可靠的。会话层则相反,当发送出一个会话协议数据单元SPDU时,传输层可以保证将它送到对等用户,因此会话协议是非常简单的。然而会话层定义的为数据交换用的各种服务却非常丰富而复杂,可供应用层根据需要从中进行选择。对某个特定的应用来说,某些会话服务就可能不被应用层所选用。