【计算机网络】计算机网络基础二

🍑个人主页:Jupiter.
🚀 所属专栏:Linux从入门到进阶
欢迎大家点赞收藏评论😊

在这里插入图片描述

在这里插入图片描述

目录

    • `以太网的通信原理`
    • `令牌环网的通信原理`
    • `网络传输基本流程 `
      • `数据包封装和分用 `
        • `网络传输流程图 `
        • `局域网通信(同一个网段内的两台主机进行文件传输)`
        • `跨网络转发`
      • `网络中的地址管理`
            • `对比 IP地址和 Mac地址的区别`
            • `提炼 IP网络的意义和网络通信的宏观流程`


以太网的通信原理

  • 载波侦听
    • 在发送数据之前,设备会不断监听传输介质(如电缆或光纤)上的信号。
    • 如果没有检测到活动的信号,即介质被认为是空闲的,设备就可以开始发送数据。
  • 冲突检测(数据碰撞)
    • 在发送数据的过程中,设备会同时监测传输介质上的信号。
    • 如果检测到冲突,即多个设备同时发送数据导致信号的干扰,设备会立即中止发送,并发送一段短的干扰信号(称为“冲突信号”)来通知其他设备发生了冲突。(一个局域网一般叫做碰撞域,在一个局域网中,同一时刻只允许一台主机向碰撞域中发送数据)
  • 退避与重传
    • 当设备检测到冲突后,会随机选择一个退避时间(这个时间根据设备的优先级来确定,优先级高的设备等待时间较短)。
    • 在退避时间结束后,设备会重新尝试发送数据。
  • 局域网本质是一个临界资源,只是不是通过加锁实现的,是通过冲突检测和退避与重传实现的。
  • 如果想要黑掉一个局域网,只需要向局域网中不断发送垃圾数据,让其造成一直数据碰撞。

令牌环网的通信原理

令牌环网的通信原理主要基于一个称为“令牌”的特殊控制帧来管理网络中数据的传输。以下是令牌环网通信原理的详细解释:

  • 网络拓扑结构
    • 令牌环网采用环形拓扑结构,所有的计算机或工作站通过物理或逻辑的连接线路连接成一个环形结构。在这种结构中,数据沿着环形网络从一个工作站传递到另一个工作站,形成一个闭环。
  • 令牌传递机制
    • 令牌的产生与传递:网络中有一个特殊的帧,即“令牌”,它在环中不断地单向传递。令牌通常处于空闲状态,表示网络上的任何工作站都可以使用网络进行数据传输。
    • 等待令牌:当某个工作站想要发送数据时,它必须等待令牌的到来。只有持有令牌的工作站才有权发送数据帧。
    • 发送数据:当工作站收到令牌并检测到其处于空闲状态时,该工作站可以将令牌的状态改为忙,并附加上要发送的数据,从而将数据帧发送到环中。
  • 数据帧的传输与接收
    • 数据帧的传输:数据帧沿着环形网络继续传递,每个工作站接收到数据帧后都会检查其目的地址。
    • 如果目的地址与工作站自己的地址不匹配,工作站将数据帧原封不动地转发给下一个工作站。
    • 如果目的地址与工作站的地址匹配,该工作站会复制数据帧的内容,并将其从网络上移除,同时处理接收到的数据。
    • 数据帧的确认:发送数据的工作站在数据帧完成一圈并返回时,会检查确认信息,以确保数据被正确接收。
  • 令牌的回收与再生
    • 数据帧的移除与令牌恢复:一旦数据帧被接收并验证无误,原始发送工作站会从网络上移除该数据帧,并重新生成一个空闲状态的令牌,以便其他工作站可以使用。
    • 令牌的继续传递:恢复空闲状态的令牌将继续在环中传递,为下一个想要发送数据的工作站提供机会。
  • 冲突解决与数据完整性
    • 冲突解决:由于令牌环网采用令牌传递机制,因此网络中不会出现多个工作站同时发送数据导致的冲突问题。这种机制确保了数据传输的公平性和有序性。
    • 数据完整性:为了确保数据在环中传输的完整性,每个数据帧都会在传输过程中逐跳检验。如果检验发现错误,数据帧将被丢弃,并由发送节点重发。
  • 令牌环网的特点
    • 同一时刻,环上只有一个数据帧在传输(即只有一个节点在传输数据)。

网络传输基本流程

数据包封装和分用

  • 不同的协议层对数据包有不同的称谓,在应用层叫request/response,在传输层叫做数据段,在网络层叫做数据报,在链路层叫做数据帧
  • 应用层数据通过协议栈发到网络上时,每层协议都要加上一个数据首部(header)(协议报头),称为封装。除去每一层的协议报头,剩余的叫叫做有效载荷
  • 首部信息中包含了一些类似于首部有多长, 载荷有多长, 上层协议是什么等信息。
  • 数据封装成帧后发到传输介质上,到达目的主机后每层协议再剥掉相应的首部(报头与有效载荷分离), 根据首部中的 “上层协议字段” 将数据交给对应的上层协议处理,称为解包与分用

