计算机网络之物理层通信基础(电路交换、报文交换与分组交换)

devtools/2025/2/7 18:41:20/

一、电路交换

工作原理:
电路交换是在数据传输期间,源结点与目的结点之间建立一条由中间结点构成的专用物理连接线路,并在数据传输结束之前保持这条线路。整个报文的比特流连续地从源点直达终点,好像在一个管道中传送。

特点:
独占资源:通信线路为通信双方用户专用,数据直达。
实时性强:通信双方之间的物理通路一旦建立,双方可以随时通信。
全双工通信:双方有不同的信道,不会争用物理信道。
适用于模拟和数字信号:既适用于传输模拟信号,也适用于传输数字信号。
信道利用低:即使通信线路空闲,也不能供其他用户使用。
灵活性差:双方连接通路中的任何一点出了故障,必须重新拨号建立新连接。

应用场景:
远程批处理信息传输。
系统间实时性要求高的大量数据传输。

二、报文交换

工作原理:
报文交换不需要为通信双方预先建立一条专用的通信线路,而是以报文(即站点一次性要发送的数据块)为数据交换的单位,在交换结点采用存储转发的传输方式。报文携带有目标地址、源地址等信息,整个报文先传输到相邻的结点,存储下来后查找转发表,再转发到下一个结点。

特点:
无需建立专用链路:用户可随时发送报文,不存在连接建立时延。
线路利用率高:通信双方在不同的时间一段一段地部分占有这条物理通路,多个报文可共享信道。
提供多目标服务:一个报文可以同时发送到多个目的地址。
实时性差:由于数据进入交换结点后要经历存储、转发过程,网络的通信量愈大,造成的时延就愈大。
只适用于数字信号。
对结点缓冲区要求高:由于报文长度没有限制,每个中间结点都要完整地接收传来的整个报文,要求网络中每个结点有较大的缓冲区。

应用场景:
电子邮件系统(E-mail)。
类型、规格和速度不同的计算机之间的通信。

三、分组交换

工作原理:
分组交换是将报文划分为更小的数据单位,称为报文分组(也称为段、包、分组),并以分组为单位进行传输和交换。在发送端,较长的报文被划分成较短的、固定长度的数据段,添加首部构成分组。接收端收到分组后剥去首部还原成报文。分组交换仍采用存储转发传输方式。

特点:
加速了数据在网络中的传输:分组是逐个传输,可以使后一个分组的存储操作与前一个分组的转发操作并行,减少了报文的传输时间。
减少了出错机率和重发数据量:分组较短,出错机率减少,重发数据量也减少。
适用于突发式数据通信:分组短小,更适用于采用优先级策略,便于及时传送紧急数据。
存在存储转发时延:尽管分组交换比报文交换的传输时延少,但仍存在存储转发时延。
结点交换机处理能力强:结点交换机需要具有更强的处理能力。
可能出现失序、丢失或重复分组:当分组交换采用数据报服务时,可能出现这些问题。若采用虚电路服务,则无失序问题,但有呼叫建立、数据传输和虚电路释放三个过程。

应用场景:
计算机之间的突发式数据通信。
需要高效利用通信线路的场景。

四、总结

电路交换、报文交换和分组交换各有优缺点,适用于不同的应用场景。电路交换适用于需要实时性高、传输大量数据的情况;报文交换适用于不需要实时性、数据量大且对结点缓冲区要求不高的场景;分组交换则适用于计算机之间的突发式数据通信,能够高效利用通信线路。在选择数据交换方式时,需要根据具体的应用需求和网络环境进行权衡。


http://www.ppmy.cn/devtools/156902.html

相关文章

Linux网络 HTTPS 协议原理

概念 HTTPS 也是一个应用层协议,不过 是在 HTTP 协议的基础上引入了一个加密层。因为 HTTP的内容是明文传输的,明文数据会经过路由器、wifi 热点、通信服务运营商、代理服务器等多个物理节点,如果信息在传输过程中被劫持,传输的…

SpringCloud详细讲解

学习目标 微服务框架SpringCloud的核心组件分布式与集群Spring Cloud 优缺点 微服务框架 微服务框架是将某个应用程序开发划分为多个小型服务独立进行业务开发的一种架构模式。以下是对微服务框架的详细介绍: 一、定义与特点 定义:微服务框架围绕业务…

《解锁GANs黑科技:打造影视游戏的逼真3D模型》

在游戏与影视制作领域,逼真的3D模型是构建沉浸式虚拟世界的关键要素。从游戏中栩栩如生的角色形象,到影视里震撼人心的宏大场景,高品质3D模型的重要性不言而喻。随着人工智能技术的飞速发展,生成对抗网络(GANs&#xf…

安卓开发,打开PDF文件

1、把PDF文件复制到raw目录下 &#xff08;1&#xff09;新建一个Android Resource Directory (2)Resource type 改成 raw (3) 把PDF文件复制到raw目录下 2、activity_main.xml <?xml version"1.0" encoding"utf-8"?> <LinearLayoutxmlns:and…

DeepSeek 遭 DDoS 攻击背后:DDoS 攻击的 “千层套路” 与安全防御 “金钟罩”

当算力博弈升级为网络战争&#xff1a;拆解DDoS攻击背后的技术攻防战——从DeepSeek遇袭看全球网络安全新趋势 在数字化浪潮席卷全球的当下&#xff0c;网络已然成为人类社会运转的关键基础设施&#xff0c;深刻融入经济、生活、政务等各个领域。从金融交易的实时清算&#xf…

如何使用Webpack构建前端应用?

在现代前端开发中&#xff0c;Webpack已成为构建工具的主流选择&#xff0c;它能够帮助开发者打包和优化应用程序的资源。通过Webpack&#xff0c;前端应用的构建流程变得更加高效和灵活&#xff0c;无论是模块化开发&#xff0c;还是性能优化&#xff0c;都能够轻松实现。本文…

【C语言篇】“三子棋”

一、游戏介绍 三子棋&#xff0c;英文名为 Tic - Tac - Toe&#xff0c;是一款简单而经典的棋类游戏。游戏在一个 33 的棋盘上进行&#xff0c;两名玩家轮流在棋盘的空位上放置自己的棋子&#xff08;通常用 * 和 # 表示&#xff09;&#xff0c;率先在横、竖或斜方向上连成三个…

Android学习19 -- 手搓App

1 前言 之前工作中&#xff0c;很多时候要搞一个简单的app去验证底层功能&#xff0c;Android studio又过于重型&#xff0c;之前用gradle&#xff0c;被版本匹配和下载外网包折腾的堪称噩梦。所以搞app都只有找应用的同事帮忙。一直想知道一些简单的app怎么能手搓一下&#x…