在计算机网络中有三种主要的数据交换方式,分别是电路交换、报文交换和分组交换。
电路交换电路交换需要建立一条专用的数据通信路径,这条路径上可能包含许多中间节点。这条通信路径在整个通信过程中将被独占,直到通信结束才会释放资源。电路交换适合实时性要求较高的大量数据传输的情况。
电路交换的优点主要包括以下几个方面:
- 通信时延小。通信双方通过专用线路进行通信,数据可以直达。当数据传输量较大时,优点将十分显著。
- 线路独占,没有冲突。
- 实时性强。一旦通信线路建立,双方可以实时通信。
电路交换的缺点主要包括以下几个方面:
- 线路独占,利用率太低。
- 连接建立时间过长。
报文交换以报文作为数据传输单位,携带有源地址和目的地址等信息。
报文交换的优点主要包括以下几个方面:
- 无需建立连接。
- 动态分配线路。
- 线路利用率高。
报文交换的缺点主要包括以下几个方面:
- 报文交换对报文的大小没有限制,需要网络节点有足够的缓存空间。
- 报文交换在节点处要经历存储、转发等操作,从而引起一定时延。
分组交换是将大的数据块分割成小的分组,并添加源地址、目的地址和分组编号等信息。
分组交换的优点主要包括以下几个方面:
- 无需建立连接。
- 线路利用率高。
- 相对报文交换,分组长度固定,缓冲区容易管理。
- 分组比报文小,因此传输时间更短。
分组交换的缺点主要包括以下几个方面:
- 仍然存在时延。
- 需要传输包括源地址、目的地址、分组编号等额外信息。
- 分组可能遇到失序、丢失、重复等问题。
分组交换还可以进一步细分为数据报方式和虚电路方式。 数据报为网络层提供无连接服务,不同分组到达目的节点可能会乱序、重复或丢失。分组在交换节点时,可能会带来一定的时延。数据报方式适用于突发性通信,不适合长报文、会话式通信。 虚电路方式将数据报方式与电路交换结合,发挥两者优点。虚电路在源节点和目的节点建立一条逻辑链路,与电路交换不同的地方在于虚电路并不是独占链路资源的。虚电路方式避免了分组的乱序、重复和丢失等问题。
下面总结一下数据报服务和虚电路服务的区别:
- 建立连接:数据报服务不要建立连接,虚电路服务需要建立连接。
- 目的地址:数据报服务的每个分组有完整的目的地址,虚电路服务只在建立连接时使用目的地址,当连接建立完成后使用长度较短的虚电路号。
- 路由选择:数据报服务的每个分组都是独立进行路由选择与转发的,虚电路服务属于同一条虚电路的分组按同一路由进行转发。
- 分组顺序:数据报服务不保证分组顺序,虚电路服务保证分组有序到达。
- 可靠性:数据报服务不保证可靠通信,由用户主机保证可靠性,虚电路可靠性由网络来保证。
- 对网络故障的适应性:数据报服务出故障的节点丢失分组,其他分组路径变化可正常传输,虚电路服务所有经过故障节点的虚电路都不能工作。
- 差错处理和流量控制:数据报服务由用户主机进行流量控制,不保证数据可靠性,虚电路服务可由分组交换网或用户主机负责差错处理及流量控制。