OSI七层模型介绍

上传人:m**** 文档编号:187667268 上传时间:2023-02-16 格式:DOCX 页数:28 大小:196.87KB
收藏 版权申诉 举报 下载
OSI七层模型介绍_第1页
第1页 / 共28页
OSI七层模型介绍_第2页
第2页 / 共28页
OSI七层模型介绍_第3页
第3页 / 共28页
资源描述:

《OSI七层模型介绍》由会员分享,可在线阅读,更多相关《OSI七层模型介绍(28页珍藏版)》请在装配图网上搜索。

1、OSI七层模型详解OSI (Open System Interconnection,开放系统互连)七层网络模型称为开放 式系统互联参考模型 ,是一个逻辑上的定义,一个规范,它把网络从逻辑上分 为了 7层。每一层都有相关、相对应的物理设备,比如路由器,交换机o OSI七 层模型是一种框架性的设计方法 ,建立七层模型的主要目的是为解决异种网络 互连时所遇到的兼容性问题,其最主要的功能使就是帮助不同类型的主机实现数 据传输。它的最大优点是将服务、接口 和协议这三个概念明确地区分开来,通 过七个层次化的结构模型使不同的系统不同的网络之间实现可靠的通讯。建立七层模型的主要目的是为解决异种网络互连时所遇到

2、的兼容性问题。它的最 大优点是将服务、接口和协议这三个概念明确地区分开来:服务说明某一层为上 一层提供一些什么功能,接口说明上一层如何使用下层的服务,而协议涉及如何 实现本层的服务;这样各层之间具有很强的独立性,互连网络中各实体采用什么 样的协议是没有限制的,只要向上提供相同的服务并且不改变相邻层的接口就可 以了。网络七层的划分也是为了使网络的不同功能模块(不同层次)分担起不同 的职责,从而带来如下好处: 减轻问题的复杂程度,一旦网络发生故障,可迅速定位故障所处层次, 便于查找和纠错; 在各层分别定义标准接口,使具备相同对等层的不同网络设备能实现互 操作,各层之间则相对独立,一种高层协议可放在

3、多种低层协议上运行; 能有效刺激网络技术革新,因为每次更新都可以在小范围内进行,不需 对整个网络动大手术; 便于研究和教学。第一层 物理层O S I模型的最低层或第一层,该层包括物理连网媒介,如电缆连线连接器。 物理层的协议产生并检测电压以便发送和接收携带数据的信号。在你的桌面PC 上插入网络接口卡,你就建立了计算机连网的基础。换言之,你提供了一个物理 层。尽管物理层不提供纠错服务,但它能够设定数据传输速率并监测数据出错率。 网络物理问题,如电线断开,将影响物理层。(一)物理层的主要功能 为数据端 设备提供传送数据的通路 ,数据通路可以是一个物理媒体 也可以是多个 物理媒体连接而成 .一次完整

4、的数 据传输,包括激活物理连接 传送数据 ,终止物理连接 .所谓激活,就是 不管有多少物理媒体参与 ,都要在 通信的两个数 据终端设备间连接起来 ,形成一条 通路. 传输数据.物理层要形成适合数据传输 需要的实体 ,为数据传送服务 . 一是要保证数 据能在其上正确通过,二是要提 供足够的带宽 (带宽是指每秒 钟内能通过的比特(BIT)数),以减少信道上的拥塞传输数据的方式能满足点 到点,一点到多 点,串行或并行 ,半双工或全双工, 同步或异步传输的需要 .第二层 数据链路层数据链路(Data Link Layer)可以粗略地理解为数据 通道。物理层要为终 端设备间的数据通信提供传输媒体及其连接

5、媒体是长期的,连接是有生存 期的在连接生存期内,收发两端可以进行不等的一次或多次数据通信每次 通信都要经过建立通信联络和拆除通信联络两过程这种建立起来的数据收 发关系就叫作数据链路而在物理媒体上传输的数据难免受到各种不可靠因 素的影响而产生差错,为了弥补物理层上的不足,为上层提供无差错的数据 传输,就要能对数据进行检错和纠错数据链路的建立,拆除,对数据的检错, 但是并不纠正错误。(一)链路层的主要功能数据链路层是OSI参考模型的第二层,该层解决两个相邻 结点之间的 通信问题,实 现两个相 邻结点链路上无差错 的协议数据单元传输。数据 链路层传输的 协议数据单元称为数据帧。所谓链路 就是数据传输

6、中任何两个相邻结 点间的点到点的物理线路。 数据帧通常是由网卡(NIC)产生:上一层的协议数据单元(数据包)传递 到 NIC 后, NIC 通过添加头部 和尾部将数据打包(封装成帧),如图 3-2-6 所示;然后数 据帧沿着链路再传送至目的结点 。数据帧首 部和尾部含有对等数据链路进程 需要使用的协议信息。头部 的信息包括发送结点和接收结点的地址(MAC地址)以及错误校验信息等。数据链路 层不关心数据包中包含什么信息 ,而仅是将其传递到网络中 的下一结点。 数据链路层的主要功能概括如下 :(1) 数据链路的管理和物理层 相似,数据链路层要负 责建立、维持和释放数 据链路的连接。 在局域网中,

7、数据链路层又被划分为逻辑链路 控制子层和介质访问控制子 层。(2) 帧同步帧同步要 解决的问题是接收方如何能从收 到的比特流中准确地区分出 一帧的开始和 结束。一般可采用以下方法(目 前普遍使用的是后两种): 字节计数法采用一个 特定的字符(例如: SOH) 来表示一帧的开始,并以一个 专 门的字段( Count )来表示帧内的字节 数。 字符填充法采用一些 特定的字符来表示一帧的开始和 结束。 比特填充法采用一串 特定的比特组合来表示一帧的开 始和结束。 违法编码法采用“违法”的编码来 表示一帧的开始和结束。(3) 差错控制差错控制 是指在数据通信过程中发现能检 测或纠正差错,并将差错限 制

