Spanning Tree Protocol ——生成树
交换机MAC地址表:存放数据帧源MAC地址与交换机接收端口的对应关系
image image
方案一:存在单点故障
方案二:建议使用,但存在的问题是广播环路(广播风暴)桥接表破坏
问题产生的原因:源设备到目的设备之间的活动链路不止一条
解决办法:使用生成树协议保证源设置到目的设备之间的活动链路只有一条,同时也提供了链路的冗余
 
一、STP工作原理
1.BPDUBridge Protocol Data Unit):桥协议单元
功能:
选举根(核心)交换机
决定阻塞哪台交换机的哪个端口
监控网络状态(通告网络变化信息)
BPDU的封装
bridge ID:桥ID,用来代表交换机
组成:优先级+MAC地址
//优先级:0--65535,默认32768
//优先级和MAC都是越小越优先
root ID:根交换机ID,声明自己承认的根交换机
cost of path:路径开销,用于衡量路径的好坏
常见链路的开销(以太网):
Link Speed                cost
10Mbps                  100
100Mbps                 19
1Gbps                   4
10Gbps                  2
port ID:端口ID,用于标识端口(不同于端口号)
组成:端口优先级+端口号
端口优先级:0--255,默认255
端口优先级和端口号越小越好
hello timeBPDU发送时间,默认2S
forward delay:转发延时,默认15S
message age:最大存活周期,默认20S
image
二、术语
1.根交换机:网络中的核心交换机
2.根端口:到达根交换机最近的端口
3.指定交换机:某网段上到达根交换机最近的交换机,叫做该网段的指定交换机
4.指定端口:某网段的指定交换机上,连接该网段的端口,叫指定端口
//根交换机上所有端口都是根端口
image
例:网段的制定交换机为A123为制定端口。网段指定交换机看链路开销,假如网段开销小,则网段指定交换机为端口6
 
 
三、生成树工作步骤
1.确定根交换机
image
2.根据路径开销确定根端口
3.根据路径开销和桥ID,确定“指定交换机”
4.根据端口ID,确定指定交换机(通过端口ID确定指定端口)
image
四、生成树阻塞端口的原则
1.根端口和指定端口不能被阻塞
2.其他所有端口都被阻塞
 
 
五、生成树状态
1.禁用状态:手工把生成树关闭
2.阻塞状态:
特性:
MAC表:无端口与MAC对应关系
只接受BPDU,并直接传递给系统模块,但不发送BPDU
接收并响应网络管理消息,但并不传递该消息
丢弃从所连网段上收到的数据帧,或其他端口交换来的帧
3.侦听状态:
特性
MAC
接受并发送BPDU
接收并响应网络管理消息,但并不传递该消息
丢弃从所连网段上收到的数据帧,或其他端口交换来的帧
重点:当交换机一定时间内没有收到BPDU,就认为自己是根交换机,端口将进入侦听状态
//选举根交换机、根端口、指定交换机、指定端口发生在侦听状态期间,端口选出后,根端口和指定端口在15S后,进入学习状态,其他端口回到阻塞状态
4.学习状态:
构建MAC地址表
接收和发送BPDU
接收并响应网络管理消息,但并不传递该消息
丢弃从所连网段上收到的数据帧,或其他端口交换来的帧
5.转发状态:
特性:
构建MAC地址表
接收和发送BPDU
接收并响应网络管理消息,但并不传递该消息
转发从所连网段上收到的数据帧,或其他端口交换来的帧
端口状态的转换:
阻塞     侦听     学习     转发
image
20s+15s+15s=50s             0s+15s+15s=30s
 
 
六、生成树的配置
1.启用生成树
(config)#spannig-tree vlan vlan
2.修改根交换机
(config)#spanning-tree vlan vlan root primary
//降低交换机优先级来影响成为根交换机
(config)#spanning-tree vlan vlan priority 优先级
//优先级:0--61440,以4096递增,默认32768
合法的值为:4096,8192,12288,16384,20480,24576,28672,
32768,36864,40960,45056,49152,53248,57344,61440
3.修改vlan端口优先级
vlan接入端口
(config-if)#spanning-tree vlan port-priority 优先级
vlan干线端口
(config-if)#spanning-tree vlan vlan port-priority 优先级
//vlan号:EMI:1--4094   SMI1--1005
//priority:0---255,默认:128,数值越小,优先级越高
1VLAN端口设置优先级的典型应用
使用端口优先级可以实现负载分担:
当一台交换机上的两个端口形成回路时,用端口优先级可以决定哪个端口被打开,哪个端口被阻塞
image
在中继上,承载vlan3vlan8的流量:
为了负载分担,让中继1传输vlan3vlan5的流量,中继2传输vlan6vlan8的流量
一旦某中继出现故障,另一中继可以作为冗余。
Sw(config)#int f0/1
sw(config-if)#spanning-tree vlan 3 port-priority 10
sw(config-if)#spanning-tree vlan 4 port-priority 10
sw(config-if)#spanning-tree vlan 5 port-priority 10
Sw(config)#int f0/2
sw(config-if)#spanning-tree vlan 6 port-priority 10
sw(config-if)#spanning-tree vlan 7 port-priority 10
sw(config-if)#spanning-tree vlan 8 port-priority 10
4.配置vlan端口开销
vlan接入端口
(config-if)#spanning-tree cost 开销
//cost:1---200000000,默认:取决于接口介质速率
vlan干线端口
(config-if)#spanning-tree vlan vlan 开销
//vlan-id: smi:1---1005,  emi:1---4094
//cost:1---200000000,默认:取决于接口介质速率
2VLAN端口设置开销的典型应用
image
在中继上,承载vlan3vlan8的流量:
为了负载分担,让中继1传输vlan3vlan5的流量,中继2传输vlan6vlan8的流量
一旦某中继出现故障,另一中继可以作为冗余。
Sw(config)#int f0/1
sw(config-if)#spanning-tree vlan 3 cost 10
sw(config-if)#spanning-tree vlan 4 cost 10
sw(config-if)#spanning-tree vlan 5 cost 10
Sw(config)#int f0/2
sw(config-if)#spanning-tree vlan 6 cost 10
sw(config-if)#spanning-tree vlan 7 cost 10
sw(config-if)#spanning-tree vlan 8 cost 10
 
 
七、增强生成树(Enhancing Spanning Tree Protocol
1.port fast
应用场合:交换机上,连接PCserverrouter端口
机理:启用portfast技术的端口,会立即由阻塞状态变为转发状态,不经历“侦听状态”和“学习状态”
配置:(config-if)#spanning-tree portfast
image
2.uplink fast
应用场合:用于“上连链路”的交换机端口
//上连链路:接入层switch 到核心层switch的链路
机理:启用uplink fast技术的端口,会立即由阻塞状态变为转发状态,不经历“侦听状态”和“学习状态”
配置:(config)#spanning-tree uplinkfast
//自动开启所有上连端口
3.backbone fast
应用场合:核心交换机之间的链路故障(非直连链路故障)
机理:启用backbone fast技术的端口,当非直连链路故障时,立即把端口由阻塞状态变为侦听状态,15s后变学习状态,15s后变转发状态
配置:(config)#spanning-tree backbonefast
 
 
八、快速生成树(Rapid Spanning-tree protocol
特性:能使口快速进入到转发状态,而不依赖定时器的配置
快速STP状态:丢弃,学习,转发(传统STP5个)
RSTP端口的角色:
根端口
指定端口
替代端口:从其他网桥上收到更有用的BPDU,而处于阻塞状态的端口
image
④备份端口:从同一网桥上收到更有用的BPDU,而处于阻塞状态的端口
image
九、多生成树
1.特性:
为数据流提供多路径转发
提供负载分担能力
增强网络的容错能力
2.多生成树配置
启用多生成树(默认关闭)
(config)#spanning-tree mode mst
//该命令不仅启用了多生成树,同时也启用了快速生成树
指定多生成树参数
(config)#spanning-tree mst configuration
(config-mst)#name
//给生成树命名
(config-mst)#revision
//设置MST配置修订版本号:0--65535(描述vlan信息好坏)
(config-mst)#instance 实例号 vlan vlan
//指定生成树负责的vlan
实例号:0--15,描述STP是第几棵树
Vlan号:1---4096    语法格式:  1-1010,20,30
查看多生成树配置:show spanning-tree mst configuration
配置多生成树的根交换机:
(config)#spanning-tree mst 实例号 root primary(主根)
(config)#spanning-tree mst 实例号 root secondary (备用根)
//还是降低优先级来设置根
也可以通过设置“交换机优先级”来指定根和备份根
(config)#spanning-tree mst 实例号 priority 优先级
实例号:0--15
优先级:0--61440,以4096递增,默认32768
#show spanning-tree mst 实例号
配置MST开销
(config-if)#spanning-tree mst 实例号 cost 开销
实例号:0--15
开销:1--200000000
配置MST端口优先级
(config-if)#spanning-tree mst 实例号 port-priority 优先级
实例号:0--15
优先级:1-255,默认128,数值越小越优先

0

收藏

struggle1=1

92篇文章,140W+人气,6粉丝

Ctrl+Enter 发布

发布

取消

扫一扫,领取大礼包

0

分享
struggle1=1