计算机网络(三) 通信交换
通信交换
通信史上存在过三种交换形式
- 电路交换
- 报文交换
- 分组交换
电路交换
电话网是其中一个例子,曾经是世界上最大的通信网络。
在电路交换中,连接是物理连接(在物理上将两个电路连接在一起)一旦建立连接,直到连接断开之前,电路会一直占用。
优点:
中间节点不需要对信息进行处理,传输速率很快。
缺点:
- 信道共享性很差
- 不能进行差错控制
- 线路分配的灵活性差
- 需要事先建立连接
图示:
报文交换
报文交换使用“存储转发”思想实现信息交换。每当报文到达中间节点时,中间节点会将报文放到内存中,然后选择一个合适的端口进行转发,周而复始直到到达目标终端。
优点:
- 无需建立连接
- 线路可以灵活分配
- 信道共享性较好
- 可以在传输节点进行差错控制(检错)
缺点:
- 存储转发需要时间,信息传输速率比电路交换慢
- 长报文转发的开销时间大、占用缓存多,会导致共享性下降
- 长报文容易出错,重传代价高。
图示:
分组交换
分组交换就是在报文交换的基础上,将数据切割成数据片,每个数据片加上首部形成分组。
优点:
- 无需建立连接
- 线路可以灵活分配
- 不会被长报文霸占信道,共享性很好
- 可以在传输节点进行差错控制(检错)
- 可以进行并行传输。(报文段 A 被中间节点处理并转发时,报文段 B 可以同时开始发送)
- 重传代价小
缺点:
- 添加报文段首部导致传输效率(有效数据和传输的总数据之间的比值)下降
- 虽然可以并行转发,但是存储转发的消耗仍存在
- 报文段可能出现乱序、丢失等问题,增加了传输控制的难度
图示:
交换结构
- 通过存储器
收到数据分组时,将数据分组写入存储器,然后再将存储器中的数据读出、发往输出端口。这种架构的效率受限于存储器的读写速度,并且是串行的,效率较低。 - 通过总线
收到数据分组后,将其置于数据总线上,输出端口各取所需。这种架构也是串行的。 - 通过纵横开关
有若干输入行、输出列,行列之间有交叉点。通过控制交叉点的开合来控制输入、输出口的连接。
现代路由器使用的是这种结构的改良版:每个输入、输出端口配备独立的缓冲区;缓冲区通过交换矩阵(和纵横开关类似)连接;路由器处理器交换矩阵。