spanning-tree Protocol 简称STP,生成树协议,被广泛部署在二层交换网络中,用于防止网络出现环路,同时增加网络的冗余性

  • STP是什么?
    • spanning-tree Protocol 简称STP,生成树协议,被广泛部署在二层交换网络中,用于防止网络出现环路,同时增加网络的冗余性。
    • 交换机之间通过生成树协议数据的交互来完成所需信息的搜索,在此基础上交换机进行响应的计算,最终将交换机的某个(或某些)接口阻塞从而打破环路
    • 生成树有多个标准,传统的生成树是802.1D标准。
    • cisco基于IEEE802.1D开发了增强的生成树协议PVST+
  • STP的计算(STP怎么用?)
    • 1每个交换网络选举一个根桥RB (Root Bridge)
      • Bridge Identifier 交换机的STP标识符
      • 拥有最小BID的交换机成为根桥
      • 桥优先级 (2B)桥MAC地址(6B)
    • 2每个非根桥上选举一个根端口RB (Root Port) (比较顺序(比小))
      • 根桥ID、
      • 到根桥的路径开销(路径开销是接口cost累加,而接口cost是基于接口带宽的)、
      • 网桥ID、
      • 端口ID
      • 非根桥某个接口到RB的路径开销扽与该接口的cost加上这个接口收到的BPDU中包含的path cost值
    • 3每个段选举一个指定端口DP (Designated Port)
      • 根桥ID 、到根桥的路径开销、网桥ID、端口ID
    • 4阻塞非指定端口NDP
  • STP用在哪里?
    • 二层及三层环路
      • 二层
      • 通常是由于网络有二层冗余的需求或人为的误 接线缆导致;需借助特定的协议或机制防环;二层数据帧头部中并没有任何信息可用于防止 数据帧被无止尽地转发。
      • 三层
      • 通常是由于路由环路导致网络中出现三层环路;动态路由协议有一定的防环能力;IP数据报文头部中的TTL值亦可用于防止报文 被无止尽地转发。
    • 网络存在单点/单线路故障 二层链路没有冗余
    • 多添加一台交换机 网络的冗余性增强了,但是却出现了二层环路 环路会导致广播风暴、mac表紊乱。所以出现了生成树协议
  • 概念性的知识点
  • BPDU Bridge Protocol Data Unit网桥协议数据单元
  • 字节 字段 描述
  • 8 根桥ID 根网桥的桥ID
  • 4 路径开销 到达根桥的STP cost
  • 8 网桥ID BPDU发送桥的ID
  • 2 端口ID BPDU发送网桥的端口ID(优先级+端口号)
  • port ID
    • port identifier 接口标识符,共有2个字节
    • port ID (2字节)=接口优先级(1字节)+接口编号 (1字节)
    • 缺省情况下接口优先级为128 范围是0-255
  • STP的端口状态
    • STP端口5种模式
    • disable 关闭 不收发任何报文
    • blocking 阻塞 不接收也不转发帧,接受并发送BPDU,不学习MAC地址
    • listening 侦听 不接收也不转发帧,接受并发送BPDU,不学习MAC地址
    • learning 学习 不接收也不转发帧,接受并发送BPDU,学习MAC地址
    • forwarding 转发 接收并转发帧,接受并且发送BPDU,学习MAC地址
  • STP的端口状态
    • 交换机开机需要等待30秒时间开始转发数据
    • 当某个正在使用的链路断掉,阻塞的端口需要50秒时间开始转发数据
  • 标准的生成树协议(CST)不考虑vlan,只在网络中生成和维护单个生成树 (每交换机生成树协议)所有CST的BPDU作为不带标记的帧通过本地VLAN进行传输
    • CST优点:计算STP时的CPU的负载
    • CST缺点:
    • 1.网络中的STP无法按照vlan的特殊需求,为vlan创建最优的STP路径,可能导致某些vlan存在次优路径。
    • 2.冗余的端口被阻塞掉之后,在每个vlan中就无法转发数据,会导致无法实现网络流量的负载均衡。
  • PVST 是思科私有协议,为每个vlan构造一棵生成树 (每个vlan生成树协议)只能通过cisco的中继链路ISL中继封装发送,这样协议的兼容性就差
  • PVST+ 是思科私有协议
    • PVST+的诞生就是为了兼容其他版本的BPDU而产生的,它可以通过ISL封装与PVST互通,也可以不给BPDU封装与802.1Q互通。
    • 可以与CST互操作,用来连接PVST与CST区域
  • PVST的实际应用
    • 配置网络中比较稳定的交换机为根网桥
    • 利用PVST实现网络的负载分担
  • PVST+、pvst 、CST的区别
    • CST成为公共生成树,在生成树收敛的时候,不考虑网络中vlan的存在,只在网络中生成和维护单个生成树;还有一个要注意的是:所有CST的BPDU作为不带标记的帧通过本地vlan进行传输。
    • 这样的工作模式有它自己的优点,就是计算STP时的CPU的负载。然而,也会带来问题:1.网络中的STP无法按照vlan的特殊需求,为vlan创建最优的STP路径,可能导致某些vlan存在次优路径。2.冗余的端口被阻塞掉之后,在每个vlan中就无法转发数据,会导致无法实现网络流量的负载均衡。
    • PVST是cisco私有的技术,per-vlan即给网络中的每个vlan都创建一颗生成树,这样可以解决CST的问题,为不同vlan通过冗余连接进行负载平衡。但是,是cisco的私有技术,只能通过cisco的中继链路ISL中继封装发送,这样协议的兼容性就差。
    • PVST+是cisco的另一个STP专利,但是与PVST不同,PVST+的诞生就是为了兼容其他版本的BPDU而产生的,它可以通过ISL封装与PVST互通,也可以不给BPDU封装与802.1Q互通。
  • 速端口(快速端口)
    • portfast是用于接入口的,一个正常的交换接口从down到up要经过4个状态 Down,listening,learning,fowarding 一共耗时50秒。速端口可以直接让交换接口从down到fowarding 状态 也是交换机的防止环路的机制
  • 命令
    • PVST配置命令
    • 启用生成树
      • Switch(config)#spanning-tree vlan vlan-list
    • 设置根网桥
      • Switch(config)#spanning-tree vlan vlan-list root primary | secondary
    • 修改网桥的优先级
      • Switch(config)#spanning-tree vlan vlan-list priority Bridge-priority
    • 修改端口成本
      • Switch(config-if)#spanning-tree vlan vlan-list cost cost
    • 修改端口优先级
      • Switch(config-if)#spanning-tree vlan vlan-list port-priority priority
    • 配置上行速链路(非根桥上)
      • Switch(config)#spanning-tree uplinkfast
    • 配置端口速链路(阻塞端口上)
      • Switch(config-if)#spanning-tree portfast
  • PVST配置的查看
  • 查看生成树的配置
    • Switch#show spanning-tree
  • 查看某个VLAN的生成树详细信息
    • Switch#show spanning-tree vlan vlan-id detail
  • 华为STP
  • STP根保护功能
  • 作用:防止另加一个根桥的保护功能
  • 原理:
  • 一旦根保护功能的指定端口收到优先级更低BPDU时,端口状态将进入Discarding<丢弃>状态,不再转发报文;经过一段时间,通常是两倍的Forward Delay<转发延迟>,如果端口一直没有收到优先级较高的BPDU,端口会自动恢复到正常的Forwarding状态。建议到根桥的接口配置。
  • stp root-protection <开启根网桥接口保护功能>
  • BPDU防护功能
    • 开启BPDU保护功能,如果收到从边缘端口收到STP报文,交换机会自动将该接口shutdown。从而确保根网桥不被抢占,同时确保不会出现环路。
  • 命令配置
  • 边缘端口<类似Cisco的速端>,配置在接PC的端口
  • [SW1-GigabitEthernet0/0/X]stp edged-port enable
  • [SW-1]stp bpdu-protection <开启保护功能>
  • [SW-1]error-down auto-recovery cause bpdu-protection interval 300
  • <300秒后自动UP,自动恢复机制>
  • 默认是已经启动STP,开机默认运行
  • stp mode stp <stp工作模式>
  • stp root primary <设置根桥>
  • stp root secondary <设置备份根桥>
  • display stp brief <查看STP>
  • stp disable <关闭STP功能>
  • stp enable <开启STP功能>
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值