8、在尽可能小 的允许范围内。差错检测可通过 差错控制编码来实现的;而 差错纠正则通 过差错控制方法来实现。 详见“差错控制 技术”一节中的相关介 绍。(4) 流量控制如果发送结点的发送能力大于接收结点的接收能力,将导致接收方来 不及接收。流量控制所要解决的就是控制发送方的速率,使其不超过接收 方所能承受的能力。第三层 网络层OSI模型的第三层,其主要功能是将网络地址翻译成对应的物理地址,并 决定如何将数据从发送方路由到接收方。网络层通过综合考虑发送优先权、网络拥塞程度、服务质量以及可选路由的 花费来决定从一个网络中节点A到另一个网络中节点B的最佳路径。由于网络 层处理路由,而路由器因为即连接网络

9、各段,并智能指导数据传送,属于网络层。 在网络中,“路由”是基于编址方案、使用模式以及可达性来指引数据的发送。网络层在数据链路层提供的两个相邻端点之间的数据帧的传送功能上, 进一步管理网络中的数据通信,将数据设法从 源端经过若干个中间节点传 送到目的端,从而向传输层提供最基本的端到 端的数据传送服务。网络层 的目的是实现两个端系统之间的数据透明传送,具体功能包括路由选择、 拥塞控制和网际互连等。第四层 传输层传输层是OSI中最重要,最关键的一层,是唯一负责总体的数据传输和数据 控制的一层.传输层提供端到端的交换数据的机制 .传输层对会话层等高三层提 供可靠的传输服务, 对网络层提供可靠的目的地

10、站点信息。传输层也称为运输层.传输层只存在于端开放系统中 , 是介于低 3 层通信子 网系统和高 3 层之间的一层,但是很重要的一层.因为它是源端到目的端对数据 传送进行控制从低到高的最后一层.(一) 传输层端口的概念传输层的 任务是根据通信子网的特性,最佳的利用网络资源,为两个 端系统的 会话层 之间,提供建立 、维护和取消传输连接的功能,负 责端到 端的可靠数据 传输。在这一层,信息传送的协 议数据单元称为段或报文。网络层只是根据网络地址将 源结点发出的 数据包传送到目的结点,而 传输层则负责 将数据可靠地传送到相应的端口 。计算机网络中的 资源子网是通信的发起者和 接收者,其中 的每个设

11、备 称为端点;通信子网提供网络中的通信服务,其中的设备称为结点。OSI 参考模型中用 于通信控制的是下面四层,但它 们的控制对象不一样。(二) 传输层的基本功能传输层提供了 主机应用程序进程之间的端到端 的服务,基本功能如下(1) 分 割与重组数据(2) 按 端口号寻址(3) 连 接管理(4) 差 错控制和流量控制传输层要向会话层提供通信服务 的可靠性,避免报文的出错、丢 失、延迟时间 紊乱、重复、乱序等差错。(三)传输层在 OSI 中的地位和作用传输层是整个 协议层次结构的核心,是惟一 负责总体数据传输和控制 的一层。在 OSI 七层模型中传 输层是负责数据通信的最高层, 又是面向网络通 信

12、的低三层和面向信息处理的高 三层之间的中间层。因为网络层不一定保 证服务的可靠,而用户也不能直 接对通信子网加以控制,因此在网络层之 上,加一层即 传输层以改善传输质量。传输层利用网络层提供的服务,并通 过传输层地址提供给高层用户传 输数据的通信端口,使系统间高 层资源的共享不必考虑数据通信方面和不 可靠的数据传输方面的问题。它 的主要功能是:对一个进行的对话或连接 提供可靠的传输服务,在通向网 络的单一物理连接上实现该连接的复用, 在单一连接上 提供端到端的序号与流量控制、 差错控制及恢复等服务。第五层 会话层一)会话层简介设置会话层的目的是管理用户应用进程之间的对话过程, 即提供进程间 的

13、会话服务。所谓对话(dialogue )即是指本地系统的会话实体与远地对等 的会话实体之间交换数据的过程。呂中会话层的主要功能如下:会话连接的管理。对话管理。对传送的报文划分成对话单元(dialogue unit ),在适 当的时候中断对话,并在预定的同步点上恢复对话。同步管理。在传送的数据流中插入适当的同步点,一旦出现差错,对 等的会话服务用户在商定的同步点上恢复对话。活动管理。将报文流分成活动(activity)逻辑单元,对用户应用的 交互活动过程进行结构化管理,即每一个活动独立于其前、 后到达的活动异常情况的处理 。在会话期间报告来自下面网络的异常情况,保证在 会话连接释放之前所有的数据

14、单元都被应用进程所接收。(二)会话层服务的功能单元会话层服务是定义在 ISO 8326 这一文件中,在 1984 年完成了最后的标 准版本,相应的 ITU-T 建议书为 X.215 。ISO 8326 规定了会话服务三个阶段(连接建立、 数据传送和连接释放) 的目的,以及服务描述和服务原语等,共规定了 21种服务和 58 条面向连接 的服务原语。要想全面实现会话层服务是十分复杂的,而且也无此必要,因 为几乎没有一个应用会用到所有的服务。因此 ISO 8326 将若干相关联的服 务组成一个功能单元( function unit ),每一个功能单元则提供一种可供 选择的工作类型。所需要的功能单元在

15、会话连接建立时协商。目前共定义了 12 个功能单元,最重要的一个功能单元是核心功能单元, 它是最小的功能单 元,在任何具体实现中都包含这个核心单元,它包括的服务 有:会话连接、 正常数据传送、有序释放连接、用户终止连接和提供者终止连接等。单独的 核心功能单元对于微型计算机是有用的。为了方便用户从 12 个功能单元中选择一些合适的功能单元来用,会话 服务还定义了 3个功能单元子集,作为对特定的具体实现的建议。每个子集 包括核心功能以及若干功能单元。这:73个子集是: 基本组合子集 BCS(Basic Combined Subset )。 基本同步子集 BSS (Basic Synchroniza

16、tion Subset )。 基本活动子集BAS (Basic Activity Subset )。它是在BCS的基础 上增加了活动的管理、用户和服务提供者发出的异常报告等服务,以保证可 靠的报文传输,适合于电子邮件方面的应用。表5-1给出了会话层的3个子集和功能单元的关系,表中的丁表示某个 子集具有这个功能单元。序号功能单元基本组合子集BCS基本同步子集BSS基本活动子集BAS1核心(不可协商)VVV2半双工VVV3全双工VV4特权数据VV5异常报告V6协商释放V7次同步VV8主同步V9重新同步V10加速数据11活动管理V12能力数据交换V表 5-1 会话层的子集和功能单元的关系在上表中,加

