HCIA-ICT实战基础-传统生成树
目录
生成树的技术概述
STP的基本概念及工作原理
STP的基础配置
1 生成树的技术概述
技术背景: 二层交换机加入冗余性的同时也产生了环路
1.1 环路带来的问题:
1.广播风暴
交换机在接收BUM帧后会对邻接的设备进行泛洪, 而其他设备接收到后也会进行同样的操作, 在这样的套娃操作下, 网络资源会被这些无用信息耗尽, 进而导致这片网络的瘫痪.
BUM帧:broadcast广播 ,unknown(未知单播),multicast 组播 ;交换机对于这几种帧会进行泛洪.
2.mac地址漂移
交换机不停的收到来自不停接口的同一个源mac地址, 导致mac地址表对应的接口不停变换.
为了解决因为环路带来的种种问题, 就有了通过阻塞(Block)部分接口来消除环路的生成树协议(STP).
那到这里就有人问了, 这生成树不就是把冗余的网络通路断了吗, 那我一开始就不这样连接了就好了?
实际上, 在交换机(二层网络)上运行的生成树协议是持续监控网络的, 当主线路出现问题时, 生陈述协议会自动选择被阻塞的链路打开, 从而保持网络的健壮性.
1.2 STP概述:
1.STP是用于局域网中消除环路的重要协议
2.运行STP的设备在彼此交换信息的时候发现网络中的环路, 会对由STP决定出的接口进行阻塞
3.STP会持续监控网络状态, 在出现拓扑变更的时候进行自动响应, 保证网络的可靠性.
华为的设备是默认开启生成树协议的
可以看到, 这里默认使用的是MSTP(多实例生成树).
有需要可以手动关闭:
undo stp enable
小试一下:
1)关闭三台交换机的生成树协议
2)让PCping一个未知地址引发arp泛洪
3)抓包来看看
可以看到, 捕获到的arp报文数量是多得异常的, 这仅仅是由一台设备引起的广播风暴.
4)连续在交换机上查看mac表信息:
display mac-address
可以看到通往PC的接口在g0/0/2和g0/0/3之间反复横跳, 这便是mac地址漂移
2 生成树协议的概念及基本工作原理
2.1 BID 桥ID(Bridge ID or BID)
BID由16bit桥优先级(Bridge Priority)与48bit桥MAC地址组成.
每一台运行STP的交换机都有唯一的BID.
在STP网络中, BID小的设备会被选举位根桥(Root Bridge).
根桥是生成树计算的根节点(类似于数据结构中学习的树), 选举的过程为: 先比较桥优先级, 优先级越小越优先成为根节点, 若优先级相等, 则比较桥mac地址, 同样也是越小越优先.
2.2 开销值(Cost)及计算方法
接口Cost是已经激活了STP的接口所维护的一个开销值, 存在有默认值, 并且开销值与接口速率有关, 并且设备使用不同算法时, 相同速率的接口对应不同的Cost值.
2.3 RPC 根路径开销(Root Path Cost)
这个很好理解, 就是将每次出接口的cost值相加, 以上图来说, SW1为根桥, SW3到SW1有两条路可以走, 一是直连, cost值为20000(注意, 只计算出接口的cost值); 二是通过SW2, cost值为20000+500=20500, 显然这里选择直连的网络通路是更优的.
2.4 Port ID
运行STP的交换机会使用接口id来标识每个接口, 接口id主要用于在特定场景下来选举制定接口.
接口id由两部分构成, 高4bit是接口优先级, 低12bit是接口编号, 上图使用了十进制来表示接口id.
激活STP的接口会维护一个缺省的接口优先级, 在华为交换机上, 该值为128. 有需要可以自行更改.
2.5 BPDU 网桥协议数据单元(Bridge Protocol Unit)
BPDU作为STP的协议报文, 是STP正常工作的基本要素.
开启STP的交换机之间会交互BPDU报文, 这些BPDU报文携带者一些重要信息(BID, cost, Port ID之类的信息).
BPDU分为两种类型:
配置BPDU (configuration BPDU)
TCN BPDU (Topology Change Notification BPDU)
配置BPDU是STP进行拓扑计算的关键, TCN BPDU只在网络拓扑变更时才会被触发.
配置BPDU的报文格式:
图上message age有误, 正确的解读是这个:
message age是用于运行STP协议的网络中非根桥设备收到配置BPDU报文后,报文中的Message Age和Max Age会进行比较,如果Message Age小于等于Max Age,则该非根桥设备继续转发配置BPDU报文,如果Message Age大于Max Age,则该配置BPDU报文将被失效。
配置BPDU报文中的重点信息: 根桥id, 根路径开销, 网桥id, 接口id
因为STP会根据一下顺序选择最优配置BPDU: 1.最小根桥id; 2.最小路径开销; 3.最小网桥id; 4.最小接口id
在选举出根桥之前, 每台交换机都会发送配置BPDU, 并且根据这些BPDU报文选举出根桥, 选举出根桥之后就只有根桥交换机会发送BPDU
2.6 STP的计算过程
2.6.1 选举根桥
STP在交换网络开始工作后, 每个交换机都会向网络中发送配置BPDU进行两两交互, 配置BPDU中包含交换机自己的桥ID.
网络中拥有最小桥ID(BID)的交换机成为根桥.
在一个连续的STP交换网络中只会存在一个根桥.
根桥是可以抢占的, 所以为了确保交换网络的稳定, 需要提前规划STP组网, 并将决定用作根桥的交换机的桥优先值设为0.
2.6.2 选举根接口
选举玩根桥后, 会在每台非根桥上选举一个根接口(RP), 每个交换机上有且只有一个根接口.
当非根桥交换机有多个接口接入网络中时, 根接口是其收到最优配置的BPDU的接口, 判断依据为: 1.最小根桥ID; 2.最小的RPC; 3.最小的网桥ID; 4.最小的接口ID.
是不是有点难理解? 简单来说, 根接口就是每台非根桥交换机上"通往"根桥的接口.
2.6.3 选举指定接口
根桥选举出来之后, 一般情况下根桥的所有接口都是指定接口(DP), 在其他链路上根据:1.最小RPC; 2.最小网桥ID; 3.最小接口ID; 来确保每段链路上都有一个指定接口.
2.6.4 阻塞非指定接口
字面意思, 将非根接口且非指定接口的接口阻塞, 称为阻塞接口(BP)或备份接口(AP), 从而消除环路.
2.7 比划比划
2.7.1 比划一
标出根接口、指定接口和阻塞接口:
- 选举根桥: 对比BID, 先看优先级, 都是4096, 再看桥mac地址, 选举出SW1为根桥;
- 选举根接口(RP): 先看SW2, 选择最小RPC(1000M<2000M), 选择GE0/0/1接口, SW3同理也是GE0/0/1;
- 选举指定接口(DP): 根桥SW1的GE0/0/0和GE0/0/1, 然后比较SW2-SW3上的两个接口: RPC相同(2000M=2000M), SW2的网桥ID更小, 所以选举SW2的GE0/0/2;
- 阻塞非指定接口(BP/AP): 阻塞SW3的GE0/0/2.
注: 上图的1000M为链路带宽, 根据IEEE802.1t标准cost(开销值)为20000, 通常链路带宽越小开销值越大;
2.7.2 比划二
与上一题不同的是, SW1-SW3之间带宽变为10M, cost更大, 所以SW3的GE0/0/1最终被阻塞
2.7.3 比划三
四段网络通路带宽一致
这题要注意的点是, 对于SW4的两个接口选举RP, 由于RCP都相等, 所以看接口对面设备的BID, 显然SW2的BID是更小的, 所以将SW4的GE0/0/1选举位RP; 然后通过RPC确认SW2的GE0/0/2和SW3的GE0/0/2为DP, 最后阻塞SW4的GE0/0/2
2.7.4 比划四
本题要点在于, 选举SW2的RP, 由于RPC都相同, 链路对端设备BID也相同, 所以只能通过比较对端接口ID(PID),
SW2上的GE0/0/1对端是SW1的GE0/0/1, PID会小于SW2上的GE0/0/2对端的SW1的GE0/0/2(注意: 这里比较的是链路对端接口的PID, 即SW1上两个接口的PID), 所以SW2选举GE0/0/1为RP, 最终阻塞GE0/0/2.
2.8 STP的接口状态
2.9 根桥故障
- 根桥SW1发送故障, 停止发送BPDU报文;
- 优先级次小的SW2等待MAX Age(默认20s)超时, 从而导致收到的BPDU报文失效, 知道上游出现故障;
- 非根桥会开始发送配置BPDU报文, 重新选举根桥;
- 经过重新选举后SW3被阻塞的A接口恢复正常状态;
- 根桥故障会导致50s左右的恢复时间.
3 STP的基础配置命令
-
配置生成树的工作模式
[SW1] stp mode {stp|rstp|mstp}
华为的交换机默认采用mstp
-
(可选)配置根桥
[SW1] stp root primary
将当前设备优先级置为0, 之后无法修改本设备优先级
注: 初始情况下交换机默认优先级为32768
-
(可选)备份根桥
[SW1] stp root secondary
将当前设备优先级设为4096, 之后无法修改本设备优先级
-
(可选) 配置交换机的STP优先级
[SW1] stp priority <priority>
-
(可选) 配置接口计算路径开销的策略
[SW1] stp pathcost-standard {dot1d-1998|dot1t|legacy}
设置当前接口路径开销值
[SW1-GigabitEthernet0/0/1] stp cost <cost>
-
(可选) 配置接口优先级
[SW1-intf] stp priority priority
缺省情况下交换机接口优先级取值为128
-
启用STP/RSTP/MSTP
[SW1] stp enable
-
查看STP信息
[SW1] display stp
查看接口STP信息
[SW1] display stp brief
没了, 就这样.
标签:BPDU,06,根桥,HCIA,接口,交换机,STP,SW1,ICT From: https://www.cnblogs.com/konjac-wjh/p/16840694.html