【科普】STP生成树协议

      最后更新:1星期前 手机定位技术交流文章

      生成树协议

      生成树协议(英语: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

      1. 先选根桥 比较桥ID,谁小谁成为根桥。桥ID(BID)又包含两部分,优先级(默认32768)和MAC(交换机的背板地址),先比优先级,谁小谁优先,优先级一样的话,再比MAC地址,谁小谁优先。

      2. 选举根端口,首先比较到达根桥的cost,谁小谁成为根端口;如果cost一样,那么则比较发送BPDU的网桥的BID,谁小谁成为根端口;如果发送者的BID一样,那么则比较发送BPDU的网桥的端口,端口又分为两部分,端口优先级(默认128)和端口ID,也是谁小谁成为根端口。

      3. 选举指定端口,首先比较接口发送BPDU的cost,谁小谁成为指定端口;如果一样,则比较BPDU发送者的BID,谁小谁成为指定端口。

      1.一个广播域中只存在一台根桥

      2.一段链路有且只有一个指定端口

      3.根桥上的所有端口都为指定端口

      4.根端口和指定端口都为forwarding状态

      5.非指定端口为blocking状态

      6.根桥每2秒会发送一次BPDU

      1. disable:该接口没有被激活。对于MAC地址,以及用户的数据都不敏感

      2. block:可以接收BPDU,对于MAC地址不学习,对于用户数据不接收

      3. listening:可以接收/发送BPDU,对于MAC地址不学习,对于用户数据不接收/不发送(过渡状态)

      4. learning:可以接收/发送BPDU,学习MAC地址,对于用户数据不接收/不发送(过渡状态)

      5. forwarding:可以接收/发送BPDU,对于MAC可以学习,对于用户数据可以接收/发送(最终状态)

      block状态---〉forwarding状态的时候,有2种情况:

      1. 当block状态接口收到的是优质BPDU的时候,可以立即变为listening,然后经过forward-delay时间变为forwarding状态(大约30s变为forwarding)

      2. 当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

      本文由 在线网速测试 整理编辑,转载请注明出处,原文链接:http://www.wangsu123.cn/news/16504.html

          热门文章

          文章分类