17、速数据功能单元不包含在 3个子集之中。值得注意的 是, 以上划分的三个子集并不能作为会话协商的单位,在建立会话连接时必须单 独对各个功能单元进行协商。会话层和传输层有着显著区别: 传输协议负责产生和维持在两个端点之 间的逻辑连接。会话协议则在上述基本的连接服务的基础上,用增值的办法 提供一个用户接口。传输层的服务很简单,就是要提供一个可靠的传输数据 的服务。但传输协议是很复杂的,因为要在各种不利的条件下保证传输服务 是可靠的。会话层则相反,当发送出一个会话协议数据单元 SPDU 时,传输 层可以保证将它送到对等用户,因此会话协议是非常简单的。然而会话层定 义的为数据交换用的各种服务却非常丰富而

18、复杂,可供应用层根据需要从中 进行选择。对某个特定的应用来说, 某些会话服务就可能不被应用层所选用。三)对话管理与对话同步在任一种双工方式下进行的数据交换过程,即构成一个对话过程,对数 据交换过程(对话过程)的控制称为对话管理。为使对话过程能有条不紊地 可靠进行,要求对话双方有同步的措施加以保障,即所谓的对话同步。对话同步是会话服务的重要内容, 会话服务提供者允许会话用户在传送 的数据中自由设置同步点,并对同步点赋予同步序号,用于识别同步点和实 现同步。在会话数据流中插入同步点是为了从错误中恢复,虽然传输层能够 从通信错误和子网崩溃中恢复,但不能代替会话层的恢复机制。主次同步点也是有所区别的。

19、第一个区别是它们对数据交换过程的影响不同。第二个区别是对退回过程的影响不同。对话管理和对话同步都是通过使用各种“权标”( token )来完成。权 标代表了某种服务的使用权,类似于局域网中使用的令牌,它被动态地分配 给某一方的服务用户,以便允许该用户使用会话层的某种服务,它是会话连 接上的一种属性。权标的引入是由于会话层内存在着较多的用户交互,要控 制和协调这些交互,并保证交互动作的逻辑顺序的正确和避免在数据交换中 产生混乱,就需要用权标进行统一管理。会话层共设置了 4种权标 数据权标:在单工或半双工方式下使一个服务用户拥有的数据发送 权标记。 释放权标:使一个服务用户拥有释放会话连接权的标记

20、。 次同步权标:使一个服务用户拥有使用次同步权的标记, 用于控制 在对话单元中次同步点的插入。 主同步/活动权标:使一个服务用于使用主同步权或对话活动权的 标记,它用于控制活动的开始与结束,以及控制在一个对话活动中主同步点 的插入。建立会话连接时可以就会话中使用哪些权标以及权标的最初持有者进 行协商,权标的拥有权可以在两个会话用户之间易手。权标管理功能提供的 服务允许一个用户主动交出权标或是向另一个用户索取权标。图 9-3 就是利 用数据权标进行双向交替数据传送的例子。我们知道,网络层和传输层提供两种数据传送功能:正常数据传送和加 速数据传送。由于会话数据流具有结构性,所以会话层又增加了特权数

21、据传 送功能和能力数据传送功能。正常数据可以采用全双工或半 双工方 式传送。 如果采用半双工方式,则只有持有权标的一方可以发送数据,另一方想发送 数据时,可以向对方请求权标(如图 9-3 所示)。特权数据的发送不需要权 标,在图 9-3 中用户 B 没有权标也可发送特权数据。这样,特权数据流和正 常数据流的混合形成了全双工 /半双工的混合操作方式。特权数据流的真正 目的是为高层控制报文和网络管理提供途径。所谓能力数据,也用作控制目 的,不过是为了会话层本身的控制, 例如在会话期间改变会话的功能和参数, 与特权数据不同的是它必须完全得到对方的确认。能力数据只能在活动之外 (或两个活动之间的间隔内

22、)发出,发送能力数据必须同时 持有数 据权标 次同步权标和主同步 /活动权标。四)活动管理活动是为了保持进程之间的同步,将所传送的数据流分成不同的逻辑 工作块,供会话服务用户识别。在一个会话连接上,某一时刻只能存在一个 活动,一个活动可以跨越几个会话连接,即一个活动可以在某个会话连接上 中断,而在之后的某一时刻在同一个或在后续某一个连接上恢复,也可以在 一个会话连接期间允许有多个顺序的活动。每一个活动由许多对话单元组成。 活动与对话单元及同步点等概念的关系如图 9-4 所示。由图看出,从用户发 出会话连接请求开始,到收到连接释放确认为止,是一个会话连接的持续时 间。在这期间的数据交换过程可以分

23、成若干个对话活动来完成,而每个活动 又由若干个对话单元所组成。活动管理功能是主同步点的一个扩展, 它为会话用户提供了可以将整个 对话分解成若干离散的活动的方法。每一个活动可以看作是会话用户之间传 送数据的一个特定阶段,完成一个活动相当于交换了一个应用协议数据单元 APDU,将它作为一个活动来标识则由会话实体来完成。一次会话过程可能比 较长,例如在两台计算机之间一次传送多个文件,用户希望知道什么时候一 个文件结束,下一个文件开始。 为此可以把一个文件的传送组织成一个活动, 一个活动就是会话过程中相对独立的一部分。一个活动也可以暂时被中断,成为挂起的活动, 例如当一个较长的文件 传送时,中途因为紧

