电路交换、报文交换与分组交换
在网络核心部分起重要作用的是路由器,它对收到的分组进行存储转发来实现分组交换。要了解分组交换的原理,首先要学习电路交换和报文交换的相关概念。
这是第 1 章最重要的一节,也是全书第一处计算题。 三种交换方式的时间计算 2010、2013、2023 年都考过。本页 3 道错题:三种方式各自的优缺点、数据报方式的特点、以及三种方式的时间比较。
机制
电路交换
最典型的电路交换网是传统电话网。从通信资源分配的角度看,交换就是按照某种方式动态地分配传输线路的资源。电路交换分为三步:建立连接(开始占用通信资源)、传输数据(一直占用通信资源)和释放连接(归还通信资源)。在进行数据传输前,两个用户之间必须先建立一条专用的物理通信路径;在数据传输过程中,这一物理通信路径始终被两个用户独占,直到通信结束后才被释放。
在电路交换中,电路建立后,除源节点和目的节点外,电路上的任何节点都采取”直通方式”发送数据和接收数据,即不存在存储转发所耗费的时间。
| 优点 | 缺点 |
|---|---|
| 通信时延小。通信线路为通信双方专用,数据直达,传输速率高 | 建立连接时间长。平均连接建立时间对计算机通信来说太长 |
| 有序传输。双方通信时按发送顺序传送数据,不存在失序问题 | 线路利用率低。物理通路被通信双方独占,即使线路空闲,也不能供其他用户使用 |
| 没有冲突。不同的通信双方拥有不同的信道,不会出现争用物理信道的问题 | 灵活性差。物理通路中的任何一点出现故障,就必须重新拨号建立新的连接 |
| 实时性强。物理通路一旦建立,双方就可随时通信 | 难以实现差错控制。中间节点不具备存储和检验数据的能力,无法发现并纠正错误 |
计算机之间的数据传送往往是突发式(高频、少量)的,当使用电路交换来传送数据时,已被用户占用的通信线路资源在绝大部分时间里都是空闲的,其利用率往往不到 10% 甚至 1%。
报文交换
数据交换的单位是报文,用户数据加上源地址、目的地址等信息后,封装成报文。报文交换采用存储转发技术,整个报文先传送到相邻的节点,全部存储后查找转发表,转发到下一个节点,如此重复,直至到达目的节点。每个报文都可单独选择到达目的端的路径(报文交换网中存储转发、数据传送时间的计算 2013 年考过)。
| 优点 | 缺点 |
|---|---|
| 无建立连接时延,用户可随时发送报文 | 转发时延高。交换节点要将报文整体接收完后,才能查找转发表转发到下一个节点 |
| 灵活分配线路。交换节点存储整个报文后,选择一条合适的空闲线路转发 | 缓存开销大。报文的大小没有限制,这就要求交换节点拥有较大的缓存空间 |
| 线路利用率高。报文在一段链路上传送时才占用这段链路的通信资源 | 错误处理低效。报文较长时,发生错误的概率相对更大,重传整个报文的代价也很大 |
| 支持差错控制。交换节点可对缓存下来的报文进行差错检验 |
分组交换
分组交换也采用存储转发技术,但解决了报文交换中报文过长的问题。源主机在发送之前,先把较长的报文划分成若干较小的等长数据段,在每个数据段前面添加一些由必要控制信息(如源地址、目的地址和编号信息等)组成的首部,构成分组(Packet)(分组交换网中存储转发、数据传送时间的计算 2010、2013、2023 年考过)。
分组交换除继承报文交换的诸多优点外,还有如下优点:
- 方便存储管理,存储转发开销小。因为分组的长度固定,所以相应缓冲区的大小也固定。
- 传输效率高。分组是逐个传输的,可以使后一个分组的存储操作与前一个分组的转发操作并行,这种流水线方式减少了报文的传输时间。
- 减少了出错概率和重发代价。因为分组较短,其出错概率必然减小,所以每次重发的数据量也就大大减少,这样不仅提高了可靠性,还减小了传输时延。
分组交换技术的缺点:
- 存在存储转发时延。尽管分组交换比报文交换的传输时延小,但相对于电路交换仍存在存储转发时延,且其节点交换机必须具有更强的处理能力。
- 需要传输额外的信息量。每个小数据段都要加上控制信息以构成分组,这使得传送的信息量增大了 5%~10%,进而使得控制复杂,降低了通信效率。
- 当分组交换网采用数据报服务时,可能出现失序、丢失或重复分组的情况,分组到达目的主机时,要对分组按编号进行排序等工作;若采用虚电路服务,则虽然没有失序问题,但有呼叫建立、数据传输和虚电路释放三个过程(4.1.3)。
三种方式的比较
| 电路交换 | 报文交换 | 分组交换 | |
|---|---|---|---|
| 是否建立连接 | 需要 | 不需要 | 不需要(数据报)/ 需要(虚电路) |
| 中间节点 | 直通,不存储 | 存储转发整个报文 | 存储转发分组 |
| 传输时延 | 最小(建立后) | 最大 | 比报文交换小 |
| 线路利用率 | 低 | 高 | 高 |
| 差错控制 | 不具备 | 支持 | 支持 |
| 适用场合 | 连续传送大量数据,且传送时间远大于连接建立时间 | —— | 突发式数据传送 |
王道的结论:当要连续传送大量的数据,且其传送时间远大于连接建立时间时,采用电路交换较为合适;从提高整个网络的信道利用率看,报文交换和分组交换优于电路交换,其中分组交换比报文交换的时延小,也更为灵活,尤其适合突发式数据传送。
计算模板
三种交换方式的总时间
设报文长
| 方式 | 总时间 |
|---|---|
| 电路交换 | |
| 报文交换 | |
| 分组交换 |
分组交换的式子也可以这样记:总时间 = 发完全部数据的时间 + 最后一个分组还要再走
边界
电路交换的中间节点不存储数据,所以既快又不能查错。 “传输时延小”和”难以实现差错控制”是同一件事的两面。
分组交换对报文交换的改进是”传输单位更小且有固定的最大长度”,直接结果是减少传输时延。 不是”差错控制更完善”,也不是”提高了数据传输速率”。
错题复盘:时延最小选电路交换,无差错传送不选电路交换
王道 1.1.7 第 7 题:为了使数据在传输期间的时延最小,首选的交换方式是(①);为保证数据无差错地传送,不应选用的交换方式是(②);分组交换对报文交换的主要改进是(③),这种改进产生的直接结果是(④)。答案依次为 A、A、A、C。
电路交换虽然建立连接的时延较大,但在数据传输期间一直占据链路,优点是传输时延小、通信实时性强,适用于交互式会话类通信(①选 A);缺点是建立连接时间长,系统效率低,不具备存储数据的能力,不具备差错控制的能力(②选 A)。
报文交换和分组交换都采用存储转发,传送的数据都要经过中间节点的若干存储、转发才能到达目的地,因此传输时延较大。报文交换传送数据的长度不固定且较长,分组交换要将传送的长报文分割为多个固定且长度有限的分组(③选 A),因此传输时延较报文交换的小(④选 C)。
① 问的是”传输期间”的时延,把建立连接的时间排除在外了——这是电路交换能当选的原因。
错题复盘:数据报方式的特点是分组可走不同路径,不是"只适合短报文"
王道 1.1.7 第 8 题:下列说法中,( )是数据报方式的特点(A. 同一报文的不同分组可以经过不同的传输路径通过通信子网 B. 同一报文的不同分组到达目的节点时顺序是确定的 C. 适合于短报文的通信 D. 同一报文的不同分组在路由选择时只需要进行一次)。答案 A。
数据报方式是一种无连接的分组交换技术,它先将报文拆分成若干较小的数据段,加上地址等控制信息后构成分组,这样做虽然会增加一些控制开销,但并不意味着数据报方式只适合于短报文的通信(C 错)。数据报方式提供尽最大努力的交付,不保证可靠性,分组可能出错或丢失;网络为每个分组独立地选择路由,转发的路径可能不同,因此分组不一定按序到达目的节点(A 对、B 错、D 错)。
B 和 D 说的其实是虚电路的特点(4.1.3):建立时选一次路,之后所有分组同路、按序到达。
错题复盘:三种交换方式的时间要分四种数据量分别算
王道 1.1.7 第 13 题:如上图,主机 H1 和 H2 之间有三种可选的交换方式,其中电路交换建立电路连接的时间为 2s,报文交换和分组交换都要经过由一个路由器连接的链路,分组大小为 5kb。三种交换方式的数据传输速率均为 2.5kb/s,忽略所有的传播时延、分组开销和不可预料的线路延迟,则下列说法中正确的是(A. 发送 5kb 时电路交换最节省时间 B. 发送 500kb 时电路交换和分组交换的时间相同 C. 发送 10kb 时报文交换比分组交换更节省时间 D. 发送 15kb 时报文交换比电路交换更节省时间)。答案 B。
链路是”H1—路由器—H2”,共 2 段。按本页的计算模板(
, kb/s, kb)逐项算:
数据量 电路交换 报文交换 分组交换 5kb s s s(A 错:三者相同) 500kb s s s(B 对) 10kb s s s(C 错:报文交换更慢) 15kb s s s(D 错:报文交换更慢) 只要链路段数
,报文交换的时间就是”发一次的时间 × 2”,而分组交换只多付一个分组的时间——数据量越大,分组交换与电路交换越接近,与报文交换差得越远。
分组交换的缺点是附加信息开销大,不是信道利用率低。 信道利用率低是电路交换的缺点;传播时延取决于介质和距离,与交换方式无关(王道 1.1.7 第 6 题)。
数据报方式不保证有序、不只适合短报文。 它为每个分组独立选路,路径可能不同。
对照速查
| 说法 | 对错 |
|---|---|
| 电路交换的三个阶段是建立连接、传输数据、释放连接 | ✅ |
| 电路交换的中间节点要存储转发数据 | ❌(直通方式) |
| 电路交换具备差错控制能力 | ❌ |
| 报文交换不需要建立连接 | ✅ |
| 报文交换的交换节点要收完整个报文才转发 | ✅ |
| 分组交换把报文分成固定最大长度的分组 | ✅ |
| 分组交换的信道利用率低 | ❌(低的是电路交换) |
| 分组交换需要额外传输 5%~10% 的控制信息 | ✅ |
| 数据报方式中同一报文的分组可能走不同路径 | ✅ |
| 数据报方式只适合短报文通信 | ❌ |
| 传送大量数据且传送时间远大于建立时间时,宜用电路交换 | ✅ |
考点
- 电路交换三阶段、四优四缺;中间节点直通、无差错控制
- 报文交换、分组交换都用存储转发;分组交换的三优三缺
- 分组交换对报文交换的改进:单位更小且有固定最大长度 → 减少传输时延
- 三种方式的时间计算(2010、2013、2023)
链接
- 🏠 返回总览:计算机网络第 1 章:体系结构与全书总览
- ⬅️ 上一节:1.1.1~1.1.3 概念、组成与功能
- ➡️ 下一节:1.1.5 计算机网络的分类
- 🔗 4.1.3 数据报与虚电路(分组交换的两种服务)
- 🔗 1.1.6 性能指标(时延的四个组成部分)
- 📖 名词库:第 1 章名词库
