交换过程
PC1构造IP数据包,目的IP是PC2,源IP是PC1,目的MAC是PC2,源MAC是PC1 ;
交换机的MAC地址此时为空,当PC1发送出去数据帧,交换机学习到PC1的MAC地址;
找目的MAC地址,未发现,因此交换机对这个数据帧进行泛洪,ARP请求;
当PC2接到ARP请求发现,目的MAC地址与自己一致,回复那么MAC地址表就有了PC2的条目;
PC2给PC1返回数据,只需要在交换机找MAC地址表即可;
注:一个MAC地址只能关联一个接口,一个接口可以存在多个MAC地址。
ARP: address resolution protocol 地址解析协议,通过目的IP地址而获取目的MAC地址的过程是由ARP(address resolution protocol)协议来实现的。

3.2 VLAN

虚拟局域网,是将一个物理的局域网在逻辑上划分成多个广播域的技术,通过在交换机上配置VLAN,可以实现在同一个VLAN内的用户进行二次回访,而不同VLAN间的用户被二层隔离。

3.2.1 为什么要划分VLAN

广播域变得特别大,用户数量变的特别多时,大量的广播消耗掉大量资源
同一交换机的用户有可能是不同业务部门

3.2.3 VLAN优点

有效控制广播域范围
增强局域网的安全性
灵活构建虚拟工作组
简化网络管理

3.2.4 VLAN特点

一个VLAN中所有设备都是同一广播域,不同VLAN为不同的广播域
VLAN之间互相隔离,广播不能跨越VLAN传播,因此不同VLAN之间设备一般无法互访,不同VLAN间需通过三层设备实现相互通信
一个VLAN一般一个逻辑子网,由被配置为此VLAN成员的设备组成
VLAN中成员多基于交换机的接口分配,划分VLAN就是对交换机的接口划分
VLAN工作OSI参考模型第二层

3.2.5 数据链路类型

通过Tag区分不同VLAN
路由器和终端设备发送的数据帧默认是untagged frame,默认也识别不了tagged frame
PVID:Port Vlan identification 端口VLAN标志,指明该接口属于的VLAN
Access Link一般用于连接主机或路由器之间的链路
接收数据帧,接收一个untagged的数据帧会打上接口的PVID;接收一个tagged的数据帧比较接口的PVID是否一致(一致接收,不一致丢弃)。
发送数据帧,发送一个数据帧会剥离VLAN(也就是丢弃dot1q字段)
Trunk Link一般用于连接交换机之间的链路
接收一个数据帧,untagged 打上PVID ;tagged 查看List是否存在,存在接收,不存在丢弃
发送数据帧,与PVID一致,剥离,在List里, 直接发送;
Hybrid可以任意指定数据帧发送或接收是否携带tagged

3.3 VLAN 间通信

VLAN路由可以通过二层交换配合路由器来实现,也可以通过三层交换机实现

3.3 STP

3.3.1 为什么会有STP?

为了提高可靠性,交换机之间会通过多条链路相连,从而避免单点故障。但也会带来一些致命的环路问题。
环路导致的后果:
MAC地址表震荡,网络体验差,延迟高,丢包,极大占用链路带宽资源和设备资源,造成大量垃圾流量
STP,消除环路和链路备份

3.3.2 STP过程

选举一台根桥选举一个根端口(非端口)选举指定端口阻塞剩余端口
过程中发送 BPDU(Bridge Protocol Data Unit) 桥协议数据单元
PID:STP
PVI:标识使用是什么模式(STP,RSTP,MSTP)
BPDU type:BPDU的类型
选举根交换机以及确定每个交换机的角色和状态
在初始过程中,每个桥都主动发送配置的BPDU
在网络拓扑稳定后,根桥会主动发送配置BPDU,其他交换机收到上游传来的配置的BPDU后,才会发送自己的配置BPDU
发送hello time
老化时间Max Age
选取桥角色和端口状态靠该4个字段
root identifier发送此配置BPDU的交换机说认为的根交换机的标识;
root path cost从接受此根桥的配置BPDU的交换机到达根交换机的最短路径总开销;
bridge identifier标识自己的BID;
port identifier发送此配置BPDU的交换机端口的端口标识;
STP生成树的过程
在一个交换机中选举一个根桥,(先比较优先级,再比较MAC)
在每个非根交换机上选举一个根端口(Root Port)(先比较代价,对端BID,对端PID,本地PID)
每一个Segment(链路)选举一个指定端口(Designated Port)(根路径开销、BID、PID)
阻塞非指定端口(non-designated Port)

3.3.3 STP拓扑变化

TCN BPDU,用于非根交换机在根端口向上交换机通告拓扑改变消息,每隔2s发送一次,直到收到确认的BPDU或者 拓扑改变BPDUTC-ACK BPDU 非根交换机接收拓扑通知BPDU的指定接口上向下行交换机发送拓扑改变通知的确认信息TC BPDU 从根交换机向整个网泛洪拓扑改变信息,所有交换机都在自己所有指定端口泛洪此BPDU
检测到拓扑变化的交换机通过根端口向根桥发TCN,上游交换机收到TCN后回应TCA,让下游交换机停止发送TCN,在通过根端口发送TCN直到根桥收到,根桥通过指定端口发送TC通知所有下游交换机把MAC地址表的老化时间300S变成15S。