计算机网络:物理层(三种数据交换方式)

news2024/11/18 18:19:15

今天又学到一个知识,加油!

目录

前言

一、电路交换

二、报文交换

三、分组交换

1、数据报方式

2、虚电路方式

3、比较

总结


前言

为什么要进行数据交换?


一、电路交换

电路交换原理:在数据传输期间,源结点与目的结点之间有一条由中间结点构成的专用物理连接线路,在数据传输结束之前,这条线路一直保持。

电路交换的阶段:

建立连接:

释放连接:

特点:独占资源,用户始终占用端到端的固定传输带宽。适用于远程批处理信息传输或系统间实时性要求高的大量数据传输的情况。

优点:

  • 传输时延小
  • 数据顺序传送,无失序问题
  • 实时性强,双方一旦建立物理通路,便可以实时通信,适用于交互式会话类通信。
  • 全双工通信,没有冲突,通信双方有不同的信道,不会争用物理信道
  • 适用于模拟信号和数字信号
  • 控制简单,电路的交换设备及控制较简单

缺点:

  • 建立连接时间长
  • 线路独占,即使通信线路空闲,也不能供其他用户使用,信道使用效率低。
  • 灵活性差,双方连接通路中的任何一点出了故障,必须重新拨号建立新连接,不适应突发性通信。
  • 无数据存储能力,难以平滑通信量。
  • 电路交换时,数据直达,不同类型、不同规格、不同速率的终端很难相互进行通信

二、报文交换

报文:报文(message)是网络中交换与传输的数据单元,即站点一次性要发送的数据块。报文包含了将要发送的完整的数据信息,其长短很不一致,长度不限且可变。

报文交换的原理:无需在两个站点之间建立一条专用通路,其数据传输的单位是报文,传送过程采用存储转发方式。

优点:

  • 无无需建立连接,无建立连接时延,用户可随时发送报文。
  • 动态分配线路,动态选择报文通过的最佳路径,可以平滑通信量。
  • 提高线路可靠性,某条传输路径发生故障,可重新选择另一条路径传输。
  • 提高线路利用率,通信双方在不同的时间一段一段地部分占有这条物理通道,多个报文可共享信道。
  • 提供多目标服务:一个报文可同时发往多个目的地址。
  • 在存储转发中容易实现代码转换和速率匹配,甚至收发双方可以不同时处于可用状态。这样就便于类型、规格和速度不同的计算机之间进行通信。

缺点:

  • 实时性差,不适合传送实时或交互式业务的数据。数据进入交换结点后要经历存储转发过程,从而引起转发时延。
  • 只适用于数字信号。
  • 由于报文长度没有限制,而每个中间结点都要完整地接收传来的整个报文,当输出线路不空闲时,还可能要存储几个完整报文等待转发,要求网络中每个结点有较大的缓冲区。为了降低成本,减少结点的缓冲存储器的容量,有时要把等待转发的报文存在磁盘上,进一步增加了传送时延。

三、分组交换

分组:大多数计算机网络都不能连续地传送任意长的数据,所以实际上网络系统把数据分割成小块,然后逐块地发送,这种小块就称作分组( packet) 。


分组交换的原理:分组交换与报文交换的工作方式基本相同,都采用存储转发方式,形式上的主要差别在于,分组交换网中要限制所传输的数据单位的长度,一般选128B。发送节点首先对从终端设备送来的数据报文进行接收、存储,而后将报文划分成一定长度的分组,并以分组为单位进行传输和交换。接收结点将收到的分组组装成信息或报文。

优点:

  • 无建立时延,无需为通信双方预先建立一条专用通信线路,用户可随时发送分组。
  • 线路利用率高,通信双方在不同的时间一段一段地部分占有这条物理通道,多个分组可共享信道。
  • 简化了存储管理。因为分组的长度固定,相应的缓冲区的大小也固定,在交换结点中存储器的管理通常被简化为对缓冲区的管理,相对比较容易。
  • 加速传输,后一个分组的存储可以和前一个分组的转发并行操作;传输一个分组比一份报文所需缓冲区小,减少等待发送时间。
  • 减少出错几率和重发数据量,提高可靠性,减少传输时延。
  • 分组短小,适用于计算机之间突发式数据通信。

缺点:

  • 尽管分组交换比报文交换的传输时延少,但仍存在存储转发时延,而且其结点交换机必须具有更强的处理能力。
  • 每个分组都要加控制信息,一定程度上降低了通信效率,增加了处理的时间。
  • 当分组交换采用数据报服务时,可能出现失序、丢失或重复分组,分组到达目的结点时,要对分组按编号进行排序等工作,增加了麻烦。若采用虚电路服务,虽无失序问题,但有呼叫建立、数据传输和虚电路释放三个过程。

1、数据报方式


