重拾计网-第二弹(三种交换方式)

 🎉欢迎您来到我的MySQL基础复习专栏

☆* o(≧▽≦)o *☆哈喽~我是小小恶斯法克🍹
✨博客主页:小小恶斯法克的博客
🎈该系列文章专栏:重拾计算机网络
🍹文章作者技术和水平很有限,如果文中出现错误,希望大家能指正🙏
📜 感谢大家的关注! ❤️

ps:本文章的图片来源都是来自于湖科大教书匠的视频,声明:仅供自己复习,里面加上了自己的理解

这里附上视频链接地址:1.3 三种交换方式:电路交换、分组交换和报文交换_哔哩哔哩_bilibili

​​

目录

 🚀三种交换方式

🚀电路交换

🚀电路交换三大步骤 

🚀分组交换

🚀报文交换

 🚀三种交换方式的对比 (总结过程)

 🚀三种交换方式的优缺点


🚀三种交换方式

🚀电路交换

✨电话交换机接通电话线的方式叫做电路交换;

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

✨电路交换是一种传输数据的方式,其中在通信开始时,在源和目的地之间建立一条专用的物理连接(电路)。这条连接在通信会话期间一直保持,直到通信结束,无论数据是否在这条连接上传输。这些连接是预分配的,且在连接期间不会被其他用户使用。

✨电路交换有时被用于需要实时、连续、稳定带宽的应用,如电话网络。然而,它具有固定的带宽和较高的建立和维护成本,并且在不传输数据时也会浪费带宽。

 注意:电话线归电话用户专用,而电话交换机之间拥有的大量话路中继线则是许多用户共享的

🚀电路交换三大步骤 

✨建立连接(分配通信资源)

建立连接是电路交换的第一步。在通信会话开始之前,源和目的地之间必须建立一个物理连接(电路)。此连接将为数据传输提供一个专用的传输路径。

在建立连接过程中,源和目的地之间的通信设备(如调制解调器或交换机)会通过信令交换协议进行通信,以建立可靠的连接。此过程通常涉及协商连接参数,例如带宽、连接时长等。

这条连接保证了双方通话时所需的通信资源,而这些资源在双方通信时不会被其他资源占用

✨通话(一直占用通信资源)

在整个通话期间,第一步建立连接所分配的通信资源始终被占用

✨释放连接(归还通信资源)

当数据传输完成或通信会话结束时,连接需要被释放。释放连接是电路交换的最后一步。在连接释放期间,源和目的地之间的通信设备将发送信令交换协议来关闭连接并释放相关的资源。

释放连接后,连接上的资源将被释放,使其可供其他通信会话使用。这样,连接的通信路径将返回到空闲状态,等待下一次连接的建立。

思考:如果使用电路交换来传送计算机数据,是否可行?

✨当使用电路交换来传送计算机数据时,线路的传输效率往往很低

✨固定带宽分配:在电路交换中,连接的带宽被静态分配给建立的连接。这意味着连接占用的带宽在整个连接期间保持不变,无论是否有实际数据传输。对于计算机数据,这种固定带宽的分配可能导致资源浪费,因为计算机数据传输通常是不连续、突发性的。

✨连接建立和维护开销:电路交换需要在通信开始之前建立连接,并在通信结束后释放连接。这涉及到信令交换和建立连接所需的时间、开销和复杂性。对于大规模的计算机数据传输,频繁建立和释放连接可能会增加延迟并降低系统的效率。

✨对实时性的需求:电路交换通常用于实时、连续的通信,如电话通讯或视频传输。对于计算机数据传输,实时性的需求可能不如前述通信那样强烈。计算机数据传输更注重低延迟、高带宽和高吞吐量,这些要求可能与电路交换的固定带宽分配和连接建立开销相冲突。

📜所以计算机网络通常采用分组交换,而不是电路交换

🚀分组交换

在因特网中最重要的分组交换机就是路由器,负责将各种网络互联起来,并对收到的分组进行转发,也就是进行分组交换

🚀分组交换的过程

例如主机H6的用户要给主机H2的用户发送一条消息,通常我们把表示该消息的整块数据称为一个报文,在发送报文之前,先把较长的报文划分成为一个个更小的等长数据段,在每一个数据段前面加上一些由必要的控制信息组成的首部后,就构成了一个分组,也可简称为"包"

相应的首部也可以称为”包头“

✨总结详细分组交换过程的描述就是:

数据分组:

在分组交换中,源将待传输的数据划分成较小的数据包(分组)。每个分组通常包含数据的一部分,还包含一些用于路由和传输控制的元数据,如源地址、目的地址、校验和等。

路由选择:

