局域網交換機實施冗餘和負載均衡(初級篇)

在局域網中,咱們爲了保證網絡的健壯性和穩定性,通常會在關鍵的部位實施冗餘,最(便)常(宜)見(點)的,就是實施鏈路冗餘或者設備冗餘:
局域網交換機實施冗餘和負載均衡(初級篇)api

局域網交換機實施冗餘和負載均衡(初級篇)

看起來是很爽了,實際上問題是大大的,好比圖1,若是交換機A、B之間的4個端口都處於轉發狀態,而此時下聯的任意某臺PC發出一個廣播包,會怎麼樣?很悲催!因爲交換機兩條線路造成了環路,而且交換機端口又不能隔離廣播包,全部的端口都會無條件的轉發這個廣播包,從而形成廣播風暴,最終會致使網絡資源耗盡,交換機死機。。。(你也可能會被XX罵一頓)網絡

爲了解決交換網絡實施冗餘致使的環路,大拿們開發了STP(Spanning Tree Protocol)生成樹協議,它的原理提及來也很簡單,把環路中的某一個端口關閉掉(阻塞),從而解決環路;當未阻塞的鏈路(主線)出現故障的時候,再把阻塞的那個端口打開,從而啓動備線,這樣就實現了冗餘,可是,同一時刻只能用一條線傳輸數據(還剩下一半的悲催)。負載均衡

局域網交換機實施冗餘和負載均衡(初級篇)

固然,即便開啓了STP(通常交換機都是默認開啓),你可能仍是會被XX罵!由於:第一,你浪費了一條線的資源,雖然實現了冗餘,可是未能負載均衡;第二,圖-2中,核心之間的鏈路被阻塞了,而下行的兩條鏈路倒是轉發的,這個算是哪門子的備份?(咱們應該實現的是下行的兩條鏈路之間的備份)ide

對於圖一的問題,若是咱們是chunǚ座的,有嚴重的強迫症(前提還要有錢),咱們設施了大量冗餘,然而永遠只有一條鏈路處於可用狀態(圖-3):spa

局域網交換機實施冗餘和負載均衡(初級篇)

對於這樣的冗餘網絡,咱們建議實施以太信道—EtherChannel,它能夠把最多8條相同的鏈路捆綁(虛擬)成一條,而對於STP來講,只認虛擬後的鏈路,既然只有一條鏈路,就不存在阻塞端口了。至於這些鏈路在EtherChannel中如何分配流量,這和STP已經沒有關係了,因此實施EtherChannel既能夠防止環路,又能夠實現帶寬的提高,還能夠實現自動負載均衡,好處太多。3d

EtherChannel有思科私有的PAGP協議,也有標準化的LACP協議,二者差異很小,可是互相不兼容。如下是圖-3實施思科PAGP的過程和效果:code

A(config)#inter range fa0/1-4
A(config-if-range)#shut    #關閉端口後再作以太信道的配置
A(config-if-range)#swi mo trunk   #配置中繼
A(config-if-range)#channel-protocol pagp   #思科默認就是PAGP協議,能夠不寫
A(config-if-range)#channel-group 1 mode desirable  #配置主動模式
A(config-if-range)#no shut

B(config)#inter range fa0/1-4
B(config-if-range)#shut
B(config-if-range)#swi mo tr
B(config-if-range)#channel-protocol pagp
B(config-if-range)#channel-group 1 mode auto  #配置被動模式
B(config-if-range)#no shut

局域網交換機實施冗餘和負載均衡(初級篇)

從拓撲的燈狀態已經看到,全部的鏈路都已經處於轉發狀態(綠燈),咱們也能夠經過查看STP狀態來驗證:blog

局域網交換機實施冗餘和負載均衡(初級篇)

話再說回來,對於圖二,不但默認選擇的阻塞鏈路有問題,並且因爲要實現備份的兩條鏈路分別是鏈接不一樣的核心交換機,沒法直接實施EtherChannel,又該怎麼辦呢?資源

在思科設備上,不管是開啓哪一種(新舊版本)生成樹,均可以實現,如圖-2,若是有兩個以上的VLAN,可讓不一樣VLAN的根部署在不一樣的核心交換機上,從而讓阻塞的端口分佈在不一樣的下行鏈路上。開發

局域網交換機實施冗餘和負載均衡(初級篇)

如下是以思科交換機爲例,實施基於VLAN的RSTP負載均衡的配置以及結果:

CORE-1(config)#vlan 2
CORE-1(config-vlan)#vlan 3
CORE-1(config-vlan)#inter g0/1-2
CORE-1(config-if-range)#swi trunk encapsulation dot1q   #三層交換機先配置封裝協議
CORE-1(config-if-range)#swi mo tr   #配置中繼

CORE-2(config)#vlan 2
CORE-2(config-vlan)#vlan 3
CORE-2(config-vlan)#inter g0/1-2
CORE-2(config-if-range)#swi trunk encapsulation dot1q 
CORE-2(config-if-range)#swi mo tr

A-1(config)#vlan 2
A-1(config-vlan)#vlan 3
A-1(config-vlan)#inter range g0/1-2
A-1(config-if-range)#swi mo tr
A-1(config-if-range)#inter fa0/1
A-1(config-if)#swi mo acc
A-1(config-if)#swi acc vlan 2
A-1(config-if)#inter fa0/2
A-1(config-if)#swi mo acc
A-1(config-if)#swi acc vlan 3

CORE-1(config)#spanning-tree mode rapid-pvst   #配置快速STP,思科叫RPVST
CORE-1(config)#spanning-tree vlan 2 root primary   #配置VLAN2的主根
CORE-1(config)#spanning-tree vlan 3 root secondary #配置VLAN3的備根

CORE-2(config)#sp m r
CORE-2(config)#span vlan 3 roo pri
CORE-2(config)#span vlan 2 roo sec

A-1(config)#sp m r

驗證拓撲中燈的狀態:
局域網交換機實施冗餘和負載均衡(初級篇)

注意,若是是華爲設備,因爲STP和RSTP不支持基於VLAN的STP負載均衡,因此要啓用MSTP才能實現。

對於圖-2的拓撲,你們還要了解一個技術,思科Nexus交換機上支持vPC,全稱是Virtual Port-Channel,是一種支持跨設備進行鏈路捆綁的協議,也就是容許一個設備使用2個上游的設備端口來實現Port Channel,這樣是否是更厲害了?固然不是全部設備都支持這種高級功能的,你懂的。

文章篇幅有限,詳細的STP、EtherChannel的原理和配置,能夠參考《網絡工程師小白入門》專欄:思科、華爲配置對比入門,結合wireshark抓包講解,一學三用!

雙11活動特惠,學院限時開團,原價51元,開團價39元:

詳情,請狠狠的戳:https://blog.51cto.com/cloumn/detail/55 局域網交換機實施冗餘和負載均衡(初級篇)

相關文章
相關標籤/搜索