一種橋接轉發方法

一種橋接轉發方法

《一種橋接轉發方法》是華為技術有限公司於2005年10月19日申請的發明專利,該專利的申請號為2005101128821,公布號為CN1852240,授權公布日為2006年10月25日,發明人是杜文華。

《一種橋接轉發方法》公開了一種橋接轉發方法,將一個或一個以上連線埠和虛擬區域網路VLAN構成的組合對應一個虛擬轉發實例VSI,在多個{連線埠,VLAN}之間完成報文橋接轉發、MAC地址學習以及源連線埠過濾。該方法包括以下步驟:從輸入連線埠接收報文,獲取該報文的輸入虛擬區域網路標識VLAN ID;使用輸入連線埠和輸入VLAN ID查找所述連線埠和VLAN與VSI的對應關係,得到對應的VSI;使用VSI和報文中的目的MAC地址查找MAC地址轉發表,查找得到輸出連線埠和輸出VLAN ID,並根據所得到的輸出連線埠和輸出VLAN ID轉發報文。根據該發明公開的方法,實現了乙太網報文在多個VLAN之間的橋接轉發。

2016年12月7日,《一種橋接轉發方法》獲得第十八屆中國專利金獎。

(概述圖為《一種橋接轉發方法》摘要附圖)

基本介紹

  • 中文名:一種橋接轉發方法
  • 公布號:CN1852240
  • 授權日:2006年10月25日
  • 申請號:2005101128821
  • 申請日:2005年10月19日
  • 申請人:華為技術有限公司
  • 地址:廣東省深圳市龍崗區坂田華為總部辦公樓
  • 發明人:杜文華
  • Int.Cl.:H04L12/56(2006.01)
  • 代理機構:北京德琦智慧財產權代理有限公司
  • 代理人:宋志強、麻海明
專利背景,發明內容,專利目的,技術方案,改善效果,附圖說明,技術領域,權利要求,實施方式,榮譽表彰,

專利背景

截至2005年10月,乙太網橋接轉發標準中規定在一個接入域內一個虛擬轉發實例(VSI)對應一個虛擬區域網路(VLAN)。乙太網橋接轉發是在一個VLAN內轉發報文,如果要在不同VLAN之間轉發報文,則必須使用IP路由實現轉發。
圖1為2005年10月前技術中在一個VLAN內橋接轉發的流程圖,一個VLAN內橋接轉發使用目的媒體接入控制(MAC)地址和虛擬區域網路標識(VLAN ID)查找MAC地址轉發表得到出口信息,並根據出口信息轉發報文,具體步驟如下所述:
步驟101:從輸入連線埠接收報文,得到報文的輸入VLAN ID;
步驟102:源MAC地址自學習,在該VLAN ID對應的MAC地址轉發表中記錄源MAC(SMAC)對應的輸入連線埠;
步驟103:使用目的MAC(DMAC)查找該VLAN ID對應的MAC地址轉發表;
步驟104:根據步驟103查找的結果,如果查找到單播轉發,則執行步驟105;如果查找到多播轉發,則執行步驟106;如果查找不到,則執行步驟108;
步驟105:從MAC地址轉發表中查找得到輸出連線埠,跳到步驟110;
步驟106:從MAC地址轉發表中查找得到輸出多播組號(MID);
步驟107:使用MID查找多播表,得到輸出連線埠的集合,跳到步驟110;
步驟108:確定廣播轉發該報文;
步驟109:得到該報文輸入連線埠所在的VLAN對應的所有輸出連線埠,跳到步驟110;
步驟110:判斷輸出連線埠與輸入連線埠是否相同,如果是,則執行步驟111;否則,執行步驟112;
步驟111:丟棄該報文;
步驟112:轉發報文至輸出連線埠。
從上述橋接轉發過程中,如果確定報文需要廣播轉發,由於一個VSI只對應一個VLAN,報文也只能在一個VLAN內進行廣播轉發。
截至2005年10月,對乙太網橋接轉發有以下幾個標準/草案,分別介紹如下。
IEEE802.1Q是虛擬橋接區域網路的正式標準,該標準定義在一個物理橋設備上劃分多個邏輯子網VLAN的方法。其中,多個指兩個或兩個以上。根據802.1Q標準,每個VLAN對應一個邏輯轉發表。實現時,一般將一個MAC地址轉發表按VLAN ID劃分成多個邏輯轉發表。在以太幀結構中加入4個位元組,這4個位元組統稱為虛擬區域網路標籤(VLANTag)。在該4個位元組中,用12比特表示VLAN ID。
IEEE802.1ad標準在IEEE802.1Q的基礎上增加了:Q-in-Q,VLAN轉換(VLANTranslation)。Q-in-Q是指運營商設備在邊緣上為上述IEEE802.1Q報文再增加一層VLANTag,報文本來的Tag稱為CE-VLAN,運營商設備新增加的Tag稱為P-VLAN。使用兩層VLAN,使得用戶使用的CE-VLAN與運營商使用的P-VLAN相互獨立。VLANTranslation是指在網橋的一個連線埠上將一個VLAN ID轉換成另一個VLAN ID。
draft-ietf-12vpn-vpls-ldp-xx.txt草案規定P-VLAN與虛擬專用區域網路服務(VPLS)之間的對應關係為一對一。
綜上所述,2005年10月前技術存在以下缺點:
(1)在一個接入域內,VLAN與VSI是一一對應關係,不支持多個VLAN對應一個VSI的多對一的對應關係;
(2)乙太網報文只能在一個VLAN內進行橋接轉發,乙太網橋接轉發的2005年10月前技術中不支持多個VLAN間橋接轉發,如果跨VLAN進行轉發,必須使用IP路由;
(3)乙太網報文只能橋接廣播到一個VLAN,不支持橋接廣播到多個VLAN。

