03.数据链路层、MAC(二层)
数据链路层又叫MAC层
- MAC:Medium Access
Control,即媒体访问控制,存在连接的
设备 to 设备
- MAC地址 是一个局域网内才有效的地址
- 目标MAC地址 只要过网关,就必定会改变
- 目标MAC地址 记录的是
下一跳的地址
MAC层 主要解决问题:
- 解决包的接收对象
- 解决包的有序、并发问题(多路访问)、制定发送规则
- 解决发送失败等故障
MAC层 协议:
* 类型: * 0x0800:IP协议 * 0x0806:ARP协议 *
0x0835:RARP协议 * 0x86DD:IPv6协议
IP 协议:
- 作用: 支持IP层协议
ARP 协议:
- 解决问题:在同一个局域网内,已知
IP 地址
,求MAC地址
的协议 - 具体操作:在局域网内发送广播包,谁的IP是这个,谁进行回答。
- 优化:本地机器会缓存ARP结果,
ARP表
RARP 协议:
- 解决问题:在同一个局域网内,已知
MAC地址
,求IP地址
的协议
二层设备:交换机
- 作用:数据包经过交换机,交换机记录对应IP ->
Mac地址的映射,形成
ARP转发表
/MAC地址表
(有过期时间) ### 二层设备:集线器
- 作用:数据包经过集线器,集线器没有MAC地址表,所有接收到的数据帧都会
广播
到所有端口
数据链路层存在的问题:
1. 如何解决多个局域网的环路问题:
- 有环的我们常称为图。通过 STP 协议将图中的环破了,就生成了树。
- 在计算机网络中,生成树的算法叫作 STP。
- 具体做法就是”华山论剑,带领小弟拜山头”
2. 如何解决多个局域网的广播问题和安全问题:
- 物理隔离(建多个局域网,之间隔离)
- 虚拟局域网 VLAN:
- VLAN工作原理:
- 在二层头中添加Tag,里面使用 VLAN ID,这样可以对不同的虚拟局域网做区分。
- 交换机把二层的头取下来的时候,识别出 VLAN ID。这样只有相同 VLAN
的包,才会互相转发。
- VLAN工作原理: