赞
踩
生成树协议
生成树协议(英语:Spanning Tree Protocol,STP),是一种工作在OSI网络模型中的第二层(数据链路层)的通信协议,基本应用是防止交换机冗余链路产生的环路.用于确保以太网中无环路的逻辑拓扑结构.从而避免了广播风暴,大量占用交换机的资源。
背景:简单的网络设计容易带来单点故障,那么解决单点故障的办法是进入冗余部署。那么冗余的网络拓扑又会带来什么问题呢?
1.广播风暴
2.重复帧
3.MAC地址表抖动
BPDU(bridge protocol data unit):桥接协议数据单元
BPDU(NA阶段所要了解的主要信息):
root id:是选举出来的根桥的bridge-id
cost of path:交换机收到BPDU的时候,保存到接口的状态里面,累加path cost,发的时候不加path cost
编辑切换为居中
添加图片注释,不超过 140 字(可选)
bridge id:谁发的BPDU,就是这个sender-bridge id
port id:发送方的port id 交换机关心的组播MAC地址:0180. C200.0000
先选根桥 比较桥ID,谁小谁成为根桥。桥ID(BID)又包含两部分,优先级(默认32768)和MAC(交换机的背板地址),先比优先级,谁小谁优先,优先级一样的话,再比MAC地址,谁小谁优先。
选举根端口,首先比较到达根桥的cost,谁小谁成为根端口;如果cost一样,那么则比较发送BPDU的网桥的BID,谁小谁成为根端口;如果发送者的BID一样,那么则比较发送BPDU的网桥的端口,端口又分为两部分,端口优先级(默认128)和端口ID,也是谁小谁成为根端口。
选举指定端口,首先比较接口发送BPDU的cost,谁小谁成为指定端口;如果一样,则比较BPDU发送者的BID,谁小谁成为指定端口。
1.一个广播域中只存在一台根桥
2.一段链路有且只有一个指定端口
3.根桥上的所有端口都为指定端口
4.根端口和指定端口都为forwarding状态
5.非指定端口为blocking状态
6.根桥每2秒会发送一次BPDU
disable:该接口没有被激活。对于MAC地址,以及用户的数据都不敏感
block:可以接收BPDU,对于MAC地址不学习,对于用户数据不接收
listening:可以接收/发送BPDU,对于MAC地址不学习,对于用户数据不接收/不发送(过渡状态)
learning:可以接收/发送BPDU,学习MAC地址,对于用户数据不接收/不发送(过渡状态)
forwarding:可以接收/发送BPDU,对于MAC可以学习,对于用户数据可以接收/发送(最终状态)
block状态---〉forwarding状态的时候,有2种情况:
当block状态接口收到的是优质BPDU的时候,可以立即变为listening,然后经过forward-delay时间变为forwarding状态(大约30s变为forwarding)
当block状态接口收到的是劣质BPDU的时候,需要经过max-age(20s),才会变为listening状态,然后经过两个forward-delay时间变为forwarding状态(大约50s变为forwarding)
STP 标准生成树 802.1d
RSTP 快速生成树 802.1w
MSTP 多生成树 802.1s
CST(common spanning-tree) 公共生成树 / MST (multiple spanning-tree) 多生成树 / PVST(cisco私有) (per-vlan spanning-tree)每vlan生成树
扩展系统ID相当于VLAN ID标识,即对应每个VLAN一个生成树实例。
Switch (config) #spanning-tree vlan XX root primary
Switch (config) #spanning-tree vlan XX root secondary
Switch(config)#spanning-tree vlan 1 priority XX(优先级默认为32768,要为4096的倍数)
生成树的特性:portfast和Bpduguard
portfast(快速端口):主要是让与access接口相连的主机或服务器,不参与生成树的选举过程,接口瞬间进入forwarding,节约了30s的时间
Switch (config) #interface e0/0
Switch (config-if) #spanning-tree portfast
Switch (config) #spanning-tree portfast default
Bpduguard(BPDU防护):防止新接入的交换机影响了网络拓扑根桥的位置,导致网络拓扑发生变更,影响网络的性能,降低了网络的安全性
Switch (config) #interface e0/0
Switch (config-if) #spanning-tree bpduguard enable
Switch (config) #spanning-tree portfast bpduguard default
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。