【计算机网络】网络层 : 分组交换方式 ( 数据报方式 | 虚电路方式 )

本文涉及的产品
数据传输服务 DTS,数据同步 small 3个月
推荐场景:
数据库上云
数据传输服务 DTS,数据迁移 small 3个月
推荐场景:
MySQL数据库上云
数据传输服务 DTS,同步至 ClickHouse 1个月
简介: 【计算机网络】网络层 : 分组交换方式 ( 数据报方式 | 虚电路方式 )

文章目录

一、分组交换方式 分类

二、数据传输单元 术语

三、数据报方式

四、虚电路方式

五、数据报服务 与 虚电路服务 对比





一、分组交换方式 分类


分组交换方式 分类 :


① 数据报方式 : 为 网络层 提供 无连接服务 ;


② 虚电路方式 : 为 网络层 提供 连接服务 ;



无连接服务 : 分组传输前 , 不确定传输路径 , 同一个数据报切割的不同的分组 , 传输路径可能不同 ;



连接服务 : 分组传输前 , 先确定传输路径 , 也就是建立连接 , 然后将分组 , 在该路径中传输 , 传输结束后 , 断开连接 ;






二、数据传输单元 术语


数据传输单元 术语 :


① 应用层 : 报文


② 传输层 : 报文段 , 将 报文 分割 得到 ;


③ 网络层 : IP 数据报 , 在 报文段 基础上 , 封装 目的地址 , 源地址 ; 如果 IP 数据报 过大 , 那么就将该 IP 数据报 切割成 分组 ;


④ 数据链路层 : 帧 , 在 IP 数据报 / 分组 基础上 , 帧头 加上 MAC 地址 , 帧尾加上帧检验序列 ;


⑤ 物理层 : 比特流 ;






三、数据报方式


数据报方式 :


① 无连接 : 发送前 不确定 传输路径 , 每个分组 传输路径 都是独立的 , 不同的分组的传输路径可能不同 ;


② 携带地址 : 每个 分组 都有 目的地址 和 源地址 ;


③ 转发分组 : 路由器 根据 目的地址 , 转发分组 ,


构建 转发表 : 基于 路由协议 / 路由算法 构建 转发表 , 每个路由器都有一个转发表 , 转发表由 目的网络地址 和 链路接口 组成 ;

检索 转发表 : 分组到达路由器后 , 检索转发表 , 查找从哪个接口转发出 ;

独立选路 : 每个分组 选择传输路径都是独立的 ;





四、虚电路方式


虚电路方式 :


① 结合两者 : 虚电路 结合了 数据报交换方式 和 电路交换方式 两者的优点 ;


② “虚电路” 概念 : 在 源主机 和 目的主机 之间 , 建立一条 逻辑连接 , 路径上的 节点 ( 路由器 ) 都需要维护一张 虚电路表 , 其中记录了虚电路信息 ;




"虚电路" 通信过程 :


① 建立 虚电路 : 每个分组 都有 虚电路号 信息 , 不携带 目的地址 ; 源主机 向 目的主机 发出 呼叫请求分组 , 目的主机 回送 呼叫应答分组 , 虚电路 ( 逻辑连接 ) 建立成功 ;


② 数据传输 : 该通信 是 全双工通信 ;


③ 释放 虚电路 : 分组发送完毕后 , 源主机 发送 释放请求分组 , 释放 虚电路 ;






五、数据报服务 与 虚电路服务 对比


数据报服务 与 虚电路服务 对比 :


① 连接 : 数据报 不建立连接 ; 虚电路 建立连接 ;


② 目的地址 : 数据报 分组有完整目的地址 ; 虚电路 连接建立阶段 有目的地址 , 数据传输阶段 使用 虚电路号 ;


③ 路由选择 : 数据报 每个分组独立运行 , 路由选择转发 ; 虚电路 所有分组按照 相同的路径传输 ;


④ 分组顺序 : 数据报 不保证顺序 ; 虚电路 保证顺序 ;


⑤ 可靠性 : 数据报 可靠性由 主机 保证 ; 虚电路 可靠性由 网络 保证 ;


⑥ 网络故障适应能力 : 数据报 在网络节点故障后 , 正常传输 ; 虚电路 网络节点故障后 , 不能工作 ;


⑦ 差错处理和流量控制 : 数据报 由 主机 进行流量控制 , 不保证数据报可靠性 ; 虚电路 由 分组交换网 / 主机 负责 ;


