欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

鏈路切換方法及裝置、數(shù)據(jù)傳輸方法及裝置、網(wǎng)絡(luò)設(shè)備的制作方法

文檔序號:7780353閱讀:153來源:國知局
專利名稱:鏈路切換方法及裝置、數(shù)據(jù)傳輸方法及裝置、網(wǎng)絡(luò)設(shè)備的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及網(wǎng)絡(luò)通信系統(tǒng),具體地,涉及一種鏈路切換方法及裝置、數(shù)據(jù)傳輸方法及裝置、網(wǎng)絡(luò)設(shè)備。
背景技術(shù)
網(wǎng)絡(luò)設(shè)備通過解析和學習以太網(wǎng)幀的源媒體訪問控制(MAC,Media Access Control)地址、虛擬局域網(wǎng)(VLAN,Virtual Local Area Network)標識(ID,Identity)信息來維護MAC地址與端口的對應(yīng)關(guān)系,這種保存MAC、VLAN ID與端口對應(yīng)關(guān)系的表稱為地址轉(zhuǎn)發(fā)表即MAC表,設(shè)備通過以太網(wǎng)數(shù)據(jù)幀的目的MAC、VLAN ID來查找MAC表決定數(shù)據(jù)幀向哪個端口轉(zhuǎn)發(fā),基本流程如下步驟一、二層交換機收到以太網(wǎng)數(shù)據(jù)幀,將該數(shù)據(jù)幀的源MAC、VLAN ID與接收端口的對應(yīng)關(guān)系寫入MAC表,作為以后的二層轉(zhuǎn)發(fā)依據(jù);步驟二、如果MAC表中已有相同表項,那么就刷新該表項的老化時間;MAC表表項采取一定的老化更新機制,老化時間內(nèi)未得到刷新的表項將被刪除掉;步驟三、根據(jù)以太網(wǎng)數(shù)據(jù)幀的目的MAC、VLAN ID去查找MAC表,如果沒有找到匹配表項,那么向所有端口轉(zhuǎn)發(fā)(接收端口除外);如果目的MAC是廣播地址,那么向所有端口轉(zhuǎn)發(fā)(接收端口除外);如果能夠找到匹配表項,則向表項所示的對應(yīng)端口轉(zhuǎn)發(fā),但是如果表項所示端口與收到以太網(wǎng)幀的端口相同,則丟棄該幀。從上述流程可以看出,網(wǎng)絡(luò)設(shè)備通過維護MAC表以及根據(jù)目的MAC查表轉(zhuǎn)發(fā),有效地利用了網(wǎng)絡(luò)帶寬,改善了網(wǎng)絡(luò)性能。以太網(wǎng)環(huán)形鏈路為以太網(wǎng)交換或者多協(xié)議標簽交換(MPLS,Multi-Protocol Label Switching)提供了除工作鏈路外的備份鏈路,當工作鏈路出現(xiàn)故障后,備份鏈路將替代原有的工作鏈路,從而保證業(yè)務(wù)流轉(zhuǎn)發(fā)正常。以太網(wǎng)環(huán)形保護交換的工作原理如圖1所示在圖1中,A,B,C,D四個節(jié)點為網(wǎng)絡(luò)設(shè)備,其中A,B, C,D四個節(jié)點下面都連接著大量的服務(wù)器和用戶,為了便于說明,我們只列出了 PCl與PC2這兩個用戶設(shè)備,PCl連接至D的端口 3,PCl的地址信息中包括MAC1、VLAN10, PC2連接至設(shè)備D的端口 3,PC2的地址信息中包括MAC2、VLAN10。在圖1中,W表示工作鏈路,P表示備份鏈路。從圖1中可以看出,四個網(wǎng)絡(luò)設(shè)備構(gòu)成了環(huán)路,節(jié)點A的端口 2、節(jié)點D的端口 2之間的鏈路為工作鏈路,節(jié)點B的端口 2、節(jié)點C的端口 2之間的鏈路為工作鏈路,設(shè)備A的端口 1、B的端口 1之間的鏈路為工作鏈路,設(shè)備C的端口 1、D的端口 1間的鏈路為備份鏈路,節(jié)點設(shè)備C、D的端口 1均被設(shè)置為阻塞狀態(tài),即不允許轉(zhuǎn)發(fā)報文。通過地址學習,在設(shè)備D上,會學習到PC2的地址信息為MAC2+P0RT2+VLAN10。在設(shè)備C上學習到PCl的地址信息為 MAC1+P0RT2+VLAN10。在設(shè)備運行過程中,協(xié)議會測試鏈路連通性,如周期性的發(fā)送議報文以確認鏈路狀態(tài)。假設(shè),節(jié)點A,B之間的鏈路由于光纖問題導致鏈路斷開,如圖2所示。
4
鏈路檢測協(xié)議發(fā)現(xiàn)在一定周期內(nèi)的檢測報文都丟失、確定A、B間鏈路斷開,就向周邊節(jié)點通告鏈路狀態(tài)變化信息。這樣,C與D之間的備份鏈路將啟用為工作鏈路,而A,B 間的鏈路將變成備份鏈路,如圖2所示。在鏈路切換過程中,會存在地址表轉(zhuǎn)發(fā)錯誤,導致報文被丟棄的問題。因為在設(shè)備D上存儲的PC2的地址信息為MAC2+P0RT2+VLAN10。在設(shè)備C上存在PCl的地址信息為 MAC1+P0RT2+VLAN10。這樣,在設(shè)備C,D上的地址表老化前,從PCl發(fā)往PC2的報文通過地址表查到PC2的出口為設(shè)備D的P0RT2,從PC2發(fā)往PCl的報文通過地址表查到PCl的出口為設(shè)備C的P0RT2。而從P0RT2發(fā)出的報文將由于無法通過設(shè)備A,B間的鏈路、從而被丟棄掉。這樣就導致鏈路切換后,需要經(jīng)過一段時間(老化時間通常為3分鐘),PCl與PC2 之間才能互通。目前已經(jīng)有許多技術(shù)解決了這一問題,通過MAC FLUSH方式,在鏈路狀態(tài)切換時, 需要把設(shè)備上的對應(yīng)地址清除,然后重新學習地址。采用這種方式就可以避免需要等待老化時間后,報文才可以正常轉(zhuǎn)發(fā)。但采用MAC FLUSH的機制,同樣存在著報文轉(zhuǎn)發(fā)錯誤的問題。由于設(shè)備的性能問題(有許多二層設(shè)備的CPU都比較低端,處理性能低),設(shè)備的地址表清除性能很低,需要數(shù)秒至數(shù)分鐘才能清除所有的地址(比如設(shè)備D的PORTl從P0RT2學習到了數(shù)萬條的MAC地址、甚至數(shù)十萬條的MAC地址)。在這種情況下,在設(shè)備D進行地址清除操作、但還未清除掉 MAC2+P0RT2+VLAN10這條記錄的時候,從PCl發(fā)往PC2的報文仍然會查找到對應(yīng)的PC2的出口信息為節(jié)點C的P0RT2,這樣節(jié)點C通過P0RT2發(fā)送報文就會導致報文被丟棄。從上面分析中,可知現(xiàn)有技術(shù)中存在網(wǎng)絡(luò)通信的節(jié)點設(shè)備在清除MAC地址的過程中數(shù)據(jù)報文發(fā)送丟失的問題。

