【计算机网络】数据链路层

跨网络传输的本质:由许多局域网(子网)转发的结果

要彻底理解跨网络转发,首先要理解 -> 局域网中报文的转发原理!

​​​​​​​

一、以太网帧格式

1.报头的含义

源地址/目的地址:源MAC地址和目的MAC地址

帧协议类型:有三种值,分别是IP、ARP、RARP

CRC:CRC校验码

2.解包/分用

如何解包:定长报头

如何分用:通过报头中的类型字段

二、局域网转发原理

局域网中所有的主机其实都能收到对应的报文,只不过大部分主机在自己的数据链路层通过对比MAC数据帧中的目标mac地址和自己的mac地址是否相等,来决策要不要在进行后续处理!

在局域网中,任何时刻只能有一个主机发送消息,如果同时发送多个消息,就会导致局域网中的数据发生碰撞 -> 所以一个局域网也叫一个碰撞域

通过碰撞检测和碰撞避免算法就可以保证任何时刻只有一台主机发消息

交换机的作用:划分碰撞域;因为有碰撞域,发送数据的时候还是短一些好 -> MTU

三、MTU

MTU:以太网最大传输单元(不同的网络类型MTU的值也不同)

1.MTU对IP协议的影响

由于数据链路层MTU的限制,对于较大的数据包 -> IP协议要进行分片

2.MTU对TCP协议的影响

一个TCP数据报也不能无限大,他也要受限于MTU,TCP有效载荷的最大长度称为MSS

四、ARP协议

1.ARP协议的作用

ARP协议:建立了主机IP地址和MAC地址的映射关系(根据IP地址得到目标主机的MAC地址)

2.ARP协议的格式

①硬件类型:链路层网络类型,1为以太网

②协议类型:要转换的地址类型,0x0800为IP地址

③硬件地址长度:对于以太网地址为6字节(MAC地址长度)

④协议地址长度:对于和IP地址为4字节(IP地址长度)

⑤op:1表示ARP请求;2表示ARP应答

⑥发送端以太网地址/发送端IP地址:发送端的MAC地址和IP地址

⑦目的以太网地址/目的IP地址:接收端的MAC地址和IP地址

3.ARP协议工作流程

ARP的结果是会被缓存起来的(分钟级的缓存)

五、RARP协议

根据IP地址得到目标主机的MAC地址

相关推荐
陈随易35 分钟前
FFmpeg 9.0 发布,代号 Lei,音视频处理再升级
前端·后端·程序员
爱丶狸1 小时前
Grafana_Zabbix_ImageRenderer_部署与前端操作手册
linux·前端·zabbix·grafana·kylin
隐积1 小时前
3.1.7.Qt容器大家族(3):QVariant——万能盒子
开发语言·qt
阿里云云原生2 小时前
可用性从 99.9% 跃升至 99.995%:畅捷通如何用 AI 重塑运维底座?
运维·网络·人工智能
k4m7v2pz2 小时前
把 Bevy 0.14 游戏移植到 R36S 掌机:一场与“无窗口系统“的搏斗
linux·rust·bevy·r36s·rk3326·开源掌机
kisloy2 小时前
【爬虫入门第13讲】Scrapy 框架深度解析(四)核心配置与自定义扩展
网络·爬虫·scrapy
Tri_Function4 小时前
动态规划DP1(c++)
c++
木子欢儿4 小时前
Intel 架构的 MacBook Pro 运行 Linux 发热量高解决
linux·运维·服务器
凌虚4 小时前
面向 MySQL 用户的 PostgreSQL 快速上手指南
数据库·后端·架构
夜雪一千4 小时前
TCP数据包长什么样?拆解TCP报文头部结构
网络·网络协议·tcp/ip