下图为数据封装的过程

下图为数据分用的过程

网络传输流程图

在这里插入图片描述

局域网通信(同一个网段内的两台主机进行文件传输)

在这里插入图片描述
在这里插入图片描述

跨网络转发

跨网段的主机的文件传输. 数据从一台计算机到另一台计算机传输过程中要经过一个或多个路由器.
在这里插入图片描述

网络中的地址管理

认识IP地址IP协议有两个版本, IPv4和IPv6. 我们整个的课程, 凡是提到IP协议, 没有特殊说明的, 默认都是指IPv4

  • IP地址是在IP协议中, 用来标识网络中不同主机的地址;
  • 对于IPv4来说, IP地址是一个4字节, 32位的整数;
  • 我们通常也使用 “点分十进制” 的字符串表示IP地址, 例如 192.168.0.1 ; 用点分割的每一个数字表示一个字节, 范围是 0 - 255;

认识MAC地址

  • MAC地址用来识别数据链路层中相连的节点;
  • 长度为48位, 及6个字节. 一般用16进制数字加上冒号的形式来表示(例如: 08:00:27:03:fb:19)
  • 在网卡出厂时就确定了, 不能修改. mac地址通常是唯一的(虚拟机中的mac地址不是真实的mac地址, 可能会冲突; 也有些网卡支持用户配置mac地址).

后面我们详细谈论数据链路层的时候,会谈 mac帧协议,此处我们做一个了解即可。
在这里插入图片描述
局域网通信的过程中,主机对收到的报文确认是否是发给自己的,是通过目标mac地址判定。

对比 IP地址和 Mac地址的区别
  • IP地址在整个路由过程中,一直不变(目前,我们只能这样说明,后面在修正)
  • Mac地址一直在变

目的 IP是一种长远目标,Mac是下一阶段目标,目的 IP是路径选择的重要依据,mac地址是局域网转发的重要依据。

提炼 IP网络的意义和网络通信的宏观流程

在这里插入图片描述


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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Java基础笔记1】Java基础语法

目录 一、Java简介 二、JDK和Java初体验 三、配置环境变量 四、IDEA快捷键 五、Java语法基础 1. 注释 2. 字面量 3. 变量 4. 关键字和标识符 5. 变量详解 a. 数值数据在计算机中的存储​编辑 b. 文本、图片、音频等数据在计算机中的存储 c. 八进制和十六进制 6. 数据类型 a. …

Java多线程(1)—线程基础

一、关于线程 1.1 简介 计算机线程(Thread)是操作系统能够进行运算调度的最小单位。线程的优势在于提高了程序的效率和响应能力,尤其在处理 I/O 操作或多任务时。多线程编程能够充分利用多核处理器的计算能力,达到更高的性能。 …

electron-updater实现electron全量版本更新

