热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

计算机网络:三种交换方式

三种交换方式如下:电路交换分组交换报文交换一、电话交换1.1概念引导电话之间通过电线交换:电话之间需要两两相连,如果数量太大&#x

三种交换方式如下:


  • 电路交换
  • 分组交换
  • 报文交换

一、电话交换


1.1 概念引导

电话之间通过电线交换:
在这里插入图片描述
电话之间需要两两相连,如果数量太大,电话线就太多了…如果是n个电话,那么需要n*(n-1)/2对电线。

由上面可知,这样是很麻烦的,所以我们需要一个中间设备把它们连接起来,它就叫做:电话交换机
在这里插入图片描述
由此能减少一定的电话线数量。


1…2 电话交换步骤

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


  1. 建立连接(分配通信资源),就是拨号
  2. 通话(一直占用资源),就是一直通话中,占用专有物理通道
  3. 释放连接(归还资源)
    如图所示:
    在这里插入图片描述
    当使用电路交换来传送计算机数据时,其线路的传输效率往往很低,所以我们需要分组交换。

二、分组交换

分组交换做重要的交换机就是用过通过路由器,将各种网络互连起来,并接收到的分组进行转发,也就是进行分组交换。
在这里插入图片描述
例如:H6用户需要发送消息给H2用户。这样的消息整块数据叫做电报。
在这里插入图片描述

发送报文之前,我们把一个它拆分成三个等长数据段,每一个数据段会加上控制信息,构成一个分组,也叫做“包”
在这里插入图片描述
添加首部的作用:包含分组的目的地址,路由器根据首部地址查找转发,最终到达目的
在这里插入图片描述
收到数据后,接收方会去掉首部,还原数据为原报文:
在这里插入图片描述
在分组交换中的角色和作用:
在这里插入图片描述
该交换方式用于比较早期的通信,所以也基本不怎么使用了。


三、三种交换对比

在这里插入图片描述


3.1 电路交换优缺点

电路交换优点:


  1. 通信时延小
  2. 有序传输3)没有冲突
  3. 适用范围广
  4. 实时性强
  5. 控制简单

电路交换缺点:


  1. 建立连接时间长
  2. 线路独占,使用效率低
  3. 灵活性差。任何一方连接错误,就需要重新连接。
  4. 难以规格化

3.2 报文优缺点

优点:


  1. 无需建立连接
  2. 动态分配线路
  3. 提高线路可靠性
  4. 提高线路利用率
  5. 提供多目标服务

缺点:


  1. 无需建立连接
  2. 动态分配线路
  3. 提高线路可靠性
  4. 提高线路利用率
  5. 提供多目标服务

3.3 分组交换优缺点

优点:


  1. 无需建立连接
  2. 线路利用率高
  3. 简化了存储管理
  4. 加速传输
  5. 减少出错概率和重发数据量

缺点:


  1. 引起了转发时延
  2. 需要传输额外的信息量
  3. 对于数据报服务,存在失序、丢失或重复分组的问题;对于虚电路服务,存在呼叫建立、数据传输和虚电路释放三个过程

四、听课参考

听课于湖南科技大学计算机网络:


https://www.bilibili.com/video/BV1c4411d7jb?p=3



推荐阅读
  • 深入探讨ASP.NET中的OAuth、JWT与OpenID Connect
    本文作为前文关于OAuth2.0和使用.NET实现OAuth身份验证的补充,详细阐述了OAuth与JWT及OpenID Connect之间的关系和差异,旨在提供更全面的理解。 ... [详细]
  • 深入解析Apache SkyWalking CVE-2020-9483 SQL注入漏洞
    本文详细探讨了Apache SkyWalking中的SQL注入漏洞(CVE-2020-9483),特别是其影响范围、漏洞原因及修复方法。Apache SkyWalking是一款强大的应用性能管理工具,广泛应用于微服务架构中。然而,该漏洞使得未经授权的攻击者能够通过特定的GraphQL接口执行恶意SQL查询,从而获取敏感信息。 ... [详细]
  • Gitee + Git 多人协作开发指南:轻松上手,解决代码冲突
    本文提供了一套详细的步骤,帮助团队成员快速安装和配置Git,通过Gitee进行高效的多人协作开发,同时解决常见的代码冲突问题。包括Git的下载、安装、与Gitee的集成以及项目管理的最佳实践。 ... [详细]
  • 深入解析8086 CPU的转移指令
    本文详细介绍了8086 CPU中的转移指令,包括无条件转移、条件转移、循环指令及过程调用等,同时探讨了offset操作符的功能及其应用实例。 ... [详细]
  • 本文介绍了如何通过ARM编译器组件重定向标准C运行时库的I/O函数,以适应不同的硬件平台。原文链接:https://www.keil.com/pack/doc/compiler/RetargetIO/html/retarget_overview.html ... [详细]
  • 交互式左右滑动导航菜单设计
    本文介绍了一种使用HTML和JavaScript实现的左右可点击滑动导航菜单的方法,适用于需要展示多个链接或项目的网页布局。 ... [详细]
  • 随着技术社区的发展,越来越多的技术爱好者选择通过撰写博客来分享自己的学习经验和项目进展。本文将介绍一个具体案例,即将一套原本运行于Windows平台的代码成功移植到Linux(Redhat)环境下的过程与挑战。 ... [详细]
  • 本文旨在介绍在iOS平台进行直播技术开发前的准备工作,重点讲解AVFoundation框架的基本概念和使用方法。通过对AVFoundation的深入理解,开发者能够更好地掌握直播应用中的音视频处理技巧。 ... [详细]
  • 本文详细介绍了 Java 中 com.amazonaws.auth.SystemPropertiesCredentialsProvider 初始化方法的使用方式,并提供了多个实际的代码示例,帮助开发者更好地理解和应用这一方法。 ... [详细]
  • 了解如何快速搭建属于自己的个人博客,无需编程基础,适合Mac和Windows用户。通过本文,您将学会使用GitHub Pages和Hexo构建一个完全自主的在线空间。 ... [详细]
  • 本文探讨了如何通过二分查找算法解决LeetCode上的问题——球篮中的最大磁力,旨在最大化任意两个球之间的最小磁力。 ... [详细]
  • 本文旨在以一种易于理解的方式介绍HBase数据库的核心概念和功能,并附带一些常见的HBase面试问题,帮助读者更好地掌握这一技术。 ... [详细]
  • 本文详细介绍了如何通过微信H5网页授权机制获取用户的code,并进一步获取用户的基本信息,包括必要的配置步骤和前端代码实现。 ... [详细]
  • 本文提供了关于如何解决u8云服务器显示离线以及无法登录的问题的详细指南,包括可能的原因分析和解决方案。 ... [详细]
  • 基于花生壳域名的Android与ESP8266远程控制系统搭建
    本文介绍了一种使用Android设备、ESP8266模块及路由器,结合花生壳动态域名解析服务实现远程控制的方法。通过该方法,用户能够有效解决因公网IP变动导致的连接问题,实现稳定可靠的远程控制。 ... [详细]
author-avatar
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有