2.3-STP生成树

单点失效(signle point of failure)及其解决方法:

当两个Segement之间只有一条物理连接时就有可能出现单点失效→ 单方面的故障导致全网Down;Segement的三种概念:在STP领域表示一段物理介质(网线/光纤)、在封装领域表示经过L4封装的数据、在路由领域表示被L3设备所分割的逻辑子网;

避免单点失效的方法→构建冗余网络。

冗余网络三大问题:

冗余网络的三大问题都由其核心问题也就是网络环路(打环)引起;

多帧复制(Multiple Frame Copies)→未知MAC地址的数据帧在交换机间不断的复制转发复制转发……直到找到该目标地址并成功构建MAC映射,而这时该目标已经收到了N个同样的数据帧了;

MAC表地址跳动(MAC-Adress Instability)→因为几个接口都能够连接同一个PC因此MAC表中该设备的MAC值匹配的接口不断在几个接口间跳动;

广播风暴(Broadcast Storms)→广播会永无休止的发送下去占用越来越多的资源直到资源耗尽网络堵塞交换机Down机;

解决方法:STP。

生成树协议STP(Spaining Tree Protocol):

STP核心:Provides a loop-redundant network topology,by placing certain in the blocking state(在冗余网络中将特定的端口置于阻塞状态,来实现既没有环路,也可以冗余的网络)。

,k

STP的四大原则(越小越好):

lowest root BID ;

lowest path cost to root bridge ;

lowest sender BID ;

lowest port ID 。

生成树协议STP(Spanning-Tree Protocol)的四大结论:

One root brigde per network →每个交换网络,都有一个唯一的根桥RB(根交换机:Brigde-ID最小的交换机或优先级最小的);

One root port per non-root brigde →每个非根桥,都有一个唯一的根端口RP(根端口:去往根桥开销最小的端口);

One designated port per segement →每条网络介质,都必定有一个唯一的指定端口DP(指定端口,根端口都是转发数据包Forwarding状态的);

Nondesignated ports are unused →没有获得任何标记的端口NDP(指定端口、根端口以外的端口),都被禁用,不转发数据包。

注意:交换机开机时认为自己是根桥!根桥上没有根端口,所有端口(参与了STP运算的所有端口,通常是交换机与交换机相连的端口)都是指定端口。

Brigde-ID:

是8BIT的ID,由优先级(Priority/2Bits)+MAC地址(6Bits)组成,优先级一般默认为0x8000(32768)并且只取整;

优先级取值:0x0000(0)、0x1000(4096)、0x2000()、0x3000()、0x4000()、0x5000()、0x6000(24576)、0x7000(28672)、0x8000(32768)、0x9000(36864)。

各种接口的STP默认开销:

link speed   Revised IEEE Spec Cost   Previous IEEE Spec Cost

10Gbps       2                        1

1Gbps        4                        1

100Mbps      19                       10

10Mbps       100                      100

桥接协议数据单元BPDU(Bridge Protocol Data Unit):

在交换网络中由根桥RB(Root Bridge)发送,用于STP的计算和收敛;发送周期为2秒;

BPDU的作用:选举根桥、确定本地是否形成环路、阻塞特定端口防止环路、监控生成树的状态;

BPDU有两类:TC和TCN;TCA是TC的一种,当拓扑变化时检测到变化的交换机会通过RP向根桥发送TCN;而根桥收到TCN后会发送TCA表示收到,同时发送TC要求该交换机把MAC表的age时间改为15秒以学习新的表:由于TC是RB产生的,所以要更改各个计时器时只能在RB上更改。

端口的不同状态:

堵塞(Block,默认20s):丢弃从该接口收到的正常数据帧;不会在该接口上学习mac-address-table;不会从该接口发送正常数据帧;会从该接口接收对端发送的BPDU;不会从该接口发送BPDU;

监听(Listen,默认15s):丢弃从该接口收到的正常数据帧;不会在该接口上学习mac-address-table;不会从该接口发送正常数据帧;会从该接口接收对端发送的BPDU;会从该接口发送BPDU(根桥RB、根端口RP、指定端口DP等的选举在该阶段完成,如果接口没有成为DP则重新回到Block);

同步(Learning,默认15s):丢弃从该接口收到的正常数据帧;会在该接口上学习mac-address-table;不会从该接口发送正常数据帧;会从该接口接收对端发送的BPDU;会从该接口发送BPDU;

转发(Forward,直到down机→TK里面是15、30s的):从该接口接受正常数据帧;会在该接口上学习mac-address-table;从该接口发送正常数据帧;会从该接口接收对端发送的BPDU;会从该接口发送BPDU。

交换机对BPDU的处理:

如果交换机从一个接口接收到优先级高的BPDU,会把该BPDU保存下来并且该接口不再往外发送BPDU;

在收敛时只有根桥产生BPDU,其余交换机只能从RP接收BPDU后才从DP发送出去;这样非根桥可能从DP或者NDP接受到BPDU;

