專利名稱:保證城域傳輸設(shè)備中二層以太網(wǎng)交換機(jī)數(shù)據(jù)安全的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及網(wǎng)絡(luò)通信技術(shù)領(lǐng)域,具體涉及一種保證城域傳輸設(shè)備中二層以太網(wǎng)交換機(jī)數(shù)據(jù)安全的方法。
背景技術(shù):
隨著城域網(wǎng)技術(shù)的發(fā)展,傳統(tǒng)的以太網(wǎng)透傳技術(shù)已無法滿足城域傳輸網(wǎng)應(yīng)用的需求,因此出現(xiàn)了多種基于城域傳輸?shù)亩右蕴W(wǎng)交換機(jī),二層交換機(jī)屬數(shù)據(jù)鏈路層設(shè)備,可以識別數(shù)據(jù)包中的MAC(媒體接入控制)地址信息,根據(jù)MAC地址進(jìn)行轉(zhuǎn)發(fā),并將這些MAC地址與對應(yīng)的端口記錄在路由表中,該路由表標(biāo)明了MAC地址和交換機(jī)端口的對應(yīng)關(guān)系。當(dāng)交換機(jī)從某個(gè)端口收到一個(gè)數(shù)據(jù)包,它先讀取包頭中的源MAC地址,這樣它就知道源MAC地址的機(jī)器是連在哪個(gè)端口上的;再去讀取包頭中的目的MAC地址,并在路由表中查找相應(yīng)的端口;如表中有與這目的MAC地址對應(yīng)的端口,把數(shù)據(jù)包直接復(fù)制到這端口上;如表中找不到相應(yīng)的端口則把數(shù)據(jù)包廣播到所有端口上,當(dāng)目的機(jī)器對源機(jī)器回應(yīng)時(shí),交換機(jī)又可以學(xué)習(xí)一目的MAC地址與哪個(gè)端口對應(yīng),在下次傳送數(shù)據(jù)時(shí)就不再需要對所有端口進(jìn)行廣播了。
不斷循環(huán)上述過程,對于全網(wǎng)的MAC地址信息都可以學(xué)習(xí)到,二層交換機(jī)即可建立并維護(hù)它自己的地址表。
傳統(tǒng)的二層以太網(wǎng)交換機(jī)對報(bào)文的轉(zhuǎn)發(fā)流程如圖1所示路由表可以靜態(tài)配置,也可以動態(tài)建立,即通過交換機(jī)根據(jù)接收報(bào)文中的MAC地址不斷學(xué)習(xí)而建立的。
交換機(jī)收到報(bào)文后,如果沒有相應(yīng)的路由,則根據(jù)報(bào)文的源MAC地址+端口學(xué)習(xí),建立源MAC地址和交換機(jī)端口的對應(yīng)關(guān)系;該對應(yīng)關(guān)系建立后,還要根據(jù)報(bào)文的目的MAC地址進(jìn)行出端口的查找。
可能有以下幾種情況(1)報(bào)文中的目的MAC地址為單播地址,且路由表中沒有相應(yīng)的路由;(2)報(bào)文中的目的MAC地址為組播地址,且路由表中沒有相應(yīng)的路由;(3)報(bào)文中的目的MAC地址為廣播地址。
在上述三種情況下,都需要對報(bào)文進(jìn)行廣播處理,將報(bào)文復(fù)制到所有端口上。根據(jù)回應(yīng)報(bào)文學(xué)習(xí)到對應(yīng)的出端口,從而在路由表中建立起相應(yīng)的路由。
可見,二層以太網(wǎng)交換機(jī)只單純地利用MAC地址查找路由,由此會存在以下安全隱患a、端口攻擊,即網(wǎng)絡(luò)黑客利用交換機(jī)廣播到本端口的另一個(gè)用戶的報(bào)文獲取MAC地址,通過一個(gè)或多個(gè)端口向這個(gè)用戶的某端口發(fā)送大量垃圾報(bào)文,致使被攻擊用戶帶寬資源被大量占用甚至被耗盡,網(wǎng)絡(luò)處于癱瘓狀態(tài)。
b、黑客可利用MAC地址假冒竊取被攻擊方報(bào)文信息。
如圖2所示端口A和端口C屬于VLAN1,端口B和端口D屬于VLAN2,端口A和端口C之間存在路由,在端口B發(fā)送源MAC地址與端口A所連接設(shè)備MAC地址相同的報(bào)文,則端口C的報(bào)文就會發(fā)往端口B,這樣網(wǎng)絡(luò)黑客便利用端口B竊取了端口C的信息。
c、當(dāng)MAC地址共享不同的VLAN(虛擬局域網(wǎng))和用戶/VB(虛擬網(wǎng)橋)/Stack VLAN(嵌套虛擬局域網(wǎng))/QinQ(多層802.1Q標(biāo)簽封裝報(bào)文格式)時(shí),由于表項(xiàng)的鏈接過多,導(dǎo)致查找效率降低,從而報(bào)文的轉(zhuǎn)發(fā)效率也會隨著降低。
而且,二層以太網(wǎng)交換機(jī)的廣播機(jī)制也存在潛在的隱患當(dāng)交換機(jī)在路由表項(xiàng)中找不到相應(yīng)的端口則把數(shù)據(jù)包廣播到所有端口上,攻擊者就可以在某一個(gè)端口上接收到其它端口廣播過來的報(bào)文,這樣也會出現(xiàn)信息安全隱患。
發(fā)明內(nèi)容
本發(fā)明的目的是提供一種保證城域傳輸設(shè)備中二層以太網(wǎng)交換機(jī)數(shù)據(jù)安全的方法,以克服現(xiàn)有技術(shù)中單純利用MAC地址查找路由及查找路由時(shí)采用廣播機(jī)制存在的安全隱患,提高城域傳輸設(shè)備中數(shù)據(jù)的安全性。
本發(fā)明的目的是通過以下技術(shù)方案實(shí)現(xiàn)的一種保證城域傳輸設(shè)備中二層以太網(wǎng)交換機(jī)數(shù)據(jù)安全的方法,包括A、建立報(bào)文過濾表;B、根據(jù)所述報(bào)文過濾表對所述交換機(jī)接收的報(bào)文進(jìn)行過濾;C、建立路由表,所述路由表包括MAC地址及與其對應(yīng)的交換機(jī)端口、用戶信息、虛擬局域網(wǎng)標(biāo)識;D、根據(jù)所述路由表對過濾后的報(bào)文進(jìn)行轉(zhuǎn)發(fā)。
所述步驟A具體為根據(jù)所述交換機(jī)的配置信息建立所述報(bào)文過濾表,所述報(bào)文過濾表包括交換機(jī)入端口、所述交換機(jī)入端口所屬的虛擬局域網(wǎng)標(biāo)識和用戶信息。
所述步驟B包括B1、獲取所述交換機(jī)接收的報(bào)文相關(guān)信息,所述報(bào)文相關(guān)信息包括報(bào)文中的虛擬局域網(wǎng)標(biāo)識、接收報(bào)文的入端口、所述報(bào)文的入端口對應(yīng)的用戶信息。
B2、根據(jù)所述獲取的報(bào)文相關(guān)信息查找所述報(bào)文過濾表;B3、當(dāng)所述報(bào)文相關(guān)信息與所述過濾表中交換機(jī)入端口所屬的虛擬局域網(wǎng)標(biāo)識和用戶信息不同時(shí),丟棄所述報(bào)文。
所述步驟D包括D1、獲取路由表入端口索引;D2、根據(jù)所述路由表入端口索引查找所述路由表;D3、當(dāng)所述路由表中沒有與所述路由表入端口索引對應(yīng)的表項(xiàng)時(shí),將所述交換機(jī)入端口與所述報(bào)文的源MAC地址、虛擬局域網(wǎng)標(biāo)識、用戶信息的對應(yīng)關(guān)系學(xué)習(xí)到所述路由表中;D4、當(dāng)所述路由表有與所述路由表入端口索引對應(yīng)的表項(xiàng)時(shí),獲取路由表出端口索引;D5、根據(jù)所述路由表出端口索引查找所述路由表;D6、根據(jù)查找結(jié)果對所述過濾后的報(bào)文進(jìn)行轉(zhuǎn)發(fā)。
可選地,所述步驟D1具體為根據(jù)所述獲取的報(bào)文中的源MAC地址獲取路由表入端口索引。與此對應(yīng),所述步驟D4具體為根據(jù)所述獲取的報(bào)文中的目的MAC地址獲取路由表出端口索引。
可選地,所述步驟D1具體為根據(jù)二元組“源MAC地址+虛擬局域網(wǎng)標(biāo)識或用戶信息”獲取路由表入端口索引。與此對應(yīng),所述步驟D4具體為根據(jù)二元組“目的MAC地址+虛擬局域網(wǎng)標(biāo)識或用戶信息”獲取路由表出端口索引。
可選地,所述步驟D1具體為根據(jù)三元組“源MAC地址+虛擬局域網(wǎng)標(biāo)識+用戶信息”獲取路由表入端口索引。與此對應(yīng),所述步驟D4具體為根據(jù)三元組“目的MAC地址+虛擬局域網(wǎng)標(biāo)識+用戶信息”獲取路由表出端口索引。
所述步驟D6包括D61、當(dāng)所述路由表中有與所述路由表出端口索引對應(yīng)的表項(xiàng)時(shí),則將所述過濾后的報(bào)文發(fā)送到對應(yīng)的交換機(jī)出端口上;D62、當(dāng)所述路由表中沒有與所述路由表出端口索引對應(yīng)的表項(xiàng)時(shí),則將所述過濾后的報(bào)文廣播到所述過濾后的報(bào)文所帶虛擬局域網(wǎng)標(biāo)識所屬的所有端口上。
所述用戶信息具體為用戶標(biāo)識或虛擬網(wǎng)橋標(biāo)識或嵌套虛擬局域網(wǎng)或多層802.1Q標(biāo)簽封裝報(bào)文格式。
由以上本發(fā)明提供的技術(shù)方案可以看出,本發(fā)明利用過濾機(jī)制來隔離不同的VLAN和用戶/VB/Stack VLAN/QinQ,有效地避免了假冒MAC地址的端口攻擊,保障了交換機(jī)中數(shù)據(jù)的安全;利用不同的查找方式只通過MAC地址、通過MAC地址與VLAN和/或用戶ID/VBID/Stack VLAN/QinQ構(gòu)成二元組或三元組來查找路由,從而使查找路由支持區(qū)分同一VLAN內(nèi)的不同用戶ID/VBID/Stack VLAN/QinQ具有相同的MAC地址的應(yīng)用,進(jìn)一步增強(qiáng)了對報(bào)文的過濾功能,提高了網(wǎng)絡(luò)的安全性。利用優(yōu)選的方式用戶ID/VBID/StackVLAN/QinQ+VLAN+MAC三元組查找路由還可以縮短路由表表項(xiàng)查找深度,提高M(jìn)AC地址共享VLAN、用戶/VB/Stack VLAN/QinQ時(shí)的表項(xiàng)查找效率。
圖1是現(xiàn)有技術(shù)中二層以太網(wǎng)交換機(jī)對報(bào)文的轉(zhuǎn)發(fā)流程圖;圖2是現(xiàn)有技術(shù)中利用MAC地址假冒進(jìn)行網(wǎng)絡(luò)攻擊的示意圖;圖3是本發(fā)明方法的實(shí)現(xiàn)流程圖;圖4是本發(fā)明方法中報(bào)文過濾轉(zhuǎn)發(fā)的第一實(shí)施例的實(shí)現(xiàn)流程圖;圖5是本發(fā)明方法中報(bào)文過濾轉(zhuǎn)發(fā)的第二實(shí)施例的實(shí)現(xiàn)流程圖;圖6是本發(fā)明方法中報(bào)文過濾轉(zhuǎn)發(fā)的第三實(shí)施例的實(shí)現(xiàn)流程圖。
具體實(shí)施例方式
本發(fā)明的核心在于根據(jù)交換機(jī)的配置信息預(yù)先建立表示交換機(jī)入端口與其所屬VLAN(虛擬局域網(wǎng))和用戶ID/VBID/Stack VLAN/QinQ對應(yīng)關(guān)系的報(bào)文過濾表,交換機(jī)接收報(bào)文后,首先對收到的報(bào)文進(jìn)行端口過濾,將不屬于本交換機(jī)入端口接收的報(bào)文丟棄,以防止端口攻擊并保證端口數(shù)據(jù)安全;同時(shí),利用MAC地址與用戶ID/VBID/Stack VLAN/QinQ、VLAN組成二元組或三元組來查找路由,以提高查找效率。
為了使本技術(shù)領(lǐng)域的人員更好地理解本發(fā)明方案,下面結(jié)合附圖和實(shí)施方式對本發(fā)明作進(jìn)一步的詳細(xì)說明。
參照圖3,圖3示出了本發(fā)明方法的實(shí)現(xiàn)流程,包括以下步驟步驟301根據(jù)交換機(jī)的配置信息建立報(bào)文過濾表,所述報(bào)文過濾表包括交換機(jī)入端口、所述交換機(jī)入端口所屬的虛擬局域網(wǎng)標(biāo)識和用戶信息。所述用戶信息具體為用戶標(biāo)識或虛擬網(wǎng)橋標(biāo)識或嵌套虛擬局域網(wǎng)或多層802.1Q標(biāo)簽封裝報(bào)文格式。
本技術(shù)領(lǐng)域人員知道,用戶是二層交換機(jī)中報(bào)文的所屬域,一般是根據(jù)端口劃分的,即每個(gè)端口只能屬于一個(gè)用戶,每個(gè)用戶擁有一個(gè)完整的VLAN(虛擬局域網(wǎng))域。用戶ID(標(biāo)識碼)就是二層交換機(jī)中用來標(biāo)識用戶的,從原理上來講,VBID(虛擬網(wǎng)橋標(biāo)識)、Stack VLAN(嵌套VLAN)在二層交換機(jī)所起的作用與用戶ID是相同的,VB(虛擬網(wǎng)橋)就是在二層交換機(jī)中劃分出多個(gè)不同的虛擬域,這些虛擬域在對報(bào)文處理時(shí)是完全隔離的,VBID就是標(biāo)識這些VB的,Stack VLAN實(shí)際上就是對VLAN(虛擬局域網(wǎng))的擴(kuò)充,在二層交換時(shí)可以起到與VB相同的隔離作用,而QinQ(多層802.1Q標(biāo)簽封裝報(bào)文格式)標(biāo)簽在報(bào)文中可能存在多層,只有一層時(shí)就相當(dāng)于StackVLAN,當(dāng)存在兩層以上時(shí),就相當(dāng)于對Stack VLAN的擴(kuò)充,在二層交換時(shí)也起著信息隔離的作用。
這四個(gè)概念一般不會在同一個(gè)二層交換機(jī)中同時(shí)存在。因此,為了描述方便,下面僅以用戶來說明。
步驟302根據(jù)報(bào)文過濾表對交換機(jī)接收的報(bào)文進(jìn)行過濾。具體過濾過程為首先,交換機(jī)接收報(bào)文并獲取報(bào)文的相關(guān)信息,即報(bào)文中的虛擬局域網(wǎng)標(biāo)識、接收報(bào)文的入端口、所述報(bào)文的入端口對應(yīng)的用戶信息。其中,虛擬局域網(wǎng)標(biāo)識是報(bào)文本身所帶的;接收報(bào)文的入端口是交換機(jī)自己可以知道的;有了接收報(bào)文的入端口信息,則根據(jù)交換機(jī)的配置信息就可獲知該入端口對應(yīng)的用戶信息。
然后,根據(jù)獲取的報(bào)文中的虛擬局域網(wǎng)標(biāo)識、入端口信息查找報(bào)文過濾表。
如果報(bào)文中的虛擬局域網(wǎng)標(biāo)識與交換機(jī)入端口所屬的虛擬局域網(wǎng)標(biāo)識和用戶信息不相同,則丟掉該報(bào)文;否則,將該報(bào)文作為合法報(bào)文,即過濾后的報(bào)文。
這樣,即可排除交換機(jī)接收的非法報(bào)文。
步驟303建立路由表,所述路由表包括MAC地址及與其對應(yīng)的交換機(jī)端口、用戶信息、虛擬局域網(wǎng)標(biāo)識。
步驟304根據(jù)路由表對過濾后的報(bào)文進(jìn)行轉(zhuǎn)發(fā)。
由上述流程可見,根據(jù)網(wǎng)絡(luò)實(shí)際需要及交換機(jī)的配置信息,可以首先使交換機(jī)對接收的報(bào)文進(jìn)行過濾,利用過濾表來隔離不同的VLAN和用戶,可有效地避免網(wǎng)絡(luò)中的端口攻擊。然后,再根據(jù)路由表對過濾后的報(bào)文進(jìn)行轉(zhuǎn)發(fā)。
在本發(fā)明中,可以采用多種不同的路由檢索方式,來支持區(qū)分同一VLAN內(nèi)的不同用戶具有相同的MAC地址的應(yīng)用。
下面分別對不同的檢索轉(zhuǎn)發(fā)流程作詳細(xì)描述。
參照圖4所示報(bào)文過濾轉(zhuǎn)發(fā)的第一實(shí)施例的實(shí)現(xiàn)流程,在該實(shí)施例中,只通過MAC地址來查找路由,具體包括以下步驟首先,在步驟401根據(jù)報(bào)文的源MAC地址獲取路由表入端口索引查找路由表,比如利用常用的Hash算法,但不限于這種算法。
步驟402判斷查找是否命中,也就是說,路由表中是否有對應(yīng)該路由表入端口索引的表項(xiàng)。
如果沒有,則進(jìn)到步驟403將交換機(jī)入端口與報(bào)文的源MAC地址、VLAN標(biāo)識、用戶ID的對應(yīng)關(guān)系學(xué)習(xí)到所述路由表中,也就是說在路由表中增加交換機(jī)入端口與報(bào)文的源MAC地址、VLAN標(biāo)識、用戶ID的對應(yīng)關(guān)系的表項(xiàng),因?yàn)樵搱?bào)文是過濾后的報(bào)文,說明交換機(jī)的入端口已劃分給對應(yīng)于報(bào)文中的VLAN和相應(yīng)的用戶,只是還未建立對應(yīng)于該報(bào)文的轉(zhuǎn)發(fā)路由,因此可以將交換機(jī)入端口與報(bào)文的源MAC地址、VLAN、用戶ID的路由學(xué)習(xí)到路由表中,建立起入端口的路由。然后,再通過后面將描述的廣播方式,將報(bào)文發(fā)送到出端口,在出端口有報(bào)文回應(yīng)后通過與上面相同的步驟建立起出端口的路由,使路由表不僅可以通過靜態(tài)配置的方式建立,還可通過動態(tài)學(xué)習(xí)的方式進(jìn)行維護(hù)。
如果查找命中,則直接進(jìn)到步驟404根據(jù)報(bào)文的目的MAC地址獲取路由表出端口索引查找路由表,使用與步驟401相同的算法。
然后,進(jìn)到步驟405判斷查找是否命中,也就是說,路由表中是否有對應(yīng)該路由表出端口索引的表項(xiàng)。
如果有,則進(jìn)到步驟406將過濾后的報(bào)文發(fā)送到對應(yīng)的交換機(jī)出端口上,根據(jù)報(bào)文的目的MAC地址的不同,可能有兩種情況單播或組播。
如果是單播,則將報(bào)文發(fā)送到對應(yīng)的出端口上;如果是組播,則將報(bào)文復(fù)制到該組播組內(nèi)所有的出端口上。
如果沒有,則進(jìn)到步驟407將過濾后的報(bào)文廣播到所述過濾后的報(bào)文所帶VLAN所屬的所有端口上。
參照圖5所示報(bào)文轉(zhuǎn)發(fā)的第二實(shí)施例的實(shí)現(xiàn)流程,在該實(shí)施例中,通過“MAC地址+用戶ID”二元組來查找路由,具體包括以下步驟首先,在步驟501根據(jù)報(bào)文的“源MAC地址+用戶ID”獲取路由表入端口索引查找路由表,比如利用常用的Hash算法,但不限于這種算法。
步驟502判斷查找是否命中,也就是說,路由表中是否有對應(yīng)該路由表入端口索引的表項(xiàng)。
如果沒有,則進(jìn)到步驟503將交換機(jī)入端口與報(bào)文的源MAC地址、VLAN標(biāo)識、用戶ID的對應(yīng)關(guān)系學(xué)習(xí)到路由表中,也就是說在路由表中增加交換機(jī)入端口與報(bào)文的源MAC地址、VLAN標(biāo)識、用戶ID的對應(yīng)關(guān)系的表項(xiàng),因?yàn)樵搱?bào)文是過濾后的報(bào)文,說明交換機(jī)的入端口已劃分給對應(yīng)于報(bào)文中的VLAN和相應(yīng)的用戶,只是還未建立對應(yīng)于該報(bào)文的轉(zhuǎn)發(fā)路由,因此可以將交換機(jī)入端口與報(bào)文的源MAC地址、VLAN、用戶ID的對應(yīng)關(guān)系學(xué)習(xí)到路由表中,建立起入端口的路由。然后,再通過后面將描述的廣播方式將報(bào)文發(fā)送到出端口,在出端口有報(bào)文回應(yīng)后通過與上面相同的步驟建立起出端口的路由,使路由表不僅可以通過靜態(tài)配置的方式建立,還可通過動態(tài)學(xué)習(xí)的方式進(jìn)行維護(hù)。
如果查找命中,則直接進(jìn)到步驟504根據(jù)報(bào)文的“目的MAC地址+用戶ID”獲取路由表出端口索引查找路由表,使用與步驟501相同的算法。
然后,進(jìn)到步驟505判斷查找是否命中,也就是說,路由表中是否有對應(yīng)該路由表出端口索引的表項(xiàng)。
如果有,則進(jìn)到步驟506將過濾后的報(bào)文發(fā)送到對應(yīng)的交換機(jī)出端口上,根據(jù)報(bào)文的目的MAC地址的不同,可能有兩種情況單播或組播。
如果是單播,則將報(bào)文發(fā)送到對應(yīng)的出端口上;如果是組播,則將報(bào)文復(fù)制到該組播組內(nèi)所有的出端口上。
如果沒有,則進(jìn)到步驟507將過濾后的報(bào)文廣播到所述過濾后的報(bào)文所帶VLAN所屬的所有端口上。
同樣,還可以通過“MAC地址+VLAN”二元組來查找路由,實(shí)現(xiàn)過程同圖5所示流程類似,在此不再贅述。
在上述路由查找過程中,利用了Hash算法或其他類似算法來計(jì)算路由查找索引。本技術(shù)領(lǐng)域人員知道,根據(jù)Hash算法,在MAC地址共享VLAN、用戶時(shí),表項(xiàng)可能會產(chǎn)生沖突,這時(shí)就需要通過鏈表等方式加大表項(xiàng)深度,也就是一個(gè)MAC地址會對應(yīng)多個(gè)查找結(jié)果。為了在這多個(gè)查找結(jié)果中找到正確的結(jié)果,就要對這多個(gè)結(jié)果進(jìn)行遍歷,當(dāng)表項(xiàng)沖突較多時(shí)查找效率會降低。
因此,為了縮短這種表項(xiàng)的查找深度,提高路由查找效率,從而進(jìn)一步提高報(bào)文的轉(zhuǎn)發(fā)效率,本發(fā)明還提供了更優(yōu)化的路由查找方式,即利用“MAC地址+VLAN+用戶ID”三元組查找路由。
圖6示出了這種方式的詳細(xì)流程,包括以下步驟首先,在步驟601根據(jù)報(bào)文的“源MAC地址+VLAN+用戶ID”獲取路由表入端口索引查找路由表,同樣,可以利用Hash算法,但不限于這種算法。
步驟602判斷查找是否命中。
如果沒有,則進(jìn)到步驟603將交換機(jī)入端口與報(bào)文的源MAC地址、VLAN標(biāo)識、用戶ID的對應(yīng)關(guān)系學(xué)習(xí)到路由表中,也就是說在路由表中增加交換機(jī)入端口與報(bào)文的源MAC地址、VLAN標(biāo)識、用戶ID的對應(yīng)關(guān)系的表項(xiàng),因?yàn)樵搱?bào)文是過濾后的報(bào)文,說明交換機(jī)的入端口已劃分給對應(yīng)于報(bào)文中的VLAN和相應(yīng)的用戶,只是還未建立對應(yīng)于該報(bào)文的轉(zhuǎn)發(fā)路由,因此可以將交換機(jī)入端口與報(bào)文的源MAC地址、VLAN、用戶ID的路由學(xué)習(xí)到路由表中,建立起入端口的路由。然后,再通過后面將描述的廣播方式將報(bào)文發(fā)送到出端口,在出端口有報(bào)文回應(yīng)后通過與上面相同的步驟建立起出端口的路由,使路由表不僅可以通過靜態(tài)配置的方式建立,還可通過動態(tài)配置的方式進(jìn)行維護(hù)。
如果查找命中,則直接進(jìn)到步驟604根據(jù)報(bào)文的“目的MAC地址+VLAN+用戶ID”獲取路由表出端口索引查找路由表。
然后,進(jìn)到步驟605判斷查找是否命中,也就是說,路由表中是否有對應(yīng)該路由表出端口索引的表項(xiàng)。
如果有,則進(jìn)到步驟606將過濾后的報(bào)文發(fā)送到對應(yīng)的交換機(jī)出端口上,根據(jù)報(bào)文的目的MAC地址的不同,可能有兩種情況單播或組播。
如果是單播,則將報(bào)文發(fā)送到對應(yīng)的出端口上;如果是組播,則將報(bào)文復(fù)制到該組播組內(nèi)所有的出端口上。
如果沒有,則進(jìn)到步驟607將過濾后的報(bào)文廣播到所述過濾后的報(bào)文所帶VLAN所屬的所有端口上。
通過上述對不同的實(shí)施例的描述可見,與現(xiàn)有技術(shù)中二層以太網(wǎng)交換機(jī)大都根據(jù)MAC地址查找路由相比,本發(fā)明利用MAC地址和用戶ID/VBID/StackVLAN/QinQ、VLAN組成二、三元組查找路由,這樣網(wǎng)絡(luò)便可支持區(qū)分同一VLAN內(nèi)的不同用戶/VB/Stack VLAN/QinQ具有相同的MAC地址的應(yīng)用,同時(shí)主要可通過不同用戶/VB/Stack VLAN/QiniQ之間的隔離來加強(qiáng)城域傳輸設(shè)備中的二層以太網(wǎng)交換機(jī)的安全性能,進(jìn)行端口過濾防止惡意MAC地址攻擊,同時(shí)還通過縮短表項(xiàng)查找深度解決MAC地址共享VLAN、用戶ⅣB/StackVLAN/QinQ導(dǎo)致的效率過低問題。
雖然通過實(shí)施例描繪了本發(fā)明,本領(lǐng)域普通技術(shù)人員知道,本發(fā)明有許多變形和變化而不脫離本發(fā)明的精神,希望所附的權(quán)利要求包括這些變形和變化而不脫離本發(fā)明的精神。
權(quán)利要求
1.一種保證城域傳輸設(shè)備中二層以太網(wǎng)交換機(jī)數(shù)據(jù)安全的方法,其特征在于,包括A、建立報(bào)文過濾表;B、根據(jù)所述報(bào)文過濾表對所述交換機(jī)接收的報(bào)文進(jìn)行過濾;C、建立路由表,所述路由表包括MAC地址及與其對應(yīng)的交換機(jī)端口、用戶信息、虛擬局域網(wǎng)標(biāo)識;D、根據(jù)所述路由表對過濾后的報(bào)文進(jìn)行轉(zhuǎn)發(fā)。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述步驟A具體為根據(jù)所述交換機(jī)的配置信息建立所述報(bào)文過濾表,所述報(bào)文過濾表包括交換機(jī)入端口、所述交換機(jī)入端口所屬的虛擬局域網(wǎng)標(biāo)識和用戶信息。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述步驟B包括B1、獲取所述交換機(jī)接收的報(bào)文相關(guān)信息,所述報(bào)文相關(guān)信息包括報(bào)文中的虛擬局域網(wǎng)標(biāo)識、接收報(bào)文的入端口、所述報(bào)文的入端口對應(yīng)的用戶信息。B2、根據(jù)所述獲取的報(bào)文相關(guān)信息查找所述報(bào)文過濾表;B3、當(dāng)所述報(bào)文相關(guān)信息與所述過濾表中交換機(jī)入端口所屬的虛擬局域網(wǎng)標(biāo)識和用戶信息不同時(shí),丟棄所述報(bào)文。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述步驟D包括D1、獲取路由表入端口索引;D2、根據(jù)所述路由表入端口索引查找所述路由表;D3、當(dāng)所述路由表中沒有與所述路由表入端口索引對應(yīng)的表項(xiàng)時(shí),將所述交換機(jī)入端口與所述報(bào)文的源MAC地址、虛擬局域網(wǎng)標(biāo)識、用戶信息的對應(yīng)關(guān)系學(xué)習(xí)到所述路由表中;D4、當(dāng)所述路由表有與所述路由表入端口索引對應(yīng)的表項(xiàng)時(shí),獲取路由表出端口索引;D5、根據(jù)所述路由表出端口索引查找所述路由表;D6、根據(jù)查找結(jié)果對所述過濾后的報(bào)文進(jìn)行轉(zhuǎn)發(fā)。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述步驟D1具體為根據(jù)所述獲取的報(bào)文中的源MAC地址獲取路由表入端口索引。
6.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述步驟D4具體為根據(jù)所述獲取的報(bào)文中的目的MAC地址獲取路由表出端口索引。
7.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述步驟D1具體為根據(jù)二元組“源MAC地址+虛擬局域網(wǎng)標(biāo)識或用戶信息”獲取路由表入端口索引。
8.根據(jù)權(quán)利要求7所述的方法,其特征在于,所述步驟D4具體為根據(jù)二元組“目的MAC地址+虛擬局域網(wǎng)標(biāo)識或用戶信息”獲取路由表出端口索引。
9.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述步驟D1具體為根據(jù)三元組“源MAC地址+虛擬局域網(wǎng)標(biāo)識+用戶信息”獲取路由表入端口索引。
10.根據(jù)權(quán)利要求9所述的方法,其特征在于,所述步驟D4具體為根據(jù)三元組“目的MAC地址+虛擬局域網(wǎng)標(biāo)識+用戶信息”獲取路由表出端口索引。
11.根據(jù)權(quán)利要求4至10任一項(xiàng)所述的方法,其特征在于,所述步驟D6包括D61、當(dāng)所述路由表中有與所述路由表出端口索引對應(yīng)的表項(xiàng)時(shí),則將所述過濾后的報(bào)文發(fā)送到對應(yīng)的交換機(jī)出端口上;D62、當(dāng)所述路由表中沒有與所述路由表出端口索引對應(yīng)的表項(xiàng)時(shí),則將所述過濾后的報(bào)文廣播到所述過濾后的報(bào)文所帶虛擬局域網(wǎng)標(biāo)識所屬的所有端口上。
12.根據(jù)權(quán)利要求1至4任一項(xiàng)所述的方法,其特征在于,所述用戶信息具體為用戶標(biāo)識或虛擬網(wǎng)橋標(biāo)識或嵌套虛擬局域網(wǎng)或多層802.1Q標(biāo)簽封裝報(bào)文格式。
全文摘要
本發(fā)明公開了一種保證城域傳輸設(shè)備中二層以太網(wǎng)交換機(jī)數(shù)據(jù)安全的方法,包括建立報(bào)文過濾表;根據(jù)報(bào)文過濾表對交換機(jī)接收的報(bào)文進(jìn)行過濾;建立路由表;根據(jù)路由表對過濾后的報(bào)文進(jìn)行轉(zhuǎn)發(fā)。利用本發(fā)明,可以防止網(wǎng)絡(luò)端口攻擊,提高城域傳輸設(shè)備中數(shù)據(jù)的安全性。
文檔編號H04L12/56GK1767495SQ20041008682
公開日2006年5月3日 申請日期2004年10月28日 優(yōu)先權(quán)日2004年10月28日
發(fā)明者金志國, 李大為, 劉明偉 申請人:華為技術(shù)有限公司