24、急情况需要暂时停止,等一会儿再继续传送完成,这时 可挂起当前的活动,然后开始一个新的活动,当新的活动结束后再恢复原来 被挂起的活动。活动与同步点有密切关系,一个新的活动开始,同步点序号 置为 1(主同步点),在一个活动内可以设置其他的主同步点或次同步点。 因此,一旦一个活动开始,它不可能退回到上一个活动而重新同步。因为会 话的双方都必须对一个活动什么时候开始,什么时候结束,都要有一个共同 的认识,若两者同时开始设置一个活动就会造成冲突,因此谁能设置活动就 必须对权标的控制。 活动权标与数据权标不同, 但是和主同步权标是同一个。(五)会话服务原语1、会话连接建立原语会话连接的建立过程涉及连接属性

25、的协商,接收方必须应答,表示同意 或不同意发送方的建议。四种形式的连接原语( S_CONNECT )具有同样的参 数集合,有些参数是可选的,有些参数是必要的,所有参数列 于表9-3中, 以下将解释这些参数的意义和用法。连接标识由用户选择。主叫方、被叫方和响应者地址就是与会话用户相 关联的服务访问点。执行结果表示被叫方对连接请求的反应,可能是下面三 个结果之一:接受、会话服务用户拒绝、会话服务提供者拒绝。服务质量是一个参数表,包括残留差错率、时延、吞吐量、优先级和可 靠性等,与传输层的 QoS 类似。会话需求是一个功能单元表。 连接的发起者在请求原语中列出一个功能 单元表,连接的接受者将在响应原

26、语中列出另一个功能单元表,只有两个表 的交集才是协商确定的功能单元,可以在将要建立的会话连接中使用。初始同步点序号是在 0 到 999998 区间中的一个整数,这是一个条件参 数,仅当使用同步服务时才有意义。 类似地,权标的初始分配也是条件参数, 当选用了权标控制功能时必须协商谁是权标的最初持有者。这个参数的值在 请求/指示原语中可能是“连接请求方”、“连接接受方”或者“由接受方 选择”。如果是前两种值,则返回的响应 /确认原语中这个参数为空;如果 是第三个值,则返回的原语中这个参数可取“连接请求方”或“连接接受方”用户数据也作为会话连接原语的任选参数, 可以携带诸如上层应用实体 标题等特别信

27、息。2、置次同步点原语发送用户可以用 S_SYNC_MINOR 服务原语在数据流中插入次同步点,该 原语的参数包括类型、序号和用户数据三个。次同步点的序号由原语中的序 号参数指定。次同步点可以是要求确认的或非确认的,由类型参数指明。用 户数据参数部分是任选的。不一定每一个次同步点都要确认,否则网络信息流量将会增加很多,所 以在多数情况下类型参数的值为非确认的。如果在正常数据流中插入要求确 认的次同步点,就形成了要求确认的数据传送服务,可以作为正常数据传送 服务的补充功能。主同步点原语与次同步点原语类似,但不 包含类 型参数 因为主同步点必须是要确认的。3、再同步原语会话用户使用再同步原语把对话

28、过程退回到一个预定的状态, 该原语的 参数为:再同步类型、同步点序号、权标分配和同步数据。再同步类型可取 以下三个值之一:“放弃”( abandon )就是撤消当前的对话,这时其他参 数的值就没有意义了;“重启动”(res tart )和“设置”(set )都是退回 到以前的某个同步点上,但两者有所不同,重启动不能早于最后一次被确认 的主同步点,而设置可以适用于任何有效的同步点。再同步请求原语中的权标分配参数可取以下三个值之一:请求方、接受 方或由接受方选择,类似于连接请求原语中对应的参数。如果两个用户同时 发出再同步请求,其后果将会破坏系统的一致性,所以会话标准中有一些规 则来避免这种危险。

29、4、有序释放原语有序释放 S_RELEASE 原语是核心功能之一, 用户可随时用这种原语释放 会话连接而不致丢失数据。在有序释放的响应和证实原语中 包含结 果参数 这个参数的值只有两个值, yes 或 no ,接收方拒绝释放连接的原因只能是请 求方没有释放权标。5、异常情况的报告原语对于异常情况的报告有两种处理方法。 有时在会话协议实体内产生了不 可预料的差错(例如,由于某个协议有差错使得某个用户服 务不能 完成) 这时可由会话协议实体向两个会话用户发出 S_P_EXCEPTION_REPORT.indication 指示服务原语。另一种情况是会话用户 发现的异常情况,例如,用户发现缺乏存储空

30、间或者出现了序号错误的数据。 这时用户发出 S_U_EXCEPTION_REPORT.request 原语,对等用户收到 S_U_EXCEPTION_REPORT.indication 原语。在这两种情况下,两个会话用户 将在双方均同意的先前同步点上继续其对话。(六)会话协议在会话协议的标准中一共定义了 36 种会话协议数据单元,造成如此多 的 SPDU 的原因在于会话服务的复杂性(有 58 条服务原语)。而会话协议基本 上是直接把会话服务原语映射为会话协议数据单元,用相对简单的传输接口来交 换这些原语。通常的协议参数都具有三个特征:类型、长度和值,而且大多数协议的 参数长度是固定的,类型由固

31、定的字段表示,因而协议数据单元的格式就很 规整而简明。但是在会话协议中,参数的多少变化很大,任选项很多,因此 会话协议数据单元的格式就显得比较复杂。为了统一, SPDU 的编码规则只有 一条,即用类型长度值三个字段的级联形式构成一个参数,这三个字段 的组合称为参数单元,其中类型就是参数标识符( PI)。卷敕爼元SPDU mPI麺据国91 具有单亍参数单元的SFDU構式整个 SPDU 的第一个字段是 SPDU 标识符,第二个字段是 SPDU 头部的长 度,其次是参数部分,最后是数据。这样,具有一个参数单元的 SPDU 格式 如图 9-5 所示,图中长度字段下面的箭头表示长度统计的范围。另外,一个

