任务二 会话层11
知识点
1.会话层是什么
- 会话层(Session Layer)是 OSI 七层模型中的第 5 层,位于表示层之下、传输层之上。
会话层是管理对话层,在两个应用进程之间管理对话,包括:建立、管理、维护和终止“会话”,并控制它们之间的对话过程。
- 会话是建立连接并有序传输数据的一种方法。
- 会话指两个应用进程为了完成某项任务,而进行的一次持续交互过程。
- 你登录网银后,查询、转账、退出,这一系列交互可以看作一个会话
- 一次数据库连接后,执行多条 SQL,也可以看作一个会话
- 一次视频会议从建立到结束,也是一个会话
- 会话层关心的是:这个交互过程怎么建立、怎么维持、怎么同步、怎么结束。
- 会话层不是传数据的,也不是定义数据格式的。
如果用前面几层的话来对比:
- 应用层:管业务语义,比如“我要访问网页”“我要发邮件”
- 表示层:管数据语法,比如 UTF-8、JPEG、压缩、加密
- 会话层:管对话过程,比如“我们怎么开始聊、谁先说、聊到哪了、怎么结束、断了怎么恢复”
- 传输层:管端到端的数据传输,比如 TCP/UDP 把字节流送过去
2.会话层的主要功能是什么
主要功能:在两个网络节点间,建立、维护、释放面向用户的连接,并对会话进行管理和控制,保证会话数据可靠传输。
- 建立连接:
- 维护连接:
- 管理会话:全双工、半双工(令牌)
- 释放连接:断开连接
- 同步服务:
3.会话连接和传输连接之间的关系是什么?
一对一关系;一对多关系;多对一关系。
- 一对一:1 个会话连接对应 1 个传输连接。一次对话,单独占用一条通道。
- 一对多:1 个会话连接先后对应多个传输连接。一次对话,可以换多条通道传输。
- 多对一:多个会话连接共用 1 个传输连接。多段对话,复用同一条通道。
4.半双工通信如何协调数据发送?
使用数据令牌协调会话,只有拿到令牌的用户才能发送数据;接收方想要发送时,可请求获取令牌,由发送方决定何时释放令牌。
5.会话层的同步服务是什么?
定义检查点,当网络故障出现时,从最后一个检查点开始重传数据。
6.常见会话层协议是什么
结构化查询语言 SQL、远程过程调用 RPC。
7. 会话层与传输层的区别是什么
| 概念 | 含义 |
|---|---|
| 传输层连接 | 端到端的数据通道,如 TCP 连接 |
| 会话层会话 | 应用进程之间的对话逻辑和状态 |
区别在于:
- 一个 TCP 连接可以承载多个会话,比如 HTTP/2 多路复用
- 一个会话也可以跨多个连接,比如断线重连后继续同一个业务会话
- TCP 关心字节流是否可靠送达
- 会话层关心对话是否有序、可同步、可恢复、可结束
所以,TCP 连接不等于会话层会话。