方 偉
(1.淮北職業(yè)技術(shù)學(xué)院計(jì)算機(jī)科學(xué)技術(shù)系,安徽淮北 235000;2.浙江大學(xué)控制科學(xué)與工程學(xué)院,浙江杭州 310000)
在傳統(tǒng)網(wǎng)絡(luò)設(shè)計(jì)中,為了提高網(wǎng)絡(luò)的穩(wěn)定性,通常在網(wǎng)絡(luò)核心層部署兩個(gè)交換機(jī),并且所有的匯聚層交換機(jī)都有兩條鏈路分別與核心層交換機(jī)相連,鏈路冗余由生成樹來實(shí)現(xiàn)。為了消除環(huán)路,在核心層及匯聚層交換機(jī)上配置MSTP協(xié)議阻塞一部分鏈路。為了提供冗余網(wǎng)關(guān),在核心層交換機(jī)上進(jìn)行配置VRRP協(xié)議。然而,復(fù)雜的網(wǎng)絡(luò)架構(gòu)增加了網(wǎng)絡(luò)操作與維護(hù)的復(fù)雜性,減少了投資回報(bào)率,大量的備份鏈路也轉(zhuǎn)換成虛擬邏輯設(shè)備。利用VSU技術(shù)可以將網(wǎng)絡(luò)內(nèi)核轉(zhuǎn)換成虛擬邏輯設(shè)備,用戶只要對(duì)虛擬設(shè)備進(jìn)行操作就可以實(shí)現(xiàn)對(duì)所有物理設(shè)備的管理[1-3]。這種虛擬設(shè)備既具有盒式設(shè)備低成本的優(yōu)點(diǎn),又具有框式分布式設(shè)備的擴(kuò)展性以及高可靠性。
VSU是一種將多臺(tái)設(shè)備虛擬成一臺(tái)設(shè)備來管理和使用的技術(shù),能夠顯著降低管理及拓?fù)溥壿嫃?fù)雜度,方便用戶管理和使用,其主要實(shí)現(xiàn)過程包括物理連接、拓?fù)浒l(fā)現(xiàn)和角色選舉。物理連接即通過VSL口連接兩臺(tái)設(shè)備,作為設(shè)備構(gòu)建VSU系統(tǒng)通信的線路。百兆、千兆、萬兆接口均可配置成為VSL接口,但在實(shí)際應(yīng)用中RSR77-X系列設(shè)備通常使用萬兆接口互聯(lián),同時(shí)采用雙VSL鏈路的部署方式(匯聚及接入設(shè)備除外)。拓?fù)浒l(fā)現(xiàn)通過交互VSU Hello報(bào)文攜帶拓?fù)湫畔?,包括本機(jī)的成員編號(hào)、設(shè)備優(yōu)先級(jí)、MAC信息、VSU端口連接關(guān)系等內(nèi)容[4-5]。角色選舉是通過選舉主備設(shè)備、拓?fù)涫諗?,形成VSU系統(tǒng)。其中Master角色的選舉規(guī)則是當(dāng)前主機(jī)優(yōu)先(先啟動(dòng)的設(shè)備優(yōu)先為主設(shè)備),設(shè)備優(yōu)先級(jí)大的優(yōu)先,MAC地址小的優(yōu)先。選舉完成后,Master向Slave發(fā)送Convergence報(bào)文,通知Slave一起進(jìn)行拓?fù)涫諗浚缓骎SU進(jìn)入管理與維護(hù)階段。Master將構(gòu)造兩臺(tái)設(shè)備的數(shù)據(jù)信息,包括設(shè)備線卡信息、接口信息、全局配置信息。VSU可實(shí)現(xiàn)基于線卡和接口編號(hào)的統(tǒng)一管理,管理通道路徑實(shí)現(xiàn)見圖1。VSU可直接在Master上統(tǒng)一管理本機(jī)和從機(jī)的線卡、接口。其中接口編號(hào)采用三維格式,如GigabitEthernet1/2/0,分別表示槽位號(hào)、子槽號(hào)和該子槽位上的接口編號(hào)。VSU虛擬化之后,接口編號(hào)增加一級(jí),采用四維格式(如GigabitEthernet 1/1/2/0),第一維數(shù)字1表示機(jī)箱成員設(shè)備編號(hào)。Master與VSU系統(tǒng)中其它設(shè)備也具有可靠的管理通道,例如RSR77-X是分布式設(shè)備,管理板負(fù)責(zé)管理設(shè)備。要實(shí)現(xiàn)管理就需要有管理通道,內(nèi)部的管理通道為IPC通道。IPC為上層模塊屏蔽掉其中的路徑(管理板-VSL鏈路-線卡等),在管理板與線卡間建立起直連的邏輯通道。
圖1 VSU管理通道路徑
VSL虛擬交換鏈路(Virtual Switching Link)是VSU最為核心的技術(shù)之一。VSL用來在兩臺(tái)成員路由器之間傳輸控制報(bào)文的特殊聚合鏈路。除了控制報(bào)文以外,可能存在跨機(jī)箱的數(shù)據(jù)報(bào)文通過VSL傳輸。VSL端口以聚合端口組的形式存在,由VSL傳輸?shù)臄?shù)據(jù)流根據(jù)流量平衡算法在聚合端口的各個(gè)成員之間進(jìn)行負(fù)載均衡。設(shè)備上可以用于VSL端口連接的物理端口稱為VSL成員端口,VSL成員端口可以是堆疊端口、以太網(wǎng)接口或者光口。優(yōu)先級(jí)是VSU成員路由器的另一個(gè)重要屬性,在角色選舉過程中用來確定成員路由器的角色。優(yōu)先級(jí)越高,被選舉為主機(jī)箱的可能性越大,取值范圍從1到255,缺省優(yōu)先級(jí)是100。成員設(shè)備的優(yōu)先級(jí)分為配置優(yōu)先級(jí)和運(yùn)行優(yōu)先級(jí),運(yùn)行優(yōu)先級(jí)在VSU運(yùn)行過程中不會(huì)變化。管理員修改配置優(yōu)先級(jí),運(yùn)行優(yōu)先級(jí)還是原來的值,保存配置并重啟后新配置的優(yōu)先級(jí)才會(huì)生效。
鏈路虛擬化技術(shù)AG實(shí)際上就是將兩條或者多條鏈路聚合成一條邏輯鏈路,目前僅支持以太鏈路聚合,一個(gè)聚合口最多支持8條成員鏈路。采用鏈路聚合后,邏輯鏈路的帶寬增加了n-1倍,這里n為聚合的路數(shù)。鏈路聚合后,對(duì)網(wǎng)絡(luò)層以及以上網(wǎng)絡(luò)層次均表現(xiàn)為一個(gè)端口,數(shù)據(jù)流可以實(shí)現(xiàn)快速切換,斷流時(shí)間在毫秒級(jí)別。被鏈路聚合連接在一起的兩個(gè)(或多個(gè))設(shè)備,通過內(nèi)部控制可以對(duì)聚合連接設(shè)備科學(xué)合理地分配數(shù)據(jù),從而實(shí)現(xiàn)負(fù)載分擔(dān)。
AG功能有靜態(tài)和動(dòng)態(tài)之分:靜態(tài)方式只有在本端接口關(guān)閉的情況下,接口才會(huì)退出聚合組,因此不適用于廣域網(wǎng)的場(chǎng)景;動(dòng)態(tài)方式在參與聚合的接口所在線路異常的情況下,接口才會(huì)退出聚合組。動(dòng)態(tài)檢測(cè)有LACP和BFD兩種協(xié)議可以實(shí)現(xiàn)(工作流程見圖2):LACP(Link Aggregation Control Protocol,鏈路匯聚控制協(xié)議)是一種實(shí)現(xiàn)鏈路動(dòng)態(tài)匯聚與解匯聚的協(xié)議,利用LACPDU(鏈路匯聚控制協(xié)議數(shù)據(jù)單元)實(shí)現(xiàn)對(duì)端數(shù)據(jù)信息傳輸。LACP鏈路的兩端分別稱為Actor和Partner,雙方通過LACPDU報(bào)文交換,將系統(tǒng)MAC、系統(tǒng)優(yōu)先級(jí)、操作Key等信息向?qū)Χ送ǜ?。?duì)端獲得上述信息后,與其它端口保存的信息進(jìn)行比較,以選擇能夠匯聚的端口[6-8]。雙方可以對(duì)端口加入或退出某個(gè)動(dòng)態(tài)匯聚組達(dá)成一致,從而確定哪些鏈路可以加入同一聚合組以及某一條鏈路何時(shí)能夠加入聚合組。RFC-7130標(biāo)準(zhǔn)的BFD協(xié)議可實(shí)現(xiàn)成員鏈路的檢查,RFC-7130規(guī)定在AG的每一個(gè)成員口上均建立獨(dú)立的BFD會(huì)話,獨(dú)立檢測(cè)而不相互影響。一旦某接口上BFD會(huì)話關(guān)閉,在數(shù)據(jù)面該接口從AG成員口中移除,不參與接收和發(fā)送數(shù)據(jù),所有數(shù)據(jù)流被快速的切換到正常的成員口上。簡(jiǎn)單理解,BFD探測(cè)的方式就是將BFD功能和AG功能聯(lián)動(dòng)。在BFD檢測(cè)到關(guān)閉時(shí),AG將對(duì)應(yīng)的接口移出聚合組,二者是互相獨(dú)立的。BFD檢測(cè)可配置成最快速度150 ms檢測(cè)到故障,完成數(shù)據(jù)切換。
圖2 LACP、BFD協(xié)議工作原理圖
傳統(tǒng)的鏈路聚合技術(shù)包含流量均衡算法,通過哈希算法將報(bào)文(IP五元組)散列到不同的成員鏈路,達(dá)到流量均衡的目標(biāo)。該算法存在一定的缺陷:100條流被散列到成員口1,那么這條規(guī)則將永遠(yuǎn)不會(huì)改變,即使成員口1過載。IDA(Intelligence Dynamic Adjustment)是一種動(dòng)態(tài)的流量調(diào)度技術(shù),擯棄了傳統(tǒng)的靜態(tài)均衡算法,通過實(shí)時(shí)監(jiān)測(cè)AG成員鏈路的帶寬利用率,智能地進(jìn)行流量調(diào)整,始終保持每條鏈路的高效利用,其數(shù)據(jù)流量控制過程見圖3。IDA功能會(huì)根據(jù)AG成員接口的負(fù)載情況自動(dòng)選擇輕載鏈路,無需復(fù)雜配置,只需打開IDA功能開關(guān)即可[9-10]。
圖3 智能流量調(diào)度
在廣域網(wǎng)線路中,不同運(yùn)營(yíng)商鏈路的延時(shí)、丟包、抖動(dòng)存在差異。如果同一條流的報(bào)文被分配到不同線路,在接收端就會(huì)出現(xiàn)報(bào)文亂序的現(xiàn)象。亂序意味著丟包重傳,會(huì)降低鏈路的有效載荷,浪費(fèi)鏈路帶寬。在接收端采用緩存報(bào)文重組的方式雖然能夠降低重傳報(bào)文的幾率,但報(bào)文延遲和內(nèi)存消耗可能是無法接受的。IDA的流量均衡是基于流的,也就是說,同一條流的報(bào)文同一時(shí)刻只會(huì)在一條成員鏈路中傳輸,避開了不同質(zhì)量的鏈路對(duì)流的影響。在此基礎(chǔ)之上,IDA智能流量調(diào)度還提供了兩個(gè)子功能:用戶可根據(jù)需求,指定特定業(yè)務(wù)流到固定鏈路上傳輸,該類業(yè)務(wù)流將不被調(diào)整,除非鏈路故障;用戶可以指定特定業(yè)務(wù)流優(yōu)先在優(yōu)質(zhì)的鏈路上傳輸,當(dāng)鏈路過載時(shí),才調(diào)整業(yè)務(wù)流到另外的鏈路。這兩個(gè)子功能是利用與HQOS聯(lián)動(dòng)來實(shí)現(xiàn)的,通過設(shè)置鏈路和HQOS流動(dòng)作的親和屬性操作。將業(yè)務(wù)和鏈路關(guān)聯(lián)起來。在某些特定場(chǎng)景下,設(shè)備的配置要隨著外部狀態(tài)的改變而作出相應(yīng)的調(diào)整。傳統(tǒng)的技術(shù)想要做到這一點(diǎn)需使用網(wǎng)管或CLI進(jìn)行人工修改配置,而IDA策略調(diào)整可智能調(diào)整,無需人工干預(yù)[11]。
采用VSU技術(shù)將2臺(tái)RSR20-14F路由器虛擬化成1臺(tái)路由器,可簡(jiǎn)化網(wǎng)絡(luò)管理、維護(hù)流程,無需使用VRRP+MSTP等技術(shù)架構(gòu)。通過設(shè)置虛擬化優(yōu)先級(jí),區(qū)分2臺(tái)RSR20-14F:優(yōu)先級(jí)高為VSU-主路由器,優(yōu)先級(jí)低為VSU-備。2臺(tái)RSR20-14F通過GE0/1口互連1條網(wǎng)線作為VSU的VSL鏈路,通過FE1/46和FE1/47互連2條網(wǎng)線作為VSU的雙機(jī)心跳檢測(cè)鏈路,同時(shí)作為廣域網(wǎng)數(shù)據(jù)傳輸鏈路。將帶寬高的主鏈路接入VSU-主路由器GE0/0,帶寬低的備鏈路接入VSU-備路由器GE0/0。開啟生成樹功能,確保成為網(wǎng)點(diǎn)局域網(wǎng)絡(luò)的主根橋,實(shí)現(xiàn)生成樹優(yōu)化計(jì)算;開啟全局RLDP功能,實(shí)現(xiàn)基于端口維度的防環(huán)功能,下聯(lián)終端的端口配置RLDP處理動(dòng)作為Shutdown;開啟HQOS功能,區(qū)分生產(chǎn)和辦公業(yè)務(wù),優(yōu)先保證生產(chǎn)業(yè)務(wù)[12-13]。
為了實(shí)現(xiàn)端口數(shù)量擴(kuò)展和廣域網(wǎng)內(nèi)各終端設(shè)備互聯(lián),虛擬化路由器可以通過Trunk端口下聯(lián)網(wǎng)點(diǎn)接入交換機(jī)。單鏈路接入交換機(jī)可以單線接入VSU-主路由器或者VSU-備路由器交換端口,雙鏈路接入交換機(jī)可以雙線路分別接入VSU-主路由器和VSU-備路由器對(duì)應(yīng)交換端口,其中注意接入交換機(jī)必須開啟生成樹功能。低端口號(hào)端口(如1/1)連接VSU-主路由器端口,高端口號(hào)端口(1/2)連接VSU-備路由器端口。此時(shí)備鏈路如果被STP阻塞,業(yè)務(wù)終端(生產(chǎn)、辦公、WLAN)等可以接入虛擬化路由器RSR20-14F的交換物理口,也可以接入下聯(lián)的網(wǎng)點(diǎn)接入交換機(jī)的交換物理端口。具體網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)見圖4。
圖4 網(wǎng)點(diǎn)虛擬化方案拓?fù)湓O(shè)計(jì)
將GE0/1與GE0/1用網(wǎng)線互連,作為虛擬化VSL鏈路(內(nèi)部數(shù)據(jù)通信接口)。設(shè)置1號(hào)設(shè)備虛擬化優(yōu)先級(jí)為200,保證1號(hào)設(shè)備成為VSU-主設(shè)備,同時(shí)將路由器從單機(jī)模式切換成虛擬化模式;設(shè)置2號(hào)設(shè)備虛擬化優(yōu)先級(jí)為150,保證2號(hào)設(shè)備成為VSU-備,同時(shí)將路由器從單機(jī)模式切換成虛擬化模式。如果實(shí)施過程出現(xiàn)1號(hào)設(shè)備為VSU-備,則應(yīng)斷電重啟2號(hào)設(shè)備。2號(hào)設(shè)備重啟后查看1號(hào)設(shè)備角色狀態(tài)值為Active,確保1號(hào)設(shè)備為VSU-主。代碼主要實(shí)現(xiàn)如下:
# configure terminal
(config)#switch virtual domain 1
(config-vs-domain)#switch 1(or 2)
(config-vs-domain)#switch 1(or 2) priority 200(or150)
(config-vs-domain)#switch 1(or 2) description RSR20 14F-1(or 2)
(config)#vsl-aggregateport 1
(config-vsl-ap-1)#port-member interface GigabitEthernet 0/1
HQoS配置:
interface GigabitEthernet 1/0/0
port-queue pq shaping 20000///運(yùn)營(yíng)商提供的鏈路帶寬,例如:20M
interface GigabitEthernet 2/0/0
port-queue pq shaping 10000///運(yùn)營(yíng)商提供的鏈路帶寬,例如:10M
interface VLAN 140
traffic-policy HQoS inbound
interface VLAN 110
traffic-policy HQoS inbound
默認(rèn)靜態(tài)路由指向主用鏈路優(yōu)先級(jí)高,指向備用鏈路優(yōu)先級(jí)低;
ip route 0.0.0.0 0.0.0.0 38.16.X.X
ip route 0.0.0.0 0.0.0.0 38.16.X.Y 70
WLAN業(yè)務(wù)靜態(tài)路由指向備鏈路優(yōu)先級(jí)高,指向主鏈路優(yōu)先級(jí)低;
ip route 38.0.5.0 255.255.255.0 38.16.X.Y
ip route 38.0.5.0 255.255.255.0 38.16.X.X 70
正常情況下,生產(chǎn)、辦公、其它業(yè)務(wù)走主鏈路,WLAN走備鏈路。如果能精確區(qū)分目的網(wǎng)段是辦公業(yè)務(wù)訪問,也可以配置對(duì)應(yīng)的靜態(tài)路由讓辦公業(yè)務(wù)走備鏈路,實(shí)現(xiàn)鏈路負(fù)載分擔(dān)。此外,接入交換機(jī)必須開啟生成樹功能,生成樹優(yōu)先級(jí)保持默認(rèn)配置,連接VSU-主(RSR20-14F-1)路由器端口號(hào)小于連接VSU-備路由器(RSR20-14F-2)端口號(hào),如1/44接VSU-主、1/45接VSU-備。此時(shí),接入交換機(jī)與虛擬化路由器之間存在環(huán)路,生成樹計(jì)算會(huì)阻塞接入交換機(jī)連接VSU-備路由器(RSR20-14F-2)端口。當(dāng)主鏈路故障時(shí),該端口連接的備份鏈路會(huì)被收斂激活,成為鏈路備份。這種設(shè)計(jì)能有效解決以下問題:保證下行流量從VSU-主路由器轉(zhuǎn)發(fā),當(dāng)2條雙機(jī)檢測(cè)鏈路或VSL鏈路不小心被拔掉后,VSU-備路由器會(huì)失效。此時(shí)下聯(lián)交換機(jī)依然可以通過VSU-主鏈路進(jìn)行數(shù)據(jù)訪問,不受影響,否則需要經(jīng)過1次鏈路收斂切換的中斷影響。
虛擬化路由器邏輯上為1臺(tái)設(shè)備,在2臺(tái)設(shè)備的虛擬化線路(VSL)中斷時(shí),就會(huì)出現(xiàn)雙主機(jī)。此時(shí)網(wǎng)絡(luò)上有兩臺(tái)配置完全一樣的設(shè)備,會(huì)導(dǎo)致地址沖突等情況,影響網(wǎng)絡(luò)正常運(yùn)行。因此,需要配置雙主機(jī)探測(cè)協(xié)議來解決。RSR20-14F只有1條VSL鏈路,可以配置1條或者多條DAD-BFD雙主機(jī)檢測(cè)線路。多條線路實(shí)際聚合成1個(gè)二層聚合鏈路(AG),它既作雙主機(jī)檢測(cè),也是雙機(jī)間二層數(shù)據(jù)的通道。網(wǎng)絡(luò)互聯(lián)全部采用2條雙主機(jī)檢測(cè)線路,1號(hào)設(shè)備1/46與2號(hào)設(shè)備1/46互連,2號(hào)設(shè)備1/47與2號(hào)設(shè)備1/47互連,如圖5所示。
圖5 雙主機(jī)檢測(cè)線路
相比MSTP、VRRP等傳統(tǒng)的冗余技術(shù)而言,VSU技術(shù)提高了鏈路的利用率,縮短了故障恢復(fù)時(shí)間,使網(wǎng)絡(luò)的穩(wěn)定性和可靠性得到有效的保障。通過網(wǎng)絡(luò)虛擬化改造,可以將多網(wǎng)絡(luò)設(shè)備虛擬成1臺(tái)設(shè)備來管理和使用,進(jìn)一步優(yōu)化了網(wǎng)點(diǎn)的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),提高了帶寬的利用率,顯著減低了管理復(fù)雜度和拓?fù)溥壿嫃?fù)雜度。隨著網(wǎng)絡(luò)應(yīng)用范圍的不斷發(fā)展以及對(duì)網(wǎng)絡(luò)性能要求的不斷提升,網(wǎng)絡(luò)虛擬化技術(shù)將會(huì)得到廣泛的應(yīng)用和發(fā)展。
長(zhǎng)春師范大學(xué)學(xué)報(bào)2019年6期