發(fā)明內(nèi)容
有鑒于此,本發(fā)明實施例提供了一種鏈路切換方法,相應(yīng)地本發(fā)明實施例還提供了一種數(shù)據(jù)傳輸方法,用以解決現(xiàn)有技術(shù)中存在的網(wǎng)絡(luò)通信的節(jié)點設(shè)備在清除MAC地址的過程中數(shù)據(jù)報文發(fā)送丟失的問題。相應(yīng)的,本發(fā)明實施例還提供了一種鏈路切換裝置、數(shù)據(jù)傳輸裝置、網(wǎng)絡(luò)設(shè)備。本發(fā)明實施例技術(shù)方案如下一種鏈路切換方法,包括在接收到鏈路狀態(tài)通告后,關(guān)閉媒體訪問控制MAC地址學習功能;在預(yù)先建立的端口泛洪表中,對收到鏈路狀態(tài)通告的端口設(shè)置泛洪標記,并對 MAC地址表進行清除;在對MAC地址表清除完成后,在預(yù)先建立的端口泛洪表中,對收到鏈路狀態(tài)通告的端口清除泛洪標記,并打開MAC地址學習功能、進行MAC地址學習。一種鏈路切換裝置,包括接收模塊,用于接收鏈路狀態(tài)通告;地址學習控制模塊,用于在接受模塊接收到鏈路狀態(tài)通告后,關(guān)閉媒體訪問控制MAC地址學習功能;端口設(shè)置模塊,用于在地址學習控制模塊關(guān)閉MAC地址學習功能后,在預(yù)先建立的端口泛洪表中, 對收到鏈路狀態(tài)通告的端口設(shè)置泛洪標記;地址清除模塊,用于在端口設(shè)置模塊對端口設(shè)置泛洪標記后,對MAC地址表進行清除;端口設(shè)置模塊,還用于在地址清除模塊對MAC地址表清除完后,在預(yù)先建立的端口泛洪表中,對收到鏈路狀態(tài)通告的端口清除泛洪標記;地址學習控制模塊,還用于在端口設(shè)置模塊對端口清除泛洪標記后,打開MAC地址學習功能;地址學習模塊,在地址學習控制模塊打開MAC地址學習功能后,進行MAC地址學習。一種網(wǎng)絡(luò)設(shè)備,包括如上所述的鏈路切換裝置。一種數(shù)據(jù)傳輸方法,包括根據(jù)報文的目的媒體訪問控制MAC地址,在MAC地址表中查找到該報文的發(fā)送端口的端口號;在預(yù)先建立的端口泛洪表中、查詢該發(fā)送端口是否設(shè)置有泛洪標記;在該發(fā)送端口設(shè)置有泛洪標記的情況下,在報文的目的虛擬局域網(wǎng)的標識VLAN ID所指的VLAN中廣播發(fā)送該報文,在該發(fā)送端口沒有設(shè)置泛洪標記的情況下,按照查找到的發(fā)送端口發(fā)送該報文。一種數(shù)據(jù)傳輸裝置,包括查找模塊,用于根據(jù)報文的目的媒體訪問控制MAC地址,在MAC地址表中查找到該報文的發(fā)送端口的端口號;查詢模塊,用于在預(yù)先建立的端口泛洪表中、查詢該發(fā)送端口是否設(shè)置有泛洪標記;發(fā)送模塊,用于在查詢模塊查詢到發(fā)送端口設(shè)置有泛洪標記的情況下,在目的虛擬局域網(wǎng)的標識VLAN ID所指的VLAN中廣播發(fā)送該報文;在查詢模塊查詢到發(fā)送端口沒有設(shè)置泛洪標記的情況下,按照查找到的發(fā)送端口發(fā)送該報文。一種網(wǎng)絡(luò)設(shè)備,包括如上所述的數(shù)據(jù)傳輸裝置。一種網(wǎng)絡(luò)設(shè)備,包括如上所述的鏈路切換裝置和數(shù)據(jù)傳輸裝置。本發(fā)明實施例通過對收到鏈路狀態(tài)通告的端口設(shè)置泛洪標記,在查找到報文的發(fā)送端口后,查詢該端口是否設(shè)置有泛洪標記,在設(shè)置有泛洪標記的情況下,將報文在報文的目的VLAN內(nèi)進行廣播,從而能夠避免鏈路切換、清除MAC地址的過程中發(fā)送報文時,按照查找到的鏈路切換之前的端口來發(fā)送報文、而導致的數(shù)據(jù)報文發(fā)送丟失的問題,能夠解決現(xiàn)有技術(shù)中存在的網(wǎng)絡(luò)通信的節(jié)點設(shè)備在清除MAC地址的過程中數(shù)據(jù)報文發(fā)送丟失的問題, 能夠提高報文發(fā)送的成功率、提高數(shù)據(jù)傳輸效率。本發(fā)明的其它特征和優(yōu)點將在隨后的說明書中闡述,并且,部分地從說明書中變得顯而易見,或者通過實施本發(fā)明而了解。本發(fā)明的目的和其他優(yōu)點可通過在所寫的說明書、權(quán)利要求書、以及附圖中所特別指出的結(jié)構(gòu)來實現(xiàn)和獲得。


