交换机工作原理和数据链路层
MAC子层协议
MAC子层为三层提供服务,常见的有两种格式:802.3、802.11(无线网卡)。
802命名来源于IEEE组织,IEEE 802致力于研究局域网和城域网的物理层和MAC层中定义的服务和协议,对应OSI网络参考模型的最低两层(即物理层和数据链路层)。
数据帧
数据帧由帧头、上三层数据和帧尾组成

帧头和帧尾只能在二层传输,对上三层来说只是运输的工具而已,而且帧头在不同环境下会变动,目标在接受数据时判断目标MAC是否和自己一致,个人PC和服务器工作在五层,具备交换机的功能。
帧头
帧头由目标MAC(长度6字节)、源MAC(6字节)和类型(2字节)组成,类型字段的作用:识别上层协议、为上层提供服务,有2个值:0x0800(IP协议)、0x0806(ARP协议)。
一个数据帧最大为1518字节,数据内容最大为1500,也称为MTU
帧尾
帧尾就是一个帧检验序列,通过循环冗余算法校验数据帧的完整性,在我的 另一篇笔记 中有详解。
交换机
交换机的接口
| 名称 | 速率 |
|---|---|
| Ethernet | 10Mb/s |
| FastEthernet | 100Mb/s |
| GigabitEthernet | 1000Mb/s |
| TenGigabitEthernet | 10000Mb/s |
以上简称E、F、G、Te口,如F0/1表示第一个模块的第一个100Mb/s接口,在企业级交换机中支持模块化
接口速率自适应:1000/100/10M自适应,速率工作模式可以为10,100,1000任何一种状态。
端口状态:up/down
down的三种可能
手动down掉
速率不匹配
双工模式不匹配(双工duplex)
双工模式
单工(在交换机上已经淘汰)
半双工(交换机上的半双工是为了兼容老旧的设备)
全双工
交换机的工作原理
收到一个数据帧后,首先学习帧中的源MAC地址来形成MAC地址表。
检查帧中的目标MAC地址,并匹配MAC地址表
如表中有匹配项,则单播转发
如表中无匹配项,则除接受端口外广播转发
动态学习的MAC地址表在拔掉网线之后300秒(在管理型交换机上可以修改老化时间)没有再接受到数据帧就会删除这条记录。如果在其他接口上收到同一MAC地址的数据帧则会立即更新条目。
在现实环境中交换机动态学习MAC地址表的速度很快,所有主机在发送DHCP广播包的时候就已经被记录了。当所有主机都被记录后,交换机不再发送广播包
MAC地址表
交换机只会从源MAC地址中动态学习MAC地址表

上图中,sw1和sw2的MAC地址表初始为空,10.1.1.1向10.1.1.4发送信息。交换机工作在二层,只能通过MAC地址转发,无法读取上三层数据。
sw1通过源MAC地址学习到10.1.1.1的MAC地址,并发送广播包。sw2收到数据帧后记录10.1.1.1的MAC地址在F0/2接口上,同时sw2也发送广播包。10.1.1.4收到数据帧后将数据依次解封装。
每个交换机都是独立的,无法读取对方的MAC地址表,在此例中,sw2不会记录10.1.1.1的MAC,而是记录自己的F0/2接口,以后所有10.1.1.1的数据帧都往这里转发
