STP概念
冗余拓扑
- 冗余拓扑能够解决单点故障问题;
- 冗余拓扑造成广播风暴,多帧复用,MAC地址不稳定的问题;
广播风暴
- HostX发送广播帧;
- 交换机继续没完没了的更新广播流量;
多帧复制
- Host X发送一个单播数据帧给Router Y;
- Router Y的MAC地址还没有被每个交换机学习到;
- 二层没有选路的功能,Router Y接收2份相同的数据帧的拷贝;
MAC表紊乱
- Host X发送一个单播数据帧给Router Y;
- Router Y的MAC地址还没有被每个交换机学习到;
- Switches A and B 在Port1上学习到Host X的MAC地址;
- 到达Router Y的数据帧被泛洪;
- Switches A and R 不正确的在Port2上学习到Host X的MAC地址
复杂的多环网络
采用生成树STP(Spanning-Tree Protocol)解决环路
- 通过将特定的端口选为Blocking state(类似shutdown),来实现无环的拓扑;
- IEEE802.1D(默认)规定了这一行为;
- Cisco采用IEEE802.1D的增强的私有协议生成树PVST+;
STP的操作
根桥
- 每个广播域选择一个根桥
- BPDU(桥协议数据单元),每两秒发送一次
- 根桥选举规则:桥优先级默认32768,越小越优先;桥优先级相同比较桥MAC地址,优选小的MAC地址作为根桥;
- 最初所有的交换机都把自己当成根桥
BPDU内容
2.跟端口
- 每个非根桥上选择一个根端口(到达跟桥最近的端口)
- 根端口:具有最低根路径的接口
- 考虑的因素:最低的根桥ID、最低的根路径代价、最低发送者桥ID、最低端口ID
- 最短路径是cost累加,而cost是基于链路的速率的
- 根交换机(Root)选举规则:在同一个三层网络中需要选举,即一个广播域内要选举,并且一个网络中只能选举一台根交换机。Bridge-ID中优先级最高(即数字最小)的为根交换机,优先级范围为0-65535,默认32768。如果优先级相同,则MAC地址越小的为根交换机。
- 根端口(Root Port)选举规则:所有非根交换机都要选举,非根交换机上选举的根端口就是普通交换机去往根交换机的唯一链路,选举规则为到根交换机的Path Cost值最小的链路,如果多条链路到达根交换机的Path Cost值相同,则选举上一跳交换机Bridge-lD最小的链路,如果是经过的同一台交换机,则上一跳交换机Bridge-ID也是相同的,那么选举对端端口优先级最小的链路,如果到达对端的多个端口优先级相同,最后选举交换机对端端号码最小的链路。
3.指定端口
- 每个二层网段段选择一个指定端口(根端口对应的端口)
- 指定端口(Designated Port)选举规则:在每个二层网段都要选举,也就是在每个冲突域需要选举,简单地理解为每条连接交换机的物理线路的两个端口中,有一个要被选举为指定端口,每个网段选举指定端口后,就能保证每个网段都有链路能够到达根交换机,选举规则和选举根端口一样,即:到根交换机的Path Cost值最小的链路,如果多条链路到达根交换机的Path Cost值相同,则选举上一跳交换机Bridge-ID最小的链路,如果是经过的同一台交换机,则上一跳交换机Bridge-ID也是相同的,再选举对端端口优先级最小的链路,如果到达对端的多个端口优先级相同,最后选举交换机对端端号码最小的链路。
- 非指定端口:在STP选出根交换机,根端口以及指定端口后,其它所有端口全部被Block,为了防止环路,所以Block端口只有在根端口或指定端口失效的时候才有可能被启用。
案例解读
1.根据优先级,SW1优先级4096最小,优先级最高,设定为根路由器,F0/23和F0/19都为指定端口
2.SW2上因为离得最近,根端口选择F0/23
3.由于根端口对应指定端口,SW3根端口为F0/19
4.SW4多条链路到根交换机cost值相同,看上一条交换机Bridge-ID最小的链路,SW2比SW3的Bridge-ID小,所以选择SW2方向链路,之后选择对端端口优先级最小的链路,F0/20=112,F0/19=128,所以SW4的根端口选择F0/20,SW2的F0/20为指定端口
5.接下来在SW2-F0/19、SW4-F0/19、SW4-F0/23、SW4-F0/24、SW3-F0/23、SW3-F0/24选择指定端口
6.六个端口中,到达根交换机cost最小的链路为SW2-F0/19、SW3-F0/23、SW3-F0/24,其他全部Block
如果SW4的F0/20宕了,选择F0/19;如果F0/19宕了,选择F0/23(端口号小),最后才会轮到F0/24
STP的端口状态
从初始到转发状态流程
- Blocking状态:没有BPDU包,20s时间进行接收和恢复操作
- Listening状态:监听BPDU包,监听15s
- Learning状态:收到BPDU包后进行学习,花费15s
- Forwarding状态:进行转发
如果从Block状态开始,则直接进入Listening状态
端口快速收敛
原本PC端接入交换机需要30s左右,在SW1上设定f0/2端口为快速端口后,接上就变成绿灯,不会出现橘红色的等待,可以直接通信。
SW1(config)interface f0/2
SW1(config-if)#spanning-tree portfast
标签:F0,优先级,入门,选举,端口,交换机,STP,链路 From: https://www.cnblogs.com/icui4cu/p/16739530.html一般这种企业用作专门的接入口,无法接入其他交换机,只能接终端设备