發明內容

專利目的

《一種橋接轉發方法》的主要目的在於提供一種橋接轉發方法,實現多個VLAN之間橋接轉發。

技術方案

《一種橋接轉發方法》包括:將一個或一個以上由連線埠和虛擬區域網路VLAN構成的組合對應一個虛擬轉發實例VSI,該方法包括以下步驟:
A.從輸入連線埠接收報文,獲取該報文的輸入虛擬區域網路標識VLAN ID;
B.使用輸入連線埠和輸入VLAN ID查找所述連線埠和VLAN與VSI的對應關係,確定對應的VSI;
C.使用VSI和報文中的目的媒體接入控制MAC地址查找MAC地址轉發表,查找得到輸出連線埠和輸出VLAN ID,並根據所得到的輸出連線埠和輸出VLAN ID轉發報文。
其中,步驟A所述獲取報文的VLAN ID的步驟包括:判斷報文中是否攜帶VLAN ID,如果是,則獲取報文中的VLAN ID;否則,獲取與輸入連線埠相關的預設VLAN ID,並在該報文中添加該VLAN ID。
其中,步驟C所述MAC地址轉發表是通過學習建立,建立的步驟包括:學習報文中的源MAC地址、輸入連線埠和輸入VLAN ID,並記錄到VSI對應的MAC地址轉發表中。
其中,步驟C所述查找MAC地址轉發表時使用VSI和報文中的目的MAC地址之外,進一步包括:輸入VLAN ID。
其中,步驟C所述查找得到輸出連線埠和輸出VLAN ID的步驟包括:查找 得到唯一的輸出連線埠和輸出VLAN ID;
步驟C所述轉發報文的步驟包括:將輸出VLAN ID添加到報文中,或用輸出VLAN ID替換報文中輸入VLAN ID之後,轉發該報文至輸出連線埠。
其中,步驟C所述查找得到輸出連線埠和輸出VLAN ID的步驟包括:如果查找MAC地址轉發表的結果為輸出多播組號MID,則使用MID查找多播表,得到輸出連線埠和輸出VLAN ID的集合;
步驟C所述轉發報文的步驟包括:複製所得到的輸出VLAN ID個數的報文,將各輸出VLAN ID添加到各報文中,或用各輸出VLAN ID替換各報文中的輸入VLAN ID之後,轉發各報文至各輸出連線埠。
其中,步驟C所述查找得到輸出連線埠和輸出VLAN ID的步驟包括:如果在MAC地址轉發表中未直接查找到對應的輸出連線埠和輸出VLAN ID,則將VSI對應的所有輸出連線埠和輸出VLAN ID作為查找得到的輸出連線埠和輸出VLAN ID;
步驟C所述轉發報文的步驟包括:複製所得到的輸出VLAN ID個數的報文,將各輸出VLAN ID添加到各報文中,或用各輸出VLAN ID替換各報文中的輸入VLAN ID之後,轉發各報文至各輸出連線埠。
其中,所述轉發報文至輸出連線埠之前進一步包括:判斷輸出連線埠與輸入連線埠是否相同,並判斷輸出VLAN ID和輸入VLAN ID是否相同,如果上述兩個判斷結果都為是,則丟棄該報文;否則,轉發該報文至輸出連線埠。
其中,步驟C所述從報文中學習到的輸入VLAN ID對應成一個標籤值或標籤索引,然後在VSI對應的MAC地址轉發表中記錄輸入VLAN ID對應的標籤值或標籤索引;
步驟C所述得到輸出VLAN ID的步驟包括:得到標籤值或標籤索引,然後根據該標籤值或標籤索引得到對應的輸入VLAN ID。
其中,所述VLAN為同一個乙太網連線埠的一個或一個以上VLAN,或同一個以太接入網的不同連線埠的一個或一個以上VLAN,或一個以上以太接入網的不同連線埠的一個或一個以上VLAN。
其中,所述VLAN ID為一層或二層或二層以上。

