STP

(一)、STP技术的概念

  一、产生背景:
     1.链路冗余(减少单点故障,增加网络可靠性)

       网络链路和设备的冗余性(避免网络不够健壮导致的 单点故障 )

       链路的冗余会形成 交换网络的环路

     2.环路的影响

       广播风暴:      

          广播信息在网络中不停地转发,直至导致交换机出现超负荷运转,最终耗尽所有带宽资源、阻塞全网通信

          工程现场:如果发现交换机的灯疯狂闪烁、肯定存在环路

          造成广播风暴的原因:二层的广播报文,没有TTL的限制,会一直存在,并且再二层环路,原来越多

          如何解决广播风暴: 无解、重启设备

         多帧复制:

         单播的数据帧被多次复制传送到目的站点 ,在链路上会消耗带宽,消耗计算机的计算资源

            不稳定的CAM表(MAC地址表抖动):

         由于相同帧的拷贝在交换机的不同端口上被接收而引起的 MAC地址表不稳定

         交换机的一个接口能对应多个MAC地址。但是,一个MAC地址,只能对应一个接口

         MAC地址被 反复的记录在交换机的不同接口上,引起CAM表的抖动,影响交换机的正常通信。

    有没有一种方法, 在保证冗余的同时又不会有环路的危害?

    ##注解:冗余是物理链路上的冗余,但是逻辑上是要破除二层的环路的。

    既要冗余,还要无环,使用自动化的形式来实现===》 STP

  二、STP操作:

     1..生成树协议概述 

       IEEE 802.1d STP(生成树协议,Spanning-Tree Protocol)

       使冗余端口置于“阻塞状态” 网络中的计算机在通信时,只有一条链路生效 当这个链路出现故障时,将处于“阻塞状态”的端口重新打开,从而确保网络连接稳定可靠

      2.生成树是如何实现的?

       通过协议:STP  IEEE=802.1d

       (通过阻塞网络中某一个接口,实现物理线路正常连接,逻辑上接口down,避免环路危害)

       具体要阻塞哪一个端口?交换机之间的协商出来的===》BPDU报文,交换机通过BPDU中的关键的参数,进行选举,选举出来的结果,就是要阻塞的端口

       ##注解:1.生成树协议的BPDU

              交换机或者网桥之间周期性地发送STP的桥接协议数据单元(Bridge Protocol Data Unit ,BPDU

              用于实现STP的功能 每2秒发送一次的二层报文 组播发送,组播地址为:01-80-C2-00-00-00

              

            2.BPDU的传播

              BPDU(更小的Root BID或者更小的Root Path CoSTP刚启动时,每台交换机都认为自己是根网桥,向外泛洪BPDU 当交换机的一个端口收到高优先级的st等等)

              就在该端口保存这些信息,同时向所有端口更新并传播信息 如果收到比自己低优先级的BPDU,交换机就丢弃该信息   

         3.STP工作过程 

      第一步:选举一个根网桥

      第二步:在每一个非根网桥上选举一个根端口

      第三步:在每一个网段上选举一个指定端口

      第四步:阻塞非根、非指定端口        

      4.SYP的选举过程

       

       选举根桥 *

          根桥---Root bridge 桥==交换机

          最低网桥ID的交换机将成为根网桥

          比较BPDU中的关键参数 BID== bridge id 桥优先级+MAC地址 优先  级的范围0-65535(默认值32768),配置4096的倍数

          根桥是从所有的交换机中选举出来的,BID优先级越小越优先,如果优先级相同,比较MAC地址,越小越优先

       选举根端口 *

          所有非根桥交换机的端口都参加选举

          cost of path => 入方向的接口到达根桥的路径开销,越小越优先(接口到达根路径的开销值

 

          sender bid  =>  这个接口对端交换机的BID(BID== bridge id 桥优先级+MAC地址 优先级的范围0-65535(默认值32768)),越小越优先(BID越小,越靠近核心层

          sender pid  =>接口对端交换机的pid端口ID)  =优先级+端口编号组成 优先级的范围(0-255,默认128), 优先级和端口编号都是越小越优先

          local pid   => 本地端口号,越小越优先

         注意: 所有非根桥交换机的交换机,必须有根端口,有且只有一个

         STP路径成本(开销值):

          

 

       选举指定端口 *

          所有的非根桥交换机空余链路中选出来的指定端口(在两台交换机之间的链路上选举出来的)每条链路上只能有一个指定端口

          1、选举方式 : COST值

          此处的cost值是当前接口所在交换机的根端口到达根桥的开销(根路径开销)

          2、如果开销值一样:比较所在设备的BID,越小越优先

          3、若BID也相同,则比较所在交换机的PID(端口ID)

          根桥上所有的端口都是指定端口(有特殊情况)

          根端口对端交换机的接口也是指定端口

        阻塞端口(非指定端口)*

          剩下的端口就是被阻塞的端口

(二)、通过ensp来查看根桥、根端口、指定端口和阻塞端口

    1.交换机默认开启 STP

     stp enable(开启STP)    disable(关闭STP)

    2.各种命令

        1.查看每台交换机的命令:display stp   

            [Huawei]display stp

        CIST Bridge :32768.4c1f-cc7f-0d88           ##本机的BID

       CIST Root/ERPC :32768.4c1f-cc7f-0d88 / 0      ##根桥的BID

      2.----[Port1(GigabitEthernet0/0/1)][FORWARDING]  ##转发状态      

         ----[Port2(GigabitEthernet0/0/2)][DISCARDING]    ##阻塞状态

      Port Role :Root Port # 根端口 

      Port Role :Designated Port # 指定端口

     3.[Huawei]stp root primary                ##将交换机的优先级改到0

        4.将交换机设置为备份根桥
      [Huawei]stp root secondary    ##备根桥,优先级4096

     5.手动修改交换机的桥优先级()
      stp priority 优先级数          ##优先级需要为4096的倍数

     注解:1.STP的选举是需要一定的时间的,在刚开始选举的时候,所有的交换机都会认为自己是根桥。交换机就会都发送BPDU

        2.在选举完成后,只有一个根桥,只有根桥才会发送BPDU,

        3.非根交换机的根端口接受BPDU,指定端口负责转发BPDU

  

 

posted @ 2021-03-03 18:59  未成仙小魔女  阅读(1273)  评论(1)    收藏  举报