32、SPDU 可以有多个参数,具有多个参数或没有参数的 SPDU 格式可仿照图 9-5 构造。有关的参数可以组成参数组,参数组由参数组标识符( PGI )、参数组 长度和一个或多个参数单元组成。(a)和(b)分别是具有一个参数组(含两个 参数单元)和两个参数组的 SPDU 的例子。连接标识符就是参数组的例子,它由三部分组成:主叫方的参照标识符 (最大 64 字节)、公共参照数(比如时间,最大 64 字节)和附加的参照信 息(最大 4 字节)。这三个部分分别用一个参数单元表示, 组成一个参数组。全双工时正常数据传送的三个阶段:第一阶段是建立会话连接。源会话实体收到会话用户发来的 S_CONNECT.

33、request 原语后,便形成连接 SPDU (以 CN 表示)发送给目标会 话实体。当目标方收到该 CN 后形成 S_CONNECT.indication 原语传递给目标 会话用户。如果同意建立这条会话连接,则目标会话实体收到 S_CONNECT.response原语,并向源会话实体发送连接接受SPDU(以AC表示)。 这样,当源和目标双方的会话实体交换了 CN 和 AC 会话协议数据单元之后, 便能建立起一条会话连接。第二阶段进行正常数据传送。在全双工通信方式中,源和目标会话实体 可以同时向对方发送数据SPDU (以DT表示)。每当会话实体收到会话用户 发来的S_DATA.request原

34、语后,便可发送一个DT。当会话用户数据太长时, 可将它分为几段,形成几个DT。对等会话实体收到DT后应向会话用户传递 S_DATA.indication 原语。与传输层不同的是在数据传送阶段没有设置本层 的流量控制机制,但它可利用传输层内的流控机制来间接地控制本层的会话 协议数据单元的流量。第三阶段是释放会话连接。当会话实体收到会话用户发来的 S_RELEASE.request 原语后,应采用有序方式来释放会话连接,它将向目标 会话实体发送结束SPDU(以FN表示)。目标会话用户收到S_RELEASE.request 后,发出S_RELEASE.response。目标会话实体将发送断开连接SP

35、DU (以DN 表示)。以上通过 S_RELEASE 原语的交互表示了会话连接有 序释放的情况。 如果在数据传送过程中出现异常情况,任一方会话实体也可不经协商而突然 释放连接(对应的服务原语为S_U_ABORT ),另一方不能拒绝,这时可能造 成数据的丢失。第六层 表示层一) 表示层简介OSI/RM 中表示层的作用,就是要处理应用数据以什么样的表示形式来 进行传送,才能达到任意应用系统之间的信息沟通。这就是表示服务的重要 性。具体来说,表示层的作用是对源端内部的数据结构进行编码,形成适合 于传送的比特流,到了目的端再进行解码,转换成用户所要求的格式(必须 保持数据的意义不变)。至于数据比特流的

36、传送,则由表示层的下面五层提 供可靠、透明、按序的数据传送。另外,随着通信网的发展,表示服务也从一开始单纯地进行数据格式的 转换,演变成为处理数据的转换、压缩和加密等。需要说明的是,并不是在 所有情况下都必须要有表示服务,而且目前在大多数网络系统中不单独存在 表示层。表示服务往往与会话服务一起,作为应用层的增值服务的形式,融 合在网络应用的软件系统中。二) 表示层的概念与功能各个不同的端系统可能有不同的数据表示:不同的机器字长、不同的浮 点数格式以及不同的字符编码等。同一个信息在不同的端系统中会表现为不 同的内部形式,显然这些不同的内部数据表示不能直接用于开放系统之间的 交换。开放系统之间必须

37、有一种共同的语言作为信息交换的工具。下面我们 来说明端系统之间的信息交流工具应该具有什么特点 。首先,开放系统之间的交流工具应该与任何实际的系统无关,即具有 抽象性。其次,这种交流工具应有很强的表达能力,即使不能应付所有的应用 要求,至少也要能适用于绝大多数的应用。最后,这种交流语言要能方便地转变成各种具体形式,既能适合于本 地存储所需的形式,又能方便地变换成适合于通信线路传输的字节流形式以 发送给远端的机器。表示层要解决的中心问题,就是确定端系统之间的信息交流工具。为了使各个端系统之间交换的信息具有相同的语义, 应用层采用了相 互承认的抽象语法。抽象语法是应用实体和表示实体之间交接的数据的表

38、现 形式。表示层的主要功能(1)传送语法协商。根据应用层的要求协商选择合适的表示上下文, 即确定传送语法。(2)语法转换。将抽象语法转换成传送语法,并在对方实现相反的转 换。(3)服务映射。把应用层服务,如对话管理(权标管理)、同步控制 等请求原语映射到相应的会话服务原语。例如,在两个应用实体之间建立表 示连接,选择表示服务功能单元(类似于会话服务功能单元),包含几种表 示服务和若干条服务原语;确定已定义表示上下文的初始集;选择所需的会 话连接特性等。应用实体可利用表示连接传送多种类型的数据,表示层可提 供正常数据、加速数据和能力数据的传送,但不提供流量控制机制。(4)其他功能: 表示层管理。

39、表示层协议涉及到该层的一些管理活动,如激活连接 和差错控制、表示上下文管理等。 数据压缩。源端表示实体对所传送的数据按某种规则进行压缩, 由 接收端的对等表示实体进行解压恢复,从而达到节省通信费用、提高传送效 率的目的。数据加密。源端表示实体采用某种加密算法对所传送的数据进行加密,来提高数据的安全性,接收端的表示实体收到数据后再进行解密。(三) 语法转换我们知道,网络中互相通信的计算机系统是有差异的,各自采用的语法 会有所不同。某一具体计算机所采用的语法称为局部语法。局部语法的差异 决定了同一数据对象在不同的计算机上被表示为不同的比特串,比如高位字 节在前或者低位字节在前。当需要把数据从一台计

40、算机传送到另一台计算机 时,如果双方之间存在局部语法上的差异, 那么为了保证数据语义的正确性, 就存在语法转换的必要性。语法转换工作可以由发送方完成,也可以由接收 方完成或者由双方协作完成。当语法转换只由某一方完成时,只需要完成一次转换。这种工作方式所 带来的问题是执行转换的一方必须精确地知道对方的局部语法,并且还要有 进行这种转换的能力。但是由于在网络中各种系统结构、语言及应用的多样 性,也即局部语法的种类很多,那么要求任何一台计算机记住所有可能遇到 的局部语法并实现转换,显然是不现实的。为此,在 OSI/RM 的表示层中,采用通信双方经过表示协议的协调,各 自完成一次语法转换的方法。这就需