改善效果

《一種橋接轉發方法》提供的橋接轉發方法中,設定了{連線埠,VLAN}與VSI的對應關係,並在{連線埠,VLAN}之間進行橋接轉發,實現了在多個VLAN之間的橋接轉發,實現了多個VLAN對應一個VSI的多對一的對應關係,包括一對一的對應關係。廣播報文也可以在VSI對應的所有連線埠和VLAN之間廣播,支持了橋接廣播到多個VLAN。在報文轉發過程中,判斷輸入、輸出連線埠與輸入、輸出VLAN ID是否相同,有效地進行了源連線埠過濾。該發明還支持多層VLAN ID之間的橋接轉發。

附圖說明

圖1所示為2005年10月前技術中報文橋接轉發流程圖;
圖2所示為《一種橋接轉發方法》中作為實施例一的多個VLAN間橋接轉發流程圖;
圖3所示為該發明中作為實施例二的多個VLAN間橋接轉發流程圖。

技術領域

《一種橋接轉發方法》涉及交換技術領域,特別是指一種橋接轉發方法。

權利要求

1、一種橋接轉發方法,其特徵在於,將一個或一個以上由連線埠和虛擬區域網路VLAN構成的組合對應一個虛擬轉發實例VSI,該方法包括以下步驟:
A.從輸入連線埠接收報文,獲取該報文的輸入虛擬區域網路標識VLAN ID;
B.使用輸入連線埠和輸入VLAN ID查找所述連線埠和VLAN與VSI的對應關係,確定對應的VSI;
C.使用VSI和報文中的目的媒體接入控制MAC地址查找MAC地址轉發表,查找得到輸出連線埠和輸出VLAN ID,並根據所得到的輸出連線埠和輸出VLAN ID轉發報文。
2、根據權利要求1所述的方法,其特徵在於,步驟A所述獲取報文的VLAN ID的步驟包括:判斷報文中是否攜帶VLAN ID,如果是,則獲取報文中的VLAN ID;否則,獲取與輸入連線埠相關的預設VLAN ID,並在該報文中添加該VLAN ID。
3、根據權利要求1所述的方法,其特徵在於,步驟C所述MAC地址轉發表是通過學習建立,建立的步驟包括:學習報文中的源MAC地址、輸入連線埠和輸入VLAN ID,並記錄到VSI對應的MAC地址轉發表中。
4、根據權利要求1所述的方法,其特徵在於,步驟C所述查找MAC地址轉發表時使用VSI和報文中的目的MAC地址之外,進一步包括:輸入VLAN ID。
5、根據權利要求1所述的方法,其特徵在於,步驟C所述查找得到輸出連線埠和輸出VLAN ID的步驟包括:查找得到唯一的輸出連線埠和輸出VLAN ID;步驟C所述轉發報文的步驟包括:將輸出VLAN ID添加到報文中,或用輸出VLAN ID替換報文中輸入VLAN ID之後,轉發該報文至輸出連線埠。
6、根據權利要求1所述的方法,其特徵在於,步驟C所述查找得到輸出連線埠和輸出VLAN ID的步驟包括:如果查找MAC地址轉發表的結果為輸出多播組號MID,則使用MID查找多播表,得到輸出 連線埠和輸出VLAN ID的集合;步驟C所述轉發報文的步驟包括:複製所得到的輸出VLAN ID個數的報文,將各輸出VLAN ID添加到各報文中,或用各輸出VLAN ID替換各報文中的輸入VLAN ID之後,轉發各報文至各輸出連線埠。
7、根據權利要求1所述的方法,其特徵在於,步驟C所述查找得到輸出連線埠和輸出VLAN ID的步驟包括:如果在MAC地址轉發表中未直接查找到對應的輸出連線埠和輸出VLAN ID,則將VSI對應的所有輸出連線埠和輸出VLAN ID作為查找得到的輸出連線埠和輸出VLAN ID;步驟C所述轉發報文的步驟包括:複製所得到的輸出VLAN ID個數的報文,將各輸出VLAN ID添加到各報文中,或用各輸出VLAN ID替換各報文中的輸入VLAN ID之後,轉發各報文至各輸出連線埠。
8、根據權利要求5、6或7所述的方法,其特徵在於,所述轉發報文至輸出連線埠之前進一步包括:判斷輸出連線埠與輸入連線埠是否相同,並判斷輸出VLAN ID和輸入VLAN ID是否相同,如果上述兩個判斷結果都為是,則丟棄該報文;否則,轉發該報文至輸出連線埠。
9、根據權利要求5、6或7所述的方法,其特徵在於,步驟C所述從報文中學習到的輸入VLAN ID對應成一個標籤值或標籤索引,然後在VSI對應的MAC地址轉發表中記錄輸入VLAN ID對應的標籤值或標籤索引;步驟C所述得到輸出VLAN ID的步驟包括:得到標籤值或標籤索引,然後根據該標籤值或標籤索引得到對應的輸入VLAN ID。
10、根據權利要求1所述的方法,其特徵在於,所述VLAN為同一個乙太網連線埠的一個或一個以上VLAN,或同一個以太接入網的不同連線埠的一個或一個以上VLAN,或一個以上以太接入網的不同連線埠的一個或一個以上VLAN。
11、根據權利要求1所述的方法,其特徵在於,所述VLAN ID為一層或二層或二層以上。

