STP生成树协议的原理的讲解——二层交换技术

一、生成树协议的由来:由于网络中会存在单点故障而导致网络无法访问,系统瘫痪,因此在网络中提供冗余链路即引入备份链路来解决单点故障问题,但是------这样做的好处是:减少单点故障,增加网络可靠性;缺点是:产生交换环路,会导致广播风暴多帧复制MAC地址表抖动。因此生成树协议是为了提供冗余链路,解决环路问题

二、名词解释:

根桥:树的特点则是有根节点的,而这里的根桥就是相当于树的根节点。以根桥为起始点发散出去。

BID:选择根桥就需要交换机自我选择,需要交换机们的通信,这些信息被称为BPDU(桥协议数据单元),每两秒发送一次,BPDU的包含信息比较多,BID就是其中的一种。BID最小的就是根交换机ID。BID=桥优先级+桥Mac地址,一般交换机的桥优先级都是一样的(32768),所以一般比较Mac地址的大小。

根端口:不是根桥的交换机,选择一个端口用来连接根桥。根端口只能在非根交换机上选

指定端口:每两个交换机之间的链路上选择一个端口。

三、STP选择的步骤:

    1 .选择根桥;

      起始各个交换机都认为自己是根桥,然后进行互发帧进行根桥PK。BID最小的交换机为根交换机,BID由交换机优先级(2字节)和Mac地址(6字节)组合而成。先看优先级,优先级小的为根交换机;当优先级相等,看MAC地址,MAC地址小的为根交换机。

    2. 选择根端口(RP);

       本交换机各端口到达根交换机路径的开销—到达根桥的链路开销之和,找到一条开销最小的路径,交换机的这个端口就是根端口;如果路径开销相同,则比较发送BPDU交换机的Bridge ID,选较小的;如果发送者Bridge ID相同(即同一台交换),则比较发送者交换机的port ID,选较小的;如果发送者Port ID相同,则比较接收者的portID,选较小的。

    3. 选择指定端口(DP),而非指定端口进入阻塞状态;

              “指定端口的选举”是在每一个物理网段的不同端口之间选举出一个指定端口。它是依次根据以下三项条件来判定的:

            3.1某网段到根桥的路径开销最小。

           3.2接收数据时发送方(也就是链路对端的桥)的桥ID最小

           3.3发送方端口ID最小(端口ID有16位,它是由8位端口优先级和8位端口编号组成的,其中端口优先级的取值范围是0~240,缺省值是128,可以修改,但必须是16的倍数)。

    4. RP,DP设置为转发状态,其他端口为阻塞状态;

四、实例:

1.选择根桥:

     如图:比较全部设备的BID,其中E的BID最小(由于都是32769, 所以比较的Mac地址,得出数字最小的),所以E为根桥

2.选择根端口

     为每一个非根桥的交换机(这里指A,B,C,D)选择一个距离根桥的最短路径。

     即:C---->E :根端口为C的F0/3     路径为 19 最小。

             D---->E :根端口为D的F0/5     路径为 19 最小。

             B---->E :根端口为B的F0/3      路径为 19 最小。

             A---->E :他不能直接到达,需要第三方,他有两条路径;

                               A---->B---->E :路径为19+4

                               A---->C---->E :路径为19+4

                               路径开销一致进行第三条判断依据:最低发送者的BID(对于A来说,B,C为发送者),

                               因为C的BID小于B的BID,所以选择  A---->C---->E这条路径,所以

                               根端口为A的G0/2  路径为19+4 最小。

3.选择指定端口:

       为一对交换机之间选择指定端口(即路径最小的为指定端口):

       注意;这里是在接受的端口累加路径的开销值。从E出来的路径开销值初始值都为0

       3.1 D------------------E:   路径开销为19  (在E的端口初始值为0,在D的端口初始值为19,在中间的那条线上初始值为0)

       如何判断:     站在D,E的中间,  前往D的方向,到达D的端口,开销值为19.      前往E的方向,开销的初始值为0.   0<19 

       所以指定的端口为 E的F0/5;

      3.2   B-----------------D:   路径开销为4   (在B的端口初始值为19,在D的端口初始值为19  ;路径开销值是到达根桥的路径值)

        如何判断:  站在B,D的中间,由于路径开销相等,进行第三条判断(比较发送端的BID)因为B的BID(0060.3EEE.3E25)>D的BID(000C.CFD1.67BA)

         所以指定的端口为 D的G0/2;

      3.3 其他大都是在这样判断的。

4.根端口与指定端口设置为转发状态,其他端口为阻塞状态:  交换机自动设置,也可以管理员再次设置。

五、缺点

      反应时间慢

六、注意点

   1.一个网段中只有一个根桥
   2.非根网桥只有一个根端口
  3.根网桥的端口都是指定端口

七、参考文章

http://blog.51cto.com/wt7315/2069902

https://blog.csdn.net/qq_29630271/article/details/53889820?locationNum=2&fps=1

https://blog.csdn.net/broaden08/article/details/78151935

https://blog.csdn.net/lycb_gz/article/details/17347189

https://blog.csdn.net/qq_36248475/article/details/75008171

你可能感兴趣的:(网络技术原理)