typora/note/Joplin导出归档/计算机网络/http/数据链路层.md

55 lines
2.9 KiB
Markdown
Raw Permalink Normal View History

2024-12-11 21:48:55 -05:00
### 数据链路层 Data Link
- 链路: 从一个节点到相邻节点到一段物理线路(有线或无线),中间没有其他交换节点(网桥和集线器除外)
- 数据链路层的数据叫 `帧`
- 不同类型的数据链路,所用的通信协议可能是不同的
- 广播信道: CSMA/CD协议比如同轴电缆集线器等组成的电路
- 点对点信道: PPP协议比如两个路由器之间的信道
### 数据链路层的3个基本问题
- 封装成帧
- 透明传输
- 差错检验
#### 封装成帧
![image](https://user-images.githubusercontent.com/39154923/135198947-d37752b6-ae36-441e-ab79-6e78b1e94272.png)
- 帧的数据部分就是网络层传递下来的数据包
- 最大传输单元MTU每一种数据链路层协议都规定了所能传送的帧的数据长度上限
- 以太网的MTU为1500字节
#### 透明传输
![image](https://user-images.githubusercontent.com/39154923/135201189-b0dc94dc-2f1d-4bc0-8f85-9cf6ea3f795f.png)
- SOH帧开始符
- EOT帧结束符
- 数据部分一旦出现帧开始或者帧结束符就进行转义
![image](https://user-images.githubusercontent.com/39154923/135202743-71b37be3-7dc6-43a7-9f65-77e16dec6267.png)
#### 差错检验
![image](https://user-images.githubusercontent.com/39154923/135203157-2bca9d97-7e0d-40f6-9bc0-b22d64bb9cf8.png)
- FCS是根据数据部分 + 首部计算得出来的
### CSMA/CD协议
- Carrier Sense Multiple Access wich Collision Detectio 载波监听多路访问/冲突检测
- 使用这个协议的网络可以称为是以太网它传输的是以太网帧格式有Ethernet V2标准IEEE的802.3标准,使用最多的是前者
- 为了能够正常检测正在发送的帧是否产生了冲突以太网的帧至少要64字节
- 用交换机组建的网络支持全双工通信不需要使用CSMA/CD协议但是传输的帧依然是以太网帧组建的网络依然可以叫以太网
- 数据的长度至少是46字节数据长度不够时数据链路层会进行填充接收端会去掉填充的字节
- 以太网帧的数据长度时46-1500整个以太网帧的长度时64-1518
![图片](https://user-images.githubusercontent.com/39154923/136492904-f1d5fd45-7ab7-489f-bf68-38617daa9bf1.png)
### 点对点PPP协议Point to Point Protocol
![image](https://user-images.githubusercontent.com/39154923/136524602-5f2fbe65-20de-4a37-a2dc-6e59903d01a2.png)
- Address字段 0xFF点到点通信不需要源mac地址和目标mac地址
- Control字段0x03 目前没有用到
- Protocal PPP协议使用到的内部协议
- 帧开始符和帧结束符 0x7E
- PPP帧封装的网络层数据和以太网帧是一样
### 物理设备
- 网卡工作在物理层负责fcs差错检验通过后会删除fcs内容
- 交换机二层交换机数据链路层知道双方的mac地址
- 集线器:工作在物理层
- 路由器三层网络层知道双方的ip地址