實施方式

《一種橋接轉發方法》對傳統的VLAN內報文轉發方法進行擴展,以實現在多個VLAN間的橋接轉發。《一種橋接轉發方法》規定一個VSI是由若干個{連線埠,VLAN}組成,每個{連線埠,VLAN}看成一個虛連線埠,實現在虛連線埠之間完成報文橋接轉發的功能。一個VSI可以由一個連線埠的一個或多個VLAN組成,也可以由多個連線埠的一個或多個VLAN組成。其中,VLAN的來源包括多種情況:來自同一個乙太網連線埠的一個或多個VLAN;來自同一個以太接入網的不同連線埠的一個或多個VLAN;來自多個以太接入網的不同連線埠的一個或多個VLAN。
  • 實施例1:圖2為在多個VLAN間實現橋接轉發的流程圖,詳細描述其步驟如下:
步驟201:從輸入連線埠接收報文;
步驟202:分析報文中是否攜帶有VLAN ID,如果是,則獲取報文中VLAN ID;否則,獲取與輸入連線埠相關的預設的VLAN ID,並為該報文添加該VLAN ID;
步驟203:使用{輸入連線埠,輸入VLAN ID}查找映射表,確定對應的VSI,VSI用虛擬轉發實例標識(VSIID)表示,查找映射表得到的結果為對應的VSIID,為了方便描述,定義{輸入連線埠,輸入VLAN ID}為輸入虛連線埠;
步驟204:源MAC自學習,在VSI對應的MAC地址轉發表中記錄SMAC對應的輸入連線埠和輸入VLAN ID;
步驟205:從報文中獲取DMAC,並使用{VSIID,DMAC}查找MAC地址轉發表,或者,從報文中獲取DMAC和輸入VLAN ID,並使用{VSIID,DMAC,輸入VLAN ID}查找MAC地址轉發表;
步驟206:根據步驟205查找的結果,如果查找結果為單播轉發,則執行步驟207;如果查找結果為多播轉發,則執行步驟209;如果查找不到,則執行步驟213;
步驟207:從MAC地址轉發表中查找得到{輸出連線埠,輸出VLAN ID},為了方便描述,將{輸出連線埠,輸出VLAN ID}定義為輸出虛連線埠;
步驟208:用輸出VLAN ID替換報文中輸入VLAN ID,跳到步驟217;
步驟209:從MAC地址轉發表中查找得到輸出多播組號MID;
步驟210:使用MID查找多播表,得到輸出虛連線埠的集合,即{輸出連線埠i,輸出VLAN IDi},其中i=1...n,i為輸出虛連線埠的序號,n為查找多播表得到的輸出虛連線埠的總數;
步驟211:接收的報文複製n份;
步驟212:用輸出VLAN IDi替換對應報文中輸入VLAN ID,跳到步驟217;
步驟213:從MAC地址轉發表中查找不到,則確定該報文需要廣播;
步驟214:得到VSI對應的所有輸出虛連線埠,即{輸出連線埠j,輸出VLAN IDj},其中j=1...m,j為輸出虛連線埠的序號,m為廣播輸出虛連線埠的總數;
步驟215:接收的報文複製m份;
步驟216:用輸出VLAN IDj替換對應報文中輸入VLAN ID,跳到步驟217;
步驟217:判斷輸出虛連線埠與輸入虛連線埠是否完全相同,即判斷輸出連線埠與輸入連線埠是否相同,並判斷輸出VLAN ID和輸入VLAN ID是否相同,如果輸出連線埠與輸入連線埠相同,且輸出VLAN ID與輸入VLAN ID相同,則執行步驟218;如果輸出連線埠與輸入連線埠相同而輸出VLAN ID與輸入VLAN ID不同,或者輸出VLAN ID與輸入VLAN ID相同而輸出連線埠與輸入連線埠不同,則執行步驟219;
步驟218:丟棄該報文;
步驟219:轉發該報文至輸出連線埠。
上述方法中,步驟208、步驟212、步驟216中,用輸出VLAN ID替換報文中VLAN ID。如果與IEEE802.1ad協定中所述Q-in-Q業務配合使用,則保留原來的VLAN ID,而添加一層新的輸出VLAN ID,即再加入4個位元組,在該4個位元組中用12比特表示該輸出VLAN ID。
上述方法中,源連線埠抑制的步驟可以在得到輸出虛連線埠後和替換VLAN ID之前進行。例如在單播轉發情況下,步驟207中得到輸出虛連線埠之後,就可以判斷輸出虛連線埠與輸入虛連線埠是否完全相同,如果完全相同,則丟棄報文,結束流程;如果不完全相同,則執行步驟208所述的用輸出VLAN ID替換報文中VLAN ID。
步驟203中所述映射表是為了規定多個虛連線埠的集合與VSI的對應關係而建立的,映射表中表項的形式為{連線埠,VLAN ID,VSIID},查找映射表時查找關鍵字為{連線埠,VLAN ID},查找結果為與該虛連線埠對應的VSIID。
如步驟204所述,MAC地址轉發表是通過學習而建立的,在交換機內部可以建立一個MAC地址轉發表,該MAC地址轉發表中記錄多個VSI中所學習到的內容,對應每一個VSI的部分用VSIID區分;也可以建立多個 MAC地址轉發表,每個MAC地址轉發表對應一個VSI。進行源MAC學習時,學習報文的輸入連線埠和輸入VLAN ID,並將學習信息寫入到VSI對應的MAC地址轉發表中。在MAC地址轉發表中表項的形式為{VSIID,MAC地址,連線埠,VLAN ID},查找MAC地址轉發表時查找關鍵字為{VSIID,DMAC}或{VSIID,DMAC,輸入VLAN ID},查找結果為對應的{輸出連線埠,輸出VLAN ID}。
在MAC地址轉發表中,VLAN ID可以通過標籤值或標籤索引的形式間接地記錄或查找,其中,存在VLAN ID與標籤值或標籤索引的對應關係。例如,將學習到的VLAN ID根據對應關係轉換成一個標籤值或標籤索引,然後將該標籤值或標籤索引記錄到MAC地址轉發表中對應表項中。利用查找關鍵字查找輸出虛連線埠時,如果輸出VLAN ID用標籤值或標籤索引表示,則根據對應關係得到輸出VLAN ID。
步驟210所述多播表是在交換機內部通過協定而軟體建立的,多播表中表項的形式為{MID,輸出連線埠,輸出VLAN ID},查找多播表時查找關鍵字為MID,查找結果為與該MID對應的所有{輸出連線埠,輸出VLAN ID}的集合。
步驟214所述得到VSI對應的所有輸出虛連線埠是通過查找廣播表得到的,廣播表也是在交換機內部通過協定而軟體建立的,廣播表中表項的形式為{VSIID,輸出連線埠,輸出VLAN ID},查找廣播表時查找關鍵字為VSIID,查找結果為與該VSIID對應的所有{輸出連線埠,輸出VLAN ID}的集合。
實施例2:
實施例1中描述了輸入VLAN ID為一個的橋接轉發。但是,在有些套用環境中,輸入VLAN ID和輸出VLAN ID不只一層,有兩層或兩層以上。例如,根據IEEE802.1ad標準的套用中,報文中攜帶有2層VLAN ID,在這種套用環境下,輸入VLAN ID為2層,輸出VLAN ID也可能需要2層。實施例2中,將若干{輸入連線埠,輸入外層VLAN,輸入內層VLAN}綁定到一個VSI。下面結合圖3詳細介紹輸入VLAN ID和輸出VLAN ID都為2層的情況下的橋接轉發的步驟。
步驟301:從輸入連線埠接收報文;
步驟302:分析報文中是否攜帶有VLAN ID,如果是,則獲取報文中VLAN ID,分別為外層VLAN ID和內層VLAN ID;否則,獲取與輸入連線埠相關的預設的外層VLAN ID和內層VLAN ID,並為該報文添加外層VLAN ID和內層VLAN ID;
步驟303:使用輸入虛連線埠,即使用{輸入連線埠,輸入外層VLAN ID,輸入內層VLAN ID}查找映射表,確定對應的VSIID;
步驟304:源MAC自學習,在VSI對應的MAC地址轉發表中記錄SMAC對應的輸入連線埠、輸入外層VLAN ID以及輸入內層VLAN ID;
步驟305:從報文中獲取DMAC,並使用{VSIID,DMAC}查找MAC地址轉發表,或者,從報文中獲取DMAC、輸入外層VLAN ID以及輸入內層VLAN ID,並使用{VSIID,DMAC,輸入外層VLAN ID,輸入內層VLAN ID}查找MAC地址轉發表;
步驟306:根據步驟305查找的結果,如果查找結果為單播轉發,則執行步驟307;如果查找結果為多播轉發,則執行步驟309;如果查找不到,則執行步驟313;
步驟307:從MAC地址轉發表中查找得到輸出虛連線埠,即{輸出連線埠,輸出外層VLAN ID,輸出內層VLAN ID};
步驟308:用輸出外層VLAN ID替換報文中輸入外層VLAN ID,用輸出內層VLAN ID替換報文中輸入內層VLAN ID,跳到步驟317;
步驟309:從MAC地址轉發表中查找得到輸出多播組號MID;
步驟310:使用MID查找多播表,得到輸出虛連線埠的集合,即{輸出連線埠i,輸出外層VLAN IDi,輸出內層VLAN IDi},其中i=1...n,i為輸出虛連線埠的序號,n為查找多播表得到的輸出虛連線埠的總數;
步驟311:接收的報文複製n份;
步驟312:用輸出外層VLAN IDi替換對應報文中輸入外層VLAN ID,用輸出內層VLAN IDi替換對應報文中輸入內層VLAN ID,跳到步驟317;
步驟313:從MAC地址轉發表中查找不到,則確定該報文需要廣播;
步驟314:得到VSI對應的所有輸出虛連線埠,即{輸出連線埠j,輸出外層VLAN IDj,x輸出內層VLAN IDj},其中j=1...m,j為輸出虛連線埠的序號,m為廣播輸出虛連線埠的總數;
步驟315:接收的報文複製m份;
步驟316:用輸出外層VLAN IDj替換對應報文中輸入外層VLAN ID,用輸出內層VLAN IDj替換對應報文中輸入內層VLAN ID,跳到步驟317;
步驟317:判斷輸出虛連線埠與輸入虛連線埠是否完全相同,即判斷輸出連線埠與輸入連線埠是否相同,並判斷輸出外層VLAN ID和輸入外層VLAN ID是否相同,並判斷輸出內層VLAN ID和輸入內層VLAN ID是否相同,如果上述三者判斷結果都相同,則執行步驟318;如果上述三者判斷結果不都相同,則執行步驟319;
步驟318:丟棄該報文;
步驟319:轉發該報文至輸出連線埠。
綜上所述,《一種橋接轉發方法》將多個{連線埠,VLAN}組成一個集合,使得該集合屬於一個VSI,乙太網報文在同一個VSI的各{連線埠,VLAN}間相互轉發,實現了多個VLAN間的橋接轉發。橋接轉發的總體思路是:從輸入連線埠接收報文之後,獲取報文中的VLAN ID;然後使用{輸入連線埠,輸入VLAN ID}查找上述{連線埠,VLAN}與VSI的對應關係,確定對應的VSI;使用{VSI,目的MAC}查找MAC地址轉發表得到{輸出連線埠,輸出VLAN ID},並根據所得到的{輸出連線埠,輸出VLAN ID}轉發報文。其中,VLAN可以為一個,也可以為兩個或多個VLAN的組合。例如,將若干{連線埠,外層VLAN,內層VLAN}和{連線埠,VLAN}綁定到一個VSI。
從輸入報文中可以得到一層VLAN ID或二層VLAN ID或更多VLAN ID。
如果是1層VLAN ID,則使用{輸入連線埠,輸入VLAN ID}查表得到VSI;如果是2層VLAN ID,則使用{輸入連線埠,輸入外層VLAN ID,輸入內層VLAN ID}查表得到VSI。
源MAC自學習過程中,將從報文中獲取的VLAN ID依次記錄在MAC地址轉發表中。在轉發過程中查找MAC地址轉發表時,得出的輸出VLAN ID可能為一層VLAN ID,也可能為兩層或更多層,這與MAC地址學習過程中所記錄的VLAN ID有關。
在報文轉發時,用對應層的輸出VLAN ID替換對應層的輸入VLAN ID,或者是添加輸出VLAN ID之後,轉發至輸出連線埠。
在進行源連線埠過濾時,比較輸出連線埠與輸入連線埠,並且比較對應層的輸出VLAN ID和輸入VLAN ID,根據上述比較結果,如果比較結果完全相同,則丟棄報文,否則轉發報文。

榮譽表彰

2016年12月7日,《一種橋接轉發方法》獲得第十八屆中國專利金獎。

相關詞條

熱門詞條

聯絡我們