2013年1月1日 星期二

使用Spanning Tree做Layer2 Load Sharing 的運用

使用Spanning Tree最常做的運用就是用來做不同VLAN在不同trunk link上的流量負載分流。
以本案為例,Switch0 Fa0/1<-->Switch1 Fa0/1間 與 Switch0 Fa0/2<-->Switch1 Fa0/2間都是VLAN trunk,我們建立兩個VLAN(VLAN1、VLAN2),原本的Spanning Tree結果,VLAN1和VLAN2的Blocking port會在Switch0的Fa0/2上,我們在Switch0上使用spanning-tree vlan 2 root primary讓vlan2的Root bridge為Switch0,也讓vlan2的blocking port在switch1的fa0/2上。

現在我們希望讓vlan 2的blocking port改成switch1的Fa0/1(當然,也可以讓vlan 2的blocking port也是在switch0上,但為了公平起見,我們希望switch1也有blocking port),在switch上可以調整的設定有兩種:

1.調整port priority
2.調整port cost

以上兩種設定的值一定是調整upstream的switch,在本案例中要改變switch1上的spanning tree port的狀態就要調整switch0(switch0為switch1的upstream、switch1為switch0的upstream)。

設定的方式就是打開原本的blocking port(打開Switch1的Fa0/2)或是block原本相比較的
port(關閉Switch1的Fa0/1)

A.調整port priority

    option1:調整switch0的Fa0/1,讓其port priority的值大於預設值128

    option2:調整switch1的Fa0/2,讓其port priority的值小於預設值128


    option1: Switch0(config)#interface fa 0/1
                 Switch0(config-if)#spanning-tree vlan 2 port-priority 240

   
    option2:Switch1(config)#interface fa 0/2
                Switch1(config-if)#spanning-tree vlan 2 port-priority 0



B.調整port cost

    option1:調整switch0的Fa0/1,讓其port cost的值大於預設值19

    option2:調整switch1的Fa0/2,讓其port cost的值小於預設值19


    option1: Switch0(config)#interface fa 0/1
                 Switch0(config-if)#spanning-tree vlan 2 cost 21

   
    option2:Switch1(config)#interface fa 0/2
                Switch1(config-if)#spanning-tree vlan 2 cost 18



 

4 則留言:

  1. 您好:
    剛看到調整port priority 的部分真的很謝謝你的提供
    但是我還是不太懂為甚麼Switch0 fa 0/1 的port-priority 要設240
    而switch1 Fa0/2 port-priority 要設定成 0 呢?

    回覆刪除
  2. 預設值是128,所以有兩種方式可以做,一個是將switch0的priority調高於128(240只是範例)、一個是將switch1的priority調低於128

    回覆刪除
  3. 那為甚麼是調整switch0的Fa0/1和switch1的Fa0/2呢?

    回覆刪除
    回覆
    1. 每一個vlan在某一個port上的spanning-tree priority是由對接的switch port上決定

      刪除