41、要一种标准的语法,即传送语法。发送 方把符合自己的局部语法的比特串转换为符合传送语法的比特串,接收方再 把符合传送语法的比特串转换为符合自己局部语法的比特串。这样,考虑的 问题就是如何来描述局部语法。不同的计算机系统可以有自己特有的局部语法及其描述方法, 例如巴科 斯范式BNF、语法图等。OSI也提出了一种标准的描述方法,即“抽象语法 表示法 1 ASN.l (Abstract Syntax Notation One ),简称抽象语法。它具 有类似于面向对象程序设计语言中所提供的类型的机制,可以定义任何复杂 结构的数据类型,而不同的数据类型之间还可以有继承关系。 OSI/RM 应用层 就是用这

42、种抽象语法来描述本地应用系统中的局部语法数据的类型的。: :-ASN.1的设计思想是:定义各种应用所需的全部数据结构类型,将其 放在一个库中,当某个应用想发送一个数据结构时,可将此数据结构及对应 的 ASN.1 名字传递给表示层。表示层根据 ASN.1 定义即可知道字段的类型和 长度,并知道如何将其编码进行传送。接收端的表示层收到数据结构后,检 查其 ASN.1 的标识即可知道数据结构的类型和长度等,并按照数据结构的描 述信息,把接收到的外部格式转换为内部格式,送交应用进程。关于抽象语法,需要说明的有两点。第一,抽象语法是对数据一般结构 形式的描述,与现有的高级程序设计语言中的类型说明相似。也

43、就是说,抽 象语法是数据描述规范中所采用的、独立于该数据编码技术的规则,同时也 不涉及这些数据结构在计算机内如何存储。 ASN.1 的内容实际上就是规定了 各种数据类型及数据对象的一种记法以及相应的语义。第二点,在 OSI 标准 的描述中,认为应用实体交给表示实体的是一个由 ASN.1 所定义的抽象数据 对象,而表示实体所实现的是从这一抽象数据对象到传送语法的转换或者是 其逆转换,可参见前面图 9-9 。这是因为 OSI 协议的实现者是一些抽象的协 议实体,这些协议实体所能处理的只是由 ASN.1 所描述的抽象数据对象,而 “如何将符合 ASN.1 定义的数据对象表示为符合具体的局部语法的对象

44、”这 个问题已经超出了 OSI 标准化的范围。因此,在 OSI 标准中,把对等应用实 体之间和应用实体与表示实体之间所传送的数据对象,都看成是由 ASN.1 描 述的抽象数据对象。一般地说,一个信息是通过数据类型和数据值来表示的。由于抽象语法 只描述了数据所具有的结构和表示形式,并不涉及数据值的表示,所以 OSI 在 ASN.1 基础上规定了传送语法,并且定义了一套从 ASN.1 数据对象到传送 语法的编码规则,以便与标准传送语法配合。这称为 ASN.1 基本编码规则 BER (Basic Encoding Rule )。在通常情况下,确定了编码规则也就确定了解 码规则。 ASN.1 和 BE

45、R 是为了分别表示传送信息的抽象语法和传送语法而开 发的一种手段,两者共同构成了 OSI 的表示层标准。ASN.1和BER的区别在于,ASN.1是用来定义各种应用协议数据单元APDU 的数据类型的工具,是表示服务的一部分。而 BER 则是用于描述各 APDU 类 型所代表的数据值,它是表示协议的一部分。另外,还应注意的是对应一种 抽象语法不止有一种编码规则。例如有时需要加密,有时需要压缩,有时两 者都需要,而有时两者都不需要,这些选择可以在表示层内部进行协商,由 通信的两个表示实体取得一致。四) 表示上下文表示上下文用来描述抽象语法之间与传送语法之间的映射关系, 或者说 一个抽象语法和一种所商

46、定的传送语法的组合就是一个表示上下文。假设在某个应用中使用的数据类型为字符串并记为 X,这样,如果表示 实体在与对等表示实体协商后按ISO 646 (即ASC I码)对X进行编码,便构 成了 X/ISO 646 表示上下文;如果双方协商后确定按 EBCDIC 码对 X 进行编 码,又构成 X/EBCDIC 表示上下文。在开放系统之间通信时,目的系统必须 知道所接收的数据属于哪一个上下文,方能进行正确的解码。当通信中没有 指定表示上下文时,表示实体就使用系统缺省的表示上下文。表示上下文可 在建立表示连接时,由双方协商确定,也允许在通信过程中重新定义。对于同一种数据结构类型(抽象语法相同),在不同

47、的时间可能使用不 同的传送语法(编码表示不同)。例如有时需要使用加密算法,有时需要使 用压缩算法,或者使用其他的冗余编码。所以,在一个表示连接上可以由多 个表示上下文。但是,任何时刻只能有一个表示上下文处于活动状态,应用 实体可以选择哪个表示上下文处于活动状态。在通信过程中,这种选择和激 活表示上下文的控制情况,由表示实体负责通知接收端对等实体,这就是表 示层的表示上下文服务功能。在任何时刻,可以通过传送语法的协商来定义多个表示上下文,这些表 示上下文就构成了已定义的表示上下文集 DCS (Defined Context Set )。我 们采用以下的例子来说明由协商确定表示上下文的过程。例如,

48、源端的表示层连接请求中需要对一组应用协议数据单元APDU-type(l)、APDU-type(2)和 APDU-type(3)确定抽象语法(AS )和对应的 传送语法(TS)。假设表示层已知道了这些抽象语法,但是,表示层的两个 对等实体还要协商用什么样的传送语法。如果共有四种传送语法 TS(a) 、 TS(b) 、 TS(c) 和 TS(d) 可供选用。于是,源端的应用实体对每一种 AS 建议了 几种TS,希望接收端对等实体至少能支持其中的一种,可表示为如下的形式:(1) APDU-type(1) = AS(1), TS(a), TS(b), TS(c)(2) APDU-type(2) = A

