协议与服务-服务与服务访问点

作者 Tea-Sun · 2026年10月29日 · 约 8 分钟

服务与服务访问点#

实体、协议、服务、服务访问点 · 第二讲 视频讲解 https://www.bilibili.com/video/BV1x6xK68EMH/

一句话#

协议是横着定的规矩,服务是竖着给的能耐:上一层通过 SAP 这一扇门,使用下一层提供的服务,而完全不用管下一层是怎么实现的。


一、换个方向看#

上一集是从左往右看——两台机器的同层实体之间怎么说话,那叫协议。

这一集从上往下看——相邻两层之间怎么交接,那叫服务。

   ┌──────────────┐
   │  n+1 层实体   │
   └──────┬───────┘
          │  ← 服务:竖直的,只在相邻两层之间
   ┌──────┴───────┐
   │   n 层实体    │
   └──────────────┘

两个方向,两件事:

方向 管什么 叫什么
水平(横向) 对等实体之间怎么谈 协议
垂直(纵向) 上层怎么用下层 服务

二、服务是什么#

服务:由下层向上层通过层间接口提供的功能。

教材的原话是:服务是"垂直的"。

三个要点:

  1. 上层要办的事,下层替它办——上层只说"我要传这段数据",怎么切、怎么编号、怎么加校验,全归下层管。
  2. 只在相邻两层之间——服务不能跨层调用。应用层不能直接命令物理层。
  3. 上一层只管用,不管它怎么实现——这就是后面要说的"透明"。

面向连接 / 无连接(本集只点名)#

下层给上层提供服务,从"要不要先建立连接"这个角度看,分两种:

面向连接服务 无连接服务
要不要先握手 要,先建立连接 不要,直接发
数据顺序 一般按序 不保证
典型例子 TCP、电话 UDP、寄信

这一对概念后面讲运输层时会详细展开,本集只记名字。


三、服务访问点 SAP#

SAP(Service Access Point,服务访问点):在同一系统中,相邻两层的实体进行交互(交换信息)的地方。

几句话说清它:

  • SAP 是一个抽象的逻辑接口,不是一个 RJ45 那种物理插口
  • 它是上一层找下一层办事的那扇门
  • 同一个 SAP,可以被多个上层实体共用——楼上三个房间,共用一个门牌号
    实体 ①      实体 ②      实体 ③        ← 上层
         ╲         │         ╱
          ╲        │        ╱
           ╲       │       ╱
            ┌──────┴──────┐
            │     SAP     │                  ← 层间接口,一扇门
            └──────┬──────┘
                   │
            ┌──────┴──────┐
            │   下层实体   │                  ← 下层
            └─────────────┘

注意:SAP 说的是同一台机器里相邻两层之间的接口。跨机器的那条线不叫 SAP。

补充一点:SAP 在不同层有不同叫法。运输层的 SAP 是端口号,网络层的 SAP 是 IP 地址。名字不同,作用是同一个——上一层来敲的那扇门。


四、服务原语(先认名字)#

SAP 是"门",从这扇门递东西的具体动作,叫服务原语。

下层给上层提供服务,形式上就是用一组原语来描述。四类:

原语 方向 白话
请求 Request 上层 → 下层 我要办件事
指示 Indication 下层 → 上层 事来了,告诉你
响应 Response 上层 → 下层 我这边干完了
证实 Confirm 下层 → 上层 确实干完了

四个原语走一轮,一次服务交接就完成了。

本集只认名字。完整的时序(谁先谁后、在哪一侧发出)后面单独讲。


五、透明#

透明:上一层使用下层提供的服务时,不需要知道下层服务的实现细节。

教材举的例子最能说明问题:物理层的传输介质从双绞线换成光纤,再换成无线,只要它向上提供的服务没变,上层一行代码都不用改。

        上层  ───────────  服务不变  ───────────
                                ↑
        下层   双绞线 → 光纤 → 无线(换了三次)

这就是"透明"的意思:下层被挡住了,上层看不见。

别把"透明"理解成"看得见"。网络里的"透明"是看不见、不用管,跟日常说的"透明玻璃"不是一回事。

同样的逻辑往上推:

  • 上层用网络层的服务,不用管网络层跑的是 IP 还是别的协议
  • 网络层用数据链路层的服务,不用管底下是以太网还是 PPP
  • 协议怎么实现,上一级管不着——这就是分层最值钱的地方

六、协议和服务,差在哪#

协议 服务
方向 横的 竖的
谁之间 对等实体之间 上下相邻两层之间
看得见吗 外面看不见 上一层看得见
给的是什么 规则、约定 能力、功能
能不能改 改了对上层透明 改了上层就得跟着改

一句话记住区别:

协议是"我们俩怎么说话",服务是"我替你干什么"。


七、本集结论#

        协议(横)  ← 对等实体之间怎么谈
              │
              │ 竖着看
              ↓
        服务(竖)  ← 下层给上层能力
              │
         通过 SAP 这扇门
              │
        服务原语  ← 递东西的四个动作
              │
           透明    ← 上层不用管怎么实现

协议横着定规矩,服务竖着给能力;上一层通过 SAP 只用服务,不管实现。 这就是分层的价值。


依据表#

片中表述 依据 备注
服务是"垂直的",由下层向上层通过层间接口提供 §1.5.4 原文(与"协议是水平的"对举)
上层使用下层服务时不需要知道实现细节 §1.5.4 原文表述
同一系统中相邻两层的实体进行交互的地方称为 SAP §1.5.4 原文定义
SAP 是抽象的逻辑接口,不同于硬件接口 §1.5.4 原文说明
一个 SAP 可被多个上层实体共用 §1.5.4 教材图示;片中三实体为教学示意,数量不限
服务在形式上用一组原语来描述 §1.7.3 原文
四类原语:请求、指示、响应、证实 §1.7.3 原文
面向连接服务 / 无连接服务 §1.7.3 本集只点名,不展开
运输层 SAP 是端口号、网络层 SAP 是 IP 地址 通识补充 教材未在 §1.5.4 展开,属分层对应关系,片中未讲,仅备查
物理层换介质、上层不用改 教学类比 教材"透明"举例的通俗化
「透明」= 看不见、不用管 语义澄清 与日常"透明玻璃"含义不同
三个实体汇聚到一个 SAP 的画面 教学示意 表达"共用一扇门",不代表具体协议实现
服务原语四类方向 §1.7.3 简化 完整时序涉及两侧、四段传输,片中简化为单向动作