專利名稱:一種網(wǎng)絡設備及其轉(zhuǎn)發(fā)信息更新方法
技術領域:
本發(fā)明涉及通信技術領域,特別涉及一種網(wǎng)絡設備及其轉(zhuǎn)發(fā)信息更新方法。
背景技術:
IRFdntelligent Resilient Framework,智能彈性架構)是一種堆疊技術。其核心思想是將多臺設備通過IRF端口連接在一起,進行必要的配置后,虛擬化成一臺“分布式設備”。使用這種虛擬化技術可以集合多臺設備的硬件資源和軟件處理能力,實現(xiàn)多臺設備的協(xié)同工作、統(tǒng)一管理和不間斷維護。如圖1所示,為現(xiàn)有技術中的一種典型的IRF組網(wǎng)結(jié)構示意圖。在一個典型的IRF組網(wǎng)中,包括兩類設備,IRF成員設備和獨立運行設備。其中獨立運行設備只能單機運行,不能與別的設備形成IRF,如圖1中的Device(設IRF成員設備則可以與其它設備互連形成IRF,如圖1中的Master (主設備)和 Slave (從設備)。各IRF成員設備可以統(tǒng)一進行管理。IRF主要具有以下優(yōu)點1、簡化管理。IRF形成之后,用戶通過任意成員設備的任意端口都可以登錄IRF系統(tǒng),對IRF內(nèi)所有成員設備進行統(tǒng)一管理。2、高可靠性。IRF的高可靠性體現(xiàn)在多個方面,例如IRF由多臺成員設備組成,Master設備負責IRF的運行、管理和維護,Slave設備在作為備份的同時也可以處理業(yè)務。一旦Master設備故障,系統(tǒng)會迅速自動選舉新的Master,以保證業(yè)務不中斷,從而實現(xiàn)了設備的1 N備份;此外,成員設備之間的IRF鏈路支持聚合功能,IRF和上、下層設備之間的物理鏈路也支持聚合功能,多條鏈路之間可以互為備份也可以進行負載分擔,從而進一步提高了 IRF的可靠性。3、強大的網(wǎng)絡擴展能力。通過增加成員設備,可以輕松自如的擴展IRF的端口數(shù)、帶寬。因為各成員設備都有CPU (Central Processing Unit,中央處理器),能夠獨立處理協(xié)議報文、進行報文轉(zhuǎn)發(fā), 所以IRF還能夠輕松自如的擴展處理能力。如圖2所示,為現(xiàn)有技術中的一種IRF鏈路的應用場景的示意圖,其中,IRF1、 IRF2、IRF3和IRF4四臺設備組成一個IRF系統(tǒng),該IRF的各成員設備分別和網(wǎng)絡上其他設備相連,實現(xiàn)IRF系統(tǒng)間的備份和帶寬擴展。設備A和B為兩臺獨立運行設備,分別有接口和IRF成員設備相連。這4個接口一般以聚合的形式存在,從而實現(xiàn)了設備A到設備B流量在IRF成員設備間的負載分擔。當某臺IRF成員設備異常,無法正常轉(zhuǎn)發(fā)報文時,可以通過斷開該IRF成員設備和設備A間的鏈路,將經(jīng)由該IRF成員設備的流量均勻的分擔到其他IRF成員設備。
如圖3A所示,為現(xiàn)有技術中的一種IRF鏈路故障的示意圖,當設備A和IRF成員設備(IRFl)之間的鏈路斷開時,流量也可以經(jīng)由其他鏈路轉(zhuǎn)發(fā)到IRF系統(tǒng),進一步的,如圖 3B所示,為現(xiàn)有技術中的另一種IRF鏈路故障的示意圖,當IRF成員設備(IRFl)和設備A, 以及設備B之間的鏈路均斷開時,流量也可以經(jīng)由其他鏈路轉(zhuǎn)發(fā)到IRF系統(tǒng),而在另一種場景下,如圖4所示,為現(xiàn)有技術中的另一種IRF鏈路故障的示意圖, 當設備B和IRF某成員設備(IRFl)間的鏈路斷開時,該成員設備(IRFl)收到流量后,也可以將流量經(jīng)由IRF鏈路到其他IRF系統(tǒng)(IRM)轉(zhuǎn)發(fā)。在實現(xiàn)本發(fā)明的過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術至少存在以下問題上行設備通過IRF系統(tǒng)向其他目的設備轉(zhuǎn)發(fā)報文,但是IRF成員設備連接的下行鏈路斷開時,會導致IRF系統(tǒng)的部分IRF堆疊鏈路以及部分其他IRF成員設備連接的下行鏈路發(fā)生擁塞。
發(fā)明內(nèi)容
本發(fā)明提供一種網(wǎng)絡設備及其轉(zhuǎn)發(fā)信息更新方法,使得堆疊系統(tǒng)的上行設備根據(jù)堆疊系統(tǒng)中成員設備通知的故障下行鏈路更新轉(zhuǎn)發(fā)信息,將通過故障下行鏈路轉(zhuǎn)發(fā)的流量切換到其他路徑,減少可能發(fā)生的擁塞和丟包問題。為達到上述目的,本發(fā)明一方面提供了一種網(wǎng)絡設備的轉(zhuǎn)發(fā)信息更新方法,該網(wǎng)絡設備為連接于堆疊系統(tǒng)的上行設備,所述方法至少包括以下步驟上行設備接收來自堆疊系統(tǒng)中成員設備的故障通知消息,其中,所述故障通知消息中攜帶成員設備查詢到的以故障下行鏈路作為轉(zhuǎn)發(fā)路徑的目的設備的地址信息;所述上行設備在本地存儲的轉(zhuǎn)發(fā)表中,查詢故障通知消息中地址信息對應的轉(zhuǎn)發(fā)表項;所述上行設備確定查找到故障通知消息中地址信息對應的轉(zhuǎn)發(fā)表項,且該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口包含故障通知消息到達端口及其他端口,則在該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口中,刪除故障通知消息到達端口。優(yōu)選的,所述方法還包括所述上行設備確定未查找到故障通知消息中地址信息對應的轉(zhuǎn)發(fā)表項,則對本地存儲的轉(zhuǎn)發(fā)表不做處理。優(yōu)選的,所述方法還包括所述上行設備確定查找到故障通知消息中地址信息對應的轉(zhuǎn)發(fā)表項,且該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口僅包含故障通知消息到達端口,則不修改該轉(zhuǎn)發(fā)表項的出接口 ;或,所述上行設備確定查找到故障通知消息中地址信息對應的轉(zhuǎn)發(fā)表項,且該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口不包含故障通知消息到達端口,則不修改該轉(zhuǎn)發(fā)表項的出接口。優(yōu)選的,所述方法還包括所述上行設備接收來自堆疊系統(tǒng)中成員設備發(fā)送的恢復通知消息,其中,所述恢復通知消息中攜帶成員設備查詢到的以故障恢復的下行鏈路作為轉(zhuǎn)發(fā)路徑的目的設備的地址信息;所述上行設備在本地存儲的轉(zhuǎn)發(fā)表中,查詢恢復通知消息中地址信息對應的轉(zhuǎn)發(fā)表項;
5
所述上行設備確定查找到恢復通知消息中地址信息對應的轉(zhuǎn)發(fā)表項,且該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口包含與恢復通知消息到達端口同屬于一個聚合端口的其他端口,則在該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口中添加恢復通知消息到達端口。優(yōu)選的,所述方法還包括所述上行設備確定未查找到恢復通知消息中地址信息對應的轉(zhuǎn)發(fā)表項,則對本地存儲的轉(zhuǎn)發(fā)表不做處理。優(yōu)選的,所述方法還包括所述上行設備確定查找到恢復通知消息中地址信息對應的轉(zhuǎn)發(fā)表項,且該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口僅包含故障通知消息到達端口,則不修改該轉(zhuǎn)發(fā)表項的出接口 ;或者所述上行設備確定查找到恢復通知消息中地址信息對應的轉(zhuǎn)發(fā)表項,且該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口與故障通知消息到達端口不屬于同一個聚合端口,則不修改該轉(zhuǎn)發(fā)表項的出接口。另一方面,本發(fā)明還提供了一種網(wǎng)絡設備,作為上行設備與堆疊系統(tǒng)相連接,其特征在于,至少包括接收模塊,用于接收來自堆疊系統(tǒng)中成員設備的故障通知消息,其中,所述故障通知消息中攜帶成員設備查詢到的以故障下行鏈路作為轉(zhuǎn)發(fā)路徑的目的設備的地址信息;查詢模塊,用于在本地存儲的轉(zhuǎn)發(fā)表中,查詢所述故障通知消息中地址信息對應的轉(zhuǎn)發(fā)表項;處理模塊,用于確定查找到故障通知消息中地址信息對應的轉(zhuǎn)發(fā)表項,且該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口包含故障通知消息到達端口及其他端口,則在該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口中,刪除故障通知消息到達端口。優(yōu)選的,所述處理模塊,還用于確定未查找到故障通知消息中地址信息對應的轉(zhuǎn)發(fā)表項, 則對本地存儲的轉(zhuǎn)發(fā)表不做處理;或,確定查找到故障通知消息中地址信息對應的轉(zhuǎn)發(fā)表項,且該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口僅包含故障通知消息到達端口,則不修改該轉(zhuǎn)發(fā)表項的出接口 ;或,確定查找到故障通知消息中地址信息對應的轉(zhuǎn)發(fā)表項,且該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口不包含故障通知消息到達端口,則不修改該轉(zhuǎn)發(fā)表項的出接口。優(yōu)選的,所述接收模塊,還用于接收來自堆疊系統(tǒng)中成員設備發(fā)送的恢復通知消息,其中, 所述恢復通知消息中攜帶成員設備查詢到的以故障恢復的下行鏈路作為轉(zhuǎn)發(fā)路徑的目的設備的地址信息;所述查詢模塊,還用于在本地存儲的轉(zhuǎn)發(fā)表中,查詢恢復通知消息中地址信息對應的轉(zhuǎn)發(fā)表項;所述處理模塊,還用于確定查找到恢復通知消息中地址信息對應的轉(zhuǎn)發(fā)表項,且該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口包含與恢復通知消息到達端口同屬于一個聚合端口的其他端口,則在該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口中添加恢復通知消息到達端口。優(yōu)選的,
所述處理模塊,還用于確定未查找到恢復通知消息中地址信息對應的轉(zhuǎn)發(fā)表項, 則對本地存儲的轉(zhuǎn)發(fā)表不做處理;或,確定查找到恢復通知消息中地址信息對應的轉(zhuǎn)發(fā)表項,且該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口僅包含故障通知消息到達端口,則不修改該轉(zhuǎn)發(fā)表項的出接口 ;或,確定查找到恢復通知消息中地址信息對應的轉(zhuǎn)發(fā)表項,且該轉(zhuǎn)發(fā)表項的出接口關
聯(lián)的端口與故障通知消息到達端口不屬于同一個聚合端口,則不修改該轉(zhuǎn)發(fā)表項的出接□。與現(xiàn)有技術相比,本發(fā)明具有以下優(yōu)點通過應用本發(fā)明的技術方案,堆疊系統(tǒng)的上行設備可以在堆疊系統(tǒng)的成員設備檢測到下行鏈路故障時,接收到故障通知消息,該故障通知消息中攜帶成員設備查詢到的以故障下行鏈路作為轉(zhuǎn)發(fā)路徑的目的設備的地址信息,并據(jù)此對本地保存的轉(zhuǎn)發(fā)表項進行更新,從而,優(yōu)化現(xiàn)有聚合網(wǎng)絡中的報文轉(zhuǎn)發(fā)路徑選擇方案,在下行鏈路出現(xiàn)故障時,使得流量在堆疊系統(tǒng)的成員設備中能夠更好的進行負載分擔,減少成員設備的鏈路擁塞,提高鏈路的可靠性。
圖1為現(xiàn)有技術中的一種典型的IRF組網(wǎng)結(jié)構示意圖;圖2為現(xiàn)有技術中的一種IRF鏈路的應用場景的示意圖;圖3A和圖;3B分別為現(xiàn)有技術中的一種IRF鏈路故障的示意圖;圖4為現(xiàn)有技術中的另一種IRF鏈路故障的示意圖;圖5為本發(fā)明所提出的一種轉(zhuǎn)發(fā)信息更新方法的流程示意圖;圖6為本發(fā)明所提出的一種網(wǎng)絡設備的結(jié)構示意圖。
具體實施例方式圖4所示,設備A和設備B之間經(jīng)由IRF系統(tǒng)轉(zhuǎn)發(fā),設備A和設備B分別和每個 IRF成員設備建立連接,各條鏈路組成聚合。所有經(jīng)由設備A到達設備B的數(shù)據(jù)均可以在 IRF成員設備上實現(xiàn)負載分擔和鏈路備份。但是當IRF成員設備IRFl和設備B之間的鏈路斷開時,設備A轉(zhuǎn)發(fā)到IRF的數(shù)據(jù)會經(jīng)由IRFl和IRF2之間的IRF鏈路轉(zhuǎn)發(fā)到IRF2,并在 IRF2上轉(zhuǎn)發(fā)到設備B。這樣保證了流量的轉(zhuǎn)發(fā)。但是,IRF2和設備B間的鏈路會同時存在經(jīng)由IRFl轉(zhuǎn)發(fā)的流量和經(jīng)由IRF2轉(zhuǎn)發(fā)的流量;當兩條數(shù)據(jù)流量之和大于IRF2與設備B之間的鏈路帶寬時,在IRF2上就會存在擁塞丟包。同時,流量經(jīng)由IRFl和IRF2之間的IRF鏈路,會消耗該鏈路帶寬,增加IRF鏈路的轉(zhuǎn)發(fā)負擔。并且,因為IRF系統(tǒng)無法通知到設備A自己同設備B之間的鏈路狀態(tài)變化, IRF2上的擁塞丟包狀態(tài)會一直持續(xù)下去?;谏鲜龇治?,本發(fā)明提出了一種路由更新方法,使上行設備能夠堆疊系統(tǒng)的成員設備的下行鏈路的狀態(tài)對轉(zhuǎn)發(fā)表項進行相應的修改,降低堆疊系統(tǒng)內(nèi)各堆疊成員設備之間的堆疊鏈路上出現(xiàn)擁塞和丟包的可能性以及堆疊系統(tǒng)內(nèi)各堆疊成員設備連接的下行鏈路上出現(xiàn)擁塞和丟包的可能性。如圖5所示,為本發(fā)明提出的一種路由更新方法的流程示意圖,該方法具體包括以下步驟步驟S501、上行設備接收來自堆疊系統(tǒng)中成員設備的故障通知消息,其中,所述故障通知消息中攜帶成員設備查詢到的以故障下行鏈路作為轉(zhuǎn)發(fā)路徑的目的設備的地址信肩、ο在具體的實施場景中,上述的地址信息是由堆疊系統(tǒng)的成員設備確定,并攜帶在故障通知消息中發(fā)送給上行設備的,具體的,上述目的地址信息在堆疊系統(tǒng)的成員設備上的處理過程為首先,堆疊系統(tǒng)的成員設備檢測自身的各鏈路的狀態(tài),具體的檢測策略可以是實時檢測,可以是周期檢測,也可以是基于一定條件或事件的觸發(fā)式檢測,而具體的檢測方式可以是通過收發(fā)測試報文的方式進行檢測,也可以使接收單向的保護報文的方式進行檢測,當然,在實際的應用場景中,可以根據(jù)需要選擇相應的檢測策略和檢測方式,凡是能夠達到相應的檢測效果的檢測策略和檢測方式均可以應用于本發(fā)明所提出的技術方案,這樣的變化并不影響本發(fā)明的保護范圍。當成員設備檢測到出現(xiàn)故障的下行鏈路時,成員設備向自身所連接的上行設備發(fā)送故障通知消息,其中,該故障通知消息中攜帶該成員設備中所存儲的出接口為當前故障的下行鏈路的所有轉(zhuǎn)發(fā)路徑所對應的目的設備的地址信息。在不同的網(wǎng)絡環(huán)境下,上述地址信息的形式不同。譬如,在三層網(wǎng)絡中,IRF成員設備檢測到本地某條下行鏈路斷開時,在本成員設備的路由表中查找以連接該下行鏈路的端口作為出接口的路由表項中的IP地址,將查找到的IP地址封裝為鏈路狀態(tài)通知報文通知到本成員設備直連的所有上行設備。在二層網(wǎng)絡中,IRF成員設備檢測到本地某條下行鏈路斷開時,在本成員設備的MAC表中,查找以連接該下行鏈路的端口作為出接口的MAC表項中的MAC地址或MAC地址以及VLAN ID。。步驟S502、所述上行設備在本地存儲的轉(zhuǎn)發(fā)表中,查詢故障通知消息中地址信息對應的轉(zhuǎn)發(fā)表項。如果查詢到,則執(zhí)行步驟S503 ;如果沒有查詢到,則執(zhí)行步驟S506。通過步驟上行設備能夠識別斷開的鏈路與本設備上記錄的轉(zhuǎn)發(fā)路徑是否相關,以便進行相應的處理。步驟S503、上行設備確定該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口與故障通知消息到達端口的關系。如果該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口包含故障通知消息到達端口及其他端口,則執(zhí)行步驟S504;如果該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口僅包含故障通知消息到達端口,或該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口不包含故障通知消息到達端口,則執(zhí)行步驟S505。通過本步驟,上行設備判斷是否可以通過堆疊系統(tǒng)的其他成員設備向上述的目的端進行流量傳輸。本領域人員可根據(jù)本實施例的上述說明,在不同的網(wǎng)絡環(huán)境下,以不同的方式實現(xiàn)上述步驟的處理。譬如,在三層網(wǎng)絡中,上行設備根據(jù)路由表確定可以通過兩個以上的等價路由到達目的設備,則將故障通知報文到達的端口對應的出接口從等價路由對應的多個接口中刪除;或者,上行設備根據(jù)路由表確定可以只有一條路由到達目的設備,該路由的出接口所指向的聚合端口中包含故障通知報文到達的端口及其他物理端口,則將故障通知報文到達的端口從聚合端口中刪除(若不包含則不對該路由表項進行更新);或者,上行設備根據(jù)路由表確定可以只有一條路由到達目的設備,且該路由對應的出接口指向僅包含故障通知報文到達端口的聚合端口,則對路由表項不做修改;或者,上行設備根據(jù)路由表確定可以只有一條路由到達目的設備,且該路由對應的出接口指向故障通知報文到達端,則對路由表項不做修改。在二層網(wǎng)絡中,上行設備根據(jù)MAC表確定到達目的設備的轉(zhuǎn)發(fā)路徑對應出接口指向聚合端口,且該聚合端口包含故障通知報文到達的端口及其他物理端口,則將故障通知報文到達的端口從聚合端口中刪除(如不包含則不對MAC表項進行更新);或者,上行設備根據(jù)MAC表確定到達目的設備的轉(zhuǎn)發(fā)路徑對應出接口指向聚合端口,且該聚合端口僅包含故障通知報文到達端口,則對MAC表項不做修改;或者,上行設備根據(jù)MAC表確定到達目的設備的轉(zhuǎn)發(fā)路徑對應的出接口指向故障通知報文到達的端口,則對MAC表項不做更新。步驟S504、上行設備在該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口中,刪除故障通知消息到達端口。通過本步驟的處理,在后續(xù)的流量轉(zhuǎn)發(fā)過程中,上行設備將不會再通過被刪除的端口進行流量轉(zhuǎn)發(fā),避免由于下行鏈路中斷而引起流量在堆疊系統(tǒng)內(nèi)部進行二次轉(zhuǎn)發(fā),以及由此所帶來的負載分擔分配不均,甚至鏈路擁塞和丟包。步驟S505、上行設備不修改該轉(zhuǎn)發(fā)表項的出接口。此步驟的有益效果在于,保持上行設備通過堆疊系統(tǒng)向目的設備轉(zhuǎn)發(fā)的路徑可達,避免重新學習到達目的設備的路徑。步驟S506、上行設備對本地存儲的轉(zhuǎn)發(fā)表不做處理。進一步的,如果通過上述步驟實現(xiàn)了對于故障通知消息中地址信息對應的轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口中的端口的刪除,那么,在后續(xù)的處理過程中,如果該鏈路的故障恢復,那么,本發(fā)明的技術方案同樣提出的相應的故障恢復流程,可以將相應的端口添加到相應的轉(zhuǎn)發(fā)表項的出接口所關聯(lián)的端口中,具體說明如下首先,上行設備接收來自堆疊系統(tǒng)中成員設備發(fā)送的恢復通知消息,其中,所述恢復通知消息中攜帶成員設備查詢到的以故障恢復的下行鏈路作為轉(zhuǎn)發(fā)路徑的目的設備的地址信息。與前述的步驟S501相類似,這里的地址信息是成員設備在檢測到鏈路故障恢復后所生成,并通過相應的恢復通知消息攜帶給上行設備的,具體的信息生成方案與前述的地址信息的生成方式相類似,在此不再重復說明。然后,上行設備在本地存儲的轉(zhuǎn)發(fā)表中,查詢恢復通知消息中地址信息對應的轉(zhuǎn)發(fā)表項。如果上行設備確定未查找到恢復通知消息中地址信息對應的轉(zhuǎn)發(fā)表項,則對本地存儲的轉(zhuǎn)發(fā)表不做處理。而如果上行設備確定查找到恢復通知消息中地址信息對應的轉(zhuǎn)發(fā)表項,則上行設備進一步確定該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口與恢復通知消息到達端口的關系。如果該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口包含與恢復通知消息到達端口同屬于一個聚合端口的其他端口,則在該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口中添加恢復通知消息到達端 Π ;
如果該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口僅包含故障通知消息到達端口,或該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口與故障通知消息到達端口不屬于同一個聚合端口,則不修改該轉(zhuǎn)發(fā)表項的出接口。與現(xiàn)有技術相比,本發(fā)明具有以下優(yōu)點通過應用本發(fā)明的技術方案,堆疊系統(tǒng)的上行設備可以在堆疊系統(tǒng)的成員設備檢測到下行鏈路故障時,接收到故障通知消息,該故障通知消息中攜帶成員設備查詢到的以故障下行鏈路作為轉(zhuǎn)發(fā)路徑的目的設備的地址信息,并據(jù)此對本地保存的轉(zhuǎn)發(fā)表項(路由表或MAC表)進行更新,從而,優(yōu)化現(xiàn)有聚合網(wǎng)絡中的報文轉(zhuǎn)發(fā)路徑選擇方案,在下行鏈路出現(xiàn)故障時,使得流量在堆疊系統(tǒng)的成員設備中能夠更好的進行負載分擔,減少聚合鏈路的轉(zhuǎn)發(fā)負擔,并避免了成員設備的鏈路擁塞,提高鏈路的可靠性。為了進一步闡述本發(fā)明的技術思想,現(xiàn)結(jié)合具體的應用場景,對本發(fā)明的技術方案進行說明。為了描述方便,本發(fā)明實施例中具體以IRF系統(tǒng)作為堆疊系統(tǒng)的一種具體示例, 對本發(fā)明所提出的技術方案進行說明,在實際應用中,具體堆疊系統(tǒng)類型的變化并不會影響本發(fā)明的保護范圍?;谏鲜稣f明,本發(fā)明提供了一種在IRF組網(wǎng)環(huán)境中的路由更新方法,在下行鏈路斷開時,上行設備(源設備)對相關轉(zhuǎn)發(fā)路徑重新選擇。通過這樣的處理,可以消除現(xiàn)有技術中存在的上行設備無法感知下行鏈路斷開,引起IRF系統(tǒng)上轉(zhuǎn)發(fā)擁塞丟包的缺陷,使得IRF技術在網(wǎng)絡上的應用更加完善。具體的,對本發(fā)明提出的一種IRF組網(wǎng)環(huán)境中的路由更新方法的處理流程進行說明如下首先,在IRF網(wǎng)絡中,各IRF成員設備分別對自身所連接的各鏈路進行檢測。當IRF成員設備感知到本地某條下行鏈路斷開時,需要查找本成員設備的所有出接口為該下行鏈路的路由,并將找到的所有路由的目的IP地址等信息(對于二層轉(zhuǎn)發(fā)也可以選擇目的MAC地址,VLAN等信息)組裝為故障通知消息,通知到所有和本成員設備直連的設備(上行設備)。上行設備收到故障通知消息后,記錄收到該故障通知消息的端口,并從故障通知消息中得到目的IP地址等信息,根據(jù)得到的信息查找本設備上保存的相應的路由信息(對應相同目的端的路由信息)。根據(jù)具體的查找結(jié)果,具體分為以下三種處理情況情況一、如果找不到相應的路由或者所找到的相應的路由的出接口不包含收到該故障通知消息的端口,則表示當前的鏈路更新和本設備的轉(zhuǎn)發(fā)路徑無關,不需要處理。情況二、如果找到的相應的路由的出接口只有收到該故障通知消息的端口(比如上行設備的聚合組內(nèi)只有本端口),則表示無其他鏈路可以到達IRF系統(tǒng),此時雖然還存在其他IRF成員設備到目的的路由,但是該其他IRF成員設備沒有和上行設備相連,因此,上行設備仍舊需要通過與發(fā)送故障通知消息的IRF成員設備進行通信,來實現(xiàn)向IRF系統(tǒng)的流量傳輸。此時,相應的流量需要經(jīng)由該端口發(fā)送到發(fā)送故障通知消息的IRF成員設備,然后后再經(jīng)由IRF鏈路轉(zhuǎn)發(fā)到其他IRF成員設備。因此,上行設備中所找到的相應的路由當前同樣不需要變化。情況三、如果找到相應的路由,并且路由的出接口為包含收到故障通知消息的端口在內(nèi)的多個端口,則更新該路由的出接口列表,將收到故障通知消息的端口刪除。同樣參照前述的圖4所示的應用場景,當IRFl將路由的下行鏈路斷開的消息通知到設備A時,設備A需要修改本地保存的路由的出接口。原有的本地保存的路由的出接口為包含4個端口的聚合組(分別為與IRF1、IRF2、IRF3和IRF4相直連的四個端口)。設備 A可以直接生成一個新的聚合組,新的聚合組中將設備A和IRFl直連的端口排除在外,同時更新路由的出接口為新的聚合組。在上行設備更新路由的出接口后,從設備A到設備B的流量轉(zhuǎn)發(fā),可以在IRF2、IRF3和IRF4三臺IRF成員設備上實現(xiàn)負載分擔,從而,避免了擁塞丟包的可能。需要指出的是,當設備A和IRF系統(tǒng)之間的鏈路除與IRFl之間的鏈路外均斷開時,設備A檢查路由的出接口沒有其他端口,則路由不需要變化,流量依然會轉(zhuǎn)發(fā)到IRF1, 并通過IRF鏈路的轉(zhuǎn)發(fā)到其他IRF成員設備以查找下行接口,從而保證報文能夠盡量轉(zhuǎn)發(fā)。當然,在具體的實施場景中,上述的更新過程也可以是通過將設備A和IRFl直連的端口所對應的路由在原有的聚合組中刪除來實現(xiàn),這樣的變化并不影響本發(fā)明的保護范圍。進一步的,當IRF成員設備和下行設備之間的鏈路恢復時,IRF成員設備同樣會檢查所有出接口為該故障恢復的下行鏈路的路由,并將這些路由的目的地址信息攜帶在恢復通知消息中通知到上行設備。繼續(xù)以圖4所示的應用場景為例,在經(jīng)過前述的處理,設備A將路由的出接口更新為將設備A和IRFl直連的端口排除在外的新的聚合組后,當IRFl和設備B之間的鏈路恢復時,IRFl查找出接口為該鏈路的所有路由,將對應的目的IP地址等信息攜帶在恢復通知消息中,通知到所有和本成員設備(IRFl)相連的上行設備。上行設備收到該恢復通知消息后,從中得到目的IP地址等信息,根據(jù)得到的信息查找本設備上保存的路由信息。根據(jù)具體的查找結(jié)果,具體分為以下三種處理情況情況一、不存在相應的路由,則表示當前的鏈路更新和本設備的轉(zhuǎn)發(fā)路徑無關,不
需要處理。情況二、存在相應的路由,但是相應的路由的出接口為普通端口,或者相應的路由的出接口和收到恢復通知消息的端口不處于同一個聚合組,則不更新路由。情況三、存在相應的路由,并且該路由的出接口和收到恢復通知消息的端口處于同一個聚合組,則在該路由的出接口(出端口列表)中增加收到該恢復通知消息的端口。這樣,數(shù)據(jù)流可以在恢復后的多條鏈路上進行負載分擔,從而減輕其他IRF成員設備鏈路的負擔。在具體的實施場景中,上述的方案同樣適用于二層轉(zhuǎn)發(fā)報文的鏈路反向通知,只是通知的信息不是目的IP地址等信息而是目的MAC地址、VLAN等信息。與現(xiàn)有技術相比,本發(fā)明具有以下優(yōu)點通過應用本發(fā)明的技術方案,堆疊系統(tǒng)的上行設備可以在堆疊系統(tǒng)的成員設備檢測到下行鏈路故障時,接收到故障通知消息,該故障通知消息中攜帶成員設備查詢到的以故障下行鏈路作為轉(zhuǎn)發(fā)路徑的目的設備的地址信息,并據(jù)此對本地保存的轉(zhuǎn)發(fā)表項進行更新,從而,優(yōu)化現(xiàn)有聚合網(wǎng)絡中的報文轉(zhuǎn)發(fā)路徑選擇方案,在下行鏈路出現(xiàn)故障時,使得流量在堆疊系統(tǒng)的成員設備中能夠更好的進行負載分擔,減少聚合鏈路的轉(zhuǎn)發(fā)負擔,并避免了成員設備的鏈路擁塞,提高鏈路的可靠性。為了實現(xiàn)本發(fā)明的技術方案,基于前述的說明,本發(fā)明還提出了一種網(wǎng)絡設備,作為上行設備與堆疊系統(tǒng)相連接,其結(jié)構示意圖如圖6所示,至少包括以下模塊接收模塊61,用于接收來自堆疊系統(tǒng)中成員設備的故障通知消息,其中,所述故障通知消息中攜帶成員設備查詢到的以故障下行鏈路作為轉(zhuǎn)發(fā)路徑的目的設備的地址信息;查詢模塊62,用于在本地存儲的轉(zhuǎn)發(fā)表中,查詢所述故障通知消息中地址信息對應的轉(zhuǎn)發(fā)表項;處理模塊63,用于確定查找到故障通知消息中地址信息對應的轉(zhuǎn)發(fā)表項,且該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口包含故障通知消息到達端口及其他端口,則在該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口中,刪除故障通知消息到達端口。優(yōu)選的,所述處理模塊63,還用于確定未查找到故障通知消息中地址信息對應的轉(zhuǎn)發(fā)表項,則對本地存儲的轉(zhuǎn)發(fā)表不做處理;或,確定查找到故障通知消息中地址信息對應的轉(zhuǎn)發(fā)表項,且該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口僅包含故障通知消息到達端口,則不修改該轉(zhuǎn)發(fā)表項的出接口 ;或,確定查找到故障通知消息中地址信息對應的轉(zhuǎn)發(fā)表項,且該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口不包含故障通知消息到達端口,則不修改該轉(zhuǎn)發(fā)表項的出接口。優(yōu)選的,所述接收模塊61,還用于接收來自堆疊系統(tǒng)中成員設備發(fā)送的恢復通知消息,其中,所述恢復通知消息中攜帶成員設備查詢到的以故障恢復的下行鏈路作為轉(zhuǎn)發(fā)路徑的目的設備的地址信息;所述查詢模塊62,還用于在本地存儲的轉(zhuǎn)發(fā)表中,查詢恢復通知消息中地址信息對應的轉(zhuǎn)發(fā)表項;所述處理模塊63,還用于確定查找到恢復通知消息中地址信息對應的轉(zhuǎn)發(fā)表項, 且該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口包含與恢復通知消息到達端口同屬于一個聚合端口的其他端口,則在該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口中添加恢復通知消息到達端口。優(yōu)選的,所述處理模塊63,還用于確定未查找到恢復通知消息中地址信息對應的轉(zhuǎn)發(fā)表項,則對本地存儲的轉(zhuǎn)發(fā)表不做處理;或,確定查找到恢復通知消息中地址信息對應的轉(zhuǎn)發(fā)表項,且該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口僅包含故障通知消息到達端口,則不修改該轉(zhuǎn)發(fā)表項的出接口 ;或,確定查找到恢復通知消息中地址信息對應的轉(zhuǎn)發(fā)表項,且該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口與故障通知消息到達端口不屬于同一個聚合端口,則不修改該轉(zhuǎn)發(fā)表項的出接與現(xiàn)有技術相比,本發(fā)明具有以下優(yōu)點
通過應用本發(fā)明的技術方案,堆疊系統(tǒng)的上行設備可以在堆疊系統(tǒng)的成員設備檢測到下行鏈路故障時,接收到故障通知消息,該故障通知消息中攜帶成員設備查詢到的以故障下行鏈路作為轉(zhuǎn)發(fā)路徑的目的設備的地址信息,并據(jù)此對本地保存的轉(zhuǎn)發(fā)表項進行更新,從而,優(yōu)化現(xiàn)有聚合網(wǎng)絡中的報文轉(zhuǎn)發(fā)路徑選擇方案,在下行鏈路出現(xiàn)故障時,使得流量在堆疊系統(tǒng)的成員設備中能夠更好的進行負載分擔,減少聚合鏈路的轉(zhuǎn)發(fā)負擔,并避免了成員設備的鏈路擁塞,提高鏈路的可靠性。通過以上的實施方式的描述,本領域的技術人員可以清楚地了解到本發(fā)明可以通過硬件實現(xiàn),也可以借助軟件加必要的通用硬件平臺的方式來實現(xiàn)?;谶@樣的理解,本發(fā)明的技術方案可以以軟件產(chǎn)品的形式體現(xiàn)出來,該軟件產(chǎn)品可以存儲在一個非易失性存儲介質(zhì)(可以是⑶-ROM,U盤,移動硬盤等)中,包括若干指令用以使得一臺計算機設備(可以是個人計算機,服務器,或者OAM MASTER設備等)執(zhí)行本發(fā)明各個實施場景所述的方法。本領域技術人員可以理解附圖只是一個優(yōu)選實施場景的示意圖,附圖中的模塊或流程并不一定是實施本發(fā)明所必須的。本領域技術人員可以理解實施場景中的裝置中的模塊可以按照實施場景描述進行分布于實施場景的裝置中,也可以進行相應變化位于不同于本實施場景的一個或多個裝置中。上述實施場景的模塊可以合并為一個模塊,也可以進一步拆分成多個子模塊。上述本發(fā)明序號僅僅為了描述,不代表實施場景的優(yōu)劣。以上公開的僅為本發(fā)明的幾個具體實施場景,但是,本發(fā)明并非局限于此,任何本領域的技術人員能思之的變化都應落入本發(fā)明的保護范圍。
權利要求
1.一種應用于網(wǎng)絡設備的轉(zhuǎn)發(fā)信息更新方法,該網(wǎng)絡設備是連接于堆疊系統(tǒng)的上行設備,其特征在于,所述方法至少包括以下步驟上行設備接收來自堆疊系統(tǒng)中成員設備的故障通知消息,其中,所述故障通知消息中攜帶成員設備查詢到的以故障下行鏈路作為轉(zhuǎn)發(fā)路徑的目的設備的地址信息;所述上行設備在本地存儲的轉(zhuǎn)發(fā)表中,查詢故障通知消息中地址信息對應的轉(zhuǎn)發(fā)表項;所述上行設備確定查找到故障通知消息中地址信息對應的轉(zhuǎn)發(fā)表項,且該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口包含故障通知消息到達端口及其他端口,則在該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口中,刪除故障通知消息到達端口。
2.如權利要求1所述的方法,其特征在于,所述方法還包括所述上行設備確定未查找到故障通知消息中地址信息對應的轉(zhuǎn)發(fā)表項,則對本地存儲的轉(zhuǎn)發(fā)表不做處理。
3.如權利要求1所述的方法,其特征在于,所述方法還包括所述上行設備確定查找到故障通知消息中地址信息對應的轉(zhuǎn)發(fā)表項,且該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口僅包含故障通知消息到達端口,則不修改該轉(zhuǎn)發(fā)表項的出接口 ;或,所述上行設備確定查找到故障通知消息中地址信息對應的轉(zhuǎn)發(fā)表項,且該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口不包含故障通知消息到達端口,則不修改該轉(zhuǎn)發(fā)表項的出接口。
4.如權利要求1所述的方法,其特征在于,所述方法還包括所述上行設備接收來自堆疊系統(tǒng)中成員設備發(fā)送的恢復通知消息,其中,所述恢復通知消息中攜帶成員設備查詢到的以故障恢復的下行鏈路作為轉(zhuǎn)發(fā)路徑的目的設備的地址 fn息;所述上行設備在本地存儲的轉(zhuǎn)發(fā)表中,查詢恢復通知消息中地址信息對應的轉(zhuǎn)發(fā)表項;所述上行設備確定查找到恢復通知消息中地址信息對應的轉(zhuǎn)發(fā)表項,且該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口包含與恢復通知消息到達端口同屬于一個聚合端口的其他端口,則在該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口中添加恢復通知消息到達端口。
5.如權利要求4所述的方法,其特征在于,所述方法還包括所述上行設備確定未查找到恢復通知消息中地址信息對應的轉(zhuǎn)發(fā)表項,則對本地存儲的轉(zhuǎn)發(fā)表不做處理。
6.如權利要求4所述的方法,其特征在于,所述方法還包括所述上行設備確定查找到恢復通知消息中地址信息對應的轉(zhuǎn)發(fā)表項,且該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口僅包含故障通知消息到達端口,則不修改該轉(zhuǎn)發(fā)表項的出接口 ;或者所述上行設備確定查找到恢復通知消息中地址信息對應的轉(zhuǎn)發(fā)表項,且該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口與故障通知消息到達端口不屬于同一個聚合端口,則不修改該轉(zhuǎn)發(fā)表項的出接口。
7.—種網(wǎng)絡設備,作為上行設備與堆疊系統(tǒng)相連接,其特征在于,至少包括接收模塊,用于接收來自堆疊系統(tǒng)中成員設備的故障通知消息,其中,所述故障通知消息中攜帶成員設備查詢到的以故障下行鏈路作為轉(zhuǎn)發(fā)路徑的目的設備的地址信息;查詢模塊,用于在本地存儲的轉(zhuǎn)發(fā)表中,查詢所述故障通知消息中地址信息對應的轉(zhuǎn)發(fā)表項;處理模塊,用于確定查找到故障通知消息中地址信息對應的轉(zhuǎn)發(fā)表項,且該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口包含故障通知消息到達端口及其他端口,則在該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口中,刪除故障通知消息到達端口。
8.如權利要求7所述的網(wǎng)絡設備,其特征在于,所述處理模塊,還用于確定未查找到故障通知消息中地址信息對應的轉(zhuǎn)發(fā)表項,則對本地存儲的轉(zhuǎn)發(fā)表不做處理;或,確定查找到故障通知消息中地址信息對應的轉(zhuǎn)發(fā)表項,且該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口僅包含故障通知消息到達端口,則不修改該轉(zhuǎn)發(fā)表項的出接口 ;或,確定查找到故障通知消息中地址信息對應的轉(zhuǎn)發(fā)表項,且該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口不包含故障通知消息到達端口,則不修改該轉(zhuǎn)發(fā)表項的出接口。
9.如權利要求7所述的網(wǎng)絡設備,其特征在于,所述接收模塊,還用于接收來自堆疊系統(tǒng)中成員設備發(fā)送的恢復通知消息,其中,所述恢復通知消息中攜帶成員設備查詢到的以故障恢復的下行鏈路作為轉(zhuǎn)發(fā)路徑的目的設備的地址信息;所述查詢模塊,還用于在本地存儲的轉(zhuǎn)發(fā)表中,查詢恢復通知消息中地址信息對應的轉(zhuǎn)發(fā)表項;所述處理模塊,還用于確定查找到恢復通知消息中地址信息對應的轉(zhuǎn)發(fā)表項,且該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口包含與恢復通知消息到達端口同屬于一個聚合端口的其他端口,則在該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口中添加恢復通知消息到達端口。
10.如權利要求9所述的網(wǎng)絡設備,其特征在于,所述處理模塊,還用于確定未查找到恢復通知消息中地址信息對應的轉(zhuǎn)發(fā)表項,則對本地存儲的轉(zhuǎn)發(fā)表不做處理;或,確定查找到恢復通知消息中地址信息對應的轉(zhuǎn)發(fā)表項,且該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口僅包含故障通知消息到達端口,則不修改該轉(zhuǎn)發(fā)表項的出接口 ;或,確定查找到恢復通知消息中地址信息對應的轉(zhuǎn)發(fā)表項,且該轉(zhuǎn)發(fā)表項的出接口關聯(lián)的端口與故障通知消息到達端口不屬于同一個聚合端口,則不修改該轉(zhuǎn)發(fā)表項的出接口。
全文摘要
本發(fā)明公開了一種網(wǎng)絡設備及其轉(zhuǎn)發(fā)信息更新方法,本申請應用于連接于堆疊系統(tǒng)的上行設備,該上行設備可以根據(jù)堆疊系統(tǒng)的成員設備的下行鏈路故障,對本地保存的轉(zhuǎn)發(fā)表項進行更新,從而,優(yōu)化現(xiàn)有聚合網(wǎng)絡中的報文轉(zhuǎn)發(fā)路徑選擇方案,在下行鏈路出現(xiàn)故障時,使得流量在堆疊系統(tǒng)的成員設備中能夠更好的進行負載分擔,減少聚合鏈路的轉(zhuǎn)發(fā)負擔,并避免了成員設備的鏈路擁塞,提高鏈路的可靠性。
文檔編號H04L12/56GK102347905SQ20111034203
公開日2012年2月8日 申請日期2011年10月31日 優(yōu)先權日2011年10月31日
發(fā)明者田妍君, 鄭國良 申請人:杭州華三通信技術有限公司