STP-生成树协议(spanning tree protocol)—rstp
生成树算法
广播风暴:形成物理环路会产生广播风暴
物理环路解决问题:单点故障所备份的备用网线
arp将已知的ip地址访问目标mac地址进行广播
arp类型:arp rarp 代理arp 无故arp(访问ip冲突)IP作用在一定范围上作用是标志唯一性的
STP-生成协议树_第1张图片

      stp:概述
          在逻辑上断开环路,防止广播风暴的产生
          当线路故障,阻塞接口被集火,恢复通信,起备份线路的作用
      cost:最有路径值
          生成树算法分为三个步骤:
      stp
        -定义
        -作用
        -类型
           1/802.1d-stp   :生成树协议                        pvst/pvst+(思科)
           2/802.1w-rstp  :快速生成树协议                    pv-rstp(思科)   
           3/802.1s-mstp  :多生成树协议
        -报文

      pv:per-vlan stp,即在

       stp的工作过程:
      1、确定交换机的角色
             根交换机:整个交换网络中,有且只有一个;
             非根交换机:剩余的其他交换机,都称之为非根交换机

         注意:每一个非根交换机都会计算出一条去往根交换机最短的、无环的、2层数据转发路径;并且最终该路径是“转发”状态;

         选举原则:比较每个交换机的BID(bridge ID):优先级+mac地址

         优先级:默认值为32768; 两个字节

         mac地址:使用的是交换机的主板mac  :两个字节
            比较原则-
                首先比较优先级,越小越好
                其次比较mac地址,越小越好

         root bridge 根 桥 

      2、确定端口的角色

             1、根端口:    在每一个非根交换机上,有且只有一个;距离根交换机最近的端口

             2、指定端口;  在每一个网段/segment中,有且只有一个;距离根交换机最近的端口
                           (根交换机的所有端口都是指定端口)
                            BPDU:
                            根网桥id     8字节   用于通告根网桥的ID
                            根路径成本   4字节   说明这个bpdu从根传输了多远,成本是多少
                            发送网桥id   8字节   发送这个bpdu往前的id
                            端口id       2字节   发送报文的端口的id

             3、非指定端口:其它所有端口,都叫“非指定端口”

      3、确定端口的状态
             down         -关闭(指的是当前端口没有启动stp)
             listening    -侦听;此时侦听得是网络中得所有的bpdu;目的是为了确定交换机和端口的角色;端口在该状态停留15s
             learning     -学习;该阶段主要是学习端口上受到的数据帧的源mac地址,从而形成mac地址表端口在该状态停留15s
             forwarding   -转发(最终状态)该状态实现数据包的发送和接收
             blocking     -阻塞(最终状态)该状态不能发送和接收数据包;只能接收bpdu

SW1#show spanning-tree

      BPDU类型:
          1、配置bpdu
                 用于创建和维护stp无环转发路径树
          2、tcn bpdu
                 只有当stp无环转发路径树(拓扑)变化的时候,才会产生并发送。
                 并且是:感知到该变化的交换机,产生tcn bpdu,只发送给根交换机,然后再由根交换机转发给其他的所有非根交换机
      bpdu
      -bridge protocol data unit -桥协议数据单元
      -使用组播发送bpdu
      两种类型
      配置bpdu
      拓扑变更通告(tcn)bpdu
                   -topology 
                   -change
                   -notifcation
      bpdu报文字段

      stp计时器:
         hello:交换机周期性发送bpdu的时间间隔
         forward-delay:转发延迟,默认时间为15s
         max-age:最大老化时间,默认时间为20s

      两字节十六比特   bit vlan   四bit优先级

stp配置命令:
priority为交换机的优先级,取值范围0-61440,步长4096,默认值为32768
华为
stp priority priority
更改端口的stp cost,在端口上开启/关闭stp功能
interface gi 0/0/1
stp cost{value}
stp {enable开启/disable}

spanning-tree VLAN1 priority

stp参数修改(思科):
1、修改交换机的stp优先级(确保网络中有主根交换机和副根交换机
spanning-tree vlan x priority {value},value 是4096的倍数
2、修改交换机的stp模式(必须确保网络的所有交换机是stp模式相同
spanning-tree mode {pvst/rapid-pvst/mstp}
3、修改交换机的端口cost
interface fas0/22(该链路指的是trunk链路)
spanning-tree vlan 3 cost {value}
4、针对某个vlan,关闭stp功能
no spanning-tree vlan x
验证命令:
show spanning-tree vlan x -可以查看交换机上关于vlan x 的stp信息
show spanning-tree -可以查看交换机上关于所有vlan的stp信息
show spanning-tree summary -可以查看交换机运行的stp的模式
show version -可以查看交换机的 base mac

注意:交换机上的stp功能,默认都是开启的:可以人工关闭

stp参数修改(华为)
1、修改交换机的stp优先级:
stp priority {value}- 必须得是4096的倍数
2、修改交换机的stp模式
stp mode {stp\rstp\matp}
3、修改交换机的端口stp cost:
interface fas0/13 stp cost ?{value}
4、交换机关闭stp
stp disabled {enable开启}
验证命令:
display stp {vlan、brilf

mstp网络中包含一个或多个mst域-MST region
每个mst region中包含一个或多个msti。组成msti的运行生成树协议的交换设备
mstp兼容stp
既可以快速收敛,又提供了数据转发的多个路径

      关闭边缘端口(pc机网口开启pbdu)关闭stp:或者将非交换机的端口,设置非边缘端口
      learning:    学习
      forwarding:  转发
      discarding:  丢弃,相当于之前stp中的down、blocking、listening