每个分组都会根据目的地址进行路由选择,以确定经过哪些网络设备(如路由器)进行转发。路由选择算法会根据目的地的网络地址以及当前网络拓扑和路由表信息来决定下一跳的路径。

转发分组:

路由器根据选择的路径,将数据分组从输入接口转发到输出接口。此过程涉及物理层和链路层的操作,包括物理信号的调制、调整帧的格式、进行差错检测和纠错等。

路由器根据分组的目的地址和路由表信息来确定下一跳的输出接口,并将分组通过该接口转发给下一个路由器或目的设备。

分组重新组装:

在传输过程中,分组可能会通过多个路由器进行中转。一旦分组到达目的设备,目的设备将根据分组的顺序和目的地址重新组装数据包。

数据传输完成:

一旦所有数据包都按正确顺序重新组装,并且校验和等验证步骤通过,数据传输任务就完成了。

在分组交换中,数据被划分成较小的分组,这些分组独立地在网络中传输。与电路交换不同,分组交换不需要建立专用的物理连接,分组可以在网络中根据实时流量和路由选择动态地分配带宽和路径。这使得分组交换网络能够灵活地适应不同的传输需求,并且能够有效地利用网络资源。

✨思考:添加首部的作用是什么?这难道不是额外的加大了待传输的数据量嘛?

首部及其重要,首部中包含了分组的目的地址,否则分组传输路径中的各分组交换机(也就是各路由器),就不知道如何转发分组了,分组交换机收到一个分组后,先将分组暂时储存下来,再检查其首部,按照首部中的目的地址进行查表转发找到合适的转发接口,将分组转发给下一个分组交换机,如H6传输数据到H2中,主机H6将所构造出的各分组依次发送出去,各分组经过途中各分组交换机的存储转发,最终到达H2,主机H2收到这些分组后,去掉它们的首部,将各数据段组合还原出原始报文

我们这里只演示出来分组传输过程中的两种情况:

一种是各分组从源站到达目的站可以走不同的路径(也就是不同的路由);

一种是分组乱序,也就是分组到达目的站的顺序不一定与分组在源站的发送顺序相同,可能会出现分组丢失,误码,重复的问题

🚀在分组交换过程中,我们宏观来看

发送方的任务是构造分组,发送分组

路由器(也就是分组交换机)的任务是缓存分组,转发分组,可以简称为"存储转发"

接收方任务就是接收分组,还原报文

🚀报文交换

与分组交换类似,报文交换中的交换结点也采用存储转发方式

但报文交换对报文大小没有限制,这就要求交换结点要有较大的缓存空间

✨报文交换主要用在哪里?

1.早期的电报通信网

2.传统电话系统:在传统的电话网络中,通话过程中的语音信号被转换为数字信号,并封装成报文进行交换和传输。

3.电子邮件:在电子邮件系统中,邮件被封装成报文,并通过邮件服务器进行交换。邮件报文可以包含文本、附件、图片等多种类型的数据。

4.文件传输:在文件传输过程中,文件被划分为报文进行交换。报文交换可以通过各种协议和技术进行,如FTP(文件传输协议)、HTTP(超文本传输协议)等。

5.传感器网络:报文交换在传感器网络中起到重要的作用。传感器节点生成的数据被封装成报文,并通过网络传输到目的地进行处理和分析。

不过较少使用了,都被比较先进的分组交换取代

 🚀三种交换方式的对比 (总结过程)

场景:假设abcd是分组传输路径上所要经过的四个结点交换机,纵坐标为时间

下面引用湖科大教书匠的总结:我觉得还不错,很详细 

✨电路交换

1.通信之前首先要建立连接

2.连接建立好之后,就可以使用已建立好的连接进行数据传送

3.数据传送结束后,需要释放连接,以归还之前建立连接所占用的通信线路资源。

✨报文交换

1.可以随时发送报文,而不需要事先建立连接

2.整个报文先传送到相邻节点交换机

3.全部存储下来后进行查表转发。转发到下一个节点交换机

✨分组交换

1.可以随时发送分组,而不需要事先建立连接

2.构成原始报文的一个个分组,依次在各节点交换机上存储、转发

3.各节点交换机在发送分组的同时,还缓存接收到的分组

✨当使用电路交换时,一旦建立连接中间的各结点交换机就是直通形式的,比特流可以直达终点。

✨当使用报文交换时,整个报文需要在各结点交换机上进行存储转发。由于不限制报文的大小,因此需要各节点交换机都具有较大的缓存空间。