1.源主机(A)将报文分成多个分组,依次发送到直接相连的结点(A)。
2.结点A收到分组后,对每个分组差错检测和路由选择,不同分组的下一跳结点可能不同。
3.结点C收到分组P1后,对分组P1进行差错检测,若正确则向A发送确认信息,A收到C确认后则丢弃分组P1副本。
4.所有分组到家辽(主机B)!

特点:

  • 1.数据报方式为网络层提供无连接服务。发送方可随时发送分组,网络中的结点可随时接收分组。
  • 2.同一报文的不同分组达到目的结点时可能发生乱序、重复与丢失。
  • 3.每个分组在传输过程中都必须携带源地址和目的地址,以及分组号。
  • 4.分组在交换结点存储转发时,需要排队等候处理,这会带来一定的时延。当通过交换结点的通信量较大或网络发生拥塞时,这种时延会大大增加,交换结点还可根据情况丢弃部分分组。
  • 5.网络具有冗余路径,当某一交换结点或一段链路出现故障时,可相应地更新转发表,寻找另一条路径转发分组,对故障的适应能力强,适用于突发性通信,不适于长报文、会话式通信

无连接服务:不事先为分组的传输确定传输路径,每个分组独立确定传输路径,不同分组传输路径可能不同。

2、虚电路方式

虚电路将数据报方式和电路交换方式结合,以发挥两者优点。

虚电路:一条源主机到目的主机类似于电路的路径(逻辑连接),路径上所有结点都要维持这条虚电路的建立,都维持一张虚电路表,每一项记录了一个打开的虚电路的信息。

特点:

  • 1.虚电路方式为网络层提供连接服务。源节点与目的结点之间建立一条逻辑连接,而非实际物理连接。
  • 2.一次通信的所有分组都通过虚电路顺序传送,分组不需携带源地址、目的地址等信息,包含虚电路号,相对数据报方式开销小,同一报文的不同分组到达目的结点时不会乱序、重复或丢失。
  • 3.分组通过虚电路上的每个节点时,节点只进行差错检测,不需进行路由选择。
  • 3.分组通过虚电路上的每个节点时,节点只进行差错检测,不需进行路由选择。
    4.每个节点可能与多个节点之间建立多条虚电路,每条虚电路支持特定的两个端系统之间的数据传输,可以对两个数据端点的流量进行控制,两个端系统之间也可以有多条虚电路为不同的进程服务。
  • 5.致命弱点:当网络中的某个结点或某条链路出故障而彻底失效时,则所有经过该结点或该链路的虚电路将遭到破坏。

连接服务:首先为分组的传输确定传输路径(建立连接),然后洽该路径(连接)传输系列分组,系列分组传输路径相同,传输结束后拆除连接。

3、比较


总结

以上就是物理层之三种数据交换方式(电路交换、报文交换、分组交换(数据报方式、虚电路方式))的相关知识点。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

在Sqlite中通过Replace来实现插入和更新

你可能在批量处理一个事务的时候,想要批量插入一系列的数据,但是这些数据当添加完一次之后,重新添加的时候,你不想要重新添加,只是想将原有的数据进行更新,例如:我想要通过Excel将一系列的图书导…

群晖上搭建短链接服务Yourls

什么 Yourls ? YOURLS是一组 PHP 脚本,允许您在服务器上运行您自己的 URL 缩短器。您将完全控制您的数据、详细统计数据、分析、插件等。它是免费且开源的。 安装 建数据库 老苏用了群晖自带的 MariaDB 10 数据库 在 phpMyAdmin 中创建名为 yourls 的空数据库 为…

Vue 子传父 组件传参 defineEmits

defineEmits 属性:用于创建自定义事件,接收子组件传递过来的数据。 注意:如果自定义事件的名称,和原生事件的名称一样,那么只会触发自定义事件。 defineEmits 仅适用于 setup 语法糖,其它写法请见&#x…

Qt容器QMdiArea 小部件提供一个显示 MDI 窗口的区域

## QMdiArea ## 控件简介 QMdiArea 继承 QAbstractScrollArea。QMdiArea 小部件提供一个显示 MDI 窗口的区域。QMdiArea的功能本质上类似于MDI窗口的窗口管理器。大多数复杂的程序,都使用MDI框架,在 Qt designer 中可以直接将控件 MDI Area 拖入使用。 ## 用法示例 例 qm…

注意std::shared_ptr的循环引用

指针智能是RAII的思想的具体体现。利用对象生命周期来管理资源。 在C11中,引入shared_ptr、weak_ptr和unique_ptr。 share_ptr是一个能有效解决赋值和拷贝构造的引用技术。 std::shared_ptr通过引用计数的方式来管理对象的生命周期,但是如果两个对象互…

『番外篇三』Swift “乱弹”之带索引遍历异步序列(AsyncSequence)

概览 在 Swift 开发中,我们往往在遍历集合元素的同时希望获得元素对应的索引。在本课中,我们将向小伙伴们展示除 enumerated() 方法之外的几种实现思路。在玩转普通集合之后,我们将用“魔法棒”进一步搞定异步序列带索引遍历的实现。 在本篇博主中,您将学到以下内容: 概…

