通信交换

通信史上存在过三种交换形式

  • 电路交换
  • 报文交换
  • 分组交换

电路交换

电话网是其中一个例子,曾经是世界上最大的通信网络。
在电路交换中,连接是物理连接(在物理上将两个电路连接在一起)一旦建立连接,直到连接断开之前,电路会一直占用。

优点

中间节点不需要对信息进行处理,传输速率很快。

缺点

  1. 信道共享性很差
  2. 不能进行差错控制
  3. 线路分配的灵活性差
  4. 需要事先建立连接

图示

电路交换.png

报文交换

报文交换使用“存储转发”思想实现信息交换。每当报文到达中间节点时,中间节点会将报文放到内存中,然后选择一个合适的端口进行转发,周而复始直到到达目标终端。

优点

  1. 无需建立连接
  2. 线路可以灵活分配
  3. 信道共享性较好
  4. 可以在传输节点进行差错控制(检错)

缺点

  1. 存储转发需要时间,信息传输速率比电路交换慢
  2. 长报文转发的开销时间大、占用缓存多,会导致共享性下降
  3. 长报文容易出错,重传代价高。

图示
报文交换_compressed.png

分组交换

分组交换就是在报文交换的基础上,将数据切割成数据片,每个数据片加上首部形成分组。

优点

  1. 无需建立连接
  2. 线路可以灵活分配
  3. 不会被长报文霸占信道,共享性很好
  4. 可以在传输节点进行差错控制(检错)
  5. 可以进行并行传输。(报文段 A 被中间节点处理并转发时,报文段 B 可以同时开始发送)
  6. 重传代价小

缺点

  1. 添加报文段首部导致传输效率(有效数据和传输的总数据之间的比值)下降
  2. 虽然可以并行转发,但是存储转发的消耗仍存在
  3. 报文段可能出现乱序、丢失等问题,增加了传输控制的难度

图示

分组交换_compressed.png

交换结构

  1. 通过存储器
    收到数据分组时,将数据分组写入存储器,然后再将存储器中的数据读出、发往输出端口。这种架构的效率受限于存储器的读写速度,并且是串行的,效率较低。
  2. 通过总线
    收到数据分组后,将其置于数据总线上,输出端口各取所需。这种架构也是串行的。
  3. 通过纵横开关
    有若干输入行、输出列,行列之间有交叉点。通过控制交叉点的开合来控制输入、输出口的连接。
    现代路由器使用的是这种结构的改良版:每个输入、输出端口配备独立的缓冲区;缓冲区通过交换矩阵(和纵横开关类似)连接;路由器处理器交换矩阵。