会话层
出自 MBA智库百科(https://wiki.mbalib.com/)
会话层(Session Layer)
目录 |
会话层位于OSI模型的第5层,主要为两个会话层实体进行会话,而进行的对话连接的管理服务。提供的服务可使应用建立和维持会话,并能使会话获得同步。会话层使用校验点,可使通信会话在通信失效时从校验点继续恢复通信。这种能力对于传送大的文件极为重要。
会话层,位于OSI模型的第5层,主要为两个会话层实体进行会话(Session),而进行的对话连接的管理服务。
会话层为客户端的应用程序提供了打开、关闭和管理会话的机制,亦即半永久的对话。会话的实体包含了对其他程序作会话链接的要求及回应其他程序提出的会话链接要求。在应用程序的运行环境中,会话层是这些程序用来提出远程过程调用(remote procedure calls,RPC)的地方。
会话层标准为了使会话连接创建阶段能进行功能协商,也为了便于其它国际标准参考和引用,定义了12种功能单元.各个系统可根据自身情况和需要,以核心功能服务单元为基础,选配其他功能单元组成合理的会话服务子集。
会话层在OSI的模型负责会话检查点和恢复。它允许不同来源的信息流作适当的合并或同步化。
一个例子是在网络会议的应用,其中音频和视频的流串必须同步,以避免嘴唇与声音不同步的问题。楼层控制确保在屏幕上显示的是当前的发言者。
另一个应用是在电视直播节目中,在那里音频和视频的流串从一个到另一个合并或转换时要无缝,以免出现无声通话时间或过度重叠。
会话层,表示层,应用层构成开放系统的高3层。面对应用进程提供分布处理,对话管理,信息表示,恢复最后的差错等。会话层同样要担负应用进程服务要求,而运输层不能完成的那部分工作,给运输层功能差距以弥补。主要的功能是对话管理,数据流同步和重新同步。要完成这些功能,需要由大量的服务单元功能组合,已经制定的功能单元已有几十种。
会话层允许不同机器上的用户之间建立会话关系。会话层循序进行类似的传输层的普通数据的传送,在某某些场合还提供了一些有用的增强型服务。允许用户利用一次会话在远端的分时系统上登陆,或者在两台机器间传递文件。 会话层提供的服务之一是管理对话控制。会话层允许信息同时双向传输,或任一时刻只能单向传输。如果属于后者,类似于物理信道上的半双工模式,会话层将记录此时该轮到哪一方。一种与对话控制有关的服务是令牌管理(token management)。有些协议会保证双方不能同时进行同样的操作,这一点很重要。为了管理这些活动,会话层提供了令牌,令牌可以在会话双方之间移动,只有持有令牌的一方可以执行某种关键性操作。另一种会话层服务是同步。[2]
如果在平均每小时出现一次大故障的网络上,两台机器简要进行一次两小时的文件传输,试想会出现什么样的情况呢?每一次传输中途失败后,都不得不重新传送这个文件。当网络再次出现大故障时,可能又会半途而废。为解决这个问题,会话层提供了一种方法,即在数据中插入同步点。每次网络出现故障后,仅仅重传最后一个同步点以后的数据
⑴为会话实体间建立连接
为给两个对等会话服务用户建立一个会话连接,应该做如下几项工作。
① 将会话地址映射为运输地址。
② 选择需要的运输服务质量参数(QOS)。
③ 对会话参数进行协商。
④ 识别各个会话连接。
⑤ 传送有限的透明用户数据。
⑵数据传输阶段
这个阶段是在两个会话用户之间实现有组织的,同步的数据传输。用户数据单元为SSDU,而协议数据单元为SPDU。会话用户之间的数据传送过程是将SSDU转变成SPDU进行的。
⑶连接释放
连接释放是通过“有序释放”,“废弃”,“有限量透明用户数据传送”等功能单元来释放会话连接的。
会话层标准为了使会话连接建立阶段能进行功能协商,也为了便于其它国际标准参考和引用,定义了12种功能单元。各个系统可根据自身情况和需要,以核心功能服务单元为基础,选配其他功能单元组成合理的会话服务子集。
会话层的主要标准有“DIS8236:会话服务定义”和“DIS8237:会话协议规范”。