以太网详细解析

news2024/9/23 17:15:47

数据链路层:考虑相邻两个节点之间的传输(通过网线/光纤/无线直接相连的两个设备)

这里以数据链路层其中最知名的就是“以太网”

以太网帧格式:

 以太网数据帧=帧头+载荷+帧尾

帧头:目的地址、源地址、类型

目的地址和源地址:此处不是使用IP地址表示了,而是搞了一个mac地址

mac地址是物理地址(和IP地址完全独立的,另外一套地址体系)有6字节大小(相比IPv4地址大很多)当前每个设备都会有唯一的mac地址,此处mac地址不是动态分配的,而是网卡出厂的时候就被设置好的

6字节就2^48 = 2^16   *   2^32=6w * 42亿

载荷:完整的IP数据报

试问:都已经有了IP地址为啥还要mac地址

假设只有一套地址体系也就够了,但是,在最初大佬们研发初代的协议栈的时候,研发网络层协议的大佬和研发数据链路层协议的大佬都各自独立研发,导致现在此处使用了两种地址相互配合

那使用上IP地址和mac地址针对什么??如何相互配合??

IP用来描述整个传输过程的起点终点,mac则是用来描述两个相邻节点,起点终点...

 IP描述的是 : 开始位置 与 结束位置  规划最好的路线

mac描述的是 :当前阶段的 任务 相邻节点的位置

 MTU对TCP协议的影响:TCP的一个数据报也不能无限大,还是受制于MTU,TCP的单个数据报的最大消息长度称为:MSS

TCP在建立连接的过程中,通信双方会进行MSS协商,最理想的情况下,MSS的值正好是在IP不会被分片处理的最大长度(这个长度仍然是受制于数据链路层的MTU);双方在发送SYN的时候会在TCP头部写入自己支持的MSS值;然后双方得知对方的MSS值之后,选择较小的作为最终MSS;MSS的值就是在TCP首部的40字节变长选项中

 MTU是一个数据链路层的数据帧,能够承载数据的最大长度(载荷长度)

载荷具体多长和使用的物理介质有很大关系,当然也和数据链路层使用的协议有很大关系,像以太网协议,MTU中1500字节

MTU引起了IP这个协议来进行分包组包,IP的分包组包通常不是根据这个IP最大长度64k来分的,一般情况下,数据链路层的MTU都比64kb要小

DNS:

DNS:是应用层的一个协议 :域名解析系统

网络上的服务器要访问它,需要的是IP地址,因为IP地址太长太杂,后来使用一些简单的单词构成字符串来表示这个地址,每个域名都对应了一个/N个IP地址,既然如此就需要能够把域名和IP地址给对应上

最原始的做法,是使用一个hosts这个文件(现在电脑上还有这个文件,仍然好使),类似于哈希表一样,建立了IP和域名的映射关系

如果需要访问某个域名的时候,就自动请求一下DNS服务器,DNS服务器就帮你进行查询,把得到的结果返回给你(此处结果就是具体的IP地址)

如果你电脑的DNS,服务器配置的不对,或者DNS服务器挂了,此时你就会出现一个典型现象:APP可以动,但是网页不能用

一般我们自用的电脑都是自动获得DNS服务器地址(如何查看)

 当前要求网站的域名不能重复,(保证唯一)全世界这么多网站,那就需要设定好明文规定针对域名进行分级

以  pic.sogou.com 为例:

分为一级域名、二级域名、三级域名

.com 是一级域名 .com 就是“公司”缩写;一级域名不是只有一个,还有其他的种类,org,cn,us等

.sougou 是二级域名 ,表示搜狗这个公司

.pic 是三级域名 

 域名不重复概念边界???

随着域名的分级,DNS服务器也分了级别,有一级域名的DNS服务器,还有二级域名,三级域名;每级域名都可以重复,但是不能同时让每级域名都重复,有一级域名不重复即可;

查询DNS服务器也是分级来查询的,DNS服务器也是分成一级域名服务器,二级域名服务器

针对域名来说不是只有三级,还可以不断向下分级,一般来说我们常见到的就是三级域名或者四级域名;