在 Electron 应用中使用 electron-updater 来实现自动更新功能时,通常你会在一个专门的模块或文件中管理更新逻辑。如果你想要使用 ES6 的 import 语法来引入 electron-updater,你需要确保你的项目已经配置好了支持 ES6 模块的构建工具(如 We…

【Fastapi】参数获取,json和query

【Fastapi】参数获取,json和query 前言giteegithub query形式json传递同步方法使用json 前言 花了半个月的时间看了一本小说,懈怠了…今天更新下fastapi框架的参数获取 gitee https://gitee.com/zz1521145346/fastapi_frame.git github https://git…

828华为云征文|Flexus云服务器X实例实践:部署Alist文件列表程序

828华为云征文|Flexus云服务器X实例实践:部署Alist文件列表程序 引言一、Flexus云服务器X实例介绍1.1 Flexus云服务器X实例简介1.2 主要使用场景 二、购买Flexus云服务器X实例2.1 购买规格参考2.2 查看Flexus云服务器X实例状态 三、远程连接Flexus云服务…

python是什么语言写的

Python是一种计算机程序设计语言。是一种面向对象的动态类型语言。现今Python语言很火,可有人提问,这么火的语言它的底层又是什么语言编写的呢? python是C语言编写的,它有很多包也是用C语言写的。 所以说,C语言还是很…

二分查找算法(5) _山脉数组的峰顶索引

个人主页:C忠实粉丝 欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 C忠实粉丝 原创 二分查找算法(5) _山脉数组的峰顶索引 收录于专栏【经典算法练习】 本专栏旨在分享学习算法的一点学习笔记,欢迎大家在评论区交流讨论💌…

二分算法——优选算法

个人主页:敲上瘾-CSDN博客 个人专栏:游戏、数据结构、c语言基础、c学习、算法 本章我们来学习的是二分查找算法,二分算法的应用非常广泛,不仅限于数组查找,还可以用于解决各种搜索问题、查找极值问题等。在数据结构和算…

海外仓商品退换货管理:选择系统为何至关重要?

随着跨境电商的蓬勃发展,退换货问题成为了卖家们不得不面对的挑战。退换货处理不仅繁琐,而且对效率和服务质量的要求极高。因此,许多卖家选择海外仓来简化退换货流程。然而,海外仓在处理退换货时同样面临诸多难题,涉及…

openeuler 22.03 lts sp4 使用 kubeadm 部署 k8s-v1.28.2 高可用集群

文章目录 [toc]废话篇这篇文章什么时候写的为什么是 openeuler为什么是 22.03 lts sp4高可用架构题外话 干活篇环境介绍系统初始化相关关闭防火墙关闭 selinux关闭 swap开启内核模块开启模块自动加载服务 sysctl 内核参数调整清空 iptables 规则安装各种依赖和工具修改 .bashrc…

【uni-app】小兔鲜项目-基础架构-请求和上传文件拦截器

注意事项 uni.request 请求封装 请求和上传文件拦截器 uniapp 拦截器: uni.addInterceptor 接口说明:接口文档 实现需求 拼接基础地址设置超时时间添加请求头标识添加 token 参考代码 // src/utils/http.ts// 请求基地址 const baseURL https://pca…

ArcGIS Desktop使用入门(三)图层右键工具——拓扑(下篇:地理数据库拓扑)

系列文章目录 ArcGIS Desktop使用入门(一)软件初认识 ArcGIS Desktop使用入门(二)常用工具条——标准工具 ArcGIS Desktop使用入门(二)常用工具条——编辑器 ArcGIS Desktop使用入门(二&#x…

浅析OceanBase数据库的向量化执行引擎

本篇博客是偏数据库系统概念性的内容,不会深入到 OceanBase 中各个算子和表达式的在向量化中的详细设计和实现。 背景 为了提升OceanBase社区版用户解决问题的效率,OceanBase官方不久前推出了《OceanBase 从入门到实践》系列课程。在第七期直播课程后&a…

Llama 3.1 技术研究报告-2

3.3 基础设施、扩展性和效率 我们描述了⽀持Llama 3 405B⼤规模预训练的硬件和基础设施,并讨论了⼏项优化措施,这些措施提⾼了训练效率。 3.3.1 训练基础设施 Llama 1和2模型在Meta的AI研究超级集群(Lee和Sengupta,2022&#x…

软件设计师:01计算机组成与结构

文章目录 一、校验码1.奇偶校验码2.海明码3.循环冗余检验码 二、原码反码补码移码三、浮点数表示法1.浮点数相加时 四、寻址方式五、CPU1.访问速度2.cpu的组成 六、RISC和CISC&#xff08;<font color red>只用记住不同就可以&#xff09;七、冗余技术1.结构冗余2.信息冗…

2018年国赛高教杯数学建模D题汽车总装线的配置问题解题全过程文档及程序

2018年国赛高教杯数学建模 D题 汽车总装线的配置问题 一&#xff0e;问题背景   某汽车公司生产多种型号的汽车&#xff0c;每种型号由品牌、配置、动力、驱动、颜色5种属性确定。品牌分为A1和A2两种&#xff0c;配置分为B1、B2、B3、B4、B5和B6六种&#xff0c;动力分为汽油…

2024年陕西省安全员B证证模拟考试题库及陕西省安全员B证理论考试试题

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 2024年陕西省安全员B证证模拟考试题库及陕西省安全员B证理论考试试题是由安全生产模拟考试一点通提供&#xff0c;陕西省安全员B证证模拟考试题库是根据陕西省安全员B证最新版教材&#xff0c;陕西省安全员B证大纲整理…

C语言 | Leetcode C语言题解之第424题替换后的最长重复字符

题目&#xff1a; 题解&#xff1a; int characterReplacement(char* s, int k) {int num[26];memset(num, 0, sizeof(num));int n strlen(s);int maxn 0;int left 0, right 0;while (right < n) {num[s[right] - A];maxn fmax(maxn, num[s[right] - A]);if (right - …

Oracle日常运维(一线DBA必备技能)(二)

List item 本篇接上篇&#xff0c;接着介绍Oracle DB几类重要文件的日常管理&#xff0c;和作为DBA需要掌握针对这些文件的哪些操作。本篇将重点介绍参数文件和控制文件&#xff0c;数据文件是和业务息息相关的文件&#xff0c;在后续的数据库备份恢复&#xff0c;优化篇将会针…

【Spring Cloud Alibaba】Nacos

【Spring Cloud Alibaba】Nacos 1. 什么是Nacos&#xff0c;它都能干什么&#xff1f;1.1 注册中心演变及其思想1.2 Nacos Discovery1.3 远程调用流程图1.4 一个微服务的流程1.4 常用注册中心对比 2. Nacos Server部署3. Nacos Client搭建附录 1. 什么是Nacos&#xff0c;它都能…