專利名稱:獨立虛擬局域網(wǎng)學習方式下實現(xiàn)地址同步的方法
技術領域:
本發(fā)明涉及網(wǎng)絡通信技術領域,尤其涉及一種獨立VLAN(虛擬局域網(wǎng))學習方式下實現(xiàn)地址同步的方法。
背景技術:
在網(wǎng)絡通信中,為了便于通信網(wǎng)絡的管理,保證網(wǎng)絡通信的安全,通常需要對于以太網(wǎng)交換機等網(wǎng)絡接入設備的應用進行隔離,所采用的方法是為每個需要隔離的網(wǎng)絡接入設備分配一個VLAN ID(虛擬局域網(wǎng)標識),本VLAN內(nèi)的用戶與外界的通信均需要通過該網(wǎng)絡接入設備實現(xiàn)。但是,隨著網(wǎng)絡通信的日益發(fā)展,網(wǎng)絡組網(wǎng)的日益龐大,組網(wǎng)所需要的VLAN ID也越來越多,而可以分配的VLAN ID資源又是有限的,因此當網(wǎng)絡規(guī)模較大時,可以提供的VLAN ID數(shù)目將無法滿足組網(wǎng)的需要。
為了解決上述問題,在通信網(wǎng)絡中引入了Private VLAN(PVLAN,私有虛擬局域網(wǎng))技術,該技術是目前應用的一種具有二層隔離功能的VLAN管理方法,該方法提供了一種在較低層次(二層)可以聚合VLAN的手段,在PVLAN中包括一個primary VLAN(上層VLAN)和一個或多個secondary VLAN(二層VLAN)。
如圖1所示,二層交換機Quidway S2403和Quidway S3026分別通過上行端口5、6連接至三層交換機Quidway S3526的端口7、8;在QuidwayS3526上,認為Quidway S2403接入的所有用戶都在VLAN5中,而Quidway S3026接入的所有用戶都在VLAN6中;這樣,在QuidwayS3526上,只需要為VLAN5和VLAN6配置相應的IP(互聯(lián)網(wǎng)協(xié)議)網(wǎng)段即可。所述的VLAN5和VLAN6分別是標識兩臺二層交換機QuidwayS2403和Quidway S3026的Primary VLAN;而VLAN1和VLAN2是VLAN5的Secondary VLAN,VLAN3和VLAN4是VLAN6的Secondary VLAN,每個端口的用戶都被Secondary VLAN在二層隔離,三層報文的互通需要通過上接的三層交換機Quidway S3526來轉發(fā)。
由上述描述可以看出,PVLAN的實質(zhì)是通過劃分多個VLAN,VLAN之間相互配合的方法來實現(xiàn)的。其中,secondary VLAN主要實現(xiàn)上行的功能,每個secondary VLAN都包含了至少一個用戶接入端口和一個上行端口,保證用戶的報文能夠上行,同時上行報文不能到達別的用戶。primary VLAN則主要實現(xiàn)了下行的功能,primary VLAN要包括PVLAN內(nèi)的所有端口,每個從上行端口下來的報文進入交換機以后,都被當做是primary VLAN內(nèi)的報文來處理,因此下行報文可以到達VLAN內(nèi)的任意一個用戶。即用戶的數(shù)據(jù)在secondary VLAN內(nèi)上行,又通過primaryVLAN下行。因此,PVLAN的建立既實現(xiàn)了在二層隔離用戶的目的,又節(jié)約了三層交換機上的VLAN ID資源,同時還節(jié)約了IP網(wǎng)段。
基于上述PVLAN的組網(wǎng)形式,目前交換機等網(wǎng)絡接入設備采用的地址組織模式通過包括以下兩種IVL(independent VLAN learning,獨立VLAN學習)方式和SVL(shared VLAN learning,共享式VLAN學習)方式;所述的IVL方式為每個VLAN內(nèi)部都有自己的MAC地址表,相同的MAC地址可以學習到不同的VLAN中去,所述的SVL方式所有VLAN共享MAC地址表,表項中不會存在多個相同的MAC地址。
SVL工作方式下的交換機由于所有的VLAN可以共享一個MAC地址表,因此占用的資源比較少;另外查地址表的時候不管VLAN信息,只要根據(jù)MAC地址查找到對應的端口信息即可。但是SVL方式也有一個難以克服的缺點在組播方式下,相同目的的轉發(fā)表項在不同VLAN的轉發(fā)目的端口是不同的,所以限制了組播方式的應用。而IVL方式雖然資源占用較多,但由于每個VLAN都有自己單獨的轉發(fā)表,所以對組播的支持是沒有問題的,這就使得IVL方式的工作模式有了較多的應用。
在IVL方式下,使用MAC地址和VLAN ID為索引來查找某個轉發(fā)表項,比如要在VLAN1中查找MAC1,而MAC1存在于VLAN2中,不存在于VLAN1中,此時的查表結果是未能命中,因此IVL方式的查表效率相對SVL方式來說要低很多。
而且,當使用IVL方式來實現(xiàn)PVLAN時,假設用戶B的地址是從VLAN2上來,屬于VLAN2,用戶A的地址是從VLAN1進入的,屬于VLAN1。用戶A和B通信就會出現(xiàn)一個問題,由A到B和由B到A的報文在交換機中是當做廣播來處理的,如果在VLAN2內(nèi)還有別的用戶,那么由B到A的報文會被另外一個用戶收到,從B到A的報文更是會被所有的接入用戶接受到。因此,這種IVL方式的應用產(chǎn)生兩個問題一個是網(wǎng)絡設備的帶寬浪費的問題,所有的報文都是在作廣播,沒有利用交換機的優(yōu)勢;第二個是網(wǎng)絡安全的問題,一個用戶的報文可以被其它用戶收到,安全上無法得到保證。
發(fā)明內(nèi)容
本發(fā)明的目的是提供一種獨立VLAN學習方式下實現(xiàn)地址同步的方法,從而提高IVL方式下查找地址表的效率,防止網(wǎng)絡中產(chǎn)生大量的廣播報文,同時還可以提高了網(wǎng)絡通信的安全性能。
本發(fā)明的目的是這樣實現(xiàn)的一種獨立VLAN學習方式下實現(xiàn)地址同步的方法,包括增加獨立VLAN(虛擬局域網(wǎng))中接入地址的地址同步處理過程將接入地址添加至其接入端口默認的VLAN中,同時將所述的接入地址添加至共享該接入地址的VLAN中,并將為該地址設置的地址標志位置位,表示該接入地址接入的端口默認的VLAN不是該VLAN;刪除獨立VLAN中接入地址的地址同步處理過程將接入地址從其接入端口默認的VLAN(虛擬局域網(wǎng))的網(wǎng)絡接入設備中刪除,同時將該接入地址從共享該接入地址的VLAN中刪除。
所述的接入地址為MAC(介質(zhì)訪問控制)地址,且所述的MAC地址以MAC地址表的形式存放于網(wǎng)絡接入設備中。
所述的增加獨立VLAN中接入地址的地址同步處理過程還包括將加入共享該接入地址的VLAN中的接入地址的老化時間設置為不老化。
本發(fā)明中,當加入接入端口默認VLAN中的接入地址的老化時間設置為不老化時,所述的刪除獨立VLAN中接入地址的地址同步處理過程由用戶通過命令行執(zhí)行。
所述的獨立VLAN學習方式下實現(xiàn)地址同步的方法,還包括加入接入端口默認VLAN中的接入地址的老化時間設置為可老化時,所述的刪除獨立VLAN中接入地址的地址同步處理過程由該接入地址的老化定時器觸發(fā)執(zhí)行或由用戶通過命令行執(zhí)行。
所述的將該接入地址從共享該接入地址的VLAN中刪除進一步包括確定共享該接入地址的VLAN;從確定VLAN的地址表中查找該接入地址;根據(jù)該接入地址的地址標志位判斷是否為共享的接入地址,如果是,則刪除該接入地址,否則,不作處理。
所述的獨立VLAN包括PVLAN(私有虛擬局域網(wǎng))中的PrimaryVLAN(上層VLAN)和Secondary VLAN(二層VLAN)。
該方法還包括PVLAN建立時的地址同步過程遍歷Primary VLAN中的MAC地址表,并將其中老化時間為可老化的MAC地址刪除,將不可老化的MAC地址添加到Secondary VLAN的MAC地址表中,老化時間仍設置為不老化,同時將其地址標志位置位;遍歷Secondary VLAN的MAC地址表,將其中老化時間為可老化的MAC地址刪除,將老化時間為不可老化且地址標志位未置位的MAC地址添加到Primary VLAN的MAC地址表中,同時將其地址標志位置位。
所述的增加獨立VLAN(虛擬局域網(wǎng))中接入地址的地址同步處理過程包括確定需要增加的MAC地址默認的VLAN是Primary VLAN或SecondaryVLAN,并獲取所述VLAN對應的Secondary VLAN或Primary VLAN;判斷對應的Secondary VLAN或Primary VLAN中是否存在增加的MAC地址;如果不存在,則添加該MAC地址,且將地址標志位置位;如果存在,則判斷該MAC地址的老化時間是否為不老化;如果為不老化,則進一步判斷對應的VLAN是Secondary VLAN還是Primary VLAN;如果是Secondary VLAN,則繼續(xù)判斷其他與本PrimaryVLAN對應的Secondary VLAN中是否存在增加的MAC地址,并執(zhí)行相應的操作,直到與本Primary VLAN對應的所有SecondaryVLAN均被執(zhí)行完畢;如果對應的VLAN是Primary VLAN,則過程結束;如果是可老化,則刪除存在的MAC地址,添加該MAC地址,且將該MAC地址標志位置位。
所述的刪除獨立VLAN中接入地址的地址同步處理過程包括確定需要刪除的MAC地址默認的VLAN是Primary VLAN或SecondaryVLAN,并獲取所述VLAN對應的Secondary VLAN或Primary VLAN;
判斷對應的Secondary VLAN或Primary VLAN中是否存在需要刪除的MAC地址;如果存在,則獲取該MAC地址的地址標志位和老化時間,如果老化時間是不可老化,且地址標志位置位,則刪除存在的MAC地址,否則,按不存在該MAC地址處理;如果不存在,則進一步判斷對應的VLAN是Secondary VLAN還是Primary VLAN;如果是Secondary VLAN,則繼續(xù)判斷其他與本Primary VLAN對應的Secondary VLAN中是否存在需要刪除的MAC地址,并執(zhí)行相應的操作,直到與本Primary VLAN對應的所有Secondary VLAN均被執(zhí)行完畢;如果對應的VLAN是Primary VLAN,則過程結束。
該方法還包括解除PVLAN中Primary VLAN與Secondary VLAN對應關系時,地址標志位置位的MAC地址的刪除過程獲取需要解除PVLAN中Primary VLAN與Secondary VLAN對應關系的Primary VLAN及其對應的所有Secondary VLAN;遍歷Primary VLAN及其對應的所有Secondary VLAN的MAC地址表,將老化時間為不可老化,且地址標志位置位的MAC地址從MAC地址表中刪除。
所述的獨立VLAN學習方式下實現(xiàn)地址同步的方法,還包括
所述的增加獨立VLAN中接入地址的地址同步處理過程,是在增加接入地址的同時進行;所述的刪除獨立VLAN中接入地址的地址同步處理過程是在刪除接入地址的同時進行。
所述的增加獨立VLAN中接入地址的地址同步處理過程和刪除獨立VLAN中接入地址的地址同步處理過程為周期進行,即周期性的確定PVLAN的Primary VLAN和Secondary VLAN中增加或刪除的接入地址,并在Primary VLAN與Secondary VLAN間進行接入地址的同步處理。
由上述技術方案可以看出,本發(fā)明的實現(xiàn)保證了獨立VLAN學習方式下地址表中記錄的地址的同步性,即實現(xiàn)了在PVLAN中各個VLAN間MAC地址表的同步,避免了在網(wǎng)絡中出現(xiàn)大量的廣播報文,節(jié)省了有限的通信網(wǎng)絡資源,從而使通信網(wǎng)絡可以為用戶提供更大的帶寬資源;同時,本發(fā)明的實現(xiàn)還提高了網(wǎng)絡通信的安全性能。另外,本發(fā)明的實現(xiàn)還大大提高了IVL方式下查找MAC地址表的效率,從而提高了通信網(wǎng)絡轉發(fā)報文的性能。
圖1為PVLAN的組網(wǎng)結構示意圖;圖2為PVLAN中VLAN的管理示意圖;圖3為本發(fā)明建立PVLAN時的MAC地址同步操作過程;圖4為本發(fā)明中增加MAC地址的同步操作過程;圖5為本發(fā)明中刪除MAC地址的同步操作過程;
圖6為本發(fā)明中解除或改變PVLAN時的操作過程。
具體實施例方式
本發(fā)明的內(nèi)容前面已有敘述,現(xiàn)以PVLAN為例對本發(fā)明的具體實施方式
作進一步說明。在IVL(獨立VLAN學習)模式下,PVAN的SecondaryVLAN中的主機與Primary VLAN中的服務器之間由于MAC地址的不共享,所以只能通過廣播的方式實現(xiàn)相互間的信息交換,網(wǎng)絡中大量的廣播報文必然影響網(wǎng)絡的性能顯然。為此,本發(fā)明需要解決的問題是在IVL模式下實現(xiàn)Secondary VLAN與Primary VLAN之間MAC地址的共享,即保證同一個MAC地址同時在Secondary VLAN和Primary VLAN中存在,也就是說一個用戶的MAC地址在添加到所在端口默認VLAN中的同時必須添加到需要共享該MAC地址的其他VLAN中,我們可以將其他VLAN中存在的該MAC地址稱為“影子地址”,以方便下面的敘述。如圖2所示,對于局域網(wǎng)交換機LanSwitch的下行端口,1個MAC地址有1個影子地址;對于交換機LanSwitch的上行端口,1個MAC地址有n個影子地址,其中n為PrimaryVLAN包含的Secondary VLAN的個數(shù),本發(fā)明就是要使在IVL下的PVLAN中各個VLAN的MAC地址表實現(xiàn)同步,即所述的MAC地址與其影子地址在各VLAN中同時增加或刪除。
對MAC地址表中MAC地址的操作可以分為兩類靜態(tài)配置和動態(tài)維護。靜態(tài)配置是用戶自動對MAC地址表進行添加、刪除和修改的操作。動態(tài)維護則是交換機根據(jù)端口狀態(tài)和接收到報文的情況自動進行地址學習、老化和刪除的操作。MAC地址表中的MAC地址根據(jù)老化時間還可以分為兩大類可老化的和不可老化的。對于不可老化的地址,通常是通過用戶配置來維護的;可老化的地址則既可以由用戶配置也可以動態(tài)維護,如果這個地址在設定的時間間隔里一直沒有發(fā)送報文就會被交換機自動刪除掉。
參照上述現(xiàn)有交換機中MAC地表的維護方式,本發(fā)明考慮從不可老化的MAC地址的同步處理和可老化的MAC地址的同步處理兩個方面解決IVL方式下PVLAN中的地址同步問題。其中不可老化的MAC地址的添加和刪除都是由用戶配置觸發(fā)的,所以對于不可老化的MAC地址只要在用戶操作的時間點上進行各VLAN的MAC地址表同步維護就可以了。如圖2中的用戶B,可以通過用戶配置將它的MAC地址添加到Primary VLAN和Secondary VLAN1中,地址狀態(tài)都設為不可老化,這樣在管理員刪除它們之前,用戶B都可以很好的開展網(wǎng)絡業(yè)務。即在Primary VLAN中添加、刪除地址,則在所有的Secondary VLAN中添加、刪除影子地址;在Secondary VLAN中添加、刪除地址,則在Primary VLAN中添加、刪除影子地址。同時,為了將一個VLAN中用戶配置的不可老化地址與影子地址區(qū)分開來,需要給每個地址增加一個地址標志位,提高MAC地址表維護的有效性。而對于可老化MAC地址,由于受系統(tǒng)動態(tài)維護的影響,所以僅通過用戶配置操作無法實現(xiàn)各VLAN的MAC地址表的同步,而需要參考不可老化的MAC地址的處理過程,將影子地址的老化時間設置為不可老化,并在添加或刪除MAC地址時觸發(fā)影子地址的相應處理過程。
下面結合附圖本發(fā)明的具體實現(xiàn)過程作進一步說明
在PVLAN建立的時候,為提高處理效率,考慮到現(xiàn)有動態(tài)MAC地址可以通過報文重新學習到,所以可以先清除Primary VLAN及SecondaryVLAN中的所有可老化地址,僅保留涉其中由用戶配置的不可老化地址,并進行地址同步操作;而且為避免影子地址再生成影子地址的情況,采用了首先將Primary VLAN中的不可老化的MAC地址同步到SecondaryVLAN,當Secondary VLAN中的MAC地址同步到Primary VLAN時則檢查并排除MAC地址表中的影子地址,判斷MAC地址是否為影子地址的依據(jù)是該MAC地址的地址標志位是否被置位,如果被置位,則確定為影子地址;現(xiàn)結合圖3對建立PVLAN時的各VLAN的MAC地址同步過程進行詳細說明步驟301在通信網(wǎng)絡中根據(jù)需要建立PVLAN,確定PVLAN包含的Primary VLAN和Secondary VLAN,同時確定所述各VLAN的MAC地址表索引;步驟302根據(jù)Primary VLAN的MAC地址表索引遍歷PrimaryVLAN的MAC地址表,獲取MAC地址的老化狀態(tài),即老化時間;步驟303判斷MAC地址的老化時間是否為不可老化,如果是,執(zhí)行步驟304,否則,執(zhí)行步驟305,以清除MAC地址表中老化時間為可老化的MAC地址;步驟304將不可老化的MAC地址添加到Primary VLAN下的所有Secondary VLAN的MAC地址表,且將地址標志位置位,表示該MAC地址為影子地址,并執(zhí)行步驟306;
該步驟的目的是將Primary VLAN中的不可老化的MAC地址同步到與其對應的所有Secondary VLAN中,同時為對增加和刪除MAC地址的有效管理,還將同步過去的MAC地址作了標記,標記為影子地址;步驟305刪除該可老化的MAC地址,并執(zhí)行步驟6,因為可老化的MAC地址可以在地址學習過程中學習到,并在學習到時執(zhí)行相應的同步操作過程,所以此處將其刪除;步驟306判斷Primary VLAN中的MAC地址表是否遍歷完畢,如果是,則執(zhí)行步驟307,否則,執(zhí)行步驟302,繼續(xù)遍歷該MAC地址表,獲取地址表中的下一個MAC地址;步驟307從Primary VLAN下的各個Secondary VLAN中依次確定本次需要遍歷的Secondary VLAN的MAC地址表;在PVLAN中一個Primary VLAN中通常包含多個Secondary VLAN,因此,首先需要確定需要遍歷的一個Secondary VLAN的MAC地址表索引;步驟308根據(jù)確定的MAC地址表索引遍歷該MAC地址表,獲取MAC地址的老化時間和地址標志位;步驟309判斷MAC地址的老化時間是否為不可老化,如果是,執(zhí)行步驟311,否則,執(zhí)行步驟310;步驟310刪除該可老化的MAC地址,并執(zhí)行步驟313;步驟311判斷該不可老化的MAC地址的地址標志位是否被置位,即是否是影子地址,如果是,執(zhí)行步驟313,否則,執(zhí)行步驟312;該步驟避免了影子地址再次生成新的影子地址;
步驟312將該不可老化的MAC地址添加到Primary VLAN的MAC地址表中,且將其地址標志位置位,表示該MAC地址為影子地址;步驟3 13判斷是否遍歷完畢該Secondary VLAN的MAC地址表,如果是,執(zhí)行步驟314,否則,執(zhí)行步驟308;步驟314判斷是否遍歷完該Primary VLAN下所有的SecondaryVLAN的MAC地址表,如果是,PVLAN建立時的地址同步過程結束,否則繼續(xù)執(zhí)行步驟7。
建立PVLAN時的地址同步過程完成后,則需要確定建立后的PVLAN的Primary VLAN及Secondary VLAN中的MAC地址表的同步維持過程,本發(fā)明中PVLAN建立完成后,是根據(jù)用戶配置和動態(tài)維護實現(xiàn)各個VLAN的MAC地址表的同步,而且無論是用戶配置還是動態(tài)維護均為根據(jù)需要操作的地址信息實現(xiàn)對該地址的增加或刪除,并結合PVLAN的配置情況對各個VLAN的MAC地址進行同步,需要操作的地址信息包括所屬的VLAN、MAC地址、老化時間、地址標志位、使用的端口等。建立后的PVLAN的地址同步維持過程實際上包括添加MAC地址時的同步處理過程和刪除MAC地址時的同步處理過程。
所述的增加MAC地址時PVLAN的地址同步過程操作參見圖4,添加MAC地址可以是用戶進行的地址添加操作,也可以是學習到新的MAC地址導致的地址添加操作,具體包括以下步驟
步驟401確定需要添加的MAC地址信息,包括需要添加的MAC地址的默認的VLAN、MAC地址值、接入端口、地址標志位、地址的老化時間等;步驟402根據(jù)需要添加的MAC地址的接入端口信息判斷添加的MAC地址默認的VLAN是否為PVLAN中的Primary VLAN,如果是,執(zhí)行步驟404,否則,執(zhí)行步驟403;步驟403根據(jù)需要添加的MAC地址的端口信息判斷該MAC地址默認的VLAN是否為PVLAN中的Secondary VLAN,如果是,執(zhí)行步驟410,否則,過程結束;即如果需要添加的MAC地址默認的VLAN既不是Primary VLAN也不是Secondary VLAN,則本次添加MAC地址的同步過程結束;步驟404從該Primary VLAN對應的所有Secondary VLAN中依次確定本次需要遍歷的Secondary VLAN的MAC地址表,并獲取該MAC地址表的索引;步驟405根據(jù)MAC地址索引遍歷該MAC地址表中的MAC地址,并判斷需要添加的MAC地址是否存在于該MAC地址表中,如果存在,執(zhí)行步驟406,否則,執(zhí)行步驟408;步驟406判斷存在于該MAC地址表中的需要添加的MAC地址的老化時間是否為不可老化,如果是,則執(zhí)行步驟409,否則,執(zhí)行步驟407;步驟407將需要添加的MAC地址從該MAC地址表中刪除,并執(zhí)行步驟408;
該步驟也可以直接將該MAC地址的老化時間設置為不可老化,為其設置地址標志位,并置位,執(zhí)行步驟409;步驟408將需要添加的MAC地址添加到本次遍歷的SecondaryVLAN的MAC地址表中,將其老化時間設置為不可老化,地址標志位置位,表示該地址為影子地址,并執(zhí)行步驟409;步驟409判斷Primary VLAN下的所有Secondary VLAN的MAC地址表是否均已遍歷完畢,如果是,則結束過程,否則,繼續(xù)執(zhí)行步驟404;步驟410獲取該Secondary VLAN對應的Primary VLAN;步驟411判斷該Primary VLAN的MAC地址表中是否存在該需要添加的MAC地址,如果是,則執(zhí)行步驟412,否則,執(zhí)行步驟414;步驟412判斷該存在的MAC地址的地址老化時間是否為不可老化,如果是,結束過程,否則,執(zhí)行步驟413;步驟413刪除存在于Primary VLAN的MAC地址表中的該MAC地址,執(zhí)行步驟414;該步驟也可以直接將該MAC地址的老化時間設置為不可老化,為其設置地址標志位,并置位,并結束地址同步過程;步驟414將需要添加的MAC地址添加到Primary VLAN的MAC地址表中,將其地址老化時間設置為不可老化,地址標志位置位,表示該地址為影子地址。
所述的刪除MAC地址時PVLAN的地址同步過程操作參見圖5,刪除MAC地址可以是用戶進行的地址刪除操作,也可以是系統(tǒng)中老化定時器超時時地址被老化掉導致的地址刪除操作,具體包括以下步驟步驟501確定需要刪除的MAC地址信息,包括需要刪除的MAC地址的默認的VLAN、MAC地址值、接入端口、地址標志位、地址的老化時間等;步驟502判斷的需要刪除的MAC地址默認的VLAN是否為PVLAN中的Primary VLAN,如果是,執(zhí)行步驟504,否則,執(zhí)行步驟503;步驟503判斷需要刪除的MAC地址默認的VLAN是否為PVLAN中的Secondary VLAN,如果是,執(zhí)行步驟509,否則,過程結束;步驟504從該Primary VLAN對應的所有Secondary VLAN中依次確定本次需要遍歷的Secondary VLAN的MAC地址表,并獲取該MAC地址表的索引;步驟505根據(jù)MAC地址索引遍歷該MAC地址表中的MAC地址,并判斷需要刪除的MAC地址是否存在于該MAC地址表中,如果存在,執(zhí)行步驟506,否則,執(zhí)行步驟508;步驟506判斷存在于該MAC地址表中的需要刪除的MAC地址是否為老化時間設置為不可老化,且地址標志位被置位(該MAC地址為影子地址),如果是,則執(zhí)行步驟507,否則,執(zhí)行步驟508;步驟507將需要刪除的MAC地址從該MAC地址表中刪除,并執(zhí)行步驟508;
步驟508判斷Primary VLAN下的所有Secondary VLAN的MAC地址表是否均已遍歷完畢,如果是,則結束過程,否則,繼續(xù)執(zhí)行步驟504;步驟509獲取該Secondary VLAN對應的Primary VLAN;步驟510判斷該Primary VLAN的MAC地址表中是否存在該需要刪除的MAC地址,如果是,則執(zhí)行步驟511,否則,過程結束;步驟511判斷該存在的MAC地址是否為老化時間設置為不可老化,且地址標志位被置位,如果不是,結束過程,否則,執(zhí)行步驟512;步驟512刪除存在于Primary VLAN的MAC地址表中的該MAC地址,過程結束。
總之,在向PVLAN中添加MAC地址時,如果添加的MAC地址為Primary VLAN中的地址,則在其對應的每個Secondary VLAN中增加該MAC地址的影子地址;如果是Secondary VLAN中的地址,則在其對應的Primary VLAN中增加該MAC地址的影子地址;在刪除PVLAN中的MAC地址時,如果刪除的MAC地址為Primary VLAN中的地址,則在其對應的每個Secondary VLAN中刪除該MAC地址的影子地址;如果是SecondaryVLAN中的地址,則在其對應的Primary VLAN中刪除該MAC地址的影子地址。
本發(fā)明的實現(xiàn)還包括解除或改變PVLAN中Primary VLAN和SecondaryVLAN映射關系時,對Primary VLAN和Secondary VLAN的MAC地址表中影子地址的刪除操作,具體具體實現(xiàn)流程參見圖6,包括以下步驟
步驟601確定需要解除的PVLAN中Primary VLAN和SecondaryVLAN;步驟602依次遍歷PVLAN中各個VLAN的MAC地址表,獲取各個MAC地址的老化時間和地址標志位;步驟603判斷該MAC地址是否為老化時間為不可老化,且地址標志位被置位,如果是,則執(zhí)行步驟604,否則,執(zhí)行步驟605;步驟604刪除該MAC地址,并執(zhí)行步驟605;步驟605判斷當前遍歷的MAC地址表是否遍歷完畢,如果是,過程結束,否則,執(zhí)行步驟606;步驟606獲取MAC地址表中的下一個MAC地址的老化時間和地址標志位,并執(zhí)行步驟603。
經(jīng)過上述過程的描述,實現(xiàn)了當解除改變PVLAN包含的VLAN時,影子地址可以被有效地清除,以便于建立新的PVLAN,開始新的地址同步過程。
權利要求
1.一種獨立VLAN學習方式下實現(xiàn)地址同步的方法,其特征在于包括增加獨立VLAN(虛擬局域網(wǎng))中接入地址的地址同步處理過程將接入地址添加至其接入端口默認的VLAN中,同時將所述的接入地址添加至共享該接入地址的VLAN中,并將為該地址設置的地址標志位置位,表示該接入地址接入的端口默認的VLAN不是該VLAN;刪除獨立VLAN中接入地址的地址同步處理過程將接入地址從其接入端口默認的VLAN(虛擬局域網(wǎng))的網(wǎng)絡接入設備中刪除,同時將該接入地址從共享該接入地址的VLAN中刪除。
2.根據(jù)權利要求1所述的獨立VLAN學習方式下實現(xiàn)地址同步的方法,其特征在于所述的接入地址為MAC(介質(zhì)訪問控制)地址,且所述的MAC地址以MAC地址表的形式存放于網(wǎng)絡接入設備中。
3.根據(jù)權利要求1或2所述的獨立VLAN學習方式下實現(xiàn)地址同步的方法,其特征在于所述的增加獨立VLAN中接入地址的地址同步處理過程還包括將加入共享該接入地址的VLAN中的接入地址的老化時間設置為不老化。
4.根據(jù)權利要求3所述的獨立VLAN學習方式下實現(xiàn)地址同步的方法,其特征在于當加入接入端口默認VLAN中的接入地址的老化時間設置為不老化時,所述的刪除獨立VLAN中接入地址的地址同步處理過程由用戶通過命令行執(zhí)行。
5.根據(jù)權利要求3所述的獨立VLAN學習方式下實現(xiàn)地址同步的方法,其特征在于加入接入端口默認VLAN中的接入地址的老化時間設置為可老化時,所述的刪除獨立VLAN中接入地址的地址同步處理過程由該接入地址的老化定時器觸發(fā)執(zhí)行或由用戶通過命令行執(zhí)行。
6.根據(jù)權利要求1或2所述的獨立VLAN學習方式下實現(xiàn)地址同步的方法,其特征在于所述的將該接入地址從共享該接入地址的VLAN中刪除進一步包括確定共享該接入地址的VLAN;從確定VLAN的地址表中查找該接入地址;根據(jù)該接入地址的地址標志位判斷是否為共享的接入地址,如果是,則刪除該接入地址,否則,不作處理。
7.根據(jù)權利要求1所述的獨立VLAN學習方式下實現(xiàn)地址同步的方法,其特征在于所述的獨立VLAN包括PVLAN(私有虛擬局域網(wǎng))中的Primary VLAN(上層VLAN)和Secondary VLAN(二層VLAN)。
8.根據(jù)權利要求7所述的獨立VLAN學習方式下實現(xiàn)地址同步的方法,其特征在于該方法還包括PVLAN建立時的地址同步過程遍歷Primary VLAN中的MAC地址表,并將其中老化時間為可老化的MAC地址刪除,將不可老化的MAC地址添加到Secondary VLAN的MAC地址表中,老化時間仍設置為不老化,同時將其地址標志位置位;遍歷Secondary VLAN的MAC地址表,將其中老化時間為可老化的MAC地址刪除,將老化時間為不可老化且地址標志位未置位的MAC地址添加到Primary VLAN的MAC地址表中,同時將其地址標志位置位。
9.根據(jù)權利要求7所述的獨立VLAN學習方式下實現(xiàn)地址同步的方法,其特征在于,所述的增加獨立VLAN(虛擬局域網(wǎng))中接入地址的地址同步處理過程包括確定需要增加的MAC地址默認的VLAN是Primary VLAN或SecondaryVLAN,并獲取所述VLAN對應的Secondary VLAN或Primary VLAN;判斷對應的Secondary VLAN或Primary VLAN中是否存在增加的MAC地址;如果不存在,則添加該MAC地址,且將地址標志位置位;如果存在,則判斷該MAC地址的老化時間是否為不老化;如果為不老化,則進一步判斷對應的VLAN是Secondary VLAN還是Primary VLAN;如果是Secondary VLAN,則繼續(xù)判斷其他與本PrimaryVLAN對應的Secondary VLAN中是否存在增加的MAC地址,并執(zhí)行相應的操作,直到與本Primary VLAN對應的所有SecondaryVLAN均被執(zhí)行完畢;如果對應的VLAN是Primary VLAN,則過程結束;如果是可老化,則刪除存在的MAC地址,添加該MAC地址,且將該MAC地址標志位置位。
10.根據(jù)權利要求7所述的獨立VLAN學習方式下實現(xiàn)地址同步的方法,其特征在于,所述的刪除獨立VLAN中接入地址的地址同步處理過程包括確定需要刪除的MAC地址默認的VLAN是Primary VLAN或SecondaryVLAN,并獲取所述VLAN對應的Secondary VLAN或Primary VLAN;判斷對應的Secondary VLAN或Primary VLAN中是否存在需要刪除的MAC地址;如果存在,則獲取該MAC地址的地址標志位和老化時間,如果老化時間是不可老化,且地址標志位置位,則刪除存在的MAC地址,否則,按不存在該MAC地址處理;如果不存在,則進一步判斷對應的VLAN是Secondary VLAN還是Primary VLAN;如果是Secondary VLAN,則繼續(xù)判斷其他與本Primary VLAN對應的Secondary VLAN中是否存在需要刪除的MAC地址,并執(zhí)行相應的操作,直到與本Primary VLAN對應的所有Secondary VLAN均被執(zhí)行完畢;如果對應的VLAN是Primary VLAN,則過程結束。
11.根據(jù)權利要求7所述的獨立VLAN學習方式下實現(xiàn)地址同步的方法,其特征在于該方法還包括解除PVLAN中Primary VLAN與SecondaryVLAN對應關系時,地址標志位置位的MAC地址的刪除過程獲取需要解除PVLAN中Primary VLAN與Secondary VLAN對應關系的Primary VLAN及其對應的所有Secondary VLAN;遍歷Primary VLAN及其對應的所有Secondary VLAN的MAC地址表,將老化時間為不可老化,且地址標志位置位的MAC地址從MAC地址表中刪除。
12.根據(jù)權利要求1或7所述的獨立VLAN學習方式下實現(xiàn)地址同步的方法,其特征在于所述的增加獨立VLAN中接入地址的地址同步處理過程,是在增加接入地址的同時進行;所述的刪除獨立VLAN中接入地址的地址同步處理過程是在刪除接入地址的同時進行。
13.根據(jù)權利要求1或7所述的獨立VLAN學習方式下實現(xiàn)地址同步的方法,其特征在于所述的增加獨立VLAN中接入地址的地址同步處理過程和刪除獨立VLAN中接入地址的地址同步處理過程為周期進行,即周期性的確定PVLAN的Primary VLAN和Secondary VLAN中增加或刪除的接入地址,并在Primary VLAN與Secondary VLAN間進行接入地址的同步處理。
全文摘要
本發(fā)明涉及一種獨立VLAN學習方式下實現(xiàn)地址同步的方法。該方法包括當增加或刪除獨立VLAN(虛擬局域網(wǎng))中接入地址時,同時在接入地址默認的VLAN的地址表,以及共享該接入地址的VLAN的地址表中進行該接入地址的增加或刪除操作。本發(fā)明的實現(xiàn)避免了在網(wǎng)絡中出現(xiàn)大量的廣播報文,節(jié)省了有限的通信網(wǎng)絡資源,從而使通信網(wǎng)絡可以為用戶提供更大的帶寬資源;同時,本發(fā)明的實現(xiàn)還提高了網(wǎng)絡通信的安全性能。另外,本發(fā)明的實現(xiàn)還大大提高了IVL方式下查找MAC地址表的效率,從而提高了通信網(wǎng)絡轉發(fā)報文的性能。
文檔編號H04L12/24GK1581819SQ0314408
公開日2005年2月16日 申請日期2003年7月31日 優(yōu)先權日2003年7月31日
發(fā)明者晉兆瓊, 劉建鋒 申請人:華為技術有限公司