相关实践学习
自建数据库迁移到云数据库
本场景将引导您将网站的自建数据库平滑迁移至云数据库RDS。通过使用RDS,您可以获得稳定、可靠和安全的企业级数据库服务,可以更加专注于发展核心业务,无需过多担心数据库的管理和维护。
Sqoop 企业级大数据迁移方案实战
Sqoop是一个用于在Hadoop和关系数据库服务器之间传输数据的工具。它用于从关系数据库(如MySQL,Oracle)导入数据到Hadoop HDFS,并从Hadoop文件系统导出到关系数据库。 本课程主要讲解了Sqoop的设计思想及原理、部署安装及配置、详细具体的使用方法技巧与实操案例、企业级任务管理等。结合日常工作实践,培养解决实际问题的能力。本课程由黑马程序员提供。
目录
相关文章
|
3月前
|
Python
LBA-ECO CD-32 通量塔网络数据汇编,巴西亚马逊:1999-2006,V2
该数据集汇集了1999年至2006年间巴西亚马逊地区九座观测塔的碳和能量通量、气象、辐射等多类数据,涵盖小时至月度时间步长。作为第二版汇编,数据经过协调与质量控制,扩展了第一版内容,并新增生态系统呼吸等相关计算数据,支持综合研究与模型合成。数据以36个制表符分隔文本文件形式提供,配套PDF说明文件,适用于生态与气候研究。引用来源为Restrepo-Coupe等人(2021)。
38 1
|
2月前
|
存储 监控 算法
基于 Python 跳表算法的局域网网络监控软件动态数据索引优化策略研究
局域网网络监控软件需高效处理终端行为数据,跳表作为一种基于概率平衡的动态数据结构,具备高效的插入、删除与查询性能(平均时间复杂度为O(log n)),适用于高频数据写入和随机查询场景。本文深入解析跳表原理,探讨其在局域网监控中的适配性,并提供基于Python的完整实现方案,优化终端会话管理,提升系统响应性能。
65 4
|
3月前
|
开发者
鸿蒙仓颉语言开发教程:网络请求和数据解析
本文介绍了在仓颉开发语言中实现网络请求的方法,以购物应用的分类列表为例,详细讲解了从权限配置、发起请求到数据解析的全过程。通过示例代码,帮助开发者快速掌握如何在网络请求中处理数据并展示到页面上,减少开发中的摸索成本。
鸿蒙仓颉语言开发教程:网络请求和数据解析
|
5月前
|
安全 网络安全 定位技术
网络通讯技术:HTTP POST协议用于发送本地压缩数据到服务器的方案。
总的来说,无论你是一名网络开发者,还是普通的IT工作人员,理解并掌握POST方法的运用是非常有价值的。它就像一艘快速,稳定,安全的大船,始终为我们在网络海洋中的冒险提供了可靠的支持。
154 22
|
5月前
|
存储 数据库 Python
利用Python获取网络数据的技巧
抓起你的Python魔杖,我们一起进入了网络之海,捕捉那些悠游在网络中的数据鱼,想一想不同的网络资源,是不是都像数不尽的海洋生物,我们要做的,就是像一个优秀的渔民一样,找到他们,把它们捕获,然后用他们制作出种种美味。 **1. 打开魔法之门:请求包** 要抓鱼,首先需要一个鱼网。在Python的世界里,我们就是通过所谓的“请求包”来发送“抓鱼”的请求。requests是Python中常用的发送HTTP请求的库,用它可以方便地与网络上的资源进行交互。所谓的GET,POST,DELETE,还有PUT,这些听起来像偶像歌曲一样的单词,其实就是我们鱼网的不同方式。 简单用法如下: ``` im
116 14
|
5月前
|
传感器 存储 算法
基于ECC簇内分组密钥管理算法的无线传感器网络matlab性能仿真
本程序基于ECC(椭圆曲线密码学)簇内分组密钥管理算法,对无线传感器网络(WSN)进行MATLAB性能仿真。通过对比网络通信开销、存活节点数量、网络能耗及数据通信量四个关键指标,验证算法的高效性和安全性。程序在MATLAB 2022A版本下运行,结果无水印展示。算法通过将WSN划分为多个簇,利用ECC生成和分发密钥,降低计算与通信成本,适用于资源受限的传感器网络场景,确保数据保密性和完整性。
|
6月前
|
网络协议 物联网
VB6网络通信软件上位机开发,TCP网络通信,读写数据并处理,完整源码下载
本文介绍使用VB6开发网络通信上位机客户端程序,涵盖Winsock控件的引入与使用,包括连接服务端、发送数据(如通过`Winsock1.SendData`方法)及接收数据(利用`Winsock1_DataArrival`事件)。代码实现TCP网络通信,可读写并处理16进制数据,适用于自动化和工业控制领域。提供完整源码下载,适合学习VB6网络程序开发。 下载链接:[完整源码](http://xzios.cn:86/WJGL/DownLoadDetial?Id=20)
210 12
|
6月前
|
SQL Java 数据库连接
【YashanDB数据库】由于网络带宽不足导致的jdbc向yashandb插入数据慢
由于网络带宽不足导致的jdbc向yashandb插入数据慢
|
7月前
|
缓存 小程序 API
微信小程序网络请求与API调用:实现数据交互
本文深入探讨了微信小程序的网络请求与API调用,涵盖`wx.request`的基本用法、常见场景(如获取数据、提交表单、上传和下载文件)及注意事项(如域名配置、HTTPS协议、超时设置和并发限制)。通过一个简单案例,演示了如何实现小程序与服务器的数据交互。掌握这些技能将帮助你构建功能更丰富的应用。
|
8月前
|
前端开发 小程序 Java
uniapp-网络数据请求全教程
这篇文档介绍了如何在uni-app项目中使用第三方包发起网络请求
524 3

热门文章

最新文章