交换技术-电路交换-报文交换-分组交换

交换技术是指主机之间、通信设备之间或主机与通信设备之间为交换信息所采用的数据格式和交换装置的方式。按交换技术可分为:电路交换、报文交换和分组交换。

电路交换

交换(switching),就是按照某种方式动态地分配传输线路的资源。

电路交换是在源结点和目的结点之间建立一条专用的通路用于传送数据,包括建立连接、传输数据和断开连接三个阶段。最典型的电路交换网是传统电话网络。

电路交换的优点是数据直连、延迟小。缺点是线路传输效率低,不到10%甚至1%,不能充分利用线路容量、不便于进行差错控制。

报文交换

报文(message),要发送的整块数据称为报文。

存储-转发,将途径的数据流按传输单元(可以是报文或报文分组)接收并存储下来(同检验该数据单元的效验和),一个数据单元接收完后根据相关路由算法选择一条合适的路由路径将数据转发出去,在逻辑(不是物理线路)上为数据流提供传输通道。

报文交换,就是将用户数据加源地址、目的地址、校验码等辅助信息封装成报文。以报文为单位,使用存储-转发方式将报文传输到终点。

报文交换的优点:

  1. 充分利用线路容量。
  2. 可以实现不同链路之间不同数据率的转换。
  3. 可以实现格式转换。
  4. 可以实现一对多、多对一的访问。
  5. 可以实现差错控制。

报文交换的缺点:

  1. 增加资源开销,例如为辅助信息导致处理时间和存储资源的开销。
  2. 增加缓冲延迟。
  3. 额外的控制机制来保证多个报文的顺序不会乱序。
  4. 缓冲区难以管理,因为报文大小不确定。
  5. 接收方在接收到报文之前不能预知报文大小。

分组交换

分组(packet),将报文分成较短的等长数据块,并在数据块中加入首部(header,又称包)。首部包含源地址和目的地址等控制信息。

主机(host),为用户进行信息处理,并可与其他主机通过网络交换信息。

路由器(router),用来转发分组,即进行分组交换。

分组交换,就是将分组独立地选择传输路径,以存储-转发方式将分组传输到终点。

分组交换自身具有的优点:

  1. 高效:在分组传输过程中,动态分配传输带宽,对通信链路逐段占用。
  2. 灵活:为每一个分组独立地选择最适合的转发路由。
  3. 迅速:以分组作为传送单位,可以不先建立连接就能向其它主机发送分组。
  4. 可靠:保证可靠性的网络协议;分布式多路由的分组交换网,使网络由很好的生存性。

分组交换的缺点:

  1. 时延:分组在各路由器存储转发时需要排队,会造成一定的时延。
  2. 实时:分组交换不像电路交换通过建立连接保证通信时所需的各种资源,无法保证通信时端到端所需的带宽。
  3. 开销:各分组必须携带控制信息造成一定的开销(overhead)。
  4. 管控:分组交换网需要专门的管理和控制机制。

交换方式的对比

三种交换方式在数据传送阶段主要特点:

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

连续传送大量的数据,且其传送时间远大于连续建立时间,则电路交换的传输速率较快。报文交换和分组交换不需要预先分配传输带宽,在传送突发数据时刻提高整个网络的信道利用率。由于一个分组的长度往往远小于整个报文的长度,因此分组交换比报文交换的时延小,同时也具有更好的灵活性。

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

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

相关文章

影响机器视觉测量精度的因素有哪些?

精度测量取决于分辨率 在机器视觉测量中提供高精度和低不确定度的决定性因素是获取的图像的分辨率。在这种情况下,术语分辨率 (或图像分辨率)意味着以实际单位的单个像素的大小。简而言之,如果一个摄像机传感器在水平方向上包含…

Python GUI 图形用户界面程序设计,Python自带 tkinter 库

文章目录 前言GUI介绍简单操作tkinter组件介绍向窗体中添加按钮控件使用文本框控件使用菜单控件使用标签控件使用单选按钮和复选按钮组件使用绘图组件关于Python技术储备一、Python所有方向的学习路线二、Python基础学习视频三、精品Python学习书籍四、Python工具包项目源码合集…

