一種多對一vlan映射方法
2023-10-09 05:28:04 2
專利名稱:一種多對一vlan映射方法
技術領域:
本發明涉及應用交換機進行數據通信的領域,具體的是涉及支持 VLAN (Virtual Local Area Network,虛擬區域網)映射的帶網絡處理器的 交換機進行多對一映射的方法。
背景技術:
隨著交換機應用的普及,VLAN技術的應用也越來越廣泛。眾所周知, VLAN技術的主要作用是可將分布於不同地理位置的計算機按工作需要組 合成一個邏輯網絡,同時VLAN的劃分可縮小廣播域,以提高網絡傳輸速 度,由於處於不同VLAN的計算機之間不能直接通信,從而使網絡的安全 性能得到了很大提高。但事實上在很多網絡中要求處於不同VLAN中的計 算機間能夠相互通信,如何解決VLAN間的通信問題是進行通信時需要面 對的問題。
採用VLAN映射方法,可以解決上述問題,它允許用於邊緣接入的不 同乙太網交換機的VLAN ID設置互相重疊,通過乙太網交換機的VLAN 映射功能,將不同交換機的重複VLAN ID修改為不同的VLAN ID,並從 上聯埠發送出去,從而在二層核心交換機中也實現用戶的隔離,這樣就 簡化了邊緣接入交換機的設置。
在使用交換機進行數據通信時,通常將跟用戶相接的埠稱為下聯口, 跟網絡側相接的埠稱為上聯口,普通二層處理,只有上聯口和下聯口的 VLAN—致才能對通,有了 VLAN映射,可以實現一個下聯口的多個VLAN 跟一個上聯口的一個VLAN互通,稱為多對一VLAN映射。在現有的多 對一VLAN映射技術中,由於上聯口對應一個VLAN,因此,從下聯口往 上聯口發數據包處理比較容易,若查到MAC即轉發,若査不到MAC地 址只要在上聯口的VLAN內廣播即可;但是由於下聯口對應多個VLAN, 因此,從上聯口往下聯口發數據包時則出現這種情況,即若查到MAC
即按照MAC表中的地址進行轉發,若查不到MAC就要在下聯口的所有 VLAN內進行廣播,因為下聯口的VLAN範圍可能是在1-4095內任意取, 範圍比較廣,如果對每個VLAN都進行數據包的廣播傳輸,網絡傳輸效率 低,實現困難。
發明內容
本發明的目的是,為了克服現有技術中進行多對一 VLAN映射時下行 廣播實現難的問題,提出了一種可以靈活方便地進行下行廣播的方法。
為了實現上述目的,本發明採用的技術方案是 一種多對一VLAN映 射方法,其中,從上聯口到下聯口的下行處理過程包括以下步驟
1) 將下聯口的各VLAN分成N個區間,N為大於l的整數;每個區 間包括多個VLAN;
2) 進入VLAN映射的上聯口的數據包根據其屬性進行MAC學習和 查MAC表;
3) 如果步驟2)中查不到MAC,則網絡處理器將數據包複製成N份, 每份對應一個下聯口 VLAN區間;
4) 網絡處理器將步驟3)中複製後的各份數據包分別進行再複製,復 制的數量分別為各區間中包括的VLAN個數,完成數據包在下聯口的廣 播。
優選地,所述步驟l)中每個區間中的VLAN是連續的。 優選地,所述每個區間中的VLAN數不超過網絡處理器一次能複製數 據包數量。
優選地,所述步驟2)包括如下步驟用所述數據包中的上聯口 VLAN 和源MAC做MAC學習,用所述數據包中的上聯口 VLAN和目的MAC 查MAC表,查到MAC出口,並把數據包中的VLAN轉換成該MAC出 口對應的下聯口 VLAN。
優選地,所述步驟3)中網絡處理器複製後的各數據包中帶有序列號, 分別對應於下聯口的VLAN區間。
優選地,所述步驟4)中通過軟體或硬體環回將步驟3)中複製後的各 數據包送入網絡處理器中進行再複製。 .
優選地,VLAN映射方法還包括從下聯口到上聯口的上行處理過程,
該上行處理過程包括以下步驟
5) 進入VLAN映射的下聯口的數據包根據其屬性進行MAC學習和 查MAC表;
6) 如果步驟5)中查到MAC出口,將數據包中的VLAN轉換成該 MAC出口對應的上聯口 VLAN;如果查不到MAC出口 ,則將該數據包在 上聯口的VLAN中進行廣播。
優選地,所述步驟5)中MAC學習和査MAC表的處理過程具體為 用所述數據包中的下聯口 VLAN和源MAC做MAC學習,用所述數據包 中的下聯口 VLAN和目的MAC査MAC表。
本發明的有益效果是通過採用將下聯口的多個VLAN進行分區劃分 和二次複製的技術方案進行下行廣播,可以更高效地進行數據傳輸,使得 下聯口 VLAN的範圍和數目不受限,有利於下聯口的擴展。
圖1是本發明實施例多對一VLAN映射的系統圖。
具體實施例方式
下面結合附圖對本發明的具體實施方式
進行詳細的說明。
如圖1所示,從數據轉發的角度來分析VLAN映射過程。假設配置下
聯口的VLANl-50、 100-200 ,VLAN A屬於這個範圍,映射成上聯口的
VLANB。
分成上行處理和下行處理兩個過程來進行說明。
上行處理時(即下聯口往上聯口發送報文包的過程),數據包的結構
為'MAC1 I MAC2 |VLAN A|0x0800卩p包,,其中MAC1為目的MAC, MAC2為源MAC, VLAN A為數據包所攜帶的VLAN,後面就是IP類型 值及IP包處理過程包括以下步驟
1) 數據包帶有VLAN A,通過入接口屬性表發現是.VLAN映射的下 聯口,並且由入接口屬性表告知要映射成VLANB。
2) 用MAC2+VLAN B來進行MAC學習,並且把原數據包帶的VLAN A寫入MAC表。
3) 用MACl + VLAN B查MAC表。査到則把數據包的VLAN A變成 VLAN B進行轉發;査不到則在要映射的VLAN B裡面進行廣播。
下行處理時(即上聯口往下聯口發送報文包的過程),數據包的結構 為'MAC2 |MAC1 I VLANB |0x0800 lip包,,其中MAC2為目的MAC, MACl為源MAC, VLAN B為數據包所攜帶的VLAN,後面就是IP類型 值及IP包處理過程包括以下步驟
1 )數據包帶有VLAN B,通過入接口屬性表發現是VLAN映射的上聯 口,如果發現不是上聯口,是普通埠則做普通的二層處理
2) MAC1+VLAN B進行MAC學習
3) MAC2+VLANB查MAC表,若查到MAC,如果發現MAC表顯 示的是一個VLAN映射下聯口學到的MAC,並且査到此MAC對應的下 聯口 VLAN是A ,則把數據包映射成VLANA並轉發出去。如果查到此 MAC不需要進行VLAN映射,是一個普通MAC表項,則不進行轉發。 從而進行了 VLAN映射和普通VLAN的隔離;
4) 如果査不到MAC,則在所有下聯口配置VLAN映射的範圍 (VLANl-50、 100-200)內進行廣播。
其中步驟4)中的廣播過程包括,把這些下聯口的VLAN分成一些區 間,每個區間的VLAN都是連續的,每個區間的VLAN數目最多為網絡 處理器一次複製數據包的個數。比如,現在下聯口的VLANl-50,100-200, 都要映射成400。網絡處理器一次能複製64個數據包,這樣就分成三個區 間,<l-50〉<100-163〉,這樣形成兩張表,即區間數目表和 區間VLAN表。其中,區間數目表中放總共的分區間的數目,本例中VLAN
B對應的結果區間個數為3個。區間VLAN表放每個區間的VLAN起始值 和VLAN個數。本例中 .
VLAN B+序號0對應的結果是初始VLAN l,VLAN個數50;
VLANB+序號1對應的結果是初始VLAN 100,VLAN個數64;
VLAN B+序號2對應的結果是初始VLAN 164,VLAN個數36;
廣播時,網絡處理器首先用VLAN查區間數目表發現一共分成3個區 間,網絡處理器則複製3份數據包。每個數據包帶一個不同的序列號。
數據包通過硬體環回,或者軟體環回方法重新進入網絡處理器。複製 出來的數據包通過序列號來區分這個是哪個區間。再進行查表,得知這個 區間的起始VLAN值和這個區間的VLAN的個數,比如該實施例第一個 區間的起始是l,個數為50,則網絡處理器就通過硬體環回,或者軟體環回 方法複製50份數據包,每個數據包的VLAN從1-50遞增。
通過上述方法就實現了整個上聯口到下聯口的廣播工作。
以上為本發明的一個優選實施方式,對於本發明所屬技術領域的普通 技術人員來說,在不脫離本發明構思的前提下,還可以做出若干簡單推演 或替換,比如在進行區間劃分時,每個區間中的VLAN也可以是非連續的, 同樣可以取得本發明相同的效果,這些經過簡單推演或替換後的技術方案 都應當視為屬於本發明確定的專利保護範圍。
權利要求
1.一種多對一VLAN映射方法,其特徵在於,VLAN映射從上聯口到下聯口的下行處理過程包括以下步驟1)將下聯口的各VLAN分成N個區間,N為大於1的整數;每個區間包括多個VLAN;2)進入VLAN映射的上聯口的數據包根據其屬性進行MAC學習和查MAC表;3)如果步驟2)中查不到MAC,則網絡處理器將數據包複製成N份,每份對應一個下聯口VLAN區間;4)網絡處理器將步驟3)中複製後的各份數據包分別進行再複製,複製的數量分別為各區間中包括的VLAN個數,完成數據包在下聯口的廣播。
2. 根據權利1所述的多對一VLAN映射方法,其特徵在於,所述步 驟l)中每個區間中的VLAN是連續的。
3. 根據權利要求1或2所述的多對一 VLAN映射方法,其特徵在於, 所述每個區間中的VLAN數不超過網絡處理器一次能複製數據包數量。
4. 根據權利1所述的多對一VLAN映射方法,其特徵在於,所述步驟 2)包括如下步驟用所述數據包中的上聯口 VLAN和源MAC做MAC學 習,用所述數據包中的上聯口 VLAN和目的MAC査MAC表,査到MAC 出口,並把數據包中的VLAN轉換成該MAC出口對應的下聯口 VLAN。
5. 根據權利要求1所述的多對一VLAN映射方法,其特徵在於,所 述步驟3)中網絡處理器複製後的各數據包中帶有序列號,分別對應於下 聯口的VLAN區間。
6. 根據權利要求1或4或5所述的多對一VLAN映射方法,其特徵 在於,所述步驟4)中通過軟體或硬體環回將步驟3)中複製後的各數據包 送入網絡處理器中進行再複製。
7. 根據權利要求1所述的多對一VLAN映射方法,其特徵在於,還包括從下聯口到上聯口的上行處理過程,該上行處理過程包括以下步驟5) 進入VLAN映i]"的下聯口的數據包根據其屬性進行MAC #習和 査MAC表;6) 如果步驟5)中查到MAC出口,將數據包中的VLAN轉換成該 MAC出口對應的上聯口 VLAN;如果查不到MAC出口 ,則將該數據包在 上聯口的VLAN中進行廣播。
8. 根據權利要求7所述的多對一 VLAN映射方法,其特徵在於,所 述步驟5)中MAC學習和査MAC表的處理過程具體為用所述數據包中 的下聯口 VLAN和源MAC做MAC學習,用所述數據包中的下聯口 VLAN 和目的MAC查MAC表。
全文摘要
本發明公開了一種多對一VLAN映射方法,包括以下步驟1)將下聯口的各VLAN分成N個區間,N為大於1的整數;每個區間包括多個VLAN;2)進入VLAN映射的上聯口的數據包根據其屬性進行MAC學習和查MAC表;3)如果步驟2)中查不到MAC,則網絡處理器將數據包複製成N份,每份對應一個下聯口VLAN區間;4)網絡處理器將步驟3)中複製後的各份數據包分別進行再複製,複製的數量分別為各區間中包括的VLAN個數,完成數據包在下聯口的廣播。採用本發明所述的多對一VLAN映射方法提高了數據傳輸的效率,並使得下聯口VLAN的範圍和數目不受限,有利於下聯口的擴展。
文檔編號H04L12/56GK101098286SQ200710112740
公開日2008年1月2日 申請日期2007年6月14日 優先權日2007年3月15日
發明者宋曉娟 申請人:中興通訊股份有限公司