数据链路层(以太网简介)

一.以太网数据帧结构:

        目的地址,源地址,类型这三个被称为帧头,数据则被称为载荷,CRC则被称为帧尾(校验和)

二.数据帧结构分析

1.目的地址和源地址

 i.地址解释

        这两个地址指的是mac地址,而不是IP地址。二者的区别在于:mac地址是使用6个字节表示的,而IP地址是使用4个字节表示的,空间范围比IP地址大了6倍多。

        mac地址当前仍然可以给每个设备分配唯一一个mac地址,一般一个网卡,在出厂的时候,mac地址就被分配好了,就写死了。

        mac地址,也可以作为设备的身份标识。

ii.地址的使用和表示区别

        mac地址使用在数据链路层,用来表示两个相邻设备之间的数据转发,IP地址使用在网络层,表示整个转发流程,进行路径的规划。

举个例子:
(1).从四川 => 吉林省的白城市安广镇,第一步需要规划路径(网络层)

第一种方案:四川-> 北京 -> 长春 -> 白城 -> 安广;

第二种方案:四川-> 北京 -> 沈阳 -> 白城 -> 安广;

第三种方案:四川 -> 长春 -> 白城 -> 安广;

等等......

(2).选择第一种方案并且执行第二步来解释其中的过程原理

实施方案:

四川 -> 北京时:源IP:四川 目的IP:安广,源mac:四川,目的mac:北京,坐飞机;

北京 -> 长春时:源IP:四川 目的IP:安广,源mac:北京,目的mac:长春,坐高铁;

长春 -> 白城:源IP:四川 目的IP:安广,源mac:长春,目的mac:白城,坐大巴;

白城 ->安广时:源IP:四川 目的IP:安广,源mac:白城,目的mac:安广,坐出租车。

        则达到目的地,这里的过程中不考虑NAT机制,由此也说明了,以太网数据帧里面的mac地址,随着转发的过程,时刻发生改变,每经过一个交换机/路由器都会产生上述的变化。

2.类型

        描述了载荷中数据的类型,其中类型的数据是16进制,ARP和RARP是不传输业务的数据,只给转发功能提供辅助的措施。

i.ARP数据包 

         ARP数据报/ARP协议,可以认为是让当前设备获取到周围设备IP地址和mac地址之间的映射关系。

        IP协议在路由转发的过程时,在这个过程中都是拿着IP地址来进行查路由表的,由此得到的是网络接口(抽象概念),具体的说就是传输给哪个mac地址的设备,这个环节中就涉及到了IP地址转换成mac地址的过程。

        ARP协议就是用来建立上述的映射关系,当前设备接入网络的时候,就会往广播地址发ARP报文,收到ARP请求的设备就会返回ARP响应,响应就会告知自己的IP和mac地址。

3.载荷

        载荷上面数据表示的1500个字节的意思是 :数据链路层数据帧的最大载荷长度为1500字节,相当于 1.5kb,这个数字就被称为MTU。

        MTU和硬件直接相关,不同的硬件设备,对应到了不同的数据链路层协议,对应到了不同的MTU。

        以太网非常的短,并且1.5也非常的小,毕竟TCP/UDP至少都是64kb,此处的MTU的限制,就会对上层协议产生直接的影响,也就是IP协议。

        虽然IP协议能够拆包组包,但实际上,IP协议更多的是应对MTU的限制,当一个IP数据报,达到了1500以上的时候,就会自动拆包了。

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

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

相关文章

国庆游玩计划安排

地点:上海前滩四方城 地点:船长酒吧 地点:上海🏛️外滩华尔道夫

httpsok-v1.17.0-SSL通配符证书自动续签

🔥httpsok-v1.17.0-SSL通配符证书自动续签 介绍 httpsok 是一个便捷的 HTTPS 证书自动续签工具,基于全新的设计理念,专为 Nginx 、OpenResty 服务器设计。已服务众多中小企业,稳定、安全、可靠。 一行命令,一分钟轻…

HTML基础用法介绍一

VS code 如何快速生成HTML骨架注释是什么?为什么要写注释?注释的标签是什么?标题标签段落标签换行标签与水平线标签 (都是单标签)文本格式化标签图片标签超链接标签音频标签视频标签 🚘正片开始 VS code 如何快速生成…

深度学习每周学习总结J1(ResNet-50算法实战与解析 - 鸟类识别)

🍨 本文为🔗365天深度学习训练营 中的学习记录博客🍖 原作者:K同学啊 | 接辅导、项目定制 目录 0. 总结1. 设置GPU2. 导入数据及处理部分3. 划分数据集4. 模型构建部分5. 设置超参数:定义损失函数,学习率&a…

STM32+PWM+DMA驱动WS2812 —— 2024年9月24日

一、项目简介 采用STM32f103C8t6单片机,使用HAL库编写。项目中针对初学者驱动WS2812时会遇到的一些问题,给出了解决方案。 二、ws2812驱动原理 WS2812采用单线归零码的通讯方式,即利用高低电平的持续时间来确定0和1。这种通信方式优点是只需…

Vue 学习

vue 核心语法 <!DOCTYPE html> <html> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Vue 核心语法测试</title> </head><body&…

外包功能测试干了4年,技术退步太明显了。。。。。​

先说一下自己的情况&#xff0c;本科生&#xff0c;18年通过校招进入武汉某软件公司&#xff0c;干了差不多4年的功能测试&#xff0c;今年中秋&#xff0c;感觉自己不能够在这样下去了&#xff0c;长时间呆在一个舒适的环境会让一个人堕落!而我已经在一个企业干了四年的功能测…