49、S(2), TS(a), TS(d)(3) APDU-type(3) = AS(3), TS(b), TS(c), TS(d)W接收端对等实体对这个请求的响应可能是:1) APDU-type(1) = AS(1), TS(a)2) APDU-type(2) = AS(2), TS(d)3) APDU-type(3) = AS(3), TS(d)这样协商就取得了一致, 连接成功地建立。当然也可能接收端认为信息 不可读而拒绝建立连接。以上的三个表示上下文合在一起,就构成了已定义 的上下文集。 DCS 是可变的,表示层随时可能增减表示上下文以适应应用层 不断变化的要求,表示层提供的这种服务称为上下文

50、管理服务。五)表示服务原语和协议表示层提供的上下文管理服务是通过一种特别的原语 P_ALTER_CONTEXT 实现的,而其他服务原语都与会话服务原语类似,且名称也相似,这里限于 篇幅不再介绍。为了了解表示层的特点,我们详细地讨论 P_ALTER_CONTEXT 原语。P_ALTER_CONTEXT 服务是应答式服务,用户利用这种服务协商改变已定 义的表示上下文集 DCS ,即可以创建、增加或删除表示上下文。除了连接建 立阶段,用户之间的协商只能通过这种原语交互进行。 P_ALTER_CONTEXT 原 语和参数列于表 6-4 中。P_ALTER_CONTEXT 原语参数request表示上下

51、文增加表,表示上下文删除表,用户数据,表示上下文增加结果表(仅用于指示原语)indicationresponse表示上下文增加结果表,表示上下文删除结果表,用户数据confirm表 6-4 P_ALTER_CONTEXT 原语及参数DCS 的每一项由一个表示上下文标识符 PCI (Presentation Context Identification )和一个抽象语法名组成。由于 PCI 要有唯一性,而两个端 系统都可能指定 PCI ,所以为了避免混淆,规定连接的发起端使用奇数号, 而接受端使用偶数号。原语中的参数“表示上下文增加表”、“表示上下文删除表”都是由标 识符对(PCI,抽象语法名)

52、组成的表,指出发起端期望增减的表示上下文。 由响应原语返回的“表示上下文增加 /删除结果表”则指明响应端对发起端 的每一个提议接受还是拒绝,再拒绝的情况下还要指明是服务用户拒绝还是 服务提供者拒绝以及拒绝的原因。与会话层协议一样,表示层协议也分为一些功能单元。核心单元用于建 立表示连接、传送数据和释放连接,它总是必备的。另外一个功能单元是上 下文管理单元,用于增减已定义的上下文集。还有一个功能单元是上下文恢 复单元,当会话连接重新同步时,这个功能单元可以存储上下文信息以备以 后恢复。应用层与表示层之间交互服务原语的方法与下面几层的情况是相似 的 。 例如,在表示连接建立后,在传送数据阶段的 P

53、_DATA 服务原语的交互情况 如图 9-11 所示。当表示层收到应用层的 P_DATA.request 原语后,要向对等 表示实体发出相应的表示协议数据单元 PPDU 。当 PPDU 在向下层传递时,由 表示实体向会话实体发出相应的数据请求服务原语。这样逐层递交下去。以 后通过物理媒体传到目的端,然后逐层上交,最后交付给对等应用实体的是 P_DATA.indication 原语。图中还指出,在应用层与表示层之间使用的是抽 象语法,而在两个表示层之间使用的则是传送语法。第七层 应用层一)应用层简介应用层是 OSI/RM 中最高的一个功能层,它是开放系统互连环境( OSI 环境)与本地系统的操作

54、系统和应用系统直接接口的一个层 次。在 功能上 应用层为本地系统的应用进程(AP)访问OSI环境提供手段,也是唯一直接 给应用进程提供各种应用服务的层次。根据分层原则,应用层向应用进程提 供的服务是 OSI 的所有层直接或间接提供服务的总和。计算机通信网的最终目的是为用户提供一些特定的服务, 使得本地系统 能与外界系统进行协调合作。为了实现这种协调,应用层一方面为应用进程 提供彼此通信的手段,也就是为其创建 OSI 环境;另一方面,由于各种应用 类型的多样性,应用层协议也必定是多种多样的,为了减少应用系统与外界 通信的复杂性,在应用层内应配置尽可能多的、公用或专用的应用服务元素 ASE (Ap

55、plication Service Element ),提供给应用系统根据需要调用。所 谓应用服务元素就是各种应用都需要的功能成分,是应用层的基本构件。(二) 应用实体的模型OSI 环境解决了应用进程在开放环境下与外界系统的通信行为,但应用 系统在本地环境下的进程间交互作用,则是本地操作系统的行为,与 OSI 的 应用层无关。例如,在不同端系统之间传送文件的应用进程,不仅要和用户 进行交互以询问所要传送的文件名,还要和文件系统交互以 读出( 或写入) 所要传送的文件。而 OSI 只关心进程之间的通信行为,因此对应用进程进行 抽象,只保留了应用进程中与外界系统交互行为有关的那些部分。这种抽象 实

56、际上是对应用进程某种程度上的简化。从原则上讲,简化后的模型应当恰 好能够描述和说明这些进程之间的外部交互行为。这种经过抽象后的应用即 称为应用实体 AE (Application Entity ),应用进程必须借助于应用 实体、 应用协议和表示服务才能交换信息。从另一个角度来说,我们也可以将应用 实体看作是应用层在与应用进程交互并提供应用服务时而“创建”的一个进 程。三)(1 )应用进程AP一个应用进程包括在主机的操作系统环境中运行的一个或多个应用软件和通信软件。显然,当应用进程在与另一个开放系统 进行交互时,总有一部分在 OSI 环境之外(即与本地其他进 程交互 的部分, 可认为是应用进程的

57、内部交互),而另一部分在 OSI 环境之中(即与 OSI 交 互的部分,可认为是应用进程的外部交互),前者完成与用户信息加工有关 的功能,而后者完成与网络通信有关的功能。在 OSI 标准中,就把应用进程 中与OSI有关的那部分称为应用实体AE,并放在应用层之中,而把与OSI无 关的那部分仍称为应用进程,放在应用层之外。(2)应用实体AE不同的OSI应用被抽象为不同类型的应用实体, 应用实体在 OSI 环境中代表了应用进程与外界进行交互的那 部分逻辑抽象。 也可理解为 OSI 环境中的应用进程,这一点在本书的前面章节中并没有明确 地进行说明。(3)用户元素UE它是应用实体中的一个功能部分,也可理

