孟曉春
摘 要:最近幾年堆疊技術比較普遍的應用于各個行業(yè)的網(wǎng)絡環(huán)境中,本文通過對VRRP+STP技術特點及原理對比堆疊技術的各自優(yōu)劣勢,分析在某些環(huán)境中采用兩種方式的區(qū)別,以及兩種可靠性方案對業(yè)務的影響情況。
關鍵詞:STP(生成樹協(xié)議),VRRP(虛擬路由冗余協(xié)議),IRF(智能彈性架構),Stack(堆疊),CSS(集群交換系統(tǒng))
1 概述
在近些年的堆疊(stack)技術、irf(智能彈性架構)、CSS(集群交換系統(tǒng))技術的出現(xiàn),給傳統(tǒng)的網(wǎng)絡高可靠技術帶來了革新,如傳統(tǒng)的二層高可靠技術如STP(生成樹協(xié)議),MSTP(多生成樹協(xié)議),網(wǎng)關備份技術如VRRP(虛擬路由冗余協(xié)議)以及動態(tài)路由協(xié)議,本文側重點主要結合我們現(xiàn)有生產(chǎn)網(wǎng)絡使用的高可靠性技術與堆疊技術對比的優(yōu)劣勢。
STP生成樹協(xié)議是一種二層協(xié)議,它通過BPDU的交互,計算出阻塞網(wǎng)絡中的冗余鏈路來消除二層環(huán)路,同時還具備鏈路備份的功能。
VRRP(Virtual Router Redundancy Protocol,虛擬路由器冗余協(xié)議)將可以承擔網(wǎng)關功能的一組路由器加入到備份組中,形成一臺虛擬路由器,由VRRP的選舉機制決定哪臺路由器承擔轉(zhuǎn)發(fā)任務,局域網(wǎng)內(nèi)的主機只需將虛擬路由器配置為缺省網(wǎng)關,VRRP是一種容錯協(xié)議,在提高可靠性的同時,簡化了主機的配置。
STACK(堆疊)/IRF(智能彈性架構)/CSS(集群交換系統(tǒng)),它的核心思想是將多臺設備通過IRF物理端口連接在一起,虛擬化成一臺“分布式設備”,使用這種虛擬化技術可以集合多臺設備的硬件資源和軟件處理能力,實現(xiàn)多臺設備的協(xié)同工作、統(tǒng)一管理和不間斷維護。
2 STP+VRRP對比堆疊Stack/IRF/CSS實現(xiàn)過程
我們通過eSNP模擬器來模擬STP+VRRP的實現(xiàn)過程。
Stp+VRRP的特點分析
通過配置stp協(xié)議阻斷數(shù)據(jù)鏈路層環(huán)路,在結合VRRP協(xié)議實現(xiàn)對網(wǎng)關地址的備份,我們將核心1的生成樹優(yōu)先級設置為0全網(wǎng)最高,核心2為4096,其他接入設備默認為65535。
配置命令如下:
[Switch-1]stp instance 0 priority 0
[Switch-1]interface Vlanif1
[Switch-1-vlanif] ip address 10.0.0.252 255.255.255.0
[Switch-1-vlanif] vrrp vrid 1 virtual-ip 10.0.0.254
[Switch-1-vlanif] vrrp vrid 1 priority 120
[Switch-2]stp instance 0 priority 4096
[Switch-2-vlanif]interface Vlanif1
ip address 10.0.0.253 255.255.255.0
[Switch-1-vlanif] vrrp vrid 1 virtual-ip 10.0.0.254
如上圖1所示,我們將核心-1的G0/0/2口鏈路故障,這時PC2,PC3會有30秒的中斷時間(block-learn-fowarding狀態(tài)的轉(zhuǎn)換),這個中斷時間我們可以通過在接入交換機連接PC的端口開啟邊緣端口(stp edge-port enable)功能進行規(guī)避,這個需要在所有的接入交換機上配置,在大型的網(wǎng)絡環(huán)境實現(xiàn)及管理量比較大。
當核心1-核心2之間的G0/0/1端口鏈路故障,這樣VRRP的交互報文通過接入交換機來完成,這樣的流量模型并不合理,但是不至于導致業(yè)務中斷。
接入交換機雙鏈路上行到2臺核心交換機,兩條鏈路的關系為轉(zhuǎn)發(fā)、阻斷狀態(tài),兩條鏈路的利用率是50%,如果利用MSTP可以實現(xiàn)負載分擔(MSTP對接入交換機的資源占用比較大),但在大多數(shù)情況下,一臺接入交換機的數(shù)據(jù)都在一個VLAN內(nèi),在同一臺接入交換機下來說,如果在一臺接入交換機具有大量的流量到核心交換機情況,實際的2條鏈路只有1條被利用起來。
堆疊STACK/IRF環(huán)境的實現(xiàn)過程:
目前大多數(shù)廠家的堆疊技術也稱之為虛擬化技術,虛擬化技術有多虛一,一虛多,縱向虛擬化,使用最多的是多臺虛擬為一臺,下文的虛擬數(shù)量我們主要以2虛1為實例進行分析
如圖2所示,原有的2臺核心交換機堆疊為1臺邏輯設備,首先需要命令通過更改成員交換機的默認編號0修改為1,執(zhí)行命令
[Switch-1] stack slot 0 renumber 1
修改后重新啟動交換機1,重啟后所有端口及slot number變?yōu)?,分別配置交換機1、2的堆疊邏輯口,配置以下命令
[Switch-1] stack port interface gigabitethernet 0/0/27 enable
[Switch-1] stack port interface gigabitethernet 0/0/28 enable
[Switch-1] interface stack-port 0/1
[Switch-1-stack-port0/1] port member-group interface gigabitethernet 0/0/27
[Switch-1-stack-port0/1] quit
[Switch-1] interface stack-port0/2
[Switch-1-stack-port0/2]port member-group interface gigabitethernet 0/0/28
[Switch-1-stack-port0/2] quit
[Switch-2] stack port interface gigabitethernet 0/0/27 enable
[Switch-2] stack port interface gigabitethernet 0/0/28 enable
[Switch-2] interface stack-port 0/1
[Switch-2-stack-port0/1] port member-group interface gigabitethernet 0/0/27
[Switch-2-stack-port0/1] quit
[Switch-2] interface stack-port 0/2
[Switch-2-stack-port0/2] port member-group interface gigabitethernet 0/0/28
[Switch-2-stack-port0/2] quit
連接堆疊電纜,這時switch-2檢測到堆疊的成員后,回重新啟動,啟動后兩臺物理設備堆疊為1臺邏輯設備,通過dis stack 可以查看到堆疊成功
堆疊成功后,我們可以將連接接入交換機的2條鏈路做成鏈路聚合,做到鏈路可靠性及端口性能的提升,配置eth-trunk口命令:
[Switch-1] interface eth-trunk 10
[Switch-1-Eth-Trunk10]trunkport G0/0/1
[Switch-1-Eth-Trunk10] trunkport G0/0/4
配置完成堆疊及聚合,端口速率疊加為2G,如圖4顯示
通過以上完成堆疊和鏈路聚合,實現(xiàn)了設備管理的簡化,以及性能的提升,同時提高了可靠性,這時我們斷開其中一條鏈路,G0/0/1,業(yè)務不會丟包或者會丟1個包而已,對于所有的TCP業(yè)務來說都不會對業(yè)務構成影響,我們上述配置的聚合是最為基本的普通normal模式聚合,這種聚合模式主要取決于接口的狀態(tài)來決定聚合端口是否被選中,這樣對于A-B兩臺直連的環(huán)境來說沒有什么問題,當一端端口DOWN掉后對端端口也跟隨DOWN掉,A-B設備的物理端口狀態(tài)一直,如果對于跨傳輸設備的鏈路聚合模式我們可以采用動態(tài)聚合模式通過LACP(Link Aggregation Control Protocol,鏈路聚合控制協(xié)議)協(xié)議實現(xiàn),這樣可以避免一側的傳輸設備端口DOWN掉,而對端的端口并不從聚合組中刪除掉,導致部分流量通過中斷的鏈路轉(zhuǎn)發(fā),流量被丟棄掉,導致業(yè)務不正常,如圖5所示
使用LACP聚合在兩端的設備端口會交互lacpdu報文,這樣兩端端口會有交互報文,如果一段傳輸鏈路故障,另一側端口會很快的感知到,從而刪除聚合組中的端口成員,保證業(yè)務流量經(jīng)過兩側都正常的鏈路轉(zhuǎn)發(fā)。
關于成員的角色我們可以通過圖3看到2臺物理交換機堆疊后的成員狀態(tài),如果是master代表是這臺交換機作為主控角色,這樣的情況,如果2臺交換機之間的鏈路發(fā)生故障,如果堆疊電纜斷開(多數(shù)情況下采用2條堆疊電纜做環(huán)形堆疊,2條堆疊鏈路出現(xiàn)故障的情況可能性很?。?,2臺交換機會分裂為2臺獨立的設備,各自都認為自己是master的角色,這種情況就會有問題,2臺交換機的運行配置會重疊,比如說網(wǎng)關配置、路由器配置等,對上下行設備的轉(zhuǎn)發(fā)構成了影響,針對這個問題,我們可以通過多主檢測來進行規(guī)避,下文我們主要使用LACP的方式進行檢測是否分裂。
在堆疊系統(tǒng)上,配置設備Eth-Trunk的代理方式雙主檢測功能。
[Switch-1] interface eth-trunk 1
[Switch-1-Eth-Trunk1] mode relay
在代理設備接入交換機上,配置Eth-Trunk的代理功能。
[Access] interface eth-trunk 1
[Access-Eth-Trunk1] mad detect mode relay
[Access-Eth-Trunk1] mode relay
我們模擬分裂的過程,將堆2條堆疊線纜斷開后,發(fā)現(xiàn)standby設備的所有端口都被關閉,不參與轉(zhuǎn)發(fā)數(shù)據(jù),這樣就避免了環(huán)路以及多主設備的配置沖突,除此以外的多主檢測例如,BFD MAD 。
對于動態(tài)路由的環(huán)境,堆疊技術也有相應的可靠性解決方案,如果2臺堆疊的交換機運行了ospf協(xié)議對于常規(guī)情況下,master standby設備切換導致鄰居關系重置以及的流量中斷和的路由震蕩,會導致業(yè)務中斷,為了規(guī)避這種情況的發(fā)生,我們可以結合nsr(不間斷路由)gr(平滑重啟)技術及配置,來做到當master設備的宕機,standby設備接替master的過程不需要重新建立ospf鄰居以及路由的更新收斂,GR環(huán)境Restarter路由器和Helper路由器之間重新建立鄰居關系,交換路由信息并同步數(shù)據(jù)庫,更新路由表和轉(zhuǎn)發(fā)表,從而實現(xiàn)OSPF快速收斂,保持網(wǎng)絡拓撲穩(wěn)定;NSR通過將OSPF鏈路狀態(tài)信息從主進程備份到備進程,使設備在發(fā)生主備倒換時可以自行完成鏈路狀態(tài)的恢復和路由的重新生成,鄰接關系不會發(fā)生中斷,從而避免了主備倒換對轉(zhuǎn)發(fā)業(yè)務的影響。
我們以h3c設備運行了OSPF協(xié)議并結合NSR配置如下:
[routerA]Ospf 1
[routerA-ospf]non-stop-routing
3 結論
經(jīng)過上述配置、原理分析對比了stp+vrrp和堆疊技術的比較,STP+VRRP主要依靠了協(xié)議本身可靠性的特點,而堆疊技術通過設備硬件基礎層面的可靠性,讓協(xié)議層做到無感知,當物理層發(fā)生變化不會影響到協(xié)議層,對于運行的路由協(xié)議以及用戶的業(yè)務流量不會產(chǎn)生影響,并且在帶寬利用率上有著明顯的優(yōu)勢,對于骨干及核心層次的設備建議部署這種堆疊,相對于接入層的拓撲變化較為頻繁來說,骨干核心層設備建議關閉STP協(xié)議,避免因不穩(wěn)定的鏈路導致STP計算導致的網(wǎng)絡中斷,核心層次的設備本身鏈路連接相對穩(wěn)定,對STP的需求并不明顯,對于匯聚及接入設備來說,啟用生成樹協(xié)議可以有效的避免誤解線纜、設備導致的二層環(huán)路,也要結合邊緣端口、跟橋保護、bpdu保護等配置,保證STP的健壯性。
在某些環(huán)境或者特定的設備型號,堆疊也受到一定的限制,比如說跨區(qū)域的(遠距離)堆疊,在匯聚層設備多數(shù)采用堆疊電纜的方式進行,然而堆疊電纜的長度比較短(1.5~5米),各廠商已經(jīng)提供了解決辦法,可以通過萬兆的光口進行堆疊,這樣可以通過光纜進行跨區(qū)域的遠距離堆疊,如果在某些特定型號設備無法支持光模塊堆疊,使用可靠性技術就需要結合STP+VRRP的方式。
在運維管理的角度來看,堆疊相比STP+vrrp的拓撲更簡潔,邏輯結構更清晰,管理節(jié)點更少,相比繁瑣的STP及VRRP配置,的確有較大的優(yōu)勢,運維更為清晰,簡化。
參考文獻:
[1] 梁廣民,王隆杰 編著.《思科網(wǎng)絡實驗室-路由交換實驗指南》.電子工業(yè)出版社,2009.3.
[2] 華為技術有限公司 編著《HCNP路由交換學習指南.》人民郵電出版社,2017.9.
[3] 新華三大學編著. 《路由交換技術詳解與實踐》.清華大學出版社,2017.8
[4] H3C-S系列交換機 配置指導書、華為S系列交換機配置指導書。