生成树——在二层交换网络汇总,逻辑上阻塞部分接口,实现从根交换机到所有节点唯一的且最短的路劲,生成一个没有环路的树形拓扑,当最佳路劲出现故障时,则可以打开个别阻塞的端口,形成备份路径
802.1D——由IEEE组织颁布的共有协议——标准的STP协议
802.1D生成树协议
STP使用的数据包——BPDU
B——Bridge
PDU——协议数据单元
配置BPDU
协议ID——总为0,代表STP协议
协议版本ID——标准的802.1D 生成树协议:0
802.1W:2
802.1S:3
BPDU类型——配置BPDU:0x00
TCN BPDU:0x80
标志(flag)——八位——在802.1D当中只应用最高位和最低位,中间六位保留
最高位(TCA)——拓扑变更确认标记
最低位(TC)
根桥ID————发送本BPDU的根BPDU交换器的桥ID
根路径开销——表示发送BPDU的叫唤设备到达根网桥的开销大小
网桥ID(BID)————发送本BPDU的交换器的桥ID,址
接口ID(PID)———发送该BPDU接口的身份标识
2个字节——优先级(4位)+ 接口的标识(12位)
以上四个参数将参与STP生成树的结构选举
消息寿命——它存在一个最大跳数(MAX-HOP)这个值默认20
配置BPDU的工作过程——所有交换机刚启动,所有接口都激活STP,一开始并不知道谁是根,这时候所有设备都判定自己是根网桥,从自己的所有激活了STP的接口发送配置BPDU,则其中将包含本机参数,之后所有设备都交换参数后,将根据参数进行选举,之后将选举出一个真正的根网桥,之后只有根网桥将周期地发送配置BPDU,而其他非根网桥只能在接受到根网桥发送的BPDU后进行转发(转发时可以修改其中的参数)——发送周期25S
TCN BPDU
只包含BPDU中前三个参数
本地的交换链路故障后,STP将重新收敛,为了加快刷新交换机的MAC地址表,将向本地所有STP接口发送TCN BPDU,;邻居交换机收到TCN BPDU后将回复一个TCA为1的配置BPDU,用于可靠性传出,之后将TCN BPDU逐级准发到根网桥处,由根网桥下发TC标记为1的BPDU,逐级发送给所有交换机,所有交换机收到后将临时地把300S的MAC地址老化时间改为15S
根网桥——RB
根端口——RP——每一台非根网桥需要选一个端口
指定端口——DP——每一条链路都需要有且只有一个指定端口
非指定端口——NDP——需要被阻塞的
1.选举根网桥——802.1D中,一个交换网络有且仅有一天根网桥
选举方法——比较配置BPDU中的BID
先比较优先级,优先级越小越优——<0-65535>,实际取值范围<0-61440>,默认取值为32768,实际只使用了前四位,后面12位被称为扩展系统ID,因为只使用了4位,每一位代表4096,在修改优先级时也必须按照4096的背书来进行修改
如果优先级相同,则比较MAC地址,去MAC地址数值最小的当根网桥
2.选举根端口——每台非根网桥上,有且仅有一个,里根网桥最近的接口,用来接受根网桥发送的配置BPDU,不能被阻塞
1.比较入向的配置BPDU的开销值,选择最小的接口作为根端口
2.如果存在多个接口入向开销相同时,则将会对比对端设备的BID,
选择BID小的设备所对应的接口作为根端口
3.如果存在对端设备的BID也相同时,则将比较对端的PID
优先级每一位代表16,其取值范围<0-240>,其默认值为128
修改优先级的时候也需要按照16的倍数来进行修改,优先级越小越优
4.如果对端的PID也相同就比较本地的PID
3.选举指定端口——在每条链路上有且仅有一个端口作为指定端口,用于转发根网桥发送的配置BPDU
首先:根网桥所有端口都是指定端口
其次:所有存在根端口的链路,则其对端端口必然指定接口
规则:
1.比较端口发出根网桥的BPDU的RPC值
2.比较本地的BID值,BID小的所对应的端口为指定端口
3.当本地BID也相同时,则将比较本地PID,PID小 的作为指定端口
4.如果本地PID也相同,则会堵塞该端口