如果交换机从DP接收到优先级低的BDPU会丢弃,并给源MAC发送自己较新的BPDU;如果从NDP收到优先级低的BPDU会只丢弃了事。

STP下的链路失败类别:

直接失败:Block端口立刻进入Listen状态,收敛时间为30秒;

间接失败:要等待20秒后才能判断端口失败。

----------------------------------------------------------------------------

LAB1:四大结论第一(One root brigde per network):

STEP1:察看交换机的网管IP 所对应的那个MAC地址:

每一个STP交换网络都只有一个根桥RB;引用原则1→Lowest Brigde-ID的那个交换机就是RB;

Brigde-ID由本交换机的优先级(2字节)和网管MAC地址(6字节)组成一共8个字节(网管MAC地址:可以理解为被telnet的那个地址);

用#sh ve查看MAC地址得:Base ethernet MAC address:00:0F:FE:2A:80:F6 ;还有sh cdp nei也能察看到MAC地址;

交换机的STP优先级默认是0x8000(32768);

STEP2:查看STP相关信息(本机BID):

用#sh spanning-tree查看,Root-ID就是本STP网络中根桥的Brigde-ID→根据Root-ID找到根桥;

STEP3:通过优先级控制根桥选举:

根桥:sw1(config)#spanning-tree vlan 1 root primary(默认PRI=24576/0x6000);备份根桥:sw2(config)#spanning-tree vlan 1 root secondary(默认PRI=28672/0x7000);

还可以更改优先级:

通过#spanning-tree vlan 1 priority 4096 。

----------------------------------------------------------------------------

LAB2:四大结论第二(One root port per non-root brigde):

STEP1:查看Cost:

每个非根桥NRB都有一个唯一的根端口RP;不是RB的交换机都是NRB;引用原则2→Lowest path cost to root bridge的那个交换机接口就是RP;

用#sh spanning-tree查看,得知当前的RP是9,Cost为19 (当前去往根桥的cost值);

STEP2:控制RP的选举:

用(c-i)#speed 10(单位是Mbps);

可以用#sh in status →sh spanning-tree detail查看;

也可以通过直接调试Cost值来控制:(c)#spanning-tree cost 50 。

----------------------------------------------------------------------------

LAB3:四大结论第三(One designated port per segement):

STEP1:查看Cost:

每一个网段有一个指定端口DP;引用原则3→Lowest sender Brigde-ID;

STEP2:控制DP的选举:

SW1(c)#spanning-tree vlan 1 priority 36864(优先级Prio=0x9000)。

----------------------------------------------------------------------------

LAB4:四大结论第四(Nondesignated ports are unused ):

STEP1:查看Cost:

没有获得任何标记的端口NDP被禁用;引用原则4→Lowest port ID;用#sh spanning-tree in f0/22 detail查看;→断后NDP是SW2的Fa0/7!→BPDU入口不能堵的啊!!!

STEP2:控制NDP的选举:

SW3(c-i)#spanning-tree port-priority 32 (这个值必须是16的整倍数);再查看。

STEP3:SW2与SW1的连接恢复后会怎样?

先堵7后堵8→SW2被堵死了……把SW2改为RB后再恢复呢?

s

----------------------------------------------------------------------------

LAB5:观察STP的转发延时:

STEP1:直链检测错误 (35秒):

PC1 ping sw3的网管IP,shutdown SW3 23口观察:

让SW1成为根桥,即把优先级改为最低(c)#spanning-tree vlan 1 prilrity 0 ;然后PC3 ping PC1的同时shutdown掉SW2的Fa0/23,因为SW2的Fa0/8是阻塞的,所以down之前是从SW2的Fa0/23口发送数据到PC1的;

STEP2:非直链检测错误(50秒):

PC3 ping sw3的网管IP,shutdown SW3 9口观察:

SW1/SW2的链路带宽由原来的100M改为10M后Cost值变为100,而SW1/SW3和SW2/SW3为100M,那么Fa0/23是阻塞的;ping的同时shutdown掉SW2的Fa0/8后观察时间。

来自为知笔记(Wiz)

时间: 2024-11-05 11:57:55

2.3-STP生成树的相关文章

分析和查看思科设备VTP工作原理和STP生成树原理

实验 拓扑图: zhu 注:VTP分为三种模式(一,server,二,client,三,transparent).每个管理域至少一个server模式,便于创建,删除,修改VLAN.VTP通告的数据帧被发送到组播地址:01-00-0c-cc-cc-cc,是相邻设备都能收到这些帧. VTP的要求: 一,域内每个交换机必须是相同的VTP域名.二,交换机必须是相邻的,相邻的交换机需要相同域名. 三,所有的交换机必须配置为中继链路. VTP的配置: 一,确定VTP版本.二,加入到管理域中,确定它的名称和口

CCNA学习笔记三——STP生成树协议

