張韜
關(guān)鍵詞:虛擬化技術(shù);可靠性;成員設(shè)備;VSL 鏈路;雙主機(jī)檢測(cè)
中圖分類號(hào):TP393.1 文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1009-3044(2023)10-0081-03
0 引言
在傳統(tǒng)園區(qū)網(wǎng)中,為了增強(qiáng)網(wǎng)絡(luò)可靠性,匯聚層交換機(jī)通常都要分別連接到各臺(tái)核心層交換機(jī)上,利用MSTP+VRRP的經(jīng)典組合技術(shù)來達(dá)到效果,但同時(shí)也會(huì)帶來一些問題。網(wǎng)絡(luò)規(guī)模的不斷擴(kuò)大對(duì)高速訪問的需求和管理水平也提出了新的挑戰(zhàn),虛擬化技術(shù)的優(yōu)勢(shì)能有效降低信息化技術(shù)的成本,多角度全方位提升系統(tǒng)的可靠性、安全性[1],這樣不僅能夠充分挖掘網(wǎng)絡(luò)帶寬資源,使網(wǎng)絡(luò)系統(tǒng)可以達(dá)到更好的轉(zhuǎn)發(fā)效率和提升性能,而且方便統(tǒng)一管理。
1 VSU 技術(shù)概述
當(dāng)前在為了進(jìn)一步提升網(wǎng)絡(luò)系統(tǒng)整體可靠性和利用率的背景下,銳捷技術(shù)人員開發(fā)出一種VSU技術(shù)。VSU技術(shù)本質(zhì)上是一種網(wǎng)絡(luò)虛擬化技術(shù),是一種將多臺(tái)網(wǎng)絡(luò)設(shè)備虛擬成一臺(tái)設(shè)備來管理和使用的技術(shù),相比互備或者熱備方案,它更具優(yōu)勢(shì)[2],使用VSU 技術(shù)的交換機(jī)在邏輯上就相當(dāng)于一臺(tái)交換機(jī),從而可以達(dá)到更優(yōu)的效果。VSU技術(shù)在接入層、匯聚層、核心層交換機(jī),甚至是路由器等網(wǎng)絡(luò)設(shè)備中都可以進(jìn)行使用,這樣可以解決數(shù)據(jù)中心內(nèi)部網(wǎng)絡(luò)擴(kuò)展問題,實(shí)現(xiàn)大規(guī)模二層網(wǎng)絡(luò)和VLAN的延伸和虛擬機(jī)在數(shù)據(jù)中心內(nèi)部的大范圍遷移[3],從而完成大二層、扁平化的網(wǎng)絡(luò)設(shè)計(jì),如圖1所示。
相比傳統(tǒng)組網(wǎng)結(jié)構(gòu),VSU技術(shù)還具有以下優(yōu)勢(shì):
1)簡(jiǎn)化網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)。使用網(wǎng)絡(luò)虛擬化技術(shù)后,多臺(tái)交換機(jī)實(shí)際上組合成一臺(tái)虛擬交換機(jī),其他交換機(jī)可以通過聚合鏈路與VSU交換機(jī)建立連接。因?yàn)椴辉俅嬖诃h(huán)路問題,可以不需要開啟生成樹協(xié)議,簡(jiǎn)化了網(wǎng)絡(luò)配置;在成員交換機(jī)出現(xiàn)故障時(shí),也可以不用再依賴MSTP、VRRP等協(xié)議的收斂,提高了可靠性。同時(shí),各種網(wǎng)絡(luò)控制協(xié)議在一臺(tái)設(shè)備上運(yùn)行,也會(huì)減少設(shè)備間大量協(xié)議報(bào)文的交互,網(wǎng)絡(luò)系統(tǒng)運(yùn)行性能得到了優(yōu)化。
2)簡(jiǎn)化管理。使用VSU技術(shù)構(gòu)成一臺(tái)虛擬化設(shè)備后,管理人員之后只需要登錄其中的一臺(tái)交換機(jī)即可進(jìn)行統(tǒng)一管理,而不再需要單獨(dú)登錄到每臺(tái)交換機(jī)中進(jìn)行配置和管理。
3)擴(kuò)展交換機(jī)端口數(shù)量和轉(zhuǎn)發(fā)能力。通過組成VSU虛擬化系統(tǒng),可以提高用戶接入的交換機(jī)端口數(shù)量和提升網(wǎng)絡(luò)系統(tǒng)整體轉(zhuǎn)發(fā)能力。
4)提升帶寬和系統(tǒng)可靠性。當(dāng)VSU交換機(jī)和其他交換機(jī)通過聚合鏈路連接后,既可以增加到達(dá)其他交換機(jī)的帶寬,又能提供鏈路間的冗余性和負(fù)載均衡。如果某條鏈路出現(xiàn)故障,系統(tǒng)切換到另一條鏈路進(jìn)行數(shù)據(jù)轉(zhuǎn)發(fā)的時(shí)間將為毫秒級(jí),線路恢復(fù)時(shí)間將大為縮短。
2 VSU 技術(shù)原理
2.1 VSU 組成
1)域編號(hào)
域編號(hào)用于區(qū)分不同VSU系統(tǒng),它是VSU系統(tǒng)的標(biāo)識(shí)符,只有擁有相同域編號(hào)的設(shè)備才能形成同一個(gè)VSU系統(tǒng)。
2)設(shè)備編號(hào)
設(shè)備編號(hào)是每臺(tái)成員設(shè)備在虛擬化系統(tǒng)中的編號(hào),用來管理VSU中各成員設(shè)備以及配置成員設(shè)備上的接口標(biāo)識(shí)等,必須保證成員設(shè)備編號(hào)在同一個(gè)VSU 系統(tǒng)中具有唯一性。
3)設(shè)備優(yōu)先級(jí)
優(yōu)先級(jí)是每臺(tái)成員設(shè)備在選舉過程中確定的角色,優(yōu)先級(jí)最高設(shè)備為主設(shè)備。
4)設(shè)備角色
虛擬化系統(tǒng)由多臺(tái)物理設(shè)備組成,成員設(shè)備通過選舉機(jī)制,選擇出一臺(tái)主設(shè)備(Active)和一臺(tái)從設(shè)備(Standby),其余設(shè)備都是候選設(shè)備(Candidate)。主設(shè)備負(fù)責(zé)管理整個(gè)虛擬化系統(tǒng),運(yùn)行控制層面協(xié)議,并參與數(shù)據(jù)轉(zhuǎn)發(fā);而其他所有成員設(shè)備接收到的控制層面數(shù)據(jù)都將轉(zhuǎn)發(fā)給主設(shè)備進(jìn)行處理,不運(yùn)行控制層面協(xié)議,只參與數(shù)據(jù)報(bào)文轉(zhuǎn)發(fā);但從設(shè)備作為主設(shè)備的備用,也需要實(shí)時(shí)同步接收主設(shè)備狀態(tài)信息,從而達(dá)到同步熱備效果。當(dāng)主設(shè)備出現(xiàn)故障時(shí),從設(shè)備會(huì)自動(dòng)升級(jí)為主設(shè)備;當(dāng)從設(shè)備出現(xiàn)故障時(shí),系統(tǒng)會(huì)自動(dòng)從候選設(shè)備中選舉一個(gè)新的從設(shè)備。
2.2 VSL 鏈路
VSL虛擬交換鏈路是VSU系統(tǒng)中最為核心的技術(shù)之一[4],它是VSU系統(tǒng)中各成員設(shè)備間傳輸控制信息和數(shù)據(jù)流的核心鏈路,它對(duì)應(yīng)連接的物理端口為VSL成員端口,以太網(wǎng)接口、光口或者堆疊端口都可以作為VSL成員端口,但是否各種端口都支持要看設(shè)備具體型號(hào)。一般情況下,VSL鏈路是以聚合鏈路形式存在,并根據(jù)流量平衡算法在聚合組的各個(gè)成員之間進(jìn)行負(fù)載均衡。為了降低控制報(bào)文丟失的可能性,在VSL鏈路上,控制報(bào)文優(yōu)先級(jí)高于數(shù)據(jù)報(bào)文,會(huì)優(yōu)先傳輸。
2.3 VSU 報(bào)文轉(zhuǎn)發(fā)原理
VSU采用分布式轉(zhuǎn)發(fā)技術(shù)實(shí)現(xiàn)報(bào)文的轉(zhuǎn)發(fā),充分發(fā)揮每個(gè)成員設(shè)備的處理能力。當(dāng)VSU系統(tǒng)中的每個(gè)成員設(shè)備收到待轉(zhuǎn)發(fā)的報(bào)文時(shí),通過查詢本機(jī)的轉(zhuǎn)發(fā)表將報(bào)文從對(duì)應(yīng)成員設(shè)備上的某個(gè)接口發(fā)出去,VSU 系統(tǒng)中所有接口都可以作為出接口。而對(duì)于三層數(shù)據(jù)報(bào)文來說,不管它在VSU系統(tǒng)內(nèi)部傳輸時(shí)經(jīng)過多少成員設(shè)備,實(shí)際上只相當(dāng)于經(jīng)過了一個(gè)三層設(shè)備。
3 VSU 組網(wǎng)拓?fù)浼夹g(shù)
3.1 VSU 拓?fù)浣Y(jié)構(gòu)
VSU系統(tǒng)支持“線形”和“環(huán)形”兩種拓?fù)浣Y(jié)構(gòu)。線形拓?fù)浣Y(jié)構(gòu)連接簡(jiǎn)單,使用接口和線纜較少,但可靠性較低;環(huán)形拓?fù)浣Y(jié)構(gòu)之間有兩條VSL鏈路,形成鏈路冗余,提高了VSU系統(tǒng)的可靠性。一般在選擇VSU系統(tǒng)拓?fù)浣Y(jié)構(gòu)時(shí),應(yīng)盡量選擇環(huán)形拓?fù)?,因?yàn)楫?dāng)環(huán)形拓?fù)渲腥魏螁闻_(tái)網(wǎng)絡(luò)設(shè)備或者某條VSL聚合鏈路出現(xiàn)故障時(shí),網(wǎng)絡(luò)拓?fù)渲皇菑沫h(huán)形變?yōu)榫€形,不會(huì)導(dǎo)致VSU系統(tǒng)的分裂,數(shù)據(jù)傳輸也不會(huì)受到影響,而線形結(jié)構(gòu)則會(huì)引起VSU系統(tǒng)分裂。
3.2 拓?fù)浒l(fā)現(xiàn)
VSU系統(tǒng)中的每臺(tái)成員設(shè)備之間都是通過交換Hello報(bào)文來收集所有拓?fù)湫畔?,Hello報(bào)文會(huì)攜帶每臺(tái)設(shè)備的優(yōu)先級(jí)等一系列拓?fù)湫畔5]。每個(gè)成員會(huì)在狀態(tài)為UP的VSL接口上向虛擬化系統(tǒng)中的其他成員設(shè)備洪泛Hello報(bào)文,其他成員收到報(bào)文后,會(huì)將報(bào)文從狀態(tài)為UP的非入口的其他VSL接口再轉(zhuǎn)發(fā)出去。通過Hello報(bào)文的洪泛,每個(gè)成員設(shè)備可以逐一學(xué)習(xí)到整個(gè)拓?fù)湫畔ⅲ?dāng)設(shè)備收集完拓?fù)湫畔⒑?,就開始進(jìn)行角色選舉。在角色選舉階段,所有的設(shè)備根據(jù)Active角色的選舉規(guī)則從拓?fù)渲羞x舉出Active;被選為Active的設(shè)備從剩下設(shè)備中選出Standby。選舉完成后,Active設(shè)備向整個(gè)拓?fù)浒l(fā)送Convergence報(bào)文,通知所有設(shè)備一起進(jìn)行拓?fù)涫諗?,然后VSU系統(tǒng)進(jìn)入管理與維護(hù)階段。
4 VSU 系統(tǒng)實(shí)現(xiàn)
文章以兩臺(tái)銳捷S5750-24GT4XS-L千兆交換機(jī)組建VSU系統(tǒng)為例進(jìn)行介紹和實(shí)施。
SW1(config)#switch virtual domain 1
//定義當(dāng)前VSU系統(tǒng)的域編號(hào)為1,取值范圍是1 到255,缺省是100
SW1(config-vs-domain)#switch 1
//定義當(dāng)前交換機(jī)在VSU系統(tǒng)中的成員編號(hào)是1
SW1(config-vs-domain)#switch 1 priority 200
//定義當(dāng)前交換機(jī)的優(yōu)先級(jí)是200,確保在VSU 系統(tǒng)中為active,缺省為100
SW1(config)#vsl-port
//VSL鏈路一般至少需要2條,一條鏈路的可靠性會(huì)較低,當(dāng)出現(xiàn)鏈路震蕩時(shí),VSU系統(tǒng)會(huì)非常不穩(wěn)定
SW1(config-vsl-port)#port-member int tenGi 0/27
SW1(config-vsl-port)#port-member int tenGi 0/28
//利用交換機(jī)27和28號(hào)接口,配置兩條VSL鏈路
SW2(config)#switch virtual domain 1
SW2(config-vs-domain)#switch 2 //定義在VSU 系統(tǒng)中的成員編號(hào)是2
SW2(config-vs-domain)#switch 2 priority 160
//定義當(dāng)前交換機(jī)的優(yōu)先級(jí)是160,確保在VSU 系統(tǒng)中為standby
和SW1一樣,把SW2上的tenGi 0/27和28號(hào)接口也加到VSL鏈路中。連接好VSL鏈路后,根據(jù)需要,可以先保存兩臺(tái)設(shè)備之前的配置,再一起切換為VSU模式。
SW1#switch convert mode virtual
Convert mode will backup and delete config file,and reload the switch. Are you sure to continue[yes/no]:y
設(shè)備重新啟動(dòng)后會(huì)自行組建VSU系統(tǒng)。組建完成后,VSU的管理之后也只能在其中的主設(shè)備上進(jìn)行,其他設(shè)備Console口默認(rèn)不能再進(jìn)行管理。同時(shí),交換機(jī)接口編號(hào)也從二維模式變?yōu)槿S模式,第一維表示VSU系統(tǒng)中成員交換機(jī)編號(hào)。在主設(shè)備上使用show switch virtual role命令可以查看到當(dāng)前S1為AC?TIVE角色,SW2為STANDBY角色等系統(tǒng)中各成員設(shè)備的有關(guān)信息。
5 雙主機(jī)檢測(cè)
VSL鏈路斷開后,會(huì)產(chǎn)生VSU系統(tǒng)分裂,導(dǎo)致AC?TIVE設(shè)備和STANDBY設(shè)備分到不同的VSU系統(tǒng)中,網(wǎng)絡(luò)上就會(huì)出現(xiàn)兩個(gè)配置相同的VSU系統(tǒng),且兩臺(tái)設(shè)備都為主設(shè)備角色,這時(shí)兩個(gè)VSU系統(tǒng)中任何一個(gè)虛擬接口的配置相同,就會(huì)出現(xiàn)IP地址沖突等許多嚴(yán)重問題,因此必須進(jìn)行雙主機(jī)檢測(cè)。
為了解決這些問題,需要在各臺(tái)交換機(jī)之間建立一條雙主機(jī)檢測(cè)鏈路機(jī)制,保證網(wǎng)絡(luò)系統(tǒng)仍然可用。當(dāng)VSL鏈路斷開時(shí),兩臺(tái)交換機(jī)開始通過雙主機(jī)檢測(cè)鏈路發(fā)送檢測(cè)報(bào)文,當(dāng)收到對(duì)端發(fā)來的雙主機(jī)檢測(cè)報(bào)文時(shí),就說明對(duì)端仍在正常運(yùn)行,存在兩個(gè)系統(tǒng),最后通過一定的規(guī)則,關(guān)閉其中一臺(tái)主機(jī)所在的VSU系統(tǒng),使其進(jìn)入Recover狀態(tài)。目前雙主機(jī)檢測(cè)有BFD 和聚合口兩種方式。
1)基于BFD檢測(cè)。在雙主機(jī)之間再建立一條物理鏈路,即心跳線,BFD的雙主機(jī)檢測(cè)端口必須是三層路由口,二層口或SVI口都不能作為BFD的檢測(cè)端口。BFD檢測(cè)采用擴(kuò)展BFD技術(shù),不能通過現(xiàn)有BFD 配置雙主機(jī)檢測(cè)口,同時(shí)為了減少帶寬資源的浪費(fèi),建議心跳線的檢測(cè)接口盡量使用帶寬速率低的接口,如圖2所示。
ZDXY(config)#interface gigabitEthernet 1/0/24
ZDXY(config-if-GigabitEthernet 1/0/24)#no switch port
//檢測(cè)端口不需要設(shè)置IP地址,但必須為三層物理接口
ZDXY(config)#interface gigabitEthernet 2/0/24
ZDXY(config-if-GigabitEthernet 2/0/24)#no switch port
ZDXY(config)#switch virtual domain 1
ZDXY(config-vs-domain)#dual-active detectionbfd//使用BFD檢測(cè)方式
ZDXY(config-vs-domain)#dual-active bfd interface gigabitEthernet 1/0/24
ZDXY(config-vs-domain)#dual-active bfd interface gigabitEthernet 2/0/24
//設(shè)置1/0/24和2/0/24為BFD雙主機(jī)檢測(cè)接口
2)基于聚合口檢測(cè)。當(dāng)VSL鏈路斷開后產(chǎn)生雙主機(jī)時(shí),兩個(gè)系統(tǒng)之間相互發(fā)送聚合口私有報(bào)文來進(jìn)行檢測(cè),并且要配置在交換機(jī)聚合端口上,而且上聯(lián)設(shè)備也要能轉(zhuǎn)發(fā)私有檢測(cè)報(bào)文,如圖3所示。
ZDXY(config)#interface range gi 1/0/24,gi 2/0/24
ZDXY(config-if-range)#port-group 1
ZDXY(config)#switch virtual domain 1
ZDXY(config-vs-domain)#dual-active detection ag?gregateport
//使用聚合口檢測(cè)方式
ZDXY(config-vs-domain)#dual-active interface ag?gregatePort 1
在上聯(lián)交換機(jī)ZDXY_UP 上開啟相應(yīng)聚合口MAD功能
ZDXY_UP(config-if-AggregatePort 1)#dad relay enable
3)例外接口。當(dāng)檢測(cè)到雙主機(jī)系統(tǒng)后,其中一臺(tái)主機(jī)會(huì)進(jìn)入recovery模式,所有成員業(yè)務(wù)結(jié)構(gòu)會(huì)關(guān)閉。為了保留某些特殊用途業(yè)務(wù)接口可以使用,如Telnet,可以將某些接口配置為不關(guān)閉的例外接口,但例外接口必須是路由接口,不能是VSL接口。
ZDXY(config-vs-domain)#dual-active exclude in?terface gi1/0/23 //例外口
6 結(jié)束語
交換機(jī)虛擬化技術(shù)可以大大降低網(wǎng)絡(luò)系統(tǒng)管理復(fù)雜度,增加網(wǎng)絡(luò)的整體性能,提高網(wǎng)絡(luò)帶寬的資源利用率。目前,主流網(wǎng)絡(luò)設(shè)備提供商都提供了相應(yīng)的網(wǎng)絡(luò)系統(tǒng)虛擬化技術(shù),除了銳捷的VSU技術(shù)外,還有華為的CSS技術(shù)、新華三的IRF技術(shù)等。未來隨著網(wǎng)絡(luò)業(yè)務(wù)需求的不斷擴(kuò)大和變化,虛擬化技術(shù)將會(huì)得到更為廣泛的應(yīng)用和發(fā)展。