✨当使用分组交换时。构成原始报文的一个个分组,在各节点交换机上进行存储、转发。相比报文交换,减少了转发时延,还可以避免过长的报文长时间占用链路。同时也有利于进行差错控制。

 🚀三种交换方式的优缺点

表格总结

报文交换分组交换电路交换
单位传输整个报文分组(packet)信道资源(电路)
传输方式存储转发(store-and-forward)存储转发(store-and-forward)直接连接/预分配信道
传输效率低(需要传输整个报文)高(数据分组较小,传输效率高)高(直接连接,无需寻址或分组处理)
适用领域电子邮件、文件传输、传感器网络、RPC等互联网、数据通信网络等传统电话网络、实时音视频通信等
报文完整性和一致性高(报文被作为单个单元传输)一般(分组传输可能出现丢失、重复或乱序)高(创建的电路保证了数据传输的完整性和时序)
资源利用率低(报文传输过程中可能存在空闲资源)高(分组传输可以共享网络资源)高(电路在通话过程中独占信道资源)
传输延迟可变(取决于报文大小和网络拥塞状况)可变(取决于分组大小和网络拥塞状况)低(预先建立的电路减少了建立连接的时间开销)
网络可靠性和鲁棒性一般(可能受到分片、装载和网络故障的影响)一般(较高丢包率、延迟和乱序的可能性)高(预分配的电路稳定,不受其他流量的影响)
灵活性和扩展性一般(需要额外的报文首部及处理逻辑)高(可以根据需要灵活地调整分组大小和协议)低(需要预分配足够的电路资源)

文字总结(来自湖可大教书匠)

✨电路交换的优点

1.通信时延小,这是因为通信线路为通信双方用户专用数据直达,因此通信时延非常小。当连续传输大量数据时,这一优点非常明显。

2.有序传输。这是因为通信双方之间只有一条专用的通信线路。数据只在这一条线路上传输,因此不存在失序问题。

3.没有冲突。不同的通信双方拥有不同的信道,不会出现征用物理信道的问题

4.使用范围广,电路交换既适用于传输模拟信号,也适用于传输数字信号

5.实时性强。这主要得益于其通信时延小的优点

6.控制简单。电路交换的节点、交换机及其控制都比较简单。

✨缺点

1.建立连接时间长,电路交换的平均连接建立时间对计算机通信来说太长了

2.线路独占,使用效率低,电路交换一旦建立连接,物理通路就被通信双方独占,即使通信线路空闲,也不能供其他用户使用,因而信道利用率很低

3.灵活性差,只要连接所建立的物理通路中的任何一点出现了故障,就必须重新拨号建立新的连接,这对十分紧急和重要的通信是很不利的

4.难以规格化。电路交换时数据直达,不同类型、不同规格、不同速率的终端很难相互进行通信,也难以在通信过程中进行差错控制。

✨报文交换的优点如下

1.无需建立连接。报文交换不需要为通信双方预先建立一条专用的通信线路,不存在建立连接的时延。用户可以随时发送报文

2.动态分配线路。当发送方把报文传送给结点交换机时,结点交换机先存储整个报文,然后选择一条合适的空闲线路,将报文发送出去

3.提高线路可靠性,如果某条传输路径发生故障,会重新选择另一条路径传输数据,因此提高了传输的可靠性

4.提高线路利用率,通信双方不是固定占用一条通信线路,而是在不同的时间分段部分占用物理线路,因而大大提高了通信线路的利用率

5.提供多目标服务,一个报文可以同时发送给多个目的地址,这在电路交换中是很难实现的。

✨缺点

1.第一引起了转发时延,这是因为报文在结点交换机上要经历存储、转发的过程

2.需要较大的存储缓存空间,这是因为报文交换对报文的大小没有限制

3.需要传输额外的信息量,这是因为报文需要携带目标地址、源地址等信息

✨分组交换的优点如下

1.第一,无需建立连接,分组交换不需要为通信双方预先建立一条专用的通信线路,不存在建立连接的时延,用户可以随时发送分组

2.线路利用率高,通信双方不是固定占用一条通信线路,而是在不同的时间分段部分占用物理线路,因而大大提高了通信线路的利用率

3.简化了存储管理,这是相对于报文交换而言的,因为分组的长度固定,相应的缓冲区的大小也固定,管理起来相对容易

4.加速传输,由于分组是逐个传输的,这就使得后一个分组的存储操作与前一个分组的转发操作可以同时进行

5.减少出错概率和重发数据量。因为分组比报文小,因此,出错概率必然减小,即便分组出错,也只需重传出错的部分,这比重传整个报文的数据量小很多,这样不仅提高了可靠性,也减少了传输时延

✨缺点

1.引起了转发时延,这是因为分组在结点交换机上要经历存储、转发的过程

