一、什么是数据交换
定义 :数据交换是指在通信网络中,为实现数据从源端到目的端的传输,而采用的转发和连接技术。
为什么需要数据交换:
-
如果只有两台设备,可以直接拉一条线
-
但网络中有成千上万台设备,不可能两两之间都直接拉线(成本、复杂度无法接受)
-
解决方案:通过交换节点(如交换机、路由器)来中转数据
二、三种主要的数据交换方式
| 方式 | 英文 | 核心特点 | 代表系统 |
|---|---|---|---|
| 电路交换 | Circuit Switching | 通信前建立专用物理通路,通信后释放 | 传统电话网络(PSTN) |
| 报文交换 | Message Switching | 存储-转发,以完整报文为单位 | 早期电报网络 |
| 分组交换 | Packet Switching | 存储-转发,将报文分成多个分组 | 现代互联网(IP网络) |
(1)电路交换
工作原理(三个阶段)
阶段1:建立连接(呼叫建立)
A ──请求──→ 交换机1 ──→ 交换机2 ──→ B
A ←──确认── 交换机1 ←── 交换机2 ←── B
阶段2:数据传输(独占通路)
A ═══════════════════════════════ B
(中间线路被A和B独占,其他人不能用)
阶段3:释放连接(拆除线路)
A ──释放──→ 交换机1 ──→ 交换机2 ──→ B
核心特点
-
建立连接:通信前先找到一条从源到目标的物理路径
-
独占资源 :这条路径上的所有资源(线路、时隙、频率)被这对通信双方独占
-
顺序传输:数据按发送顺序到达(因为路径固定)
-
释放连接:通信结束后拆除路径,资源归还给网络
图示
A ──────┐
│
交换机1 ──────┐
│ │
B ──────┘ │
交换机3 ────── E
C ──────┐ │
│ │
交换机2 ──────┘
│
D ──────┘
A和E通信时:A → 交换机1 → 交换机3 → E
这条路径被独占,B、C、D不能用这些链路
优缺点
| 优点 | 缺点 |
|---|---|
| 实时性好(无等待延迟) | 线路利用率低(独占期间即使不说话也占着) |
| 数据顺序到达(不乱序) | 建立连接需要时间 |
| 无冲突、无拥塞(资源已预留) | 灵活性差(路径固定) |
| 技术成熟 | 资源浪费(通话间隙也占着) |
应用场景
-
传统电话网络(PSTN)
-
ISDN(综合业务数字网)
-
专线租用
(2)报文交换
工作原理
A 发送完整报文给交换机1
↓
交换机1 接收完整报文 → 存储 → 检查下一跳 → 转发给交换机2
↓
交换机2 接收完整报文 → 存储 → 检查下一跳 → 转发给B
↓
B 接收完整报文
核心特点
-
存储-转发:每个交换节点先完整接收报文,再转发出去
-
不需要预先建立连接:动态选择路径
-
以报文为单位:整个报文作为一个整体传输
图示
报文(一整封信):
┌─────────────────────────────────────┐
│ 目标地址:B │ 源地址:A │ 数据内容... │
└─────────────────────────────────────┘
路径:A → 交换机1(存) → 交换机2(存) → 交换机3(存) → B
优缺点
| 优点 | 缺点 |
|---|---|
| 无需预先建立连接 | 延迟大(每个节点都要完整接收) |
| 线路利用率高(共享链路) | 需要大缓存(存储整个报文) |
| 可进行差错控制和优先级 | 不适合实时通信(延迟不可预测) |
| 可动态选择路径(故障时绕行) | 报文可能很大,阻塞链路 |
应用场景
-
早期电报网络
-
电子邮件系统(某种程度上)
-
已基本被分组交换取代
(3)分组交换
工作原理
-
分组化 :发送方将长报文切割成多个较小的数据块(分组,Packet)
-
存储-转发:每个分组独立地在网络中传输
什么是存储-转发:
交换节点先完整接收一个数据单元(报文或分组)
检查其目标地址
查找路由表决定下一跳
再转发出去
比喻:
电路交换:修好一条专用传送带,东西直接滑过去
存储-转发:快递员收到包裹,先放仓库,查地址,再派送
存储-转发的好处:
可以差错检测:收到后发现错误,请求重传,不继续转发错误数据
可以速度匹配:输入线速率100M,输出线速率10M,可以暂存后慢慢发
可以多路复用:多个输入共享一个输出(排队)
可以动态路由:故障时选择其他路径
- 重组:到达目的地后,将分组重新组装成原始报文
分组结构
┌─────────────────────────────────────────────────┐
│ 分组头(Header) │ 数据部分(Payload) │
├─────────────────────────────────────────────────┤
│ 目标地址 │ 源地址 │ 序号 │ 校验 │ 数据(小块)... │
└─────────────────────────────────────────────────┘
两种分组交换方式
| 方式 | 英文 | 特点 | 例子 |
|---|---|---|---|
| 数据报 | Datagram | 每个分组独立路由,可能走不同路径,到达顺序可能乱 | IP网络(互联网) |
| 虚电路 | Virtual Circuit | 先建立逻辑连接(虚电路),所有分组走相同路径,顺序到达 | X.25、帧中继、MPLS |
图示(数据报方式)
原始报文分成3个分组:
[分组1] [分组2] [分组3]
网络中有多条路径:
┌─→ 交换机2 ─→┐
│ │
A ──→ 交换机1 ──→ 交换机4 ──→ B
│ │
└─→ 交换机3 ─→┘
分组1走:A → 交换机1 → 交换机2 → 交换机4 → B
分组2走:A → 交换机1 → 交换机3 → 交换机4 → B
分组3走:A → 交换机1 → 交换机2 → 交换机4 → B
到达B的顺序可能是:分组1、分组3、分组2(乱序)
B根据分组头中的序号重新排序
优缺点
| 优点 | 缺点 |
|---|---|
| 线路利用率高(共享链路) | 分组可能丢失、乱序、重复 |
| 延迟小(可以边收边发,不需要完整报文) | 需要额外的重组逻辑 |
| 可靠性高(可动态绕行故障链路) | 每个分组头有额外开销 |
| 适合突发性数据(计算机通信) | 不适合强实时通信(延迟抖动) |
| 支持优先级和QoS | 实现复杂 |
应用场景
-
互联网(IP网络):数据报方式
-
MPLS VPN:虚电路方式
-
帧中继、X.25:虚电路
三种方式对比总结
| 维度 | 电路交换 | 报文交换 | 分组交换 |
|---|---|---|---|
| 连接建立 | 需要 | 不需要 | 数据报不需要;虚电路需要 |
| 资源占用 | 独占(通信期间) | 共享 | 共享 |
| 存储-转发 | 无 | 有(完整报文) | 有(每个分组) |
| 传输单位 | 连续比特流 | 完整报文 | 分组 |
| 延迟 | 小(连接建立后) | 大 | 中 |
| 线路利用率 | 低 | 高 | 很高 |
| 数据顺序 | 顺序到达 | 顺序到达 | 数据报可能乱序 |
| 适合业务 | 实时语音、视频 | 非实时数据 | 数据、语音、视频(综合) |
| 典型系统 | 电话网 | 电报网 | 互联网 |