同时获取el-select的label和value

ui如下: 需求如下: 在点击确认的时候,将id和name都传给一个接口,但是ui只用展示name,name用v-model绑定给input框,但是id不知道怎么传给后端。 解决方法如下: vue中elementUi的el-select同时…

jmeter,csv文件参数化+断言 实现一个接口的case

1、case 及其 测试数据 注意保存文件的编码格式 id,name,limit,status,address,start_time,assert_status,assert_message 100,小米100,1000,1,某某会展中心101,2023-8-20 14:20,200,add event success ,,,,,,10021,parameter error 100,小米102,1002,1,某某会展中心103,2023-…

postman接口测试之Postman配置环境变量和全局变量

前言  我们在测试的过程中,遇到最多的问题也可以是环境的问题了吧,今天开发用了这个测试环境,明天又换了另一个测试环境,这样对于我们测试非常的麻烦,特别最接口的时候需要来回的输入环境地址比较麻烦,今天…

LVS负载均衡集群——NAT地址转换模式与DR直接路由模式

1. LVS集群基本介绍 Cluster,集群、群集。 由多台主机构成,但对外只表现为一个整体,只提供一个访问入口(域名或IP地址),相当于一台大型计算机。 2. 集群的类型 2.1 负载均衡群集(Load Balanc…

安路IP核应用举例(OSC、UART)

1.OSC(内部振荡器) 按照Project->New Project顺序新建工程后,后按照Tools->IP Generator顺序,创建IP核,如下图: 安路FPGA的内置OSC振荡模块频率可选30MHz、60MHz。 可选Verilog或VHDL语言。 如图,生成的.v文件只…

外包干了4个月,测试技术退步明显

先说一下自己的情况,本科生,20年通过校招进入杭州某软件公司,干了3年的功能测试,当然有半年是被封在了家里,今年年初,感觉自己不能够在这样下去了,长时间呆在一个舒适的环境会让一个人堕落!而我…

灾备建设中,虚拟机异构平台恢复技术原理与应用

在如今混合云环境下,实现异构虚拟化恢复与迁移面临着极大挑战。不同于市面上有代理的恢复方案,虚拟机无代理跨平台恢复解决方案利用自主研发的转换引擎(VMCE)对已备份虚拟机文件进行高效的存储格式转换和配置信息转换,…

Deep Graph Contrastive Representation Learning

摘要 如今,图表示学习已成为分析图结构数据的基础。受最近成功的对比方法的启发,在本文中,我们提出了一种新的无监督图表示学习框架,该框架利用节点级别的对比目标。具体来说,我们通过破坏生成两个图视图,…

Jmeter接口自动化测试操作流程(超详细整理)

在企业使用jmeter开展实际的接口自动化测试工具,建议按如下操作流程, 可以使整个接口测试过程更规范,更有效。 接口自动化的流程: 1、获取到接口文档:swagger、word、excel ... 2、熟悉接口文档然后设计测试用例&am…

基于人工智能算法与视频监控相结合的EasyCVR智能游乐园监控方案

随着圣诞节的到来,人们都已经在规划如何安排平安夜活动,游乐园俨然成为了人们的首选。游乐园人员流量大且密集,特别是在节假日和重大节日,人满为患,极易发生事故,为保证游乐场安全运营,减少事故…

JVM虚拟机系统性学习-JVM调优之GC日志分析

JVM 调优 首先,为什么要 JVM 调优呢? JVM 调优的目的就是为了让应用程序使用最小的硬件消耗来承载更大的吞吐量 什么情况下需要 JVM 调优呢? 系统吞吐量下降,或系统延迟较高出现 OOMFull GC 频繁GC 停顿时间过长(超…

OneLLM:对齐所有模态的框架!

深度学习自然语言处理 原创作者:wkk 今天为大家介绍香港中文大学联合上海人工智能实验室的最新研究论文,关于在LLM时代将各种模态的信息对齐的框架。 论文:OneLLM: One Framework to Align All Modalities with Language地址:http…

vue中实现使用相框点击拍照,canvas进行前端图片合并下载

拍照和相框合成,下载图片dome 一、canvas介绍 Canvas是一个HTML5元素,它提供了一个用于在网页上绘制图形、图像和动画的2D渲染上下文。Canvas可以用于创建各种图形,如线条、矩形、圆形、文本等,并且可以通过JavaScript进行编程操作。 Canvas元素本身是一个矩形框,可以通…

《Kotlin核心编程》笔记:面向对象

kotlin 中的类 // Kotlin中的一个类 class Bird {val weight: Double 500.0val color: String "blue"val age: Int 1fun fly() { } // 全局可见 }把上述代码反编译成Java的版本,然后分析它们具体的差异: public final class Bird {privat…