圖1為現(xiàn)有技術(shù)中以太網(wǎng)環(huán)形保護交換的工作原理示意框圖;圖2為現(xiàn)有技術(shù)中以太網(wǎng)環(huán)鏈路切換的示意圖;圖3為本發(fā)明實施例提供的鏈路切換方法的工作流程圖;圖4為本發(fā)明實施例提供的鏈路切換裝置的結(jié)構(gòu)框圖;圖5為本發(fā)明實施例提供的數(shù)據(jù)傳輸方法的工作流程圖;圖6為本發(fā)明實施例提供的數(shù)據(jù)傳輸裝置的結(jié)構(gòu)框圖;圖7a為本發(fā)明實施例具體應(yīng)用的場景示意圖;圖7b為本發(fā)明實施例具體應(yīng)用中MAC FLOOD表的結(jié)構(gòu)示意圖;圖8為本發(fā)明實施例提供的鏈路切換方法具體應(yīng)用的工作流程圖;圖9為本發(fā)明實施例提供的數(shù)據(jù)傳輸方法具體應(yīng)用的工作流程圖。
具體實施例方式以下結(jié)合附圖對本發(fā)明的實施例進行說明,應(yīng)當理解,此處所描述的實施例僅用于說明和解釋本發(fā)明,并不用于限定本發(fā)明。針對現(xiàn)有技術(shù)中,網(wǎng)絡(luò)通信的節(jié)點設(shè)備在清除MAC地址的過程中數(shù)據(jù)報文發(fā)送丟失的問題,本發(fā)明實施例提出了一種鏈路切換的方案、一種數(shù)據(jù)傳輸?shù)姆桨福靡越鉀Q該問題。本發(fā)明實施例首先提供了一種鏈路切換的方法,圖3示出了該方法的工作流程圖,如圖3所示,該方法包括如下處理過程步驟31、在收到鏈路狀態(tài)通告后,關(guān)閉MAC地址學習功能;步驟32、在預(yù)先建立的端口泛洪表中,對收到鏈路狀態(tài)通告的端口設(shè)置泛洪標記;步驟33、對MAC地址表進行清除;步驟34、在對MAC地址表清除完成后,在預(yù)先建立的端口泛洪表中,對收到鏈路狀態(tài)通告的端口清除泛洪標記;步驟;35、打開MAC地址學習功能;步驟36、進行地址學習。通過上述處理過程,在鏈路切換、進行MAC FLUSH操作的過程中,對接收到鏈路狀態(tài)通告的端口設(shè)置泛洪標記,有助于在清除MAC地址的過程中發(fā)送報文時,根據(jù)對端口設(shè)置的泛洪標記來對報文進行廣播發(fā)送,能夠避免在清除MAC地址的過程中、根據(jù)失效的MAC 地址表查找到鏈路切換之前的發(fā)送端口、即接收到鏈路狀態(tài)通告的端口,并使用該端口發(fā)送報文、導致報文丟失的問題。并且,在清除MAC地址完成后,將收到鏈路狀態(tài)通告的端口的泛洪標記取消、并且進行地址學習,有助于在正常的鏈路狀態(tài)下,根據(jù)有效的MAC地址表信息來發(fā)送報文。一種優(yōu)選的方式,可以通過下面的處理過程實現(xiàn)如圖3所示的方法。步驟一、根據(jù)虛擬局域網(wǎng)的標識(VLAN ID)、端口號,預(yù)先建立包括VLAN ID、端口號的二維關(guān)系表、即端口泛洪表;步驟二、接收到鏈路狀態(tài)通告后,即接收到MAC FLUSH通告后,關(guān)閉MAC地址學習功能;步驟三、在預(yù)先建立的端口泛洪表中,在與接收到鏈路狀態(tài)通告的端口所屬的 VLAN ID、該端口的端口號相對應(yīng)的位置,設(shè)置泛洪標記;步驟四、對MAC地址表進行清除;步驟五、對MAC地址表清除完成后,在預(yù)先建立的端口泛洪表中,在與接收到鏈路狀態(tài)通告的端口所屬的VLAN ID、該端口的端口號相對應(yīng)的位置,清除泛洪標記;步驟六、打開MAC地址學習功能、進行MAC地址學習。通過上述處理,能夠解決現(xiàn)有技術(shù)中在清除MAC地址的過程中根據(jù)實效的地址信息發(fā)送報文、導致報文丟失的問題,從而能夠提高數(shù)據(jù)傳輸?shù)男?。本發(fā)明實施例還提供了一種作為端口泛洪表的二維關(guān)系表,在每一個節(jié)點設(shè)備中都設(shè)置并保存該表。該端口泛洪表以目的VLAN ID為第一級索引,端口號為第二級索引,在表中與VLAN ID和端口號對應(yīng)的位置中記錄的內(nèi)容表示是否需要對通過第二級索引端口號所指示的端口發(fā)送的報文在第一級索引VLAN ID所指示的VLAN中進行廣播發(fā)送。該端口泛洪表在鏈路切換的過程中被各個節(jié)點設(shè)備設(shè)置、維護,該端口泛洪表為二維關(guān)系表,對該表進行設(shè)置的操作耗時少、操作效率高、不占用系統(tǒng)資源,不會因為設(shè)置維護該表而導致系統(tǒng)效率的下降。為實現(xiàn)上述功能,本發(fā)明實施例這里的鏈路切換方法可以通過硬件實現(xiàn),也可以通過下述軟件程序?qū)崿F(xiàn)。圖4示出了根據(jù)本發(fā)明實施例的鏈路切換裝置的結(jié)構(gòu)示意圖,如圖4所示,該裝置包括接收模塊41,用于接收鏈路狀態(tài)通告; 地址學習控制模塊42,連接至接收模塊41,用于在接收模塊41接收到所述鏈路狀態(tài)通告后,關(guān)閉MAC地址學習功能;端口設(shè)置模塊43,連接至地址學習控制模塊42,用于在地址學習控制模塊42關(guān)閉 MAC地址學習功能后,在預(yù)先建立的端口泛洪表中,對收到鏈路狀態(tài)通告的端口設(shè)置泛洪標記;一種優(yōu)選的方式,該裝置還包括建立模塊,用于預(yù)先建立包括VLAN ID、端口號的二維關(guān)系表,將建立的二維關(guān)系表作為端口泛洪表;一種優(yōu)選的方式,端口設(shè)置模塊43在建立模塊預(yù)先建立的端口泛洪表中,在與收到鏈路狀態(tài)通告的端口所屬的VLAN ID、該端口的端口號相對應(yīng)的位置,設(shè)置泛洪標記;地址清除模塊44,連接至端口設(shè)置模塊43,用于在端口設(shè)置模塊43對端口進行設(shè)置后,對MAC地址表進行清除;端口設(shè)置模塊43,還用于在地址清除模塊44對MAC地址表清除完后,在預(yù)先建立的端口泛洪表中,對收到鏈路狀態(tài)通告的端口清除泛洪標記;一種優(yōu)選的方式,端口設(shè)置模塊43在建立模塊預(yù)先建立的端口泛洪表中,在與收到鏈路狀態(tài)通告的端口所屬的VLAN ID、該端口的端口號相對應(yīng)的位置,清除泛洪標記;地址學習控制模塊42,還用于在端口設(shè)置模塊43對端口清除泛洪標記后,打開 MAC地址學習功能;地址學習模塊45,連接至地址學習控制模塊42,在地址學習控制模塊42打開MAC 地址學習功能后,進行MAC地址學習。圖4所示裝置的工作原理如圖3所示,這里不在贅述。一種優(yōu)選的方式,圖4所示的裝置可以位于網(wǎng)絡(luò)設(shè)備中,具體地,還可以位于網(wǎng)絡(luò)設(shè)備的橋轉(zhuǎn)發(fā)模塊中。通過圖4所示的裝置,也能夠解決現(xiàn)有技術(shù)中在清除地址的過程中根據(jù)實效的地址信息發(fā)送報文、導致報文丟失的問題,從而能夠提高數(shù)據(jù)傳輸?shù)男省1景l(fā)明實施例在圖3所示的鏈路切換方法的基礎(chǔ)上,還提供了一種基于圖3所示的鏈路切換方法的數(shù)據(jù)傳輸方法,圖5示出了本發(fā)明實施例提供的數(shù)據(jù)傳輸方法的工作流程圖,如圖5所示,該方法包括如下處理過程步驟51、根據(jù)報文的目的MAC地址、目的VLAN ID,在MAC地址表中查找到該報文的發(fā)送端口的端口號;步驟52、在預(yù)先建立的端口泛洪表中、查詢該發(fā)送端口是否設(shè)置有泛洪標記;步驟53、在該發(fā)送端口設(shè)置有泛洪標記的情況下,在目的VLAN ID所指的VLAN中廣播發(fā)送該報文,在該發(fā)送端口沒有設(shè)置泛洪標記的情況下,按照查找到的發(fā)送端口發(fā)送
8該報文。根據(jù)圖5所示的處理流程,在查找到報文的發(fā)送端口后,查詢該發(fā)送端口是否設(shè)置有泛洪標記,在設(shè)置有泛洪標記的情況下,將該報文在目的VLAN中進行廣播,這樣,在進行鏈路切換、進行MAC FLUSH操作的過程中,就不會因為根據(jù)失效的MAC地址表查找到鏈路切換之前使用的端口,并使用該端口發(fā)送報文、而導致報文丟失;并且,在發(fā)送端口沒有設(shè)置泛洪標記的情況下,能夠根據(jù)查找到的有效的端口信息來發(fā)送報文;從而在鏈路切換或者鏈路正常工作的情況下都能夠有效地發(fā)送報文,能夠解決現(xiàn)有技術(shù)中的在清除MAC地址的過程中數(shù)據(jù)報文發(fā)送丟失的問題。一種優(yōu)選的方式,可以通過如下的步驟實現(xiàn)圖5所示的方法,該方法包括如下的處理過程步驟一、預(yù)先建立包括VLAN ID、端口號的二維關(guān)系表,將建立的二維關(guān)系表作為端口泛洪表;步驟二、并根據(jù)報文的目的MAC、VLAN ID查找到對報文進行發(fā)送的端口的端口號;步驟三、根據(jù)查找到的報文的端口號、報文的目的VLAN ID,在端口泛洪表中的對應(yīng)位置,查找該端口是否設(shè)置了泛洪標記;步驟四、在該端口設(shè)置了泛洪標記的情況下,在目的VLAN中對該報文進行廣播發(fā)送,在該端口沒有設(shè)置泛洪標記的情況下,使用該端口發(fā)送報文。通過上述處理,發(fā)送報文時,在查找到轉(zhuǎn)發(fā)報文的發(fā)送端口后,在預(yù)先建立的端口泛洪表中查詢該發(fā)送端口是否被設(shè)置了泛洪標記(該端口泛洪表中記錄的內(nèi)容表示是否需要對通過端口發(fā)送的報文進行廣播發(fā)送),如果發(fā)送端口設(shè)置了泛洪標記,就將該報文在目的VLAN中進行廣播,從而能夠避免鏈路切換過程中的報文丟失問題。本發(fā)明實施例提供的端口泛洪表是二維關(guān)系表,對該表進行查找的操作為線性查找,不會因為端口泛洪表中數(shù)據(jù)量的增大而導致查找操作的效率下降,查找操作的性能能夠保持在大致均衡的水平上,并且該查找操作耗時少、操作效率高,不會增加系統(tǒng)的負擔。為實現(xiàn)上述功能,本發(fā)明實施例這里的數(shù)據(jù)傳輸方法可以通過硬件實現(xiàn),也可以通過下述軟件程序?qū)崿F(xiàn)。圖6示出了本發(fā)明實施例提供的數(shù)據(jù)傳輸裝置的結(jié)構(gòu)示意圖,如圖6所示,該裝置包括查找模塊61,用于根據(jù)報文的目的MAC地址、目的VLAN ID,在MAC地址表中查找到該報文的發(fā)送端口的端口號;查詢模塊62,連接至查找模塊61,用于在預(yù)先建立的端口泛洪表中、查詢該發(fā)送端口是否設(shè)置有泛洪標記;發(fā)送模塊63,連接至查詢模塊62,用于在查詢模塊查詢到發(fā)送端口設(shè)置有泛洪標記的情況下,在目的VLAN ID所指的VLAN中廣播該報文;在查詢模塊62查詢到發(fā)送端口沒有設(shè)置泛洪標記的情況下,按照查找到的發(fā)送端口發(fā)送該報文。圖6所示的裝置的工作原理如圖5所示,這里不再贅述。一種優(yōu)選的方式,圖6所示的裝置可以位于網(wǎng)絡(luò)設(shè)備中,具體地,還可以位于網(wǎng)絡(luò)設(shè)備的橋轉(zhuǎn)發(fā)模塊中。
通過圖6所示的裝置,在查找到轉(zhuǎn)發(fā)報文的發(fā)送端口后,在預(yù)先建立的端口泛洪表中查詢該發(fā)送端口是否被設(shè)置了泛洪標記,如果發(fā)送端口設(shè)置了泛洪標記,就將該報文在目的VLAN中進行廣播,從而能夠避免鏈路切換過程中的報文丟失問題。本發(fā)明實施例還提供了一種網(wǎng)絡(luò)設(shè)備,該網(wǎng)絡(luò)設(shè)備包括如圖4所示的鏈路切換裝置,用于對鏈路切換進行處理,工作原理如圖3所示。本發(fā)明實施例還提供了一種網(wǎng)絡(luò)設(shè)備,該網(wǎng)絡(luò)設(shè)備包括如圖6所示的數(shù)據(jù)傳輸裝置,用于對數(shù)據(jù)傳輸進行處理,工作原理如圖5所示。本發(fā)明實施例還提供了一種網(wǎng)絡(luò)設(shè)備,該網(wǎng)絡(luò)設(shè)備包括如圖4所示的的鏈路切換裝置和如圖6所示的數(shù)據(jù)傳輸裝置,用于在鏈路切換裝置對鏈路切換進行處理后、通過數(shù)據(jù)傳輸裝置對數(shù)據(jù)傳輸進行處理,鏈路切換的原理如圖3所示,數(shù)據(jù)傳輸?shù)脑砣鐖D5所
7J\ ο下面對本發(fā)明實施例具體應(yīng)用的場景進行說明。圖7a示出了本發(fā)明實施例具體應(yīng)用的場景,在該場景中,節(jié)點設(shè)備A、B、C、D以及連接節(jié)點A、B、C、D的鏈路構(gòu)成環(huán)路,節(jié)點A的端口 2、節(jié)點D的端口 2之間的鏈路為工作鏈路,節(jié)點B的端口 2、節(jié)點C的端口 2之間的鏈路為工作鏈路,節(jié)點A的端口 1、節(jié)點B 的端口 1之間的工作鏈路由于故障切換為備用鏈路、節(jié)點C的端口 1、節(jié)點D的端口 1之間的備份鏈路切換為工作鏈路。節(jié)點C通過端口 3連接用戶設(shè)備PC2,節(jié)點D通過端口 3連接用戶設(shè)備PC1,在鏈路切換前PCl的地址信息為MAC1+P0RT2+VLAN10,PC2的地址信息為 MAC2+P0RT2+VLAN10。在圖7a中,W表示工作鏈路,P表示備份鏈路。由于在虛擬局域網(wǎng)中,二層交換機進行數(shù)據(jù)報文傳輸時,是根據(jù)報文的目的MAC 地址、目的VLAN ID來查找MAC表,決定將報文從哪個端口轉(zhuǎn)發(fā)的,本發(fā)明實施例首先建立一個由VLAN ID和端口號(PORT)構(gòu)成的二維關(guān)系表——MAC FLOOD表(即端口泛洪表), 該端口泛洪表中記錄的內(nèi)容表示是否需要對通過端口(即端口號所指的端口)發(fā)送的報文在VLAN (即VLAN ID所指的VLAN)內(nèi)進行廣播處理,表中的內(nèi)容FL00D_FLAG用于標記端口是否需要對通過該端口發(fā)送的報文進行廣播發(fā)送,F(xiàn)L00D_FLAG = 1時表示對通過該端口發(fā)送的報文進行廣播發(fā)送,F(xiàn)L00D_FLAG = 0時表示不對通過該端口發(fā)送的報文進行廣播發(fā)送。MAC FLOOD表的結(jié)構(gòu)如圖7b所示,該表的數(shù)據(jù)結(jié)構(gòu)采用二維數(shù)組存儲,第一級索引 (Primary Index)為 VLAN ID,第二級索引(Secondary Index)為端口號 PORT,通常我們使用的有效VLAN ID為1 4094,所以第一級索引為hdex 1 4094,而對于網(wǎng)絡(luò)設(shè)備而言, 端口數(shù)目是不定的(Index :1 N),所以PORT索引范圍要根據(jù)具體的設(shè)備而定。在本發(fā)明實施例的應(yīng)用場景中,節(jié)點A、B間的工作鏈路由于故障切換為備用鏈路,圖8示出了進行鏈路切換的處理步驟81、節(jié)點設(shè)備C、D的端口 2均接收到MAC FLUSH通告;步驟82、節(jié)點設(shè)備C、D關(guān)閉各自設(shè)備上的MAC地址學習功能;步驟83、節(jié)點設(shè)備C、D分別在各自的MAC_FL00D表中,對收到MAC FLUSH通告的端口 2設(shè)置泛洪標記,即設(shè)置FL00D_FLAG = 1。步驟84、節(jié)點設(shè)備C、D分別對各自的MAC地址表進行清除;步驟85、節(jié)點設(shè)備C、D分別對MAC地址表清除完成后,在MAC_FL00D表中,對收到 MAC FLUSH通告的端口 2清除泛洪標記,即設(shè)置FL00D_FLAG = 0 ;
步驟86、節(jié)點設(shè)備C、D分別打開該節(jié)點設(shè)備上端口的MAC地址學習能力、進行MAC 地址學習。在進行了如圖8所述的處理的過程中,節(jié)點設(shè)備C、D的端口 2收到MACFLUSH通告后,分別對端口 2在MAC_FL00D表中設(shè)置泛洪標記FL00D_FLAG = 1,并進行MAC地址清除, 在MAC地址清除的過程中,節(jié)點C下的PC2要向節(jié)點D下的PCl發(fā)送數(shù)據(jù)報文,且節(jié)點C對 MAC地址清除的操作未進行到清除PCl的地址信息,在這種情況下,本發(fā)明實施例采用如圖 9所示的方法進行數(shù)據(jù)傳輸。如圖9所示,該處理包括如下步驟步驟91、節(jié)點設(shè)備C判斷要發(fā)送的報文的VLAN ID是否有效,如果有效,處理進行到步驟93,否則處理進行到步驟92 ;步驟92、節(jié)點設(shè)備C丟棄該報文,處理結(jié)束;步驟93、節(jié)點設(shè)備C根據(jù)報文的源MAC和VLAN ID、在MAC地址表中查找是否有該報文的表項,如果有該表項,處理進行到步驟95,否則,處理進行到步驟94 ;步驟94,對報文進行泛洪處理;步驟95,節(jié)點設(shè)備C根據(jù)報文的目的MAC和目的VLAN ID為MAC1+VLAN10、在MAC 表中查找到發(fā)送該報文的端口的端口號2 ;步驟96,節(jié)點設(shè)備C根據(jù)查找到的端口號PORT = 2和查找到的該端口 2的目的 VLAN ID = VLAN10,在MAC FLOOD表中查詢端口 2是否設(shè)置有泛洪標記,即在節(jié)點設(shè)備C中的MAC FLOOD表中查詢端口 2的FL00D_FLAG是否為1 (根據(jù)如圖8所示的處理過程,節(jié)點 C的端口 2已經(jīng)設(shè)置了泛洪標記FL00D_FLAG = 1),在FL00D_FLAG = 1的情況下,處理進行到步驟98,否則,處理進行到步驟97 ;步驟97、節(jié)點設(shè)備C按照查找的端口 2發(fā)送報文,處理結(jié)束。步驟98、節(jié)點設(shè)備C將報文在報文的目的VLAN(即VLAN10)內(nèi)廣播發(fā)送,即對報文進行泛洪處理——將報文發(fā)給目的VLAN10中的每一個節(jié)點設(shè)備A、B、D,節(jié)點D接收到報文后將報文發(fā)送給PCl,處理結(jié)束。根據(jù)如圖9所示的處理過程,在查詢到發(fā)送端口設(shè)置了泛洪標記的情況下,將報文在目的VLAN內(nèi)泛洪,就能夠避免報文丟失,從而能夠解決現(xiàn)有技術(shù)中在MAC地址清除的過程中、報文發(fā)送丟失的問題。此外,根據(jù)如圖8所示的處理過程,在鏈路切換完成、鏈路正常的情況下,節(jié)點設(shè)備學習到了有效的地址信息后,根據(jù)如圖9所示的處理過程,能夠根據(jù)有效的地址信息、根據(jù)查找到的端口來發(fā)送報文。從而能夠保證數(shù)據(jù)報文通過正確的路由、有效地發(fā)送到目的地址。并且,如上所示,查找MAC FLOOD表的操作并不增加系統(tǒng)負擔、不會降低節(jié)點設(shè)備的
處理效率。相比于現(xiàn)有技術(shù),本發(fā)明實施例提供的技術(shù)方案在不提升現(xiàn)有設(shè)備的性能、不降低MAC地址表容量的情況下,在鏈路切換的過程中對端口設(shè)置泛洪標記,在鏈路切換完完成后對端口清除泛洪標記,能夠使在鏈路切換過程中發(fā)送的數(shù)據(jù)根據(jù)端口是否設(shè)置有泛洪標記來進行發(fā)送,在查找到無效的地址信息、端口已經(jīng)設(shè)置了泛洪標記時,將數(shù)據(jù)進行廣播發(fā)送,在查找到有效的地址信息、端口已經(jīng)清除了泛洪標記時,將數(shù)據(jù)按照有效的地址信息進行發(fā)送,從而能夠解決現(xiàn)有技術(shù)中在清除地址的過程中根據(jù)實效的地址信息發(fā)送報文、 導致報文丟失的問題,能夠提高數(shù)據(jù)傳輸?shù)男省?br> 并且,本發(fā)明實施例提供的端口泛洪表是二維關(guān)系表,對該表進行查找的操作為線性查找,不會因為端口泛洪表中數(shù)據(jù)量的增大而導致查找操作的效率下降,查找操作的性能能夠保持在大致均衡的水平上,并且該查找操作耗時少、操作效率高,不會增加系統(tǒng)的負擔。顯然,本領(lǐng)域的技術(shù)人員可以對本發(fā)明進行各種改動和變型而不脫離本發(fā)明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權(quán)利要求及其等同技術(shù)的范圍之內(nèi),則本發(fā)明也意圖包含這些改動和變型在內(nèi)。
權(quán)利要求
1.一種鏈路切換方法,其特征在于,包括在接收到鏈路狀態(tài)通告后,關(guān)閉媒體訪問控制MAC地址學習功能; 在預(yù)先建立的端口泛洪表中,對收到鏈路狀態(tài)通告的端口設(shè)置泛洪標記,并對MAC地址表進行清除;在對所述MAC地址表清除完成后,在預(yù)先建立的端口泛洪表中,對收到鏈路狀態(tài)通告的端口清除泛洪標記,并打開MAC地址學習功能、進行MAC地址學習。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述端口泛洪表包括虛擬局域網(wǎng)的標識、 端口號的二維關(guān)系表;對收到鏈路狀態(tài)通告的端口設(shè)置泛洪標記,包括在預(yù)先建立的端口泛洪表中,在與收到鏈路狀態(tài)通告的端口所屬的虛擬局域網(wǎng)的標識、該端口的端口號相對應(yīng)的位置,設(shè)置泛洪標記; 對收到鏈路狀態(tài)通告的端口清除泛洪標記,包括在預(yù)先建立的端口泛洪表中,在與收到鏈路狀態(tài)通告的端口所屬的虛擬局域網(wǎng)的標識、該端口的端口號相對應(yīng)的位置,取消泛洪標記。
3.一種鏈路切換裝置,其特征在于,包括 接收模塊,用于接收鏈路狀態(tài)通告;地址學習控制模塊,用于在所述接收模塊接收到所述鏈路狀態(tài)通告后,關(guān)閉媒體訪問控制MAC地址學習功能;端口設(shè)置模塊,用于在所述地址學習控制模塊關(guān)閉MAC地址學習功能后,在預(yù)先建立的端口泛洪表中,對收到鏈路狀態(tài)通告的端口設(shè)置泛洪標記;地址清除模塊,用于在所述端口設(shè)置模塊對所述端口設(shè)置泛洪標記后,對MAC地址表進行清除;所述端口設(shè)置模塊,還用于在所述地址清除模塊對MAC地址表清除完后,在預(yù)先建立的端口泛洪表中,對收到鏈路狀態(tài)通告的端口清除泛洪標記;所述地址學習控制模塊,還用于在所述端口設(shè)置模塊對所述端口清除泛洪標記后,打開所述MAC地址學習功能;地址學習模塊,在所述地址學習控制模塊打開所述MAC地址學習功能后,進行MAC地址學習。
4.根據(jù)權(quán)利要求3所述的裝置,其特征在于,所述端口泛洪表包括虛擬局域網(wǎng)的標識、 端口號的二維關(guān)系表;所述端口設(shè)置模塊,具體用于在所述地址學習控制模塊關(guān)閉MAC地址學習功能后,對于收到鏈路狀態(tài)通告的端口, 在所述建立模塊預(yù)先建立的端口泛洪表中,在與該端口所屬的VLAN ID、該端口的端口號相對應(yīng)的位置,設(shè)置泛洪標記;在所述地址清除模塊對MAC地址表清除完后,對于收到鏈路狀態(tài)通告的端口,在所述建立模塊預(yù)先建立的端口泛洪表中,在與該端口所屬的VLAN ID、該端口的端口號相對應(yīng)的位置,清除泛洪標記。
5.一種網(wǎng)絡(luò)設(shè)備,其特征在于,包括如權(quán)利要求3至4中任一項所述的鏈路切換裝置。
6.一種數(shù)據(jù)傳輸方法,其特征在于,包括根據(jù)報文的目的媒體訪問控制MAC地址,在MAC地址表中查找到該報文的發(fā)送端口的端口號;在預(yù)先建立的端口泛洪表中、查詢該發(fā)送端口是否設(shè)置有泛洪標記; 在該發(fā)送端口設(shè)置有泛洪標記的情況下,在所述報文的目的虛擬局域網(wǎng)的標識VLAN ID所指的VLAN中廣播發(fā)送該報文,在該發(fā)送端口沒有設(shè)置泛洪標記的情況下,按照查找到的發(fā)送端口發(fā)送該報文。
7.根據(jù)權(quán)利要求6所述的方法,其特征在于,所述端口泛洪表包括虛擬局域網(wǎng)的標識、 端口號的二維關(guān)系表;查詢該發(fā)送端口是否設(shè)置有泛洪標記,包括根據(jù)查找到的發(fā)送端口的端口號、所述報文的目的VLAN ID,在端口泛洪表中對應(yīng)的位置,查詢該發(fā)送端口是否設(shè)置有泛洪標記。
8.一種數(shù)據(jù)傳輸裝置,其特征在于,包括查找模塊,用于根據(jù)報文的目的媒體訪問控制MAC地址,在MAC地址表中查找到該報文的發(fā)送端口的端口號;查詢模塊,用于在預(yù)先建立的端口泛洪表中、查詢該發(fā)送端口是否設(shè)置有泛洪標記; 發(fā)送模塊,用于在所述查詢模塊查詢到所述發(fā)送端口設(shè)置有泛洪標記的情況下,在所述目的虛擬局域網(wǎng)的標識VLAN ID所指的VLAN中廣播發(fā)送該報文;在所述查詢模塊查詢到所述發(fā)送端口沒有設(shè)置泛洪標記的情況下,按照查找到的發(fā)送端口發(fā)送該報文。
9.根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述端口泛洪表包括虛擬局域網(wǎng)的標識、 端口號的二維關(guān)系表;所述查詢模塊,具體用于根據(jù)查找到的發(fā)送端口的端口號、所述報文的目的VLAN ID, 在端口泛洪表中對應(yīng)的位置,查詢該發(fā)送端口是否設(shè)置有泛洪標記。
10.一種網(wǎng)絡(luò)設(shè)備,其特征在于,包括如權(quán)利要求8至9中任一項所述的數(shù)據(jù)傳輸裝置。
11.一種網(wǎng)絡(luò)設(shè)備,其特征在于,包括如權(quán)利要求3至4中任一項所述的鏈路切換裝置;和如權(quán)利要求8至9中任一項所述的數(shù)據(jù)傳輸裝置。
全文摘要
本發(fā)明公開了一種鏈路切換方法及裝置、數(shù)據(jù)傳輸方法及裝置、網(wǎng)絡(luò)設(shè)備,其中,數(shù)據(jù)傳輸方法包括根據(jù)報文的目的MAC地址、VLAN ID,在MAC地址表中查找到該報文的發(fā)送端口的端口號;在預(yù)先建立的端口泛洪表中、查詢該發(fā)送端口是否設(shè)置有泛洪標記;在該發(fā)送端口設(shè)置有泛洪標記的情況下,在報文的目的VLAN ID所指的VLAN中廣播發(fā)送該報文,在該發(fā)送端口沒有設(shè)置泛洪標記的情況下,按照查找到的發(fā)送端口發(fā)送該報文。根據(jù)本發(fā)明實施例,在發(fā)送端口設(shè)置有泛洪標記的情況下,將報文在報文的目的VLAN內(nèi)進行廣播,能夠避免鏈路切換的過程中發(fā)送報文時存在的報文丟失問題。
文檔編號H04L29/12GK102420768SQ20111042156
公開日2012年4月18日 申請日期2011年12月15日 優(yōu)先權(quán)日2011年12月15日
發(fā)明者林鵬 申請人:北京星網(wǎng)銳捷網(wǎng)絡(luò)技術(shù)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
嘉祥县| 伊春市| 电白县| 德昌县| 四平市| 宜城市| 城步| 普宁市| 正蓝旗| 亚东县| 上饶市| 平泉县| 容城县| 安乡县| 麻江县| 聂拉木县| 旬阳县| 杂多县| 岑溪市| 怀来县| 京山县| 彝良县| 西华县| 汉沽区| 东乌珠穆沁旗| 兴文县| 宝坻区| 玉龙| 蚌埠市| 五河县| 汉中市| 临洮县| 武宣县| 莆田市| 科技| 吴江市| 乐至县| 陇川县| 安徽省| 雷波县| 夏津县|