扩展:如果想要注册一个网站,申请一个域名,把你的域名和服务器的IP地址关联起来, 把你的数据写到DNS服务器里

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

51单片机简易电阻电感电容RLC测量仪仿真设计

51单片机简易电阻电感电容RLC测量仪仿真( proteus仿真程序讲解视频) 仿真图proteus7.8及以上 程序编译器:keil 4/keil 5 编程语言:C语言 设计编号:S0040 51单片机简易电阻电感电容RLC测量仪仿真51单片机最小系统的相关知识复位…

【第二阶段:java基础】第13章:泛型(P553-P568):自定义泛型、泛型的集成和通配符、Junit

本系列博客是韩顺平老师java基础课的课程笔记,B站:课程链接,吐血推荐的一套全网最细java教程,获益匪浅! 韩顺平P553-P5681. 泛型的理解和好处2. 泛型的定义3. 泛型的语法4. 泛型的细节5. 自定义泛型6. 泛型继承和通配符…

62 一次 Promotion failed 的调试

前言 最近 有一个想法就是, 调试一下 DefNewGeneration 里面的晋升失败的情况 呵呵 对于这块的代码上面, 看着感觉有一些疑问的地方, 因此想通过 实际的调试, 来验证一下 实际的情况 然后 之前写了一个用例, 但是 和心中的期望差距甚大, 当然 主要的问题 还是自己对于 细…

CSDN 算法技能树 蓝桥杯-基础 刷题+思考总结

切面条-蓝桥杯-基础-CSDN算法技能树https://edu.csdn.net/skill/algorithm/algorithm-530255df51be437b967cbc4524fe66ea?category188 目录 切面条 大衍数列 门牌制作 方阵转置 微生物增殖 成绩统计 星系炸弹 判断闰年的依据: 特别数的和 *日志统计*(双指…

结构体与引用

1.结构体基本概念结构体属于用户自定义的数据类型,允许用户存储不同的数据类型2.结构体定义和使用语法: struct 结构体 { 结构体成员列表 };通过结构体创建变量的方式有三种:struct 结构体名 变量名struct 结构体名 变量名 { 成员1值,成员2值...}定义结构…

《爆肝整理》保姆级系列教程python接口自动化(十八)--重定向(Location)(详解)

简介   在实际工作中,有些接口请求完以后会重定向到别的url,而你却需要重定向前的url。URL主要是针对虚拟空间而言,因为不是自己独立管理的服务器,所以无法正常进行常规的操作。但是自己又不希望通过主域名的二级目录进行访问&…

分布式session共享解决方案

分布式session共享解决方案 1.分布式 Session 问题 示意图 解读上图,假如我们去购买商品 当 Nginx 对请求进行负载均衡后, 可能对应到不同的 Tomcat比如第 1 次请求, 均衡到 TomcatA, 这时 Session 就记录在 TomcatA, 第 2 次请求, 均衡到 TomcatB, 这…

【Mysql8.0取消严格区分大小】已安装的mysql8.0取消严格区分大小写及mysql8.0重装与赋权限详解(2023年亲测有效)

【写在前面】其实故事要从my.cnf为空,且lower-case-table-names为0开始,linux环境下mysql8.0及其之后的版本对表名和数据库是严格区分大小写的,从而导致我们运行项目时候会报错Table xxx.QRTZ_LOCKS doesnt exist。但是我已经装好了mysql8.0咋…

17.CSS伪类

举一个简单的例子来说明什么是伪类&#xff1f; 从之前的代码中&#xff0c;如下图&#xff0c;我们像给这两个列表中的某一列单独设置样式&#xff0c;我们该如何做呢&#xff1f; 我们肯定会选择在li标签上添加class去实现&#xff0c;如下 开始标记结束标记实际元素 <…

python--matplotlib(2)

前言 Matplotlib画图工具的官网地址是 http://matplotlib.org/ Python环境下实现Matlab制图功能的第三方库&#xff0c;需要numpy库的支持&#xff0c;支持用户方便设计出二维、三维数据的图形显示&#xff0c;制作的图形达到出版级的标准。 实验环境 Pycharm2020.2.5社区版,w…

算法练习-链表(二)

