

大家好,很高兴又和大家见面啦!!!
经过前面几个篇章的内容,我们已经熟悉了计算机网络的三种交换方式:
这三种交换方式各有各的优缺点,那他们之间到底谁优谁劣呢?在今天的内容中,我们将会从多个维度来比较这三种交换方式的性能。下面我们直接进入正题吧!!!
在电路交换的整个过程中,需要经历三个阶段:
这三个阶段的时间消耗如下图所示:

从已知信息中,我们可以获取各阶段的时间消耗情况:

从上面的时间消耗来看,电路传输光是连接建立与连接释放这两个阶段就花费了16ms,而真正用于数据传输的时间才11ms,大部分时间都用在了连接建立与释放上了。
在报文交换中,数据是直接以报文的形式发送给邻近的结点,节点在收到报文后,花费一定的时间来存储与处理报文,最后才能够转发给下一个结点,整个过程的时间消耗如下所示:

由报文大小与数据传播速率,我们可以计算出报文从一个节点传输到下一个节点所需要消耗的时间:

每个节点之间的信号传输需要消耗1ms,B、C两个节点在收到报文后,需要花费2ms对报文进行处理,才能转发给下一个节点。
也就是说报文交换从发送信号开始到节点D完成信号接收为止,整个过程都是在进行报文传输,相比于电路传输,报文传输的通信资源利用率就大大提高。
在分组交换中,通信的起始方会将报文分割成定长的分组,每个分组的首部都有该分组的编号信息,完成分割后,分组会依次被传输给邻近的节点,节点在收到分组后,会通过存储转发技术继续传递给下一个节点,同时上一个节点会同步传输下一个分组的信息,直至目的地址完成所有分组的接收:

从由报文大小、分组大小以及数据传输速率我们可以获取分组从一个节点发送到下一个节点所需时间:

每个节点之间的信号传输需要消耗1ms,B、C两个节点对接收到的分组进行处理的时间只需要0.5ms,之后就可以将该分组的信息转发给下一个节点,同时接收上一个节点传输过来的下一个分组的信息。
也就是说当节点D完成全部分组信息的接收,整个过程都是在进行分组传输,相比于电路交换,分组交换对通信资源的利用率大大提升,对比与报文交换,分组交换所消耗的时间大幅度降低。
下面我们就来看以下3种交换方式的时间消耗图示比较:

如果仅观察数据传输阶段的耗时,我们不难发现,电路交换的发送时延是最低的,报文交换的发送时延是最高的,分组交换中规中矩;
在整个信息传输的过程中,由于电路交换是提前建立好了专用的通信线路,因此数据在传输的过程中是不需要进行校验,可以直接完整的传输给目的地址,而报文交换和分组交换都会在中间节点进行停留,因此需要在下一次发送前检验一下当前的数据是否正确;
在电路交换和报文交换中,结点之间传输的都是整个报文,因此传输的数据都是有序的,但是分组交换传输的则是一个一个的分组,并且这些分组的传输都是独立的,当一个分组全部传输完,下一个分组才会开始进行传输,并且传输的过程与报文交换一样,会灵活的选择线路,因此目的地节点在收到分组时不一定是按照源地址节点发送分组的顺序进行接收,所以目的地节点在完成所有分组的接收后需要先对这些分组进行排序,之后才能够将这些分组的首部去掉,获取完整的数据。
在今天的内容中我们介绍了电路交换、报文交换与分组交换技术这三种交换技术的性能对比,下面是三种交换方式从不同维度的性能表:
特性 | 电路交换 | 报文交换 | 分组交换 |
|---|---|---|---|
完成传输所需时间 | 最少(排除建立/释放连接耗时) | 最多 | 较少 |
存储转发时延 | 无 | 较高 | 较低 |
通信前是否需要建立连接? | 是 | 否 | 否 |
缓存开销 | 无 | 高 | 低 |
是否支持差错控制? | 不支持 | 支持 | 支持 |
报文数据有序到达? | 是 | 是 | 否 |
是否需要额外的控制信息 | 否 | 是 | 是(控制信息占比最大) |
线路分配灵活性 | 不灵活 | 灵活 | 非常灵活 |
线路利用率 | 低 | 高 | 非常高 |
在不同的维度中,三种交换方式的表现各有千秋:
三种技术各有优缺点,在现代计算机网络中,分组交换因其高效性和灵活性被广泛采用。
今天的内容到这里就全部结束了,在下一篇内容中我们将介绍《计算机网络的性能指标》,大家记得关注哦!如果大家喜欢博主的内容,可以点赞、收藏加评论支持一下博主,当然也可以将博主的内容转发给你身边需要的朋友。最后感谢各位朋友的支持,咱们下一篇再见!!!