Skip to main content

任务二 会话层11

知识点​

1.会话层是什么​

  • 会话层(Session Layer)是 OSI 七层模型中的第 5 层,位于表示层之下、传输层之上。

会话层是管理对话层,在两个应用进程之间管理对话,包括:建立、管理、维护和终止“会话”,并控制它们之间的对话过程。

  • 会话是建立连接并有序传输数据的一种方法。
  • 会话指两个应用进程为了完成某项任务,而进行的一次持续交互过程。
    • 你登录网银后,查询、转账、退出,这一系列交互可以看作一个会话
    • 一次数据库连接后,执行多条 SQL,也可以看作一个会话
    • 一次视频会议从建立到结束,也是一个会话
  • 会话层关心的是:这个交互过程怎么建立、怎么维持、怎么同步、怎么结束。
  • 会话层不是传数据的,也不是定义数据格式的。

如果用前面几层的话来对比:

  • 应用层:管业务语义,比如“我要访问网页”“我要发邮件”
  • 表示层:管数据语法,比如 UTF-8、JPEG、压缩、加密
  • 会话层:管对话过程,比如“我们怎么开始聊、谁先说、聊到哪了、怎么结束、断了怎么恢复”
  • 传输层:管端到端的数据传输,比如 TCP/UDP 把字节流送过去

2.会话层的主要功能是什么​

主要功能:在两个网络节点间,建立、维护、释放面向用户的连接,并对会话进行管理和控制,保证会话数据可靠传输。

  • 建立连接:
  • 维护连接:
  • 管理会话:全双工、半双工(令牌)
  • 释放连接:断开连接
  • 同步服务:

3.会话连接和传输连接之间的关系是什么?​

一对一关系;一对多关系;多对一关系。

  1. 一对一:1 个会话连接对应 1 个传输连接。一次对话,单独占用一条通道。
  2. 一对多:1 个会话连接先后对应多个传输连接。一次对话,可以换多条通道传输。
  3. 多对一:多个会话连接共用 1 个传输连接。多段对话,复用同一条通道。

4.半双工通信如何协调数据发送?​

使用数据令牌协调会话,只有拿到令牌的用户才能发送数据;接收方想要发送时,可请求获取令牌,由发送方决定何时释放令牌。

5.会话层的同步服务是什么?​

定义检查点,当网络故障出现时,从最后一个检查点开始重传数据。

6.常见会话层协议是什么​

结构化查询语言 SQL、远程过程调用 RPC。

7. 会话层与传输层的区别是什么​

概念含义
传输层连接端到端的数据通道,如 TCP 连接
会话层会话应用进程之间的对话逻辑和状态

区别在于:

  • 一个 TCP 连接可以承载多个会话,比如 HTTP/2 多路复用
  • 一个会话也可以跨多个连接,比如断线重连后继续同一个业务会话
  • TCP 关心字节流是否可靠送达
  • 会话层关心对话是否有序、可同步、可恢复、可结束

所以,TCP 连接不等于会话层会话。

豆包作业​