算法练习-链表&#xff08;二&#xff09; 文章目录算法练习-链表&#xff08;二&#xff09;1. 奇偶链表1.1 题目1.2 题解2. K 个一组翻转链表2.1 题目2.2 题解3. 剑指 Offer 22. 链表中倒数第k个节点3.1 题目3.2 题解3.2.1 解法13.2.2 解法24. 删除链表的倒数第 N 个结点4.1 …

中国智能物流行业市场规模及未来发展趋势

中国智能物流行业市场规模及未来发展趋势编辑中国智能物流行业市场规模正在快速增长。随着电子商务、物流配送、物联网等行业的发展&#xff0c;物流行业需求不断提高&#xff0c;智能物流产品应运而生。智能物流行业主要通过智能化管理、智能路径规划、智能定位、物流配送等方…

Java特性之设计模式【工厂模式】

一、工厂模式 概述 工厂模式&#xff08;Factory Pattern&#xff09;是 Java 中最常用的设计模式之一。这种类型的设计模式属于创建型模式&#xff0c;它提供了一种创建对象的最佳方式 在工厂模式中&#xff0c;我们在创建对象时不会对客户端暴露创建逻辑&#xff0c;并且是通…

投票需要什么流程微信投票互助平台的免费投票平台搭建

“最美家政人”网络评选投票_免费小程序投票推广_小程序投票平台好处手机互联网给所有人都带来不同程度的便利&#xff0c;而微信已经成为国民的系统级别的应用。现在很多人都会在微信群或朋友圈里转发投票&#xff0c;对于运营及推广来说找一个合适的投票小程序能够提高工作效…

Java-集合(5)

Map接口 JDK8 Map接口实现子类的特点 Map和Collection是并列关系&#xff0c;Map用于保存具有映射关系的数据&#xff1a;Key-ValueMap中的key和value可以是任何引用类型的数据&#xff0c;会封装到HashMap$Node对象中Map中的key不允许重复&#xff0c;原因和HashSet一样Map…

2023年美赛MCM 问题C:预测Wordle结果 ​

目录2023年美赛MCM 问题C: 预测Wordle结果 ​1. 背景2. 要求3. 附件1. 数据文件。2. 纽约时报网站上发布的 Wordle 指南4. 参考2023年美赛MCM 问题C: 预测Wordle结果 ​ 1. 背景 Wordle 是纽约时报目前每天提供的流行拼图。 玩家尝试通过在六次或更少的尝试中猜测一个五个字母…

记录一次Binder内存相关的问题导致APP被杀的BUG排查过程

事情的起因的QA压测过程发生进程号变更&#xff0c;怀疑APP被杀掉过&#xff0c;于是开始看日志 APP的压测平台会上报进程号变更时间点&#xff0c;发现是在临晨12&#xff1a;20分&#xff0c;先大概确定在哪个日志文件去找关键信息一开始怀疑是crash&#xff0c;然后就在日志…

shiro CVE-2020-1957

0x00 前言 在之前只是单纯的复现了漏洞&#xff0c;没有记笔记&#xff0c;所以补充了这篇分析笔记。 影响版本&#xff1a;shiro < 1.5.2 0x01 环境搭建 环境用的是&#xff1a;https://github.com/lenve/javaboy-code-samples/tree/master/shiro/shiro-basic 0x02 漏…

用python实现对AES加密的视频数据流解密

密码学中的高级加密标准(Advanced Encryption Standard,AES),又称Rijndael加密法。 在做网络爬虫的时候,会遇到经过AES加密的数据,可以使用python来进行解密。 在做爬虫的时候,通常可以找到一个key,这个key是一个十六进制的一串字符,这传字符是解密的关键。所以对于…

SpringBoot2.X整合ClickHouse项目实战-从零搭建整合(三)

一、ClickHouseSpringBoot2.XMybatisPlus整合搭建 二、需求描述和数据库准备 三、ClickHouse统计SQL编写实战和函数使用 四、ClickHouseSpringBoot2.X案例-基础模块搭建 controller/request层 mapper层 model层 service层 五、ClickHouseSpringBoot2.X案例-数据统计接口 …