2.需要传输额外的信息量。将原始报文分割成等长的数据块,每个数据块都要加上原地址、目的地址等控制信息,从而构成分组,因此使得传送的信息量增大了

3.当分组交换采用数据报服务时,可能会出现失序、丢失或重复分组,分组到达目的结点时,需要重新还原成原始报文,比较麻烦,若分组交换采用虚电路服务,虽然没有分组失序问题。但由呼叫建立、数据传输和虚电路释放三个过程

 


好好复习吧,同志们!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/416949.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

芯品荟 | 电脑机箱键盘副屏市场调研报告

一.产品简介 1.带TFT彩屏电脑机箱 2.带小TFT彩屏电脑键盘 为什么电脑机箱&键盘,要带屏? 带屏的电脑机箱&键盘客户群体? 电竞玩家、设计师、电子发烧友、股民...... 二、市场规模 中国电脑机箱年产量约6000万台,键盘年产量约3亿…

【Linux】信号量基于环形队列的生产消费模型

信号量 信号量的本质是一个计数器,可以用来衡量临界资源中资源数量多少 信号量的PV操作 P操作:申请信号量称为P操作,P操作的本质就是让计数器减1。 V操作:释放信号量称为V操作,V操作的本质就是让计数器加1 POSIX信号量…

C# Cad2016二次开发选择csv导入信息(七)

//选择csv导入信息 [CommandMethod("setdata")] //本程序在AutoCAD的快捷命令是"DLLLOAD" public void setdata() {Microsoft.Win32.OpenFileDialog dlg new Microsoft.Win32.OpenFileDialog();dlg.DefaultExt ".csv";// Display OpenFileDial…

使用golang对接微软Azure AI翻译

文章目录 一、官方地址二、准备工作三、代码示例 一、官方地址 https://learn.microsoft.com/zh-CN/azure/ai-services/translator/translator-text-apis?tabsgo 二、准备工作 创建服务 创建服务连接地址:https://portal.azure.com/#create/Microsoft.CognitiveS…

mysql原理--锁

1.解决并发事务带来问题的两种基本方式 上一章唠叨了事务并发执行时可能带来的各种问题,并发事务访问相同记录的情况大致可以划分为3种: (1). 读-读 情况:即并发事务相继读取相同的记录。 读取操作本身不会对记录有一毛钱影响,并不…

【项目管理】CMMI-原因分析与解决过程(CAR)

概述: “原因分析与解决”通过预防缺陷或者问题的引入以及识别并适当纳入优秀过程性能的原因,改进质量与生产率。 目录 1、文档结构 2、原因分析与解决过程域包括如下活动 3、选择需要加以分析的结果(启动条件) 4、过程活动与实践对照表 5、实例 1、…

Linux 的提示符太长了,帮你精简一下

普通用户修改文件 ~/.bashrc 修改 50 行左右的代码,将两个w改为大写的W 如果是root用户则修改文件/root/.bashrc,同样的方法。

Pytest插件“pytest-selenium” - 让自动化测试更简洁

在现代Web应用的开发中,自动化测试成为确保网站质量的重要手段之一。而Pytest插件 pytest-selenium 则为开发者提供了简单而强大的工具,以便于使用Python进行Web应用的自动化测试。本文将深入介绍 pytest-selenium 插件的基本用法和实际案例,助你轻松进入无忧的Web应用测试之…

抖动与相噪

抖动(Jitter)和相噪(Phase Noise)都是与信号时钟或波形稳定性相关的概念,它们在通信系统和电子设备中都有重要作用。 抖动(Jitter)反映的是数字信号偏离其理想位置的时间偏差,是一个时域上的概念。 高频数…

深度学习记录--偏差/方差(bias/variance)

误差问题 拟合神经网络函数过程中会出现两种误差:偏差(bias)和方差(variance) 偏差和误差的区别 欠拟合(underfitting) 当偏差(bias)过大时,如左图,拟合图像存在部分不符合值,称为欠拟合(underfitting) 过拟合(overfitting) …

大模型日报-20240120

这里写目录标题 视觉Mamba来了:速度提升2.8倍,内存能省87%一键实景转动画,清华系初创公司全球首发4D骨骼动画框架,还能生成个性化角色如何利用革命性的蛋白质结构工具来发现药物?AlphaFold 发现了数千种可能的致幻剂扎…

AI时代—ChatGPT-4.5的正确打开方式

前言 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家:https://www.captainbed.cn/z ChatGPT体验地址 文章目录 前言4.5key价格泄漏ChatGPT4.0使用地址ChatGPT正确打开方式最新功能语音助手存档…