Circuit Switching(电路交换机制)

Problem(解决什么问题)

电路交换要解决的是:两个端系统通信时,如何在端到端路径上提前安排一条稳定、持续可用的通信通路。

它关心的是:

  • 通信开始前如何建立连接
  • 路径上的链路资源如何被预留
  • 通信期间资源为什么固定占用
  • 静默期为什么会造成资源浪费

Basic Idea(核心思想)

电路交换的核心思想是:

通信前先建立端到端连接,并在路径上的每条链路中为这条连接预留固定资源;通信结束后再释放这些资源。

这条连接可以理解为一条逻辑上的专用电路。它不表示两端之间一定有一根独立物理线,而是表示沿途链路上已经为这次通信固定分配出一份资源。


Working Process(工作流程)

1. 建立连接

通信开始前,网络先确定一条端到端路径。

发送端 -> 中间交换节点 -> 接收端

2. 沿途链路预留资源

路径上的每一条链路都要为这条连接预留一份资源。

常见方式包括:

  • FDM(Frequency-Division Multiplexing):为连接分配固定频带
  • TDM(Time-Division Multiplexing):为连接分配固定时隙

3. 通信期间固定占用

连接建立后,分配到的资源通常会持续保留给这条连接。

即使通信双方暂时没有数据要发送,这部分频带或时隙也不会自动转给其他连接使用。


4. 通信结束后释放资源

连接释放后,之前占用的频带或时隙才重新回到网络中,可以分配给其他连接。

flowchart TD
    A["请求通信"] --> B["建立端到端路径"]
    B --> C["每条链路预留资源"]
    C --> D["使用固定资源传输"]
    D --> E["通信结束"]
    E --> F["释放链路资源"]

Core Mechanisms(核心机制)

FDM:固定频带

FDM 把链路的频率范围切成多个频带,每条电路连接占用其中一段。

如果某条连接被分配到一段频带,那么在连接持续期间,这段频带通常固定属于它。

静默时也一样:

没有数据发送 -> 频带仍被占用 -> 其他连接不能直接使用

TDM:固定时隙

TDM 把时间切成周期性的时隙,每条电路连接占用固定位置的时隙。

如果某条连接被分配到每轮的某个时隙,那么每一轮这个时隙都留给它。

静默时也一样:

没有数据发送 -> 时隙空着过去 -> 其他连接不能直接使用

Rate and Path(速率与路径)

端到端路径通常由多条串联链路组成:

A -- 链路1 -- 交换节点 -- 链路2 -- 交换节点 -- 链路3 -- B

电路交换中,一条连接会在这些链路上分别占用已经分配好的资源。

端到端速率不是把串联链路的速率相加,而是受路径上为这条连接分配到的资源限制。

如果路径上各链路为该连接分配的速率是:

64 kbps, 64 kbps, 64 kbps

端到端速率仍然是:

64 kbps

如果路径上各链路分配的速率是:

128 kbps, 64 kbps, 128 kbps

端到端稳定速率会受中间的 64 kbps 限制。

因此可以类比为:

端到端速率看瓶颈链路的分配速率
Path MTU 看路径中的最小 MTU

二者都体现了串联系统受路径中最弱一段限制,但限制的对象不同:速率限制的是传输能力,MTU 限制的是不分片情况下单个 packet 可以通过的最大尺寸。


Trade-off(设计权衡)

优点:

  • 连接建立后,资源已经预留,通信过程稳定
  • 不需要每个 packet 都临时竞争链路发送机会
  • 适合持续、稳定、实时性要求高的通信模型

缺点:

  • 建立连接前需要先完成资源预留
  • 连接占用资源期间,静默也不会自动让出资源
  • 多个用户突发共享时,资源利用率可能低于分组交换

适用场景:

  • 通信流持续稳定
  • 需要明确预留资源
  • 可以接受连接建立过程带来的前置开销