网络原理(9)-数据链路层

数据链路层:微观角度,关心两个相邻节点具体怎么传输

1.以太网(Ethernet)

"以太"是一个经典物理学的假想介质:当时物理学家认为,波必须靠介质传播。声波靠空气,水波靠水,那么光可以在真空宇宙中传播,宇宙中一定有一种介质,把它称为"以太",光在以太里震动传播,就称为"光以太"。

迈克尔逊------莫雷实验:否定了"以太"这种介质在真空的存在。

以太网的名字就是借用"光以太"这个比喻,当年物理学家假想以太充满整个空间,承载光波;

梅特卡夫借用这个意象,共享的同轴电缆就像"以太",承载比特信号,广播给所以连在上面的主机。所以就叫以太网。

网线也叫做以太网线。

wifi:数据链路层另一种体系

5G:另一套协议体系

2.以太网帧

源地址和目的地址是网卡的硬件地址,即MAC地址(物理地址),长度是48位,可表示2^48个地址。

到目前为止,MAC地址不需要动态分配也不需要NAT,直接在网卡生产的时候就把MAC地址写死。MAC地址还可以作为一个电脑的身份标识。

MAC地址使用16进制表示,通常用"-"或":"分隔开。

类型指的是:中间的数据包载荷是什么格式的

帧尾是CRC校验码,对数据进行校验。

1.帧协议类型

0x0800(16进制):数据区是IP包

ARP

0x0806:帧里面是ARP(Address Resolution Protocal地址解析协议)报文。ARP报文本身只有28字节,以太网规定整个帧的数据部分最少要46字节,所以后面加了PAD(padding)填充字段。

ARP协议可以通过IP地址得到IP地址对应的MAC地址。路由器通过广播发送ARP数据报,收到ARP请求的设备,返回ARP响应,响应就是"IP地址+MAC地址"。

0x8035:帧里面是RARP报文。PAD填充

转发表

网络层里维护着一张转发表。

IP协议转发,查询路由表,确定当前IP数据报走LAN还是WAN,LAN可能有多个网口,具体要走哪个,就要靠查询转发表。

转发表能记录到和它相连的设备,每个设备的IP和MAC地址是什么,构建好转发表之后,后续传输数据,就可以拿着目的MAC查询转发表。

3.MTU(Maximum Transmission Unit最大传输单元)

MTU只包含数据部分。

MTU是数据链路层对载荷长度的最大限制。MTU是1500字节。

如果IP数据报携带较长的载荷,就会触发拆包组包。

相关推荐
惊讶的猫2 小时前
意图识别置信度和检索重排的分数
java
caoerzhong3 小时前
仓库管理数字化趋势解读:JeeWMS 开源 Java WMS 视角下的五个演进方向
java·开源
程序员JerrySUN3 小时前
Jetson Edge AI 实战01:Nano、Xavier、Orin 怎么选?Jetson 硬件选型详解【视频讲解】
java·数据库·redis·安全·mybatis
Joy T4 小时前
Spring AI 2.0 Agent 进阶:Memory、State 与 Context Engineering 常见技术全景
java·人工智能·后端·spring·agent入门·agent state
估值探索者4 小时前
【Python量化系统工程化 #08】关了 SSH 就停?systemd 让脚本开机自启 + 异常自动拉起
java·c++·人工智能·分类·数据挖掘
天若有情6734 小时前
C++花式魔改!手写头文件复刻Java语法,彻底打破编码思维定式
java·c++·语言做语言·jac++
西峰u6 小时前
Java单例模式|从基础到多线程安全
java·java单例模式
ClinicTech6 小时前
实验室洗瓶机的清洗系统架构与自动化控制解析
java·python
linmengmeng_13146 小时前
【总结】MyBatis-Plus批量插入与清表的正确姿势
java·spring boot·mysql·mybatis