STP(Spanning Tree protocol)生成树协议
出现原因
当交换机成环时会出现:
1 广播风暴 交换机收到广播包会将广播包复制给 除了收到广播包的接口以外的所有接口 当拓扑出现环路时回导致 二层出环 产生广播风暴
2 对同一数据帧反复拷贝
3 Mac表震荡 帧头一致的数据包 反复进出导致mac表震荡
而二层帧头部没有类似于三层数据包的TTL
需要一个机制来打破环路 而方法就是逻辑的阻塞某一个接口 让拓扑接近一个树状【星型拓扑】
基本词汇介绍
BPDU(bridge PDU)网桥基本传输数据单元 适用于交换机之间通讯
BID(bridge ID)与优先级(默认4096*8=32768
)和 MAC地址 有关
用于选举stp中角色的参数 越小越好
PID(port ID) 与优先级(默认128)和 接口号 有关
用于选举stp中角色的参数 越小越好
COST值(开销值)与在链路中的位置和接口的带宽有关
802.1d中:10M-----100 802.1T中:
100M-----19 1000M-----20000
1000M----4 100M------200000
10000M—2
大于100000M=1
角色介绍
1 根网桥:在每一个树形结构中有且只有一个 是一个交换机
作用:周期的发送BPDU进行保活 计算树形结构 指挥收敛
选举规则:选择BID小的 BID-》mac和优先级
交换机本身不存在MAC 但可网管的交换机一定存在mac 支持STP的交换机一定支持svi技术 该技术可以让交换机配置IP地址 成为源或目标 这类可网管的交换机出厂会携带MAC
2 根端口:在每个非根交换机中有且仅有一个 是一个端口
作用:用于接收根网桥的BPDU 正常转发数据 不会阻塞
选举规则:选择cost值小的 如果 cost值 相同 选择上端 BID小的 如果上端BID一致 则选择上端pid小的 如果上端pid一致 则选择本端的 pid小的
3 指定端口:在每条链路上都会存在 是一个端口
作用:用于转发根网桥的BPDU 正常转发数据 不会阻塞
选举规则:选择cost值小的 如果cost值一样 选择本端BID小的 如果本端BID一致 选择本端 pid小的 如果本端pid相同 直接阻塞
4 非指定端口:除上述以外的角色就是非指定端口 是一个端口
这个端口将会被阻塞 破坏环结构
运行状态
down:设备未运行STP
侦听:15s收发BPDU进行角色的选举 根端口和指定端口进入学习状态 非指定端口进入阻塞状态
学习:学习用户流量收发的源MAC 生成mac表 进入转发状态
转发:当学习完后即可为用户服务 开始数据的正常转发
阻塞:非指定端口 阻塞 破环
当拓扑结构发生改变时 将发送TCN 收到的交换机会回复TCA 并且将数据转发直到发给根网桥 根网桥发送TC 才会进行新的收敛 如果有直连检测 则省去 20s hold time 否则将占50s
STP的发展
一 .
802.1d标准 是共有的协议 一个拓扑中只存在一个树
缺点:1 收敛慢
2 链路利用率低
二.
(1)PVST 是思科独有的协议 一个拓扑中可以存在多个树 每个VLAN都有一个树 提高了链路利用率
默认优先级变成了 8*4096 加 vlan号
当人为修改时只能修改为 4096的整数倍
缺点:1 树多 每个vlan都要发BPDU
2 收敛慢
3 在TRUNK干道上只支持ISL思科封装
(2)PVST+ 是思科独有的协议 基于PVST的基础上 加快了收敛
通过三方面:1 端口加速 用于连接终端的接口
2 上行链路加速 直连检测 不需要30s 直接收敛 同时本地优先级增大 适用于接入层设备
3 骨干加速 一旦收到次优的BPDU直接开始收敛
三.
(1)RSTP 是思科独有的协议基于 PVST+ 主要是实现了快速收敛
(2)802.1w 是公有的协议基于802.1d 实现了快速收敛 与思科的收敛相似
加速方法:1.取消计时器
2.分段式同步
3.将端口加速(边缘接口)、上行链路加速、骨干加速集成了
四.
MSTP 基于组的生成树 一组一个树 一个组管理多个VLAN 包含了快速收敛的功能