stp作用:解决二层环路,提供冗余备份
- *根桥-根桥选举*
- IEEE 802.1D标准中规定BID由16位的桥优先级(Bridge Priority)与桥MAC地址构成。
- 每一台运行STP的交换机都拥有一个唯一的BID。
- BID桥优先级占据高16bit,其余的低48bit是桥MAC地址。
- 在STP网络中,BID最小的设备会被选举为根桥。(先比较优先级再比较MAC)
桥优先级:范围:第一种:0-65535(标准Stp)
第二种:0-61440(华为优化标准)
默认优先级:32768 步长:4096(只能修改为4096的倍数)
RPC概念:
*交换机某个接口到根桥所有入接口开销之和
(A接口到根桥 要反过来算根桥到A接口的所有入接口开销之和)
根桥:RB 根端口:RP 指定端口:DP
根路径开销:RPC 阻塞端口:AP
PID:端口ID
作用:用来标识一个运行了STp的接口 也用在后续的选举机制上
PID:接口优先级+接口编号
优先级:范围:0--240 ; 默认:128;步长:16
STP的BPDU报文:
1.配置BPDU:用来做stp的计算,如选举根桥
2.TCN BPDU(topology change notification 拓扑改变通知):用在拓扑改变时通知
RP根端口:非根交换机用来接收最优BPDU的端口
DP指定端口:发送最优BPDU的端口为指定端口,
且每条链路都要有一个指定端口。
- 什么是根端口?
- 一个非根桥设备上会有多个端口与网络相连,为了保证从某台非根桥设备到根桥设备的工作路径是最优且唯一的,就必须从该非根桥设备的端口中确定出一个被称为“根端口”的端口,由根端口来作为该非根桥设备与根桥设备之间进行报文交互的端口。
- 在选举出根桥后,根桥仍然持续发送BPDU,而非根桥将持续不断的收到根桥发送的BPDU。因此,在所有非根桥上选举一个距离根桥“最近”的端口(根端口),在网络收敛后,根端口将不断的收到来自根桥的BPDU。
- 即:根端口保证了交换机与根桥之间工作路径的唯一性和最优性。
- 注意:一个非根桥设备上,最多只能有一个根端口。
- 根端口RP选举过程:
- 交换机有多个端口接入网络,各个端口都会收到BPDU报文,报文中会携带“RootID、RPC、BID、PID”等关键字段,端口会针对这些字段进行PK。
- 首先比较根路径开销(RPC),STP协议把根路径开销作为确定根端口的重要依据。RPC值越小,越优选,因此交换机会选RPC最小的端口作为根端口。
- 当RPC相同时,比较上行交换机的BID,即比较交换机各个端口收到的BPDU中的BID,值越小,越优选,因此交换机会选上行设备BID最小的端口作为根端口。
- 当上行交换机BID相同时,比较上行交换机的PID,即比较交换机各个端口收到的BPDU中的PID,值越小,越优先,因此交换机会选上行设备PID最小的端口作为根端口
- 当上行交换机的PID相同时,则比较本地交换机的PID,即比较本端交换机各个端口各自的PID,值越小,越优先,因此交换机会选端口PID最小的端口作为根端口。
- 什么是指定端口?
- 网络中的每个链路与根桥之间的工作路径必须是唯一的且最优的。当一个链路有两条及以上的路径通往根桥时(该链路连接了不同的交换机,或者该链路连接了同一台交换机的不同端口),与该链路相连的交换机(可能不止一台)就必须确定出一个唯一的指定端口。
- 因此,每个链路(Link)选举一个指定端口,用于向这个链路发送BPDU。
- 注意:一般情况下,根桥上不存在任何根端口,只存在指定端口。
- DP指定端口选举过程:
指定端口也是通过比较RPC来确定的,选择RPC最小的作为指定端口,如果RPC相同,则比较BID和PID。
- 首先比较根路径开销(RPC),值越小,越优选,因此交换机会选RPC最小的端口作为指定端口。
- 若RPC相等,则比较链路两端交换机的BID,值越小,越优选,因此交换机会选BID最小的交换机的端口作为指定端口。
- 若BID相等,则比较链路两端端口的PID,值越小,越优选,因此交换机会选PID最小的交换机的端口作为指定端口。
STP五种端口状态
状态名称
状态描述
禁用(Disable)
该接口不能收发BPDU,也不能收发业务数据帧,例如接口为down
阻塞(Blocking)
该接口被STP阻塞。处于阻塞状态的接口不能发送BPDU,但是会持续侦听BPDU,而且不能收发业务数据帧,也不会进行MAC地址学习
侦听(Listening)
当接口处于该状态时,表明STP初步认定该接口为根接口或指定接口,但接口依然处于STP计算的过程中,此时接口可以收发BPDU,但是不能收发业务数据帧,也不会进行MAC地址学习
学习(Learning)
当接口处于该状态时,会侦听业务数据帧(但是不能转发业务数据帧),并且在收到业务数据帧后进行MAC地址学习
转发(Forwarding)
处于该状态的接口可以正常地收发业务数据帧,也会进行BPDU处理。接口的角色需是根接口或指定接口才能进入转发状态