58、解为是 应用实体中的应用进程。用户元素与 OSI 服务具体的应用有关,起到用户的 应用进程与OSI应用实体之间的接口的作用,或者可看作是AP在AE中的“代 理”。(4)应用服务元素ASE应用实体之间的通信是多种多样的,对于不同的通信要求或用途,应用实体应提供不同的服务,因此根据不同的通信 用途将这些服务划分为一些可标识的功能元素,分别提供某一特定的通信服 务,这种可标识的功能元素称为应用服务元素 ASE。它是应用实体的主要构 成部分,每一个 ASE 都提供了针对某一应用服务目的而用的 OSI 能力。所谓 应用层协议,就是两个对等 AE 中的同类 ASE 之间的交互协议,它们之间交 互使用各种应

59、用协议数据单元APDU。对用户的应用进程来说,ASE将表示层 及其以下的各层的细节和复杂性都屏蔽掉了。ASE又进一步划分为CASE和SASE, CASE 提供对 SASE 的支持,下面将给出进一步的解释。(5)应用上下文指在一个应用“联系”(类似于较低层上的“连 接”)上,应用实体所使用的应用服务元素的数目和种类,以及对应用服务 元素的调用规则。实系统中的任何应用如要访问OSI环境,首先要通过用户元素UE。在 实现中,它是一组完成用户应用服务与AE中定义的服务原语之间的映射, 从而建立用户的应用进程与应用实体的链接关系的库过程或函数,即所谓的 应用编程接口 API。(四)应用服务元素 ASE在

60、应用层中,最复杂和最特殊的就是它划分出许多的应用服务元素 ASE。 所谓应用层的标准化,主要也就是指各种 ASE 的标准化,即把一些应用进程 经常使用或可能使用的功能以及实现这些功能所要使用的协 议进行标准化。应用服务元素是应用层协议的执行者,例如,在图 9-12 中,应用层协 议1、2、3的执行者分别是ASE1、ASE2、ASE3。这一点在OSI层次结构中是 很特殊的。在 OSI 的其他层次中,协议的执行者是该协议所属层次中的实体, 这些实体内部不再划分成更小的单位。然而在应用层中却不同,应用层协议 的执行者不再是笼统的应用实体AE,而是它内部所包含的各个应用服务元素 ASE。一个ASE通过

61、执行某种应用层协议可以向其服务用户提供某种服务。为了执行协议它也可能需要用到其他 ASE 所提供的服务。同一个应用实体 AE 中的各 ASE 之间互为服务用户,即呈现出相互的依赖关系。因而,一个 ASE 就应当包括它所需要的服务、所执行的协议和向服务用户所提供的服务这三 个部分。正由于 ASE 是应用层协议的执行者, 因此应用层与表示层之间所请求和 提供的服务不是发生在表示实体与应用实体 AE 之间,而是发生在表示实体 与 ASE 之间或者 ASE 与 ASE 之间,以及 ASE 与用户元素 UE 之间,表现为所 交互的服务原语都是指向 ASE 或由 ASE 发出的。从程序设计的角度可以把构

62、成 AE 的各个元素看作是一些模块,而原语的交互则可以采用模块间通信的 方法,如子程序调用、中断处理程序以及共享内存等。通过对这些模块的标准化就可以获得标准化的应用服务, 这些标准化服 务的最终使用者是用户元素UE。UE实际上代表了应用进程中非标准化的模 块,通过引入 UE 可以使得 OSI 方便地描述服务提供者与服务使用者之间的 关系。还需要说明的是,在 OSI 的第一层到第六层,服务提供者和服务用户之 间的接口都与服务访问点相对应,然而在应用层中,由于应用服务元素 ASE 的引入,在应用实体AE中存在着若干个服务提供者与服务用户的接口。但 由于这些接口都只是应用实体的一部分,不需要单独的寻

63、址,因而也就没有 必要和服务访问点相连。 这样,在应用层和用户进程之间就没有服务访问点, 这一点和 OSI 其他层次中的情况不同。另外, OSI 曾把 ASE 分为两类:( 1)各种类型的应用实体都要包含和 用到的公用服务元素 CASE(Common ASE );(2)某几类特定应用实体才要 用到的专用服务元素SASE(Specific ASE)。由于在CASE和SASE之间不容 易找到区分它们的客观标准,因此现在 OSI 的正式标准只使用应用服务元素 ASE这一名词。本书中为了说明CASE和SASE之间的区别,仍然采用这两个 单独的名词。目前,OSI已定义并标准化了较为完备的CASE集合,它

64、们包括:(1)联系控制服务元素( ACSE ) :用来管理应用实体之间的联系, ACSE 仅和两个 SASE 间逻辑联系的建立和释放有关。(2)可靠传送服务元素(RTSE ):负责两个应用实体之间的信息(APDU) 的可靠传送。(3)远程操作服务元素(ROSE ):用来发起和管理远地应用实体之间 的交互式远程操作,如接收来自远程 SASE 的结果。(4)托付、并发和恢复(CCR):负责保证分布在网络环境下多个应用 进程间可靠地进行协同操作以完成共同任务,以使所有应用和操作中的所有 数据保持一致状态。后面将对上述四种为各种应用共同使用的应用服务元素做详细的介 绍。关于专用服务元素 SASE ,每一个都对应于一种特定的应用服务功能。 例如 OSI 的虚拟终端 VT 服务元素,它是专门服务于应用系统中的远程仿真 终端系统的 SASE ,其对应的基于 TCP/IP 模型的应用服务元素是远程登录 Telnet

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!