《计算机网络》| 三种交换方式:电路交换、分组交换、报文交换-电路交换的网络拥塞

2023-04-09 05:17:22

 

写在前面:《计算机网络》专栏会持续更新。

⭐点关注:专栏:计算机网络,不迷路。

01 前言

简单介绍三种交换方式,文末附参考信息。

从通信资源的分配角度来看,交换(switching)是按照某种方式动态地分配传输线路的资源。

文章目录 01 前言 02 电路交换(Circuit Switching 03 分组交换(Packet Switching 04 报文交换(Message Switching 05 三种交换方式比较 5.1 电路交换 5.2 报文交换 5.3 分组交换 06 参考信息

02 电路交换(Circuit Switching)

电路交换受电话交换的启发。

两部电话,需要一对电线;5部电话两两项链,需要10对电线;N部电话两两相连,需要 N(N−1)/2N(N-1)/2 对电线。

通过交换机使用交换的方法,连接电话,方便彼此通信。

⭐物理层的集线器(HUB)的功能和交换机很像。

电路交换三步:

建立连接:分配通信资源。即在使用电路交换打电话前,必须先拨号请求建立连接。当被叫用户听到电话交换机送来的拨号音并摘机后,从主叫端建立连接,即一条专用的物理通路。 通话:一直占用通信资源。释放连接:归还通信资源。

缺点:线路传输效率很低,因为计算机数据是突发式地出现在传输线路上。一旦某条线路被占,其他用户就不能使用,宝贵的通信线路资源白白被浪费。

电路交换重要特点:在通话的全部时间内,通话的两个用户始终占用端到端的通信资源。容易造成资源浪费。

而下文要讲的分组交换(Packet Switching)在传送数据之前不必先占用一条端到端的链路通信资源。分组在哪段链路上传送时,才占用这段链路的通信资源。

03 分组交换(Packet Switching)

分组交换采用存储转发技术。实质上是采用了在数据通信的过程中断续(或动态)分配传输带宽的策略(断续分配传输带宽)。

将报文分成更小的等长的数据段,每一个数据段加上一些控制信息(诸如目的地址和原地址等)后组成首部(header),构成一个分组(packet)。分组又称为“包”,分组的首部也可称为“包头”。

假设网络如下,主机H1向主机H5发送数据,过程如下所示:

特别注意的一点:分组交换中,链路仅在分组正传送时被占用。

注:路由器暂时存储的是一个短分组,不是整个长报文。短分组存储在路由器的存储器(即内存)中,而不是存储在磁盘中的,这保证了较高的交换速率。

再次复习:电路交换(Circuit Switching)第一步“建立连接”就建立了一条专用的物理通路,但是分组交换(Packet Switching)在传送数据之前不必先占用一条端到端的链路通信资源。分组在哪段链路上传送时,才占用这段链路的通信资源。

换言之,分组到达一个路由器后,暂时存储下来,查找转发表,然后从一条合适的链路转发出去。即分组在传输时一段一段地断续占用通信资源,省去了建立连接和释放连接的开销,因而数据的传输效率更高。但是各分组必须携带的控制信息(诸如目的地址和原地址等)造成了一定的开销(overhead)。

04 报文交换(Message Switching)

报文交换(Message Switching)也是基于存储转发原理的。现在报文交换机已不再使用。

05 三种交换方式比较

电路交换:整个报文的比特流连续地从源点直达终点,好像在一个管道中传送。报文交换:整个报文先传送到相邻节点,全部存储下来后查找转发表,转发到下一个结点。分组交换:单个分组(这只是报文的一部分)传送到相邻结点,存储下来后查找转发表,转发到下一结点。

注:A和D分别是源点和终点,B和C是在A和D之间的中间结点。

电路交换:传送大量数据,且传送时间远远大于连接建立的时间,则电路交换传输速率快。

报文交换和电路交换不用预先分配传输带宽,在传送突发数据时可提高整个网络的信道利用率。

由于一个分组的长度往往远小于整个报文的长度,因此分组交换比报文交换的时延小,同时也具有更好的灵活性。

了解《计算机网络》能更好的学习编程。现在扇贝编程创新教学模式,让零基础学员也能轻松入门python。 各行各业都能学,一键处理表格、告别加班和重复劳动;利用python办公,节约时间考证,提高核心竞争力;一键下载全网素材 灵感不再需要苦思冥想;轻松爬取分析大牛论文。 戳下方卡片,原价119元,现在只要3.9元/4节Python入门课。

限时招募100名!小白也能轻松学会的python编程课,只需3.9元!
已失效

游戏闯关式教学,助教老师全程指导,零基础也能学会,手机电脑都能学 。优惠福利:

赠价值99元精选资料 (python语法总结+python资源大全+python趣味爬虫) 学习交流群 (加入共学社群,学员群内互相督促、交流、共同进步) 助教辅导(专属助教老师,帮助你解决各种python问题)

5.1 电路交换

优点:

通信时延小:因为通信线路为通信双方专用,数据直达,因此通信时延小。当传输大量数据时,优势非常明显。有序传输:因为通信双方之间只有一条专用的通信线路,数据只在这一条线路上传输,因此不存在失序问题。没有冲突:不同的通信双方拥有不同的信道,不会出现争用物理信道的问题。适用范围广:电路交换既适用于传输模拟信号,也适用于传输数字信号。实时性强:得益于通信时延小。控制简单:电路交换的结点交换机及其控制都比较简单。

缺点

建立连接时间长:电路交换的连接建立时间对计算及通信来说太长。线路独占,使用效率低:电路交换一旦建立连接,物理通路就被通信双方独占,即使通信线路空闲,也不能供其他用户使用,因而信道利用率很低。灵活性差:只要连接所建立的物理通路中任何一点出现了故障,就必须重新拨号建立新的连接,这对十分紧急和重要的通信是很不利的。难以规格化:电路交换时,数据直达,不同类型、不同规格、不同速率的终端很难相互进行通信,也难以在通信过程中进行差错控制。

5.2 报文交换

优点

无需建立连接:报文交换不需要为通信双方预先建立一条专用的通信线路,不存在建立连接的时延,用户可以随时发送报文。【电路交换对比】动态分配线路:当发送方把报文送给结点交换机时,结点交换机先存储整个报文,然后选择一条合适的空闲线路,将报文发送出去。 提高线路可靠性:如果某条传输路径发生故障,会重新选择一条路径传输数据,因此提高了传输的可靠性。 提高线路利用率:通信双方不是固定占用一条通信线路,而是在不同的时间段分部分占用物理线路,因而大大提高了通信吸纳录的利用率。提供多目标服务:一个报文可以同时发送给多个目的地址,这在电路交换中很难实现。

缺点

引起了转发时延:因为报文交换在结点交换机上要经历存储转发的过程。需要较大存储缓存空间:因为报文交换对报文大小没有限制。【分组转发对比】需要传输额外的信息量:因为报文需要携带目标地址、源地址等信息。

5.3 分组交换

优点

无需建立连接:不需要为通信双方预先建立一条专用的通信线路,不存在建立连接的时延,用户可以随时发送分组。【电路交换对比】线路利用率高:通信双方不是固定占用一条通信线路,而是在不同的时间分段占用物理线路,因而大大提高了通信线路的利用率。简化了存储管理:分组长度固定,相应的缓冲区大小也固定,管理起来相对容易。【报文交换对比】加速传输:由于分组是逐个传输的,使得最后一个分组的存储操作,与当前一个分组的转发操作可以同时进行。减少出错概率和重发数据量:因为分组比报文小,因此出错概率概率必然减小,即使分组出错,也只需要重传出错的分组,比重传整个报文数据量小很多。提高了可靠性,减少了传输时延。【报文交换对比】

缺点

引起了转发时延:因为分组在结点交换机上要经历存储转发的过程。【与报文交换同】需要传输额外的信息:将原始报文分割成等长的数据块,每个数据块都要加上源地址、目的地址等控制信息,从而构成分组,使得传送的信息量变大。【与报文交换对比】对于数据报服务,存在失序,丢失或重复分组的问题;对于虚电路服务(无失序问题),存在呼叫建立、数据传输和虚电路释放三个过程。分组到达目的结点时,需要重新还原成原始报文,比较麻烦。

参考信息

[1] 《计算机网络》第7版 谢希仁著 P12-P17

[2] 三种交换方式:电路交换、分组交换和报文交换(字幕版)


以上就是关于《《计算机网络》| 三种交换方式:电路交换、分组交换、报文交换-电路交换的网络拥塞》的全部内容,本文网址:https://www.7ca.cn/baike/14941.shtml,如对您有帮助可以分享给好友,谢谢。
标签:
声明

排行榜