信号用wire类型还是reg类型定义

wire类型就是一根线&#xff0c;线有两端&#xff0c;一端发生改变&#xff0c;经过线传递的信号当然也会发生改变&#xff0c;reg类型则不同&#xff0c;可以把reg类型理解为存储数据的寄存器&#xff0c;当满足一定条件时&#xff0c;数值才被激活发生改变。 那么&#xff0…

【AI论文精读1】针对知识密集型NLP任务的检索增强生成(RAG原始论文)

目录 一、简介一句话简介作者、引用数、时间论文地址开源代码地址 二、摘要三、引言四、整体架构&#xff08;用一个例子来阐明&#xff09;场景例子&#xff1a;核心点&#xff1a; 五、方法 &#xff08;架构各部分详解&#xff09;5.1 模型1. RAG-Sequence Model2. RAG-Toke…

【Conda】修复 Anaconda 安装并保留虚拟环境的详细指南

目录 流程图示1. 下载 Anaconda 安装程序2. 重命名现有的 Anaconda 安装目录Windows 操作系统Linux 操作系统 3. 运行新的 Anaconda 安装程序Windows 操作系统Linux 操作系统 4. 同步原环境使用 robocopy 命令&#xff08;Windows&#xff09;使用 rsync 命令&#xff08;Linux…

C++11新特性(基础)【2】

目录 1.范围for循环 2.智能指针 3.STL中一些变化 4.右值引用和移动语义 4.1 左值引用和右值引用 4.2 左值引用与右值引用比较 4.3 右值引用使用场景和意义 4.4 右值引用引用左值及其一些更深入的使用场景分析 4.5 完美转发 1.范围for循环 int main() {int array[10] { 1,2,3,4…

超声波清洗机哪个品牌的最好?爆款超声波清洗机测评大揭秘

面对超声波清洗机的选购疑虑&#xff0c;许多朋友或是担心其效用不实&#xff0c;落入消费陷阱&#xff0c;或是已经遭遇了不尽如人意的产品体验。对此&#xff0c;我分享的经验或许能为你指点迷津&#xff01;基于亲测超过二十几款市面上热门的超声波眼镜清洗机&#xff0c;我…

Rust 做桌面应用这么轻松?Pake 彻底改变你的开发方式

Rust 做桌面应用这么轻松&#xff1f;Pake 彻底改变你的开发方式 网页应用装不下了&#xff1f;别担心&#xff0c;Pake 用 Rust 帮你打包网页&#xff0c;快速搞定桌面应用。比起动不动就 100M 的 Electron 应用&#xff0c;它轻如鸿毛&#xff0c;功能却一点都不少&#xff0…

JavaScript 数组方法

数组(array)是按次序排列的一组值。每个值的位置都有编号(从0开始)&#xff0c;整个数组用方括号表示。两端的方括号是数组的标志。 var a["a","b","c"]; 除了在定义时赋值&#xff0c;数组也可以先定义后赋值。 var arr[];arr[1]"a"…

数据流和数据流处理技术

一数据流 首先明确数据流概念&#xff1a;数据流是连续不断生成的、快速变化的无界数据序列 数据流类型&#xff1a; 数据流大致可以分为四种类型 1.连续型数据流&#xff1a;不断地产生数据&#xff0c;数据稳定速度输入系统。 2.突发型数据流&#xff1a;在某特定时间或…

【通配符】粗浅学习

1 背景说明 首先要注意&#xff0c;通配符中的符号和正则表达式中的特殊符号具备不同的匹配意义&#xff0c;例如&#xff1a;*在正则表达式中表示里面是指匹配前面的子表达式0次或者多次&#xff0c;而在通配符领域则是表示代表0个到无穷个任意字符。 此外&#xff0c;要注意…

IDEA 配置 Git 详解

本文将介绍在IntelliJ IDEA 中如何配置Git 没有安装配置 Git 的可以参考我的这篇文章&#xff1a;安装配置 Git 一、操作环境及准备 1.win 10 2.已安装且配置了Git 3.有Gitee账户 4.安装了IntelliJ IDEA 2023.2.1 5.全程联网 二、配置步骤 2.1 配置git 1.采用全局设置&…

基于SpringBoot+Vue+MySQL的装修公司管理系统

系统展示 管理员后台界面 员工后台界面 系统背景 随着信息技术的快速发展&#xff0c;装修行业正面临数字化转型的关键时刻。传统的装修管理方式存在信息管理混乱、出错率高、信息安全性差等问题&#xff0c;已无法满足现代市场的需求。因此&#xff0c;开发一套高效、便捷的装…

Gaussian-splatting 项目环境配置笔记(Win11)

如果你是配置别的项目的过程中用到了3D GS相关的内容&#xff0c;然后这部分内容环境一直配不好&#xff0c;也可以跟随这个博客配一下环境&#xff0c;配完后起码3D GS部分就搞定了。 文章目录 概述项目链接&#xff1a;VS2019直接下载链接CUDA不同版本下载链接安装Condasetup…

谷歌收录批量查询,谷歌收录批量查询的简单方法

谷歌收录批量查询是网站管理员和SEO优化人员常见的需求&#xff0c;以下提供几种简单且高效的批量查询方法&#xff1a; 一、使用Google Search Console&#xff08;谷歌搜索控制台&#xff09; 注册并验证网站&#xff1a; 首先&#xff0c;确保你已经在Google Search Conso…