本帖最后由 子杰 于 2013-2-21 09:33 编辑
STP知识小总结 目录 1.1 生成树的过程 1.2 STP的端口选举 1.3 BPDU(Bridge Protocol Data Unit) 1.4 生成树的类型以及区别 1.41 生成树类型配置的命令: 1.42 生成树类型区别: 1.5 STP和RSTP的区别 1.51 STP端口和RSTP端口区别: 1.52 AP和BP的区别: 1.53 STP和RSTP的收敛时间区别: 1.54 STP和RSTP发送TCN的区别: 1.55 RSTP的链路类型:(RSTP是分段收敛) 1.6 STP的基本特性 1.61 portfast: 1.62 uplinkfast: 1.63 backbonef: 1.7 STP的安全特性 1.71 Bpduguard: 1.72 BPDU filtering(BPDU过滤): 1.73 Root guard:根桥保护 1.74 Loop guard: 1.8 STP的有关特性命令编写模式 1.9 修改STP的接口cost和优先级
1.1 生成树的过程 (1) 阻塞:此状态不发送BPDU,就等待超时,超时时间为20S。 (2) 监听:这状态能接收BPDU,在选举根桥,根端口,指定端口,即生成树选举 (3) 学习:这状态也不转发BPDU,但会学习mac地址。 (4) 转发:此时根桥会发送出BPDU。 注意,只有根桥会发送出BPDU,其他非根桥不会发送BPDU,只会转发出去(转发时,会改BPDU里面的cost、BID、port ID,但root id不会改变) 1.2 STP的端口选举 (1) 根桥选举原则: 1. 比较桥优先级(默认为32768),越小越优。 2. 比较桥MAC地址,越小越优。 (2) 根端口选举: 1. 比较根桥ID值,越小越优。 2. 比较cost值,越小越优。 3. 比较发送者的BID,即比较桥优先级+桥MAC地址,越小越优。 4. 比较发送者的port ID,即比较Port-ID=Port优先级(默认为128)+端口号 (3) 指定端口选举: 1. 比较根桥ID值,越小越优。 2. 比较cost值,越小越优。 3. 比较发送者的BID,即比较桥优先级+桥MAC地址,越小越优。 4. 比较发送者的port ID,即比较Port-ID=Port优先级(默认为128)+端口号。 1.3 BPDU(Bridge Protocol Data Unit) (1) BPDU的工作原理: BPDU每2S由根桥发送一次,最初的网络,每个SW都认为自己是根桥,都会发送BPDU,比较Lowest BID,选举出一个根桥,此时就只有根桥发送BPDU。非根桥只进行转发。 (2) BPDU的作用: STP的各种选举是通过交换BPDU报文来实现的,BPDU是直接封装在以太网帧中的,BPDU是直接封装在二层的协议,其MAC地址最后封装数为:00。(01:80:c2:00:00:00) (3) BPDU分两种类型: 1. 配置BPDU--通常由根网桥以周期性间隔发出,用于进行STP的选举。 2. TCN(topology change notification 拓扑变更通告)BPDU--这种BPDU是当交换机检测到拓扑发生变更时所产生。 注意:TCN(Topology Change Notification) BPDU,这种BPDU是SW检测到拓扑变更时产生的。只包含下列三个字段: Ø Protocol ID : 0 Ø Version : 802.1D (0) Ø Message Type : (Config BPDU=0x00 / TCN BPDU=0x80) (4) BPDU的功能: 1. 选举根桥 2. 确定冗余路径的位置 3. 通过阻塞特定端口来避免环路 4. 通告网络的拓扑变更 5. 监控生成树的状态 (5) BPDU Timer 三个计时器: 1. Message Age:最大存活时间(20S) 2. Hello Time:根桥连续发送BPDU的间隔(2S) 3. Forward Time:SW在监听和学习状态所停留的时间(15S) (6) BPDU的时间修改 1. spanning-tree vlan 1-10 hello-time 3 修改发送BPDU的时间间隔 2. spanning-tree vlan 1-10 forward-time 13 修改forward时间 3. spanning-tree vlan 1-10 max-age 33 修改最大存活时间 注意:必须在根桥上修改,否则不起作用。
1.4 生成树的类型以及区别
1.41 生成树类型配置的命令: (1) 启用RSTP配置: spanning-tree mode rapid-pvst (全局下) (2) 启用STP配置: spanning-tree mode pvst (全局下) (3) 启用MST配置: spanning-tree mode mst spanning-tree mst configuration name word version 1 instance x vlan 10 , vlan 20 1.42 生成树类型区别: (1) 公有生成树:STP(802.1D)、RSTP(802.1W)、MST(802.1S) (2) 私有生成树:PVST+,是基于STP基础上升级的 PVRST,是基于RSTP基础上升级的 (3) RSTP:1.hello时间为2秒,3次没收到hello包,网桥邻居关系down。 2.rapid-pvst就是RSTP 3.可以主动确认端口是否进入下一个状态 4.无block状态,由替代port,备份port来代替。 5.包含uplinkfast、backbone fast特性,不需再配 (4) STP: 1.收敛慢,是因为要等待超时了,才能进入下一个状态。 2.会对每个vlan产生相应的一个生成树,增加链路的负担。 (5) MST:1.包含了STP和RSTP的优点 2.可以多个vlan划分成一个生成树
1.5 STP和RSTP的区别
1.51 STP端口和RSTP端口区别: STP(802.1D) (1) STP的端口状态:block、listen、learning(学习MAC地址)、forwarding (2) STP的端口角色:RP(根端口)、DP(指定端口)、block(阻塞端口) RSTP(802.1W) (1) 端口状态:discarding(block+listen)、learning、forwarding (2) 端口角色变化:RP(根端口)、DP(指定端口)、NDP(非指定端口)包括AP(备份端口)和BP(交替端口) 1.52 AP和BP的区别: (1) AP是本地BPDU没有其他交换机的优 (1) BP是同台交换机中的不同接口,有一个端口比较差就为BP 1.53 STP和RSTP的收敛时间区别: STP的收敛时间是30S,RSTP收敛时间是3S内。 1.54 STP和RSTP发送TCN的区别: (1) STP中,发送TCN给根桥,根桥收到TCN后,再回应一个TCA包通告整个网络拓扑。 (2) RSTP中,发送TCN是直接从发生变化的交换机向所有端口发送出去。 1.55 RSTP的链路类型:(RSTP是分段收敛) (1) 全双工为点到点,就运行RSTP。 (2) 半双工为共享式,就运行STP。 注意:思科设备生成树实际工作原理是STP,但端口叫法还是会出现AP、BP
1.6 STP的基本特性
1.61 portfast: (1) 应用场合:应用在接入端口(接非交换机设备),可以使刚开启的端口立马变为forward状态。 (2) 作用:节约了30S时间 (3) 配置命令: 接口下配置: interface fastethernet x/x spanning-tree portfast 注意:该接口类型为edge 全局模式下配置: spanning-tree default (交换机所有端口都做portfast) interface fastethernet x/x spanning-tree portfast disable(除了该接口外所有接口都起portfast) 1.62 uplinkfast: (1) 应用场合:应用在有block的交换机上,检测该交换机的线路,若有端口down掉,则block可马上转变为forward状态。 (2) 作用:跳过BLK-FWD时间为30S(block—learning—forward),1S内从阻塞转变为转发状态。 (3) 配置命令: 全局下模式下配置: spanning-tree uplinkfast (4) 效果显示: 1. uplinkfast启用了 2. cost值增加3000 3. 优先级变为49152 (5) 查看uplinkfast的相关配置 1. 查看是否启用:show spanning-tree uplinkfast 2. 查看接口启用uplinkfast时转变过程debug spanning-tree events 1.63 backbonefast: (1) 应用场合:应用场合建议所有的交换机,且必须同一个生成树所有交换机都要配才能生效。 (2) 作用:节约了20S (3) 原理:一台交换机启用backbonefast,收到次BPDU后,会通过RP发出一个RLQ(根桥链路查询)查询包,发向根桥查询,根桥会回应一个response,当交换机收到回应后,会把阻塞端口直接变为listen状态,再变为learning状态,最后为forward状态。 (4) 查看backbonefast信息:show spanning-tree backbonefast (5) 配置命令:spanning-tree backbone(全局下)
1.7 STP的安全特性
1.71 Bpduguard: (1) 原理:在交换机中的接口启用bpduguard,若该接口接收到BPDU时,则端口变为err-disable。 (2) 应用场合:与portfast联合使用,防止portfast所连的交换机设备造成困扰。 (3) 作用:接口不能接收BPDU,但能发送BPDU。 (4) 配置命令: 1. 只对F0/0做BPDUguard int F0/0 spanning-tree bpduguard enable 2. 对交换机所有接口做BPDUguard,除了F0/0 spanning-tree portfast bpduguard default int F0/0 spanning-tree bpduguard disable (5) 怎么处理err-disable: 1. 手动恢复:showdown 再no shutdown 2. 自动恢复:errdisable recovery cause bpduguard 注意:默认时间是300S,可以通过errdisable recovery interval x修改自动恢复的时间。 (6) 查看:show errdisable 1.72 BPDU filtering(BPDU过滤): (1) 原理:仅仅把BPDU包drop掉,但接口还是可以用。 (2) 作用:接口不能接收BPDU,也不能发送BPDU。 (3) 配置命令: spanning-tree portfast bpdufilter default int f0/0 spanning-tree bpdufilter enable 1.73 Root guard:根桥保护 (1) 作用:防止根桥被新加入的交换机抢占。配置保护后,当接入更优的BPDU, 端口会表示为broken,但当一定时间没再收到优质的BPDU后,端口会再自动启用 (2) 配置命令: int F0/11 spanning-tree guard root (只能在 接口下) (3) 查看show spanning-tree interface fastethernet 0/11 detail 1.74 Loop guard: (1) 作用:单向链路检测失败 有两种机制: 1. UDLD(一般用于光纤) 配置命令:udld enable (全局下) udld port (接口下) 2. loop guard 配置命令:spanning-tree guard loop (2) udld和loop guard的区别: udld | loop guard | 基于每个port | 基于每vlan | 能自动恢复,端口为errdisable | 能自动恢复 | 建议配在根端口和交替端口上 | | 硬件环境问题 | 软环境问题 |
1.8 STP的有关特性命令编写模式 (1) 全局下: 1. spanning-tree portfast 2. spanning-tree uplinkfast 3. spanning-tree backbone 4. spanning-tree loopguard 5. spanning-tree portfast bpdufilter default (2) 接口下: 1. spanning-tree bpduguard enable 2. spanning-tree bpdufilter enable 3. spanning-tree portfast enable 4. spanning-tree guard loop 5. spanning-tree guard root 1.9 修改STP的接口cost和优先级 (1) 修改接口cost:spanning-tree cost 10 spanning-tree vlan 1 cost 10 (2) 修改接口优先级:spanning-tree port-priority 10 spanning-tree vlan 1 port-priority 10
-----------------------------------------------------------------------------------------
SPOTO 我们共创未来
|