Redis深入理解-三次握手、槽位机制

Redis 节点之间的三次握手原理分析 比如多台 Redis 之间要建立集群,那么连接其中的一台 Redis 客户端,向其他 Redis 发送 meet 命令即可通知其他节点,那么发送 meet 命令给其他节点后,对方也会在内存中创建一个 ClusterNode 结构…

手摸手Element-ui路由VueRoute

后端WebAPI准备 https://router.vuejs.org/zh/guide/ https://v3.router.vuejs.org/zh/installation.html <template><el-table:data"tableData"style"width: 100%":row-class-name"tableRowClassName"><!-- <el-table-colum…

go atexit源码分析

文章目录 atexit源码解析UML类图样例一: 程序退出之前执行注册函数1.1 流程图1.2 代码分析 样例二&#xff1a;使用cancel取消注册函数2.1 cancel流程图2.2 代码分析 样例三&#xff1a;使用Fatal/Fatalln/Fatal执行注册函数3.1 Fatal/Fatalln/Fatal流程图3.2 代码分析 atexit源…

【shell】正则表达式和文本三剑客之grep和awk

目录 一、正则表达式 1.1用法 1.2表示字符匹配 1.3表示次数 1.4表示位置锚定 1.5表示分组或其他 1.6扩展正则表达式 二、grep命令 三、awk命令 3.1awk与vim的区别 3.2awk的语法 3.3基础用法 test1.提取磁盘的分区利用率 test2.提取用户名和uid号 test3.提取ip地址…

【uniapp】微信运行报错TypeError_ Cannot read property ‘FormData‘ of undefined

文章目录 一、报错详情&#xff1a;二、解决&#xff1a; 一、报错详情&#xff1a; 二、解决&#xff1a; npm install axios0.27.2 #或者 npm install axios1.3.4

Go 数字类型

一、数字类型 1、Golang 数据类型介绍 Go 语言中数据类型分为&#xff1a;基本数据类型和复合数据类型基本数据类型有&#xff1a; 整型、浮点型、布尔型、字符串复合数据类型有&#xff1a; 数组、切片、结构体、函数、map、通道&#xff08;channel&#xff09;、接口 2、…

livox 半固体激光雷达 gazebo 仿真 | 安装与验证

livox 半固体激光雷达 gazebo 仿真 | 安装与验证 livox 半固体激光雷达 gazebo 仿真 | 安装与验证livox 介绍安装验证 livox 半固体激光雷达 gazebo 仿真 | 安装与验证 livox 介绍 览沃科技有限公司&#xff08;Livox&#xff09;成立于2016年。为了革新激光雷达行业&#xf…

2019年8月21日 Go生态洞察:迁移到Go模块

&#x1f337;&#x1f341; 博主猫头虎&#xff08;&#x1f405;&#x1f43e;&#xff09;带您 Go to New World✨&#x1f341; &#x1f984; 博客首页——&#x1f405;&#x1f43e;猫头虎的博客&#x1f390; &#x1f433; 《面试题大全专栏》 &#x1f995; 文章图文…

数据结构和算法-树和二叉树的定义和基本术语和性质

文章目录 树的基本概念和相关术语相关的应用节点间的关系描述节点&#xff0c;树的属性描述有序树vs无序树树vs森林小结 树的相关性质考点1考点2考点3考点4考点5考点6小结 二叉树的相关概念和基本术语重要 &#xff08;五种状态&#xff09;特殊二叉树小结 二叉树的相关性质二叉…

AIGC文生图及工具产品简介

AIGC&#xff0c;全称是人工智能生成内容&#xff08;Artificial Intelligence Generated Content&#xff09;是继UGC&#xff08;用户生成内容&#xff09;&#xff0c;PGC&#xff08;平台生成内容&#xff09;后&#xff0c;利用人工智能技术&#xff0c;自动生成内容的生产…