广播风暴:当网络中存在物理环路,会产生广播风暴 STP协议:Spanning Tree Protocol(生成树协议) 逻辑上断开环路,防止广播风暴的产生 STP算法:(所有选择都是比小-小的当选) 选择根网桥(Root Bridge):在网络中的所有交换机中选择一台 选择依据:网桥ID(网桥优先级+MAC地址) 选择根端口(Root Ports):在所有非根网桥中选择一个 选择依据:(1)根路径成本最低 (2)直连网桥ID最小 (3)端口ID最小 选择指定端口(Designated Ports

STP生成树协议和VTP

STP #show spanning-tree bri 查看STP生成树 SW conf#spanning-tree vlan 1 priority root 修改优先级为根,可以改成数字,0为最低 SW conf#spanning-tree vlan 1 priority primary 自动指定根和被根 Portfast SW conf-if>spanning-tree portfast 不去计算根和被根,端口下只能接主机,不能接交换机等 SW conf-if>spanning-tree

stp生成树总结

stp生成树协议目前主要分stp.rstp.mstp三类,依次向下兼容. 1.涉及的概念: stp:根交换(跟网桥).根端口.指定端口.可选端口,bpdu保护.root保护.收敛慢,单树. rstp:根交换.根端口.指定端口.可选端口,bpdu保护.root保护.收敛较快,单树. mstp:总根交换.域根.实例.根端口.指定端口.可选端口,bpdu保护.root保护.收敛更快,多条生成树,负载均衡. 2.stp采用协议报文bpdu,进行生成树计算,计算出一个无环路的树型网络结构. 3.开启stp

STP - 生成树协议

端口协商参数:     speed - 速率:      duplex - 双工模式                半双工 - 同一时刻,只能收或者发:                全双工 - 同一时刻,可以同时收和发: 建议:     不同类型的设备之间进行互联链路时,需要手动指定速率和双工  传统交换网络存在的问题:        单点故障         解决方案:        增加冗余链路        增加冗余设备 搞清楚环路是如何形成?  随之而来的问题:        数据转发

利用STP生成树协议实现负载均衡

为了避免交换网络环路产生的广播风暴,相应产生了STP生成树协议,用来把一个环形网络接口转换成树形结构,通过算法,在逻辑上阻塞端口,防止形成广播风暴.下面将以下图实验为例,利用STP协议巧妙的实现负载均衡.根据以上结果显示,得出以下结论:两个vlan分两条路径走,因此实现了负载均衡. 原文地址:http://blog.51cto.com/13659253/2110942

进阶-STP生成树协议

进阶-STP生成树协议详解 传统的 LAN 是存在一些问题:1.冲突域:-- 网桥-- 交换机--广播域 VLAN 同一个交换机上的同一个VLAN成员 # 不同的交换机上的同一个 VLAN 成员 - trunk # 802.1q (dot1q) 原MAC: DMAC + SMAC + Type | Tag(4Byte) VLAN间路由 网关 设备: 路由器 . 多层交换机.防火墙 凡是有路由表的设备,都支持路由功能, 那么该设备就可以作为"网关" 传统 VLAN 中的故障类型:单点故障

CCNA 之 九 STP生成树协议

STP生成树 在上一次实验中,使用了单臂路由是两个不同的VLAN之间进行通信,而单臂路由的这种网络拓扑,当一条链路或者路由设备出现故障的时候,整个网络就会瘫痪. 称此网络为:不健壮的,无冗余的网络环境. 看下图中,冗余的网络拓扑: 冗余拓扑能够解决单点故障问题: 冗余拓扑造成广播风暴,多帧复用,MAC地址不稳定的问题: 环路会导致的现象 广播风暴概念 上图中,Host X 发送广播帧: 交换机继续没完没了的更新广播流量: 多帧复制概念 Host X发送一个单播数据帧给Router Y: Rout

STP——生成树协议

STP--生成树协议 STP--spanning tree protocol--生成树协议,是IEEE定义的一个802.1d标准,用于解决交换机中得人一系列环路问题. 为什么要使用STP?在大型的网络当中,为了避免单点故障和实现网络的高可用性以及负载均衡,通常会在两台交换机之间以网线相连,形成冗余的链路环境.但是冗余的链路环境为形成环路,会对整个网络中的资源消耗和设备损耗造成很大的负担.所以提出了STP来解决这一系列问题. 冗余的链路会引发什么问题?①会形成广播风暴(环路)②帧的多个副本③造成M

STP生成树协议的分析总结

一,STP概述 STP(Spanning Tree Protocol,生成树协议)是有应用于交换机之间的防环的.功能是用来防环的. 基本原理: 通过在交换机之间传递一种特殊的协议报文,网桥协议数据单元(BPDU),来确定网络的拓扑结构.BPDU有两种,一种是配置BPDU(configuration BPDU),一种TC BPDU(拓扑变更BPDU). 前者是用于计算无环的生成树的:后者是用于在二层网络拓扑发生变化时产生用来缩短MAC表项的刷新时间的(由默认的300s--->15s) 分类: ST