一種報文處理方法和設(shè)備的制作方法
【專利摘要】本發(fā)明公開了一種報文處理方法,該方法包括:BEB設(shè)備作為SPB實例的用戶側(cè)單網(wǎng)關(guān)設(shè)備,接收到用戶報文,且該用戶報文的目的MAC地址為網(wǎng)關(guān)MAC地址時,確定本地是否存在該用戶報文的目的IP地址對應(yīng)的路由表項,如果是,根據(jù)該路由表項的內(nèi)容處理該用戶報文;否則,觸發(fā)ARP請求用于生成該用戶報文的目的IP地址對應(yīng)的路由表項,并根據(jù)該路由表項的內(nèi)容處理該用戶報文。基于同樣的發(fā)明構(gòu)思,本發(fā)明還提出一種設(shè)備,簡化了用戶側(cè)網(wǎng)絡(luò),節(jié)省了用戶資源。
【專利說明】一種報文處理方法和設(shè)備
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及通信【技術(shù)領(lǐng)域】,特別涉及一種報文處理方法和設(shè)備。
【背景技術(shù)】
[0002]最短路徑橋(ShortestPath Bridging, SPB)是 IEEE802.1aq 定義的以太網(wǎng)標(biāo)準(zhǔn)之一,是多生成樹協(xié)議(Multiple Spanning Tree Protocol, MSTP)的進(jìn)一步延伸,旨在構(gòu)建大型扁平的無阻塞二層網(wǎng)絡(luò),使用SPB-中間系統(tǒng)到中間系統(tǒng)(IntermediateSystem-to-1ntermediate System, ISIS)來共享網(wǎng)絡(luò)中的鏈路狀態(tài)。
[0003]SPB主要是為了解決生成樹協(xié)議(STP)阻塞鏈路浪費帶寬的問題而研究出來的,采用了 L2ISIS作為其控制平面協(xié)議進(jìn)行拓?fù)鋵W(xué)習(xí)計算,目前主要運用SPBM。SPBM繼承了802.1ah定義的媒質(zhì)訪問控制嵌套(MinM)的封裝格式,用戶原始的以太網(wǎng)報文外層增加了服務(wù)實例、骨干網(wǎng)虛擬局域網(wǎng)(B-VLAN)標(biāo)簽、骨干網(wǎng)媒體訪問控制(B-MAC)地址信息,骨干網(wǎng)絡(luò)通過這些信息進(jìn)行轉(zhuǎn)發(fā)。
[0004]SPB作為一種二層虛擬專用網(wǎng)絡(luò)(Virtual Private Network,VPN)技術(shù),對用戶網(wǎng)絡(luò)進(jìn)行隔離,在實際使用中為每個企業(yè)用戶或者部門分配給一個SPB實例,每個SPB實例之間的業(yè)務(wù)相互隔離,實例內(nèi)的用戶VLAN之間互訪需要經(jīng)過用戶側(cè)網(wǎng)絡(luò)的單獨網(wǎng)關(guān)執(zhí)行三層交換。
【發(fā)明內(nèi)容】
[0005]有鑒于此,本發(fā)明提供一種報文處理方法和設(shè)備,簡化了用戶側(cè)網(wǎng)絡(luò),節(jié)省了用戶資源。
[0006]為解決上述技術(shù)問題,本發(fā)明的技術(shù)方案是這樣實現(xiàn)的:
[0007]一種報文處理方法,所述方法包括:
[0008]BEB設(shè)備作為SPB實例的用戶側(cè)單網(wǎng)關(guān)設(shè)備,接收到用戶報文,且該用戶報文的目的MAC地址為網(wǎng)關(guān)MAC地址時,確定本地是否存在該用戶報文的目的IP地址對應(yīng)的路由表項,如果是,根據(jù)該路由表項的內(nèi)容處理該用戶報文;否則,觸發(fā)ARP請求用于生成該用戶報文的目的IP地址對應(yīng)的路由表項,并根據(jù)該路由表項的內(nèi)容處理該用戶報文。
[0009]一種設(shè)備,該設(shè)備包括:接收單元、確定單元和處理單元;
[0010]所述接收單元,用于本設(shè)備作為BEB設(shè)備且作為SPB實例的用戶側(cè)單網(wǎng)關(guān)設(shè)備時,接收用戶報文;
[0011]所述確定單元,用于當(dāng)所述接收單元接收到用戶報文,且該用戶報文的目的MAC地址為網(wǎng)關(guān)MAC地址時,確定本地是否存在該用戶報文的目的IP地址對應(yīng)的路由表項;
[0012]所述處理單元,用于當(dāng)所述確定單元確定本地存在該用戶報文的目的IP地址對應(yīng)的路由表項時,根據(jù)該路由表項的內(nèi)容處理該用戶報文;當(dāng)所述確定單元確定本地不存在該用戶報文的目的IP地址對應(yīng)的路由表項時,觸發(fā)ARP請求用于生成該用戶報文的目的IP地址對應(yīng)的路由表項,并根據(jù)該路由表項的內(nèi)容處理該用戶報文。
[0013]綜上所述,本發(fā)明通過在SPB實例內(nèi)選擇一個BEB設(shè)備作為用戶側(cè)單網(wǎng)關(guān)接入,使用戶側(cè)不再需要單獨網(wǎng)關(guān)設(shè)備,從而簡化了用戶側(cè)網(wǎng)絡(luò),節(jié)省了用戶資源。
【專利附圖】
【附圖說明】
[0014]圖1為SPB實例組網(wǎng)示意圖;
[0015]圖2為實施例中網(wǎng)關(guān)MAC結(jié)構(gòu)示意圖;
[0016]圖3為本發(fā)明具體實施例中報文轉(zhuǎn)發(fā)方法流程示意圖;
[0017]圖4為本發(fā)明具體實施例中應(yīng)用于上述技術(shù)的設(shè)備的結(jié)構(gòu)示意圖。
【具體實施方式】
[0018]為使本發(fā)明的目的、技術(shù)方案及優(yōu)點更加清楚明白,以下參照附圖并舉實施例,對本發(fā)明所述方案作進(jìn)一步地詳細(xì)說明。
[0019]本發(fā)明實施例中提出一種報文處理方法,在SPB實例內(nèi)選擇一個骨干網(wǎng)邊緣網(wǎng)橋(Backbone Edge Bridge7BEB)設(shè)備作為用戶側(cè)單網(wǎng)關(guān)接入,簡化了用戶側(cè)網(wǎng)絡(luò),節(jié)省了用戶資源。
[0020]在SPB實例內(nèi)的BEB設(shè)備中選擇一個設(shè)備作為用戶側(cè)單網(wǎng)關(guān)設(shè)備,至于具體實現(xiàn)時,選擇哪個BEB設(shè)備作為網(wǎng)關(guān)設(shè)備,具體實施例中并不限制。
[0021]參見圖1,圖1為SPB實例組網(wǎng)示意圖。圖1中有三個BEB設(shè)備,BEB1、BEB2和BEB3。以選擇BEBl作為該SPB實例的用戶側(cè)單網(wǎng)關(guān)為例。
[0022]BEBl作為用戶側(cè)單網(wǎng)關(guān)設(shè)備之后,也還具有其作為邊緣設(shè)備的所有功能。
[0023]BEBl需要配置SPB實例的網(wǎng)關(guān)MAC地址和網(wǎng)關(guān)IP地址,當(dāng)存在多個用戶側(cè)網(wǎng)絡(luò)時,需要配置多個網(wǎng)關(guān)IP地址和用戶網(wǎng)絡(luò)中的主機(jī)設(shè)備在同一網(wǎng)段之內(nèi)。
[0024]BEBl配置的網(wǎng)關(guān)MAC地址為了能夠讓其他設(shè)備識別。參見圖2,圖2為實施例中網(wǎng)關(guān)MAC結(jié)構(gòu)不意圖。圖2中網(wǎng)關(guān)MAC地址的格式可以為:標(biāo)識網(wǎng)關(guān)設(shè)備和SPB實例號(1-SID)。
[0025]圖2為本發(fā)明實施例中給出的一種網(wǎng)關(guān)MAC的結(jié)構(gòu)示意圖,具體實現(xiàn)時能夠使各設(shè)備識別該MAC為網(wǎng)關(guān)MAC即可,不限于此種實現(xiàn)形式。
[0026]其中,I/G是指單播 / 組播(Individual/Group);
[0027]G/L是指全局地址/局部地址(Global/Local);
[0028]SPSourceID是指BEB設(shè)備的SPB Source ID,表示由哪個設(shè)備分配的,每個設(shè)備都是唯一的;
[0029]1-SID是指SPB實例號。
[0030]BEBl將網(wǎng)關(guān)MAC地址配置完成時,將該網(wǎng)關(guān)MAC地址通過SPB ISIS發(fā)布到SPB域中,向其他所有SPB橋設(shè)備通告該網(wǎng)關(guān)MAC地址的下一跳是本設(shè)備(BEBl)。
[0031]中間橋設(shè)備和其他邊緣設(shè)備接收到該通告時,中間橋設(shè)備不處理該通告,其他邊緣橋設(shè)備解析該通告;并在SPB實例內(nèi)靜態(tài)指定網(wǎng)關(guān)MAC,將網(wǎng)關(guān)MAC地址靜態(tài)保存在SPB實例內(nèi)的MAC表中,其下一跳為網(wǎng)關(guān)設(shè)備(BEBl),出接口為本設(shè)備與網(wǎng)關(guān)設(shè)備之間的PW,該PW包括:出端口、出VLAN和出MAC,其中,所述出MAC為BEBl的B-MAC。之后,動態(tài)學(xué)習(xí)到網(wǎng)關(guān)MAC地址時,不能覆蓋靜態(tài)的網(wǎng)關(guān)MAC地址。
[0032]若某個BEB設(shè)備接收到該通告,但是該BEB設(shè)備上沒有該SPB實例時,不指定該網(wǎng)關(guān)MAC地址,且不生成該網(wǎng)關(guān)MAC地址的MAC地址表項。
[0033]對于各設(shè)備之間的B-MAC的發(fā)布,以及B-MAC地址轉(zhuǎn)發(fā)表項的生成,同現(xiàn)有實現(xiàn)。B-MAC地址轉(zhuǎn)發(fā)表項包括:對端B-MAC地址和出端口,用于MinM報文的轉(zhuǎn)發(fā)。
[0034]各BEB設(shè)備(包括作為用戶側(cè)單網(wǎng)關(guān)設(shè)備的BEB設(shè)備)需要偵聽實例內(nèi)的所有地址解析協(xié)議(ARP)報文(包括ARP請求報文、應(yīng)答報文以及免費ARP),包括用戶側(cè)和公網(wǎng)SPB側(cè)發(fā)來的ARP報文,一方面將ARP報文在實例內(nèi)正常轉(zhuǎn)發(fā),一方面將偵聽到的報文復(fù)制一份到SPB控制層,由SPB控制層在此實例內(nèi)的路由表中下發(fā)主機(jī)路由,若是本地用戶側(cè),主機(jī)路由出接口為用戶側(cè)端口,出VLAN為用戶側(cè)VLAN,若是公網(wǎng)SPB側(cè),主機(jī)路由出接口為Pff側(cè)端口,出接口為PW端口,出VLAN為B-VLAN,出MAC地址為B-MAC地址。
[0035]下面結(jié)合附圖,詳細(xì)說明本發(fā)明具體實施例中如何實現(xiàn)報文的轉(zhuǎn)發(fā)。
[0036]參見圖3,圖3為本發(fā)明具體實施例中報文轉(zhuǎn)發(fā)方法流程示意圖。具體步驟包括:
[0037]步驟301,BEB設(shè)備作為SPB實例的用戶側(cè)單網(wǎng)關(guān)設(shè)備,接收到用戶報文。
[0038]該BEB設(shè)備接收到的用戶報文如果封裝有MinM隧道頭,則先確定該MinM隧道頭的B-DA中的B-MAC地址是否為本BEB設(shè)備的B-MAC地址,如果是,則對該MinM報文進(jìn)行解封裝處理;否則,根據(jù)該BEB設(shè)備的B-MAC表項轉(zhuǎn)發(fā)該封裝有用戶報文的MinM報文轉(zhuǎn)發(fā)。
[0039]步驟302,當(dāng)該用戶報文的目的MAC地址為網(wǎng)關(guān)MAC地址時,確定本地是否存在該用戶報文的目的IP地址對應(yīng)的路由表項,如果是,執(zhí)行步驟304 ;否則,執(zhí)行步驟303。
[0040]由上可見,如果接收用戶網(wǎng)絡(luò)側(cè)發(fā)送的用戶報文,直接根據(jù)該用戶報文的目的MAC地址確定如何處理該用戶報文;如果接收到SPB網(wǎng)絡(luò)側(cè)的用戶報文封裝有MinM隧道頭,且B-DA為本設(shè)備的B-MAC時,需先進(jìn)行解封裝處理。
[0041]當(dāng)用戶報文的MAC地址為本BEB設(shè)備配置的網(wǎng)關(guān)MAC地址,則觸發(fā)該用戶報文的IP查找。
[0042]步驟303,該BEB設(shè)備觸發(fā)ARP請求用于生成該用戶報文的目的IP地址對應(yīng)的路由表項。
[0043]當(dāng)未查找到該用戶報文的目的IP地址對應(yīng)的路由表項時,觸發(fā)ARP請求用于生成該用戶報文的目的IP地址對應(yīng)的路由表項,具體包括:
[0044]該BEB設(shè)備(作為用戶側(cè)單網(wǎng)關(guān)設(shè)備的BEB設(shè)備)觸發(fā)該用戶報文的目的IP地址的ARP請求,使IP地址為該用戶報文的目的IP地址的設(shè)備接收到該ARP請求,并響應(yīng)ARP應(yīng)答報文。
[0045]該BEB設(shè)備觸發(fā)的ARP請求L2層頭中的源MAC地址為網(wǎng)關(guān)MAC地址,目的MAC地址為全F的MAC地址;報文體中發(fā)送端MAC地址為網(wǎng)關(guān)MAC地址,發(fā)送端IP地址為用戶報文的目的IP地址對應(yīng)的網(wǎng)關(guān)IP地址;目標(biāo)端MAC地址為全O ;目標(biāo)端IP地址為用戶報文的目的IP地址,VLAN為發(fā)送端IP地址對應(yīng)的VLAN。
[0046]當(dāng)本地與用戶側(cè)網(wǎng)絡(luò)相連的端口存在該ARP請求報文所屬VLAN時,直接通過該端口廣播出去。
[0047]向SPB網(wǎng)絡(luò)側(cè)發(fā)送該ARP請求報文時,根據(jù)本地B-MAC地址轉(zhuǎn)發(fā)表項對該ARP請求報文進(jìn)行MinM封裝,并根據(jù)B-MAC表項中的出端口轉(zhuǎn)發(fā)。
[0048]其他BEB設(shè)備接收到封裝有該ARP請求的MinM報文時,進(jìn)行解封裝并在本地廣播該ARP請求報文,該ARP請求報文的目標(biāo)端IP地址對應(yīng)的主機(jī)設(shè)備必然會接收到該ARP請求報文,并響應(yīng)對應(yīng)的ARP響應(yīng)報文。
[0049]作為用戶側(cè)單網(wǎng)關(guān)設(shè)備的BEB設(shè)備在接收到與發(fā)出的ARP請求報文對應(yīng)的ARP應(yīng)答報文時,通過該ARP報文生成該用戶報文的目的IP地址對應(yīng)的路由表項。
[0050]當(dāng)接收到與發(fā)出的ARP請求報文對應(yīng)的ARP應(yīng)答報文封裝有MinM隧道頭時,生成的該用戶報文的目的IP地址對應(yīng)的路由表項,具體包括:IP地址(該用戶報文的目的IP地址),出接口(PW),該Pff包括:出端口 (接收該ARP應(yīng)答報文的端口)、出VLAN(B-VLAN)和出 MAC (MinM 隧道頭 B-SA 中的 B-MAC)。
[0051]當(dāng)接收到與發(fā)出的ARP請求報文對應(yīng)的應(yīng)答報文未封裝有MinM隧道頭時,生成的該用戶報文的目的IP地址對應(yīng)的路由表項,具體包括:IP地址(該用戶報文的目的IP地址),出接口(接收該ARP應(yīng)答報文的端口)。
[0052]步驟304,該BEB設(shè)備根據(jù)該路由表項的內(nèi)容處理該用戶報文。
[0053]由上文的具體描述可知,具體實施例中路由表項中IP地址對應(yīng)的出接口有兩種,一種是用戶網(wǎng)絡(luò)側(cè)端口,一種是SPB網(wǎng)絡(luò)側(cè)的PW。
[0054]當(dāng)該路由表項的出接口為用戶側(cè)網(wǎng)路端口時,將該用戶報文通過該端口直接轉(zhuǎn)發(fā);
[0055]當(dāng)該路由表項的出接口為SPB網(wǎng)絡(luò)側(cè)的PW時,根據(jù)該PW包含的內(nèi)容將該用戶報文的源MAC替換為網(wǎng)關(guān)MAC,目的MAC替換為該路由表項中的出MAC,用戶VLAN修改為B-VLAN,并通過該路由表項中的出接口轉(zhuǎn)發(fā)。
[0056]當(dāng)用戶側(cè)網(wǎng)絡(luò)中某個主機(jī)設(shè)備向另外一個用戶側(cè)網(wǎng)絡(luò)中的主機(jī)設(shè)備發(fā)送用戶報文時,若不知道另外一個用戶側(cè)網(wǎng)絡(luò)中的主機(jī)設(shè)備的MAC地址,也不知道網(wǎng)關(guān)設(shè)備的MAC地址時,會發(fā)送一個ARP請求報文以獲得MAC地址,在本發(fā)明具體實施例中最終獲得作為用戶側(cè)單網(wǎng)關(guān)設(shè)備的BEB設(shè)備配置的網(wǎng)關(guān)MAC地址。
[0057]與該主機(jī)設(shè)備通過用戶網(wǎng)絡(luò)連接的BEB設(shè)備會接收該ARP請求報文,該ARP請求報文的目的MAC地址為全F的廣播MAC地址,因此,與該主機(jī)設(shè)備通過用戶網(wǎng)絡(luò)連接的BEB設(shè)備會在SPB實例內(nèi)以及本地廣播該ARP請求報文。
[0058]這樣作為用戶側(cè)單網(wǎng)關(guān)設(shè)備的BEB設(shè)備也會接收到該ARP請求報文。
[0059]當(dāng)接收該ARP請求報文的BEB設(shè)備(網(wǎng)關(guān)設(shè)備)即為通過用戶側(cè)網(wǎng)絡(luò)連接的BEB設(shè)備時,生成該ARP應(yīng)答報文并通過接收端口轉(zhuǎn)發(fā)給發(fā)送該ARP請求報文的主機(jī)設(shè)備。
[0060]當(dāng)接收該ARP請求報文的BEB設(shè)備(網(wǎng)關(guān)設(shè)備)不是源主機(jī)設(shè)備的邊緣設(shè)備時,會接收到封裝有ARP請求報文的MinM報文,解封裝后,確定該ARP報文的目標(biāo)端IP地址為本設(shè)備配置的網(wǎng)關(guān)IP地址時,生成ARP應(yīng)答報文,并根據(jù)ARP請求報文的MinM隧道頭進(jìn)行封裝并發(fā)送。
[0061]無論接收到ARP請求報文,還是接收到封裝有ARP請求報文的MinM報文,都會上送控制層,生成該ARP請求報文的發(fā)送端IP地址對應(yīng)的路由表項。
[0062]當(dāng)接收到ARP報文時,生成的發(fā)送端IP地址對應(yīng)的路由表項,包括:IP地址(發(fā)送端IP地址),出端口(接收ARP請求報文的端口 )。
[0063]當(dāng)接收到封裝有ARP請求報文的MinM報文時,生成的發(fā)送端IP地址對應(yīng)的路由表項包括:IP地址(發(fā)送端IP地址),出接口(PW)。其中,PW包括:出端口(接收ARP請求報文的端口)、出VLAN(B-VLAN)和出MAC (MinM隧道頭B-SA中的B-MAC)。
[0064]下面詳細(xì)描述不作為用戶側(cè)網(wǎng)關(guān)設(shè)備的BEB設(shè)備接收到用戶報文和ARP報文后的處理過程。
[0065]在SPB實例內(nèi),不作為用戶側(cè)單網(wǎng)關(guān)設(shè)備的BEB設(shè)備接收到目的MAC地址為本設(shè)備的B-MAC地址的非MinM封裝的SPB報文時,根據(jù)該SPB報文的目的IP地址查找對應(yīng)的路由表項,根據(jù)查找到的路由表項中的用戶VLAN修改該SPB報文中的B-VLAN,并轉(zhuǎn)發(fā)。
[0066]該BEB設(shè)備接收到用戶側(cè)發(fā)送的用戶報文時,根據(jù)該用戶報文的目的MAC地址在本地查找對應(yīng)的MAC地址轉(zhuǎn)發(fā)表項,根據(jù)查找到的MAC地址轉(zhuǎn)發(fā)表項對該用戶報文進(jìn)行MinM封裝,并轉(zhuǎn)發(fā)。
[0067]該BEB設(shè)備接收到用戶側(cè)發(fā)送的ARP請求報文時,將該ARP請求報文在本地,以及SPB網(wǎng)絡(luò)側(cè)廣播。在向SPB網(wǎng)絡(luò)側(cè)廣播時,根據(jù)本地的B-MAC地址轉(zhuǎn)發(fā)表項封裝該ARP請求報文并發(fā)送。
[0068]該BEB設(shè)備接收到用戶側(cè)發(fā)送的ARP應(yīng)答報文時,確定該ARP應(yīng)答報文的目的MAC地址為網(wǎng)關(guān)MAC地址時,根據(jù)網(wǎng)關(guān)MAC地址對應(yīng)的B-MAC地址對該ARP應(yīng)答報文進(jìn)行MinM封裝并轉(zhuǎn)發(fā)作為用戶側(cè)單網(wǎng)關(guān)設(shè)備的BEB設(shè)備。
[0069]該BEB設(shè)備接收到SPB網(wǎng)絡(luò)側(cè)發(fā)送的封裝有ARP請求報文的MinM報文,且MinM隧道頭的B-DA為本設(shè)備的B-MAC時,解封裝并在本地廣播該ARP請求報文;同時,進(jìn)行源MAC地址學(xué)習(xí),但是,若學(xué)習(xí)到的源MAC地址為網(wǎng)關(guān)MAC地址時,不覆蓋本地靜態(tài)學(xué)習(xí)的網(wǎng)關(guān)MAC的MAC地址轉(zhuǎn)發(fā)表項。
[0070]該BEB設(shè)備接收到SPB網(wǎng)絡(luò)側(cè)發(fā)送的封裝有ARP應(yīng)答報文的MinM報文時,且MinM隧道頭的B-DA為本設(shè)備的B-MAC時,解封裝并根據(jù)該ARP應(yīng)答報文的目的MAC地查找MAC地址轉(zhuǎn)發(fā)表項,并根據(jù)查找到的MAC地址轉(zhuǎn)發(fā)表項轉(zhuǎn)發(fā)。同時,進(jìn)行源MAC地址學(xué)習(xí),但是,若學(xué)習(xí)的源MAC地址為網(wǎng)關(guān)MAC地址時,不覆蓋本地靜態(tài)學(xué)習(xí)的網(wǎng)關(guān)MAC的MAC地址轉(zhuǎn)發(fā)表項。
[0071]SPB網(wǎng)絡(luò)中存在BCB設(shè)備時,如果該BCB設(shè)備接收到MinM報文時,根據(jù)該報文的MinM隧道頭B-DA對應(yīng)的MAC地址在本地查找B-MAC地址轉(zhuǎn)發(fā)表項,并根據(jù)查找到的B-MAC地址轉(zhuǎn)發(fā)表項轉(zhuǎn)發(fā)該MinM報文。
[0072]BCB設(shè)備接收到目的MAC地址為B-MAC地址的非MinM封裝的SPB報文時,根據(jù)該用戶報文的目的MAC在本地查找B-MAC地址轉(zhuǎn)發(fā)表項,并根據(jù)查找到的B-MAC地址轉(zhuǎn)發(fā)表項轉(zhuǎn)發(fā)。
[0073]本發(fā)明具體實施例中在SPB實例內(nèi)選擇一個BEB設(shè)備作為用戶側(cè)網(wǎng)關(guān)設(shè)備,相對于現(xiàn)有實現(xiàn)是用戶網(wǎng)絡(luò)中使用單獨的網(wǎng)關(guān)設(shè)備作為SPB實例的用戶側(cè)接入,簡化了用戶側(cè)網(wǎng)絡(luò),提高了用戶側(cè)網(wǎng)絡(luò)的安全性,并節(jié)省了用戶資源。
[0074]仍然以圖1為例,將BEBl作為1-SIDl的用戶側(cè)網(wǎng)關(guān),實現(xiàn)該實例內(nèi)主機(jī)設(shè)備之間用戶報文的跨VLAN的轉(zhuǎn)發(fā)。
[0075]BEBl設(shè)備靜態(tài)配置1-SIDl的用戶側(cè)的網(wǎng)關(guān)MAC地址和網(wǎng)關(guān)IP地址,為下掛不同網(wǎng)段的主機(jī)設(shè)備分配對應(yīng)網(wǎng)段的網(wǎng)關(guān)IP地址。
[0076]PC20 在 VLAN2 中,PC30 在 VLAN3 中,二者 IP 地址分別為 IP20 和 IP30,BEBl 配置的 1-SIDl 的網(wǎng)關(guān)MAC 為 G-MAC,BEB1 的 B-MAC 為 B-MAC1 ;BEB2 的 B-MAC 為 B_MAC2,BEB3 的B-MAC 為 B-MAC3。
[0077]BEB1、BEB2和BEB3將自身的B-MAC在1-SIDl中發(fā)布,同現(xiàn)有實現(xiàn),該實例中的BEB設(shè)備和BCB設(shè)備都會生成1-SIDl內(nèi)的B-MAC地址轉(zhuǎn)發(fā)表項和源過濾表項。如果BEB直接存在BCB,BCB也會生成B-MAC地址轉(zhuǎn)發(fā)表項和源過濾表項。
[0078]其中,以BEB2生成的到BEBl的B-MAC地址轉(zhuǎn)發(fā)表項為例,包括的內(nèi)容為:BVLAN、B-MACl^D I。
[0079]1-SIDl內(nèi)的各主機(jī)設(shè)備配置網(wǎng)關(guān)設(shè)備(BEBl)為其分配的對應(yīng)網(wǎng)關(guān)IP地址,如BEB2和PC20配置網(wǎng)關(guān)IP地址為G-1Pl ;BEB3和PC30配置網(wǎng)關(guān)IP地址為G-1P2。
[0080]BEBl將配置的網(wǎng)關(guān)MAC地址通過ISIS發(fā)布到SPB域中,向所有橋設(shè)備通告網(wǎng)關(guān)MAC地址的下一跳是本設(shè)備。
[0081]接收到該通告的BEB設(shè)備在1-SIDl內(nèi)靜態(tài)生成網(wǎng)關(guān)MAC地址的MAC地址轉(zhuǎn)發(fā)表項。該表項包括:網(wǎng)關(guān)MAC地址,出接口(PW)。以BEB2接收到該通告后配置的網(wǎng)關(guān)MAC地址的MAC地址表項為例。具體包括:網(wǎng)關(guān)MAC地址,PW(出接口為接口 1、出VLAN為B-VLAN,出MAC為B-MAC1)。該網(wǎng)關(guān)MAC地址對應(yīng)的MAC地址轉(zhuǎn)發(fā)表項不能被動態(tài)學(xué)習(xí)的網(wǎng)關(guān)MAC
地址覆蓋。
[0082]各BEB設(shè)備還會生成源過濾表項,如BEB2會生成B-MACl的源過濾表項,在本發(fā)明具體實施例中還會生成G-MAC的源過濾表項,過濾的端口同B-MACl過濾的端口相同。
[0083]PC20根據(jù)VLAN2的網(wǎng)關(guān)IP地址G-1Pl發(fā)送ARP請求報文。該報文的L2頭中源MAC地址為PC20的MAC地址(MAC20),目的MAC地址為全F的地址(即廣播MAC地址);ARP請求報文體中的發(fā)送端MAC地址為MAC20,發(fā)送端IP地址為IP20,目標(biāo)端MAC地址為全O的地址(即無效MAC地址),目標(biāo)端IP地址為G-1P1,VLAN ID為VLAN2。
[0084]BEB2收到ARP請求報文,根據(jù)ARP請求報文的源MAC地址MAC20,接收端口 3以及VLAN2,學(xué)習(xí)1-SIDl的用戶MAC表項。BEB2根據(jù)ARP請求報文的發(fā)送端MAC地址和發(fā)送端IP地址學(xué)習(xí)ARP表項。BEB2根據(jù)ARP請求報文的發(fā)送端IP地址,ARP請求報文的接收端口,學(xué)習(xí)的ARP表項生成路由表項,具體包括:IP地址(IP20),出端口(端口 3)。BEB2在1-SIDl內(nèi)廣播該ARP請求報文。
[0085]在1-SIDl中廣播該ARP請求報文時,BEBl和BEB3都會接收到,如果BEB2還連接1-SIDl中屬于VLAN2的其他PC,也會廣播到這些PC上。在向BEBl和BEB3廣播時,會根據(jù)本地的B-MAC地址轉(zhuǎn)發(fā)表項進(jìn)行MinM封裝,BEB設(shè)備之間的MinM封裝同現(xiàn)有實現(xiàn)。
[0086]以向BEBl廣播該ARP請求報文為例,將該ARP請求報文封裝為MinM報文,封裝的隧道頭:B-DA (B-MACl)和 B-SA (B-MAC2),以及 1-SID1 和 B-VLAN。
[0087]BCBl接收到該MinM報時,根據(jù)MinM隧道頭中的B-DA對應(yīng)的B-MAC地址將該報文轉(zhuǎn)發(fā)給BEBI。
[0088]BEBl接收M-1n-M封裝的ARP請求報文,發(fā)現(xiàn)B-DA中的MAC地址是本設(shè)備的B-MAC地址時,解封裝該報文。
[0089]對該ARP請求報文進(jìn)行源MAC地址學(xué)習(xí),源MAC地址學(xué)習(xí)的是ARP的源MAC地址,用戶VLAN以及連接BEB2的PW隧道;并在本地1-SIDl中廣播該ARP請求報文(如果本地存在加入VLAN2的端口),即廣播給本地主機(jī)設(shè)備;并生成PC20對應(yīng)的路由表項,具體包括:IP 地址(IP20),出端口(端口 I),出 VLAN (1-SID1 中的 B-VLAN),出 MAC 地址(B-MAC2)。
[0090]BEBl確定該ARP請求報文的目標(biāo)端IP地址為網(wǎng)關(guān)IP地址G-1P1,則觸發(fā)發(fā)送端IP地址(IP20)的ARP應(yīng)答報文,該ARP應(yīng)答報文L2頭中目的MAC地址為PC20的MAC地址(MAC20),源MAC地址為網(wǎng)關(guān)MAC地址(G-MAC) ;ARP請求報文體中的發(fā)送端MAC地址為G-MAC,發(fā)送端IP地址為G-1Pl,目標(biāo)端MAC地址為MAC20,目標(biāo)端IP地址為IP20,VLAN ID為VLAN2 ;并將該ARP應(yīng)答報文進(jìn)行MinM封裝,MinM隧道頭中的B-SA為B-MACl,B-DA為B-MAC2,發(fā)送給 BEB2。
[0091]BEB3也會收到BEB2廣播的ARP請求報文,在1-SIDl進(jìn)行本地廣播,由于該ARP請求報文的VLAN為VLAN2,不會廣播到PC30。
[0092]BEB2通過BCB設(shè)備I轉(zhuǎn)發(fā)來的進(jìn)行MinM封裝的ARP應(yīng)答報文時,確定B-DA為本設(shè)備的B-MAC地址,對該MinM報文解封裝,解封裝后,根據(jù)該ARP應(yīng)答報文的目的MAC地址在1-SIDl中的MAC地址轉(zhuǎn)發(fā)表項中查找,并通過查找到的出端口 3發(fā)送給PC20。
[0093]PC20接收到該ARP應(yīng)答報文,學(xué)習(xí)ARP表項,將PC30的IP報文封裝為發(fā)往VLANl網(wǎng)關(guān)的用戶報文,其中,該用戶報文的源IP地址為IP20,目的IP為IP30,源MAC地址為MAC20,目的MAC地址為G-MAC。
[0094]BEB2接收到發(fā)往網(wǎng)關(guān)設(shè)備的該用戶報文后,根據(jù)接收該用戶報文的端口,以及報文攜帶的VLAN確定在1-SIDl內(nèi)轉(zhuǎn)發(fā)該報文,根據(jù)目的MAC地址在1-SIDl的MAC地址轉(zhuǎn)發(fā)表中查找到對應(yīng)的MAC地址轉(zhuǎn)發(fā)表項,根據(jù)查找到的MAC地址轉(zhuǎn)發(fā)表項進(jìn)行MinM封裝,發(fā)送給BEBI。
[0095]BEBl接收到BEB2發(fā)送的MinM封裝的用戶報文時,確定隧道頭的B-DA為本設(shè)備的B-MAC地址時,進(jìn)行解封裝,確定該用戶報文的目的MAC地址為網(wǎng)關(guān)MAC地址,則觸發(fā)IP轉(zhuǎn)發(fā)。
[0096]此時,BEBl也需要根據(jù)用戶報文生成源IP地址的路由表項,由于在接收到ARP請求報文時已學(xué)習(xí)到,因此,此時學(xué)到的路由表項已存在,具體實現(xiàn)時,如果為該路由表項設(shè)置了老化定時器,則更新老化時間;若未設(shè)置老化定時器,可以維持原路由表項不變,如何處理根據(jù)具體實現(xiàn)確定。
[0097]BEBl根據(jù)該用戶報文的目的IP地址在1-SIDl內(nèi)的路由表項中查找,當(dāng)查找到對應(yīng)路由表項時,根據(jù)查找到的路由表項轉(zhuǎn)發(fā)該用戶報文;如果未查找到對應(yīng)的路由表項,觸發(fā)該IP地址的ARP請求,以建立該IP地址的路由表項。
[0098]BEBl根據(jù)解封裝后的用戶報文的目的IP地址匹配網(wǎng)段路由之后上送CPU,觸發(fā)IP30的ARP請求。該ARP請求報文的L2頭中的源MAC地址為網(wǎng)關(guān)MAC地址G-MAC,目的MAC地址為全F的地址(即廣播MAC地址);ARP請求報文體中的發(fā)送端IP地址為G-1P2,目標(biāo)端IP地址為IP30,發(fā)送端MAC地址為G-MAC,目標(biāo)端MAC地址為全O的地址(即無效MAC地址),VLAN ID為VLAN3。該ARP請求報文在1-SIDl中廣播,其中一份會通過MinM封裝,發(fā)送給BEB3。
[0099]BEB3接收到MinM封裝的ARP請求報文后,彈掉MinM隧道頭,由于目的MAC地址為全F的地址,因此,在本地進(jìn)行廣播發(fā)送該ARP請求報文。
[0100]PC30會接收到一份BEB3廣播的ARP請求報文,對該報文進(jìn)行源MAC地址學(xué)習(xí),由于目標(biāo)端IP地址為本設(shè)備的IP地址,因此,向BEBl發(fā)送ARP應(yīng)答報文。該ARP應(yīng)答報文的L2頭中的源MAC地址為MAC30,目的MAC地址為G-MAC ;發(fā)送端MAC地址為MAC30,目標(biāo)端MAC地址為G-MAC,發(fā)送端IP地址為IP30,目標(biāo)端IP地址為G-1P2,VLAN ID為VLAN3。
[0101]BEB3通過用戶網(wǎng)絡(luò)接收到該ARP應(yīng)答報文,根據(jù)ARP請求報文的源MAC地址MAC30,接收端口 3以及VLAN3,學(xué)習(xí)1-SIDl的用戶MAC表項。BEB3根據(jù)ARP請求報文的發(fā)送端MAC地址和發(fā)送端IP地址學(xué)習(xí)ARP表項。
[0102]BEB3根據(jù)ARP應(yīng)答報文的發(fā)送端MAC地址和發(fā)送端IP地址學(xué)習(xí)ARP表項。BEB3根據(jù)ARP應(yīng)答報文的發(fā)送端IP地址,ARP應(yīng)答報文的接收端口,學(xué)習(xí)的ARP表項生成路由表項,具體包括=IP地址(IP30),出端口(端口 3)。
[0103]BEB3根據(jù)該ARP應(yīng)答報文的目的MAC地址在1-SIDl中查找到對應(yīng)的MAC地址轉(zhuǎn)發(fā)表項,進(jìn)行MinM封裝并發(fā)送給BEBl。
[0104]BEBl會接收到BEB3發(fā)送的封裝有ARP應(yīng)答報文的MinM報文。確定MinM隧道頭中的B-DA中的MAC地址為本設(shè)備的B-MAC地址時,進(jìn)行解封裝,對該ARP應(yīng)答報文進(jìn)行源MAC地址學(xué)習(xí),源MAC地址學(xué)習(xí)的是ARP的源MAC地址,用戶VLAN以及連接BEB2的PW隧道;并在1-SIDl中下發(fā)主機(jī)PC30的路由表項,該路由表項包括:IP30、出端口(PW),PW包括:出端口(端口 2)、出 MAC(B-MAC3)、出 VLAN(B-VLAN)。
[0105]由于此時有了 IP30對應(yīng)的路由表項,BEBl根據(jù)該路由表項將接收到的PC20發(fā)送的用戶報文進(jìn)行轉(zhuǎn)發(fā)。
[0106]BEBl根據(jù)IP30的路由表項,修改該用戶報文源MAC地址和目的MAC地址并轉(zhuǎn)發(fā)。對該用戶報文處理后,源IP地址為IP20,目的IP地址為IP30,源MAC地址為G-MAC,目的MAC地址為B-MAC3,VLAN為B-VLAN。該報文在1-SIDl內(nèi)轉(zhuǎn)發(fā),該報文仍然需要進(jìn)行SPB路徑查找(B-MAC查找)和合法性檢查。
[0107]BEB3接收到封裝了以太網(wǎng)頭的用戶報文,由于該報文的目的MAC地址為本設(shè)備的B-MAC地址,觸發(fā)IP轉(zhuǎn)發(fā),此時,在1-SIDl中的路由表中,根據(jù)該報文的目的IP地址在路由表中查找到對應(yīng)表項并轉(zhuǎn)發(fā)給PC30,在轉(zhuǎn)發(fā)之前,根據(jù)該報文的目的IP地址在ARP表項中查找到對應(yīng)的用戶VLAN和MAC地址,并進(jìn)行相應(yīng)修改,具體為,將B-VLAN修改為VLAN3,將目的MAC地址修改為MAC30。
[0108]PC30接收到PC20發(fā)送的用戶報文后,向PC20響應(yīng)用戶報文時,該用戶報文的目的IP地址為IP20,源IP地址為IP30,源MAC地址為MAC30,目的MAC地址為G-MAC,報文通過用戶網(wǎng)絡(luò)被送到BEB3。
[0109]BEB3根據(jù)目的MAC地址(網(wǎng)關(guān)MAC地址)對應(yīng)的MAC地址轉(zhuǎn)發(fā)表項將該用戶報文封裝為MinM報文,通過MinM隧道轉(zhuǎn)發(fā)給BEBI。
[0110]BEBl接收到MinM封裝的用戶報文時,彈掉MinM隧道頭后,確定該用戶報文的目的MAC地址為網(wǎng)關(guān)MAC地址,觸發(fā)IP轉(zhuǎn)發(fā)。在1-SIDl中的路由表中查找到IP20的路由表項并轉(zhuǎn)發(fā)。此時,將該用戶報文的源MAC地址和目的MAC地址進(jìn)行修改,修改后的用戶用戶報文的源IP為IP30,目的IP為IP20,源MAC為G-MAC,目的MAC為BEB2的B-MAC2,VLAN3修改為B-VLAN ;報文在SPB實例內(nèi)進(jìn)行SPB實例內(nèi)的B-MAC查找和合法性檢查。
[0111]BCB設(shè)備I接收到該目的MAC地址為B-MAC2的以太網(wǎng)頭封裝的用戶報文時,根據(jù)B-MAC2在本地進(jìn)行B-MAC地址轉(zhuǎn)發(fā)表項查找,并轉(zhuǎn)發(fā)到BEB2。
[0112]BEB2收到該以太網(wǎng)頭封裝的用戶報文后,確定該報文的目的MAC地址是本設(shè)備的B-MAC地址時,觸發(fā)IP轉(zhuǎn)發(fā),根據(jù)該報文的目的IP地址在該報文的源MAC地址對應(yīng)的1-SIDl內(nèi)的路由表項中查找,根據(jù)查找到的路由表項轉(zhuǎn)發(fā)給PC20,在轉(zhuǎn)發(fā)該以太網(wǎng)封裝的用戶報文之前,根據(jù)該報文的目的IP地址在1-SIDl中的ARP表項中查找對應(yīng)的VLAN和MAC地址,并根據(jù)查找結(jié)果修改該以太網(wǎng)封裝的用戶報文,具體為,將B-VLAN修改為VLAN2,B-MAC2 修改為 MAC20。
[0113]由此完成了用戶報文在1-SID實例內(nèi)的跨VLAN轉(zhuǎn)發(fā)。
[0114]基于同樣的發(fā)明構(gòu)思,本申請還提出一種設(shè)備。參見圖4,圖4為本發(fā)明具體實施例中應(yīng)用于上述技術(shù)的設(shè)備的結(jié)構(gòu)示意圖。該設(shè)備包括:接收單元401、確定單元402和處理單元403。
[0115]接收單元401,用于本設(shè)備作為BEB設(shè)備且作為SPB實例的用戶側(cè)單網(wǎng)關(guān)設(shè)備時,接收用戶報文;
[0116]確定單元402,用于當(dāng)接收單元401接收到用戶報文,且該用戶報文的目的MAC地址為網(wǎng)關(guān)MAC地址時,確定本地是否存在該用戶報文的目的IP地址對應(yīng)的路由表項;
[0117]處理單元403,用于當(dāng)確定單元402確定本地存在該用戶報文的目的IP地址對應(yīng)的路由表項時,根據(jù)該路由表項的內(nèi)容處理該用戶報文;當(dāng)確定單元402確定本地不存在該用戶報文的目的IP地址對應(yīng)的路由表項時,觸發(fā)ARP請求用于生成該用戶報文的目的IP地址對應(yīng)的路由表項,并根據(jù)該路由表項的內(nèi)容處理該用戶報文。
[0118]較佳地,
[0119]處理單元403,具體用于觸發(fā)該用戶報文的目的IP地址的ARP請求,使IP地址為該用戶報文的目的IP地址的設(shè)備在接收到該ARP請求時響應(yīng)ARP應(yīng)答報文;在接收到與發(fā)出的ARP請求報文對應(yīng)的ARP應(yīng)答報文時,通過該ARP報文生成該用戶報文的目的IP地址對應(yīng)的路由表項。
[0120]較佳地,
[0121]處理單元403,具體用于當(dāng)接收到與發(fā)出的ARP請求報文對應(yīng)的ARP應(yīng)答報文封裝有MinM隧道頭時,生成的該用戶報文的目的IP地址對應(yīng)的路由表項,包括:IP地址和出端口,出端口為PW,該PW包括出端口號、出VLAN和出MAC,其中,所述出MAC為MinM隧道頭B-SA中的B-MAC,出VLAN為B-VLAN ;當(dāng)接收到與發(fā)出的ARP請求報文對應(yīng)的ARP應(yīng)答報文未封裝MinM隧道頭時,生成的該用戶報文的目的IP地址對應(yīng)的路由表項,包括:用戶VLAN、IP地址和出端口號。
[0122]較佳地,
[0123]處理單元403,具體用于當(dāng)該路由表項的出端口為PW時,將該用戶報文的源MAC替換為網(wǎng)關(guān)MAC,目的MAC替換為出MAC,用戶VLAN修改為B-VLAN,并出端口號對應(yīng)的端口轉(zhuǎn)發(fā);當(dāng)該路由表項的出端口為出端口號時,將該用戶報文的VLAN修改為路由表項中的用戶VLAN,并通過出端口號對應(yīng)的端口轉(zhuǎn)發(fā)。
[0124]較佳地,
[0125]接收單元401,進(jìn)一步用于接收MinM報文;
[0126]處理單元403,進(jìn)一步用于當(dāng)接收單元401接收到封裝有ARP請求報文的MinM報文時,生成該ARP請求報文的發(fā)送端IP地址對應(yīng)的路由表項,并在本地廣播該ARP請求報文;該路由表項包括:IP地址和出端口,該出端口為PW,該PW包括出端口號、出VLAN和出MAC,其中,所述出MAC為MinM隧道頭B-SA中的B-MAC,出VLAN為B-VLAN ;當(dāng)該ARP請求報文的目標(biāo)端IP地址為本設(shè)備配置的網(wǎng)關(guān)IP地址時,生成ARP應(yīng)答報文,并根據(jù)ARP請求報文的MinM隧道頭進(jìn)行封裝并發(fā)送。
[0127]較佳地,
[0128]接收單元401,本設(shè)備作為BEB設(shè)備且不作為該SPB實例的用戶側(cè)單網(wǎng)關(guān)設(shè)備時,用于接收非MinM封裝的SPB報文;
[0129]處理單元403,本設(shè)備作為BEB設(shè)備且不作為該SPB實例的用戶側(cè)單網(wǎng)關(guān)設(shè)備時。用于在接收單元401接收到目的MAC地址為本設(shè)備的B-MAC地址的非MinM封裝的SPB報文時,根據(jù)該SPB報文的目的IP地址查找對應(yīng)的路由表項,根據(jù)查找到的路由表項中的用戶VLAN修改該SPB報文中的B-VLAN,并轉(zhuǎn)發(fā)。
[0130]較佳地,
[0131]接收單元401,本設(shè)備作為BEB設(shè)備且不作為該SPB實例的用戶側(cè)單網(wǎng)關(guān)設(shè)備時,用戶接收用戶側(cè)發(fā)送的用戶報文或ARP應(yīng)答報文;
[0132]處理單元403,本設(shè)備作為BEB設(shè)備且不作為該SPB實例的用戶側(cè)單網(wǎng)關(guān)設(shè)備時,當(dāng)接收單元401接收到用戶側(cè)發(fā)送用戶報文或ARP應(yīng)答報文時,如果目的MAC地址為網(wǎng)關(guān)MAC地址時,根據(jù)網(wǎng)關(guān)MAC地址的MAC地址轉(zhuǎn)發(fā)表項封裝該報文并轉(zhuǎn)發(fā),其中,網(wǎng)關(guān)MAC地址的MAC地址轉(zhuǎn)發(fā)表項根據(jù)網(wǎng)關(guān)設(shè)備發(fā)送的網(wǎng)關(guān)MAC地址通告靜態(tài)建立的,該MAC地址表項包括:網(wǎng)關(guān)MAC地址和出端口 ;出端口為PW,該PW包括:出端口號、出VLAN和出MAC,其中,出MAC為網(wǎng)關(guān)設(shè)備的B-MAC ;該靜態(tài)建立的網(wǎng)關(guān)MAC地址的MAC地址轉(zhuǎn)發(fā)表項不被動態(tài)學(xué)習(xí)到的網(wǎng)關(guān)MAC地址的MAC地址轉(zhuǎn)發(fā)表項覆蓋。
[0133]較佳地,
[0134]接收單元401,本設(shè)備作為該SPB實例中的BCB設(shè)備時,用于接收非MinM封裝的SPB報文;
[0135]處理單元403,本設(shè)備作為該SPB實例中的BCB設(shè)備,用于當(dāng)接收單元401接收到目的MAC地址為B-MAC地址的非MinM封裝的SPB報文時,根據(jù)該用戶報文的目的MAC在本地查找B-MAC地址轉(zhuǎn)發(fā)表項,并根據(jù)查找到的B-MAC地址轉(zhuǎn)發(fā)表項轉(zhuǎn)發(fā)該SPB報文。
[0136]上述實施例的單元可以集成于一體,也可以分離部署;可以合并為一個單元,也可以進(jìn)一步拆分成多個子單兀。
[0137]綜上所述,本發(fā)明具體實施例中通過在SPB實例內(nèi)選擇一個BEB設(shè)備作為用戶側(cè)單網(wǎng)關(guān)接入,使用戶側(cè)不再需要單獨網(wǎng)關(guān)設(shè)備,從而簡化了用戶側(cè)網(wǎng)絡(luò),節(jié)省了用戶資源。
[0138]在將用戶側(cè)單網(wǎng)關(guān)的接入提升到SPB網(wǎng)絡(luò)中的邊緣設(shè)備上時,擴(kuò)展了 SPB組網(wǎng)引用和域內(nèi)轉(zhuǎn)發(fā)方式。
[0139]以上所述,僅為本發(fā)明的較佳實施例而已,并非用于限定本發(fā)明的保護(hù)范圍。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
【權(quán)利要求】
1.一種報文處理方法,其特征在于,所述方法包括: 骨干網(wǎng)邊緣網(wǎng)橋BEB設(shè)備作為最短路徑橋SPB實例的用戶側(cè)單網(wǎng)關(guān)設(shè)備,接收到用戶報文,且該用戶報文的目的媒質(zhì)訪問控制MAC地址為網(wǎng)關(guān)MAC地址時,確定本地是否存在該用戶報文的目的因特網(wǎng)協(xié)議IP地址對應(yīng)的路由表項,如果是,根據(jù)該路由表項的內(nèi)容處理該用戶報文;否則,觸發(fā)地址解析協(xié)議ARP請求用于生成該用戶報文的目的IP地址對應(yīng)的路由表項,并根據(jù)該路由表項的內(nèi)容處理該用戶報文。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述觸發(fā)ARP請求用于生成該用戶報文的目的IP地址對應(yīng)的路由表項,包括: 觸發(fā)該用戶報文的目的IP地址的ARP請求,使IP地址為該用戶報文的目的IP地址的設(shè)備在接收到該ARP請求時響應(yīng)ARP應(yīng)答報文; 在接收到與發(fā)出的ARP請求報文對應(yīng)的ARP應(yīng)答報文時,通過該ARP報文生成該用戶報文的目的IP地址對應(yīng)的路由表項。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于, 當(dāng)接收到與發(fā)出的ARP請求報文對應(yīng)的ARP應(yīng)答報文封裝有MAC嵌套MinM隧道頭時,生成的該用戶報文的目的IP地址對應(yīng)的路由表項,包括:IP地址和出端口,出端口為虛鏈路PW,該PW包括出端口號、出VLAN和出MAC,其中,所述出MAC為MinM隧道頭骨干網(wǎng)源MAC地址B-SA中的骨干網(wǎng)B-MAC,出VLAN為B-VLAN ; 當(dāng)接收到與發(fā)出的ARP請求報文對應(yīng)的ARP應(yīng)答報文未封裝MinM隧道頭時,生成的該用戶報文的目的IP地址對應(yīng)的路由表項,包括:用戶VLAN、IP地址和出端口號。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述根據(jù)該路由表項的內(nèi)容處理該用戶報文,包括: 當(dāng)該路由表項的出端口為PW時,將該用戶報文的源MAC替換為網(wǎng)關(guān)MAC,目的MAC替換為出MAC,用戶VLAN修改為B-VLAN,并出端口號對應(yīng)的端口轉(zhuǎn)發(fā); 當(dāng)該路由表項的出端口為出端口號時,將該用戶報文的VLAN修改為路由表項中的用戶VLAN,并通過出端口號對應(yīng)的端口轉(zhuǎn)發(fā)。
5.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法進(jìn)一步包括: 當(dāng)接收到封裝有ARP請求報文的MinM報文時,生成該ARP請求報文的發(fā)送端IP地址對應(yīng)的路由表項,并在本地廣播該ARP請求報文;該路由表項包括:IP地址和出端口,該出端口為PW,該PW包括出端口號、出VLAN和出MAC,其中,所述出MAC為MinM隧道頭B-SA中的 B-MAC,出 VLAN 為 B-VLAN ; 當(dāng)該ARP請求報文的目標(biāo)端IP地址為本設(shè)備配置的網(wǎng)關(guān)IP地址時,生成ARP應(yīng)答報文,并根據(jù)ARP請求報文的MinM隧道頭進(jìn)行封裝并發(fā)送。
6.根據(jù)權(quán)利要求3-5任意一項所述的方法,其特征在于,所述方法進(jìn)一步包括: 該BEB設(shè)備不為該SPB實例的用戶側(cè)單網(wǎng)關(guān)設(shè)備,接收到目的MAC地址為本設(shè)備的B-MAC地址的非MinM封裝的SPB報文時,根據(jù)該SPB報文的目的IP地址查找對應(yīng)的路由表項,根據(jù)查找到的路由表項中的用戶VLAN修改該SPB報文中的B-VLAN,并轉(zhuǎn)發(fā)。
7.根據(jù)權(quán)利要求1-5任意一項所述的方法,其特征在于,所述方法進(jìn)一步包括: 該BEB設(shè)備不為該SPB實例的用戶側(cè)單網(wǎng)關(guān)設(shè)備,接收到用戶側(cè)發(fā)送用戶報文或ARP應(yīng)答報文時,如果目的MAC地址為網(wǎng)關(guān)MAC地址時,根據(jù)網(wǎng)關(guān)MAC地址的MAC地址轉(zhuǎn)發(fā)表項封裝該報文并轉(zhuǎn)發(fā),其中,網(wǎng)關(guān)MAC地址的MAC地址轉(zhuǎn)發(fā)表項根據(jù)網(wǎng)關(guān)設(shè)備發(fā)送的網(wǎng)關(guān)MAC地址通告靜態(tài)建立的,該MAC地址表項包括:網(wǎng)關(guān)MAC地址和出端口;出端口為PW,該PW包括:出端口號、出VLAN和出MAC,其中,出MAC為網(wǎng)關(guān)設(shè)備的B-MAC ;該靜態(tài)建立的網(wǎng)關(guān)MAC地址的MAC地址轉(zhuǎn)發(fā)表項不被動態(tài)學(xué)習(xí)到的網(wǎng)關(guān)MAC地址的MAC地址轉(zhuǎn)發(fā)表項覆蓋。
8.根據(jù)權(quán)利要求1-5任意一項所述的方法,其特征在于,所述方法進(jìn)一步包括: 該SPB實例中的骨干網(wǎng)核心網(wǎng)橋BCB設(shè)備接收到目的MAC地址為B-MAC地址的非MinM封裝的SPB報文時,根據(jù)該用戶報文的目的MAC在本地查找B-MAC地址轉(zhuǎn)發(fā)表項,并根據(jù)查找到的B-MAC地址轉(zhuǎn)發(fā)表項轉(zhuǎn)發(fā)該SPB報文。
9.一種設(shè)備,其特征在于,該設(shè)備包括:接收單元、確定單元和處理單元; 所述接收單元,用于本設(shè)備作為骨干網(wǎng)邊緣網(wǎng)橋BEB設(shè)備且作為最短路徑橋SPB實例的用戶側(cè)單網(wǎng)關(guān)設(shè)備時,接收用戶報文; 所述確定單元,用于當(dāng)所述接收單元接收到用戶報文,且該用戶報文的目的媒質(zhì)訪問控制MAC地址為網(wǎng)關(guān)MAC地址時,確定本地是否存在該用戶報文的目的因特網(wǎng)協(xié)議IP地址對應(yīng)的路由表項; 所述處理單元,用于當(dāng)所述確定單元確定本地存在該用戶報文的目的IP地址對應(yīng)的路由表項時,根據(jù)該路由表項的內(nèi)容處理該用戶報文;當(dāng)所述確定單元確定本地不存在該用戶報文的目的IP地址對應(yīng)的路由表項時,觸發(fā)地址解析協(xié)議ARP請求用于生成該用戶報文的目的IP地址對應(yīng)的路由表項,并根據(jù)該路由表項的內(nèi)容處理該用戶報文。
10.根據(jù)權(quán)利要求9所述的設(shè)備,其特征在于, 所述處理單元,具體用于觸發(fā)該用戶報文的目的IP地址的ARP請求,使IP地址為該用戶報文的目的IP地址的設(shè)備在接收到該ARP請求時響應(yīng)ARP應(yīng)答報文;在接收到與發(fā)出的ARP請求報文對應(yīng)的ARP應(yīng)答報文時,通過該ARP報文生成該用戶報文的目的IP地址對應(yīng)的路由表項。
11.根據(jù)權(quán)利要求10所述的設(shè)備,其特征在于, 所述處理單元,具體用于當(dāng)接收到與發(fā)出的ARP請求報文對應(yīng)的ARP應(yīng)答報文封裝有MAC嵌套MinM隧道頭時,生成的該用戶報文的目的IP地址對應(yīng)的路由表項,包括:IP地址和出端口,出端口為PW,該PW包括出端口號、出VLAN和出MAC,其中,所述出MAC為MinM隧道頭B-SA中的骨干網(wǎng)B-MAC,出VLAN為B-VLAN ;當(dāng)接收到與發(fā)出的ARP請求報文對應(yīng)的ARP應(yīng)答報文未封裝MinM隧道頭時,生成的該用戶報文的目的IP地址對應(yīng)的路由表項,包括:用戶VLAN、IP地址和出端口號。
12.根據(jù)權(quán)利要求11所述的設(shè)備,其特征在于, 所述處理單元,具體用于當(dāng)該路由表項的出端口為PW時,將該用戶報文的源MAC替換為網(wǎng)關(guān)MAC,目的MAC替換為出MAC,用戶VLAN修改為B-VLAN,并出端口號對應(yīng)的端口轉(zhuǎn)發(fā);當(dāng)該路由表項的出端口為出端口號時,將該用戶報文的VLAN修改為路由表項中的用戶VLAN,并通過出端口號對應(yīng)的端口轉(zhuǎn)發(fā)。
13.根據(jù)權(quán)利要求9所述的設(shè)備,其特征在于, 所述接收單元,進(jìn)一步用于接收MinM報文; 所述處理單元,進(jìn)一 步用于當(dāng)所述接收單元接收到封裝有ARP請求報文的MinM報文時,生成該ARP請求報文的發(fā)送端IP地址對應(yīng)的路由表項,并在本地廣播該ARP請求報文;該路由表項包括:IP地址和出端口,該出端口為PW,該PW包括出端口號、出VLAN和出MAC,其中,所述出MAC為MinM隧道頭B-SA中的B-MAC,出VLAN為B-VLAN ;當(dāng)該ARP請求報文的目標(biāo)端IP地址為本設(shè)備配置的網(wǎng)關(guān)IP地址時,生成ARP應(yīng)答報文,并根據(jù)ARP請求報文的MinM隧道頭進(jìn)行封裝并發(fā)送。
14.根據(jù)權(quán)利要求11-13任意一項所述的設(shè)備,其特征在于, 所述接收單元,本設(shè)備作為BEB設(shè)備且不作為該SPB實例的用戶側(cè)單網(wǎng)關(guān)設(shè)備時,用于接收非MinM封裝的SPB報文; 所述處理單元,本設(shè)備作為BEB設(shè)備且不作為該SPB實例的用戶側(cè)單網(wǎng)關(guān)設(shè)備時。用于在所述接收單元接收到目的MAC地址為本設(shè)備的B-MAC地址的非MinM封裝的SPB報文時,根據(jù)該SPB報文的目的IP地址查找對應(yīng)的路由表項,根據(jù)查找到的路由表項中的用戶VLAN修改該SPB報文中的B-V LAN,并轉(zhuǎn)發(fā)。
15.根據(jù)權(quán)利要求9-13任意一項所述的設(shè)備,其特征在于, 所述接收單元,本設(shè)備作為BEB設(shè)備且不作為該SPB實例的用戶側(cè)單網(wǎng)關(guān)設(shè)備時,用戶接收用戶側(cè)發(fā)送的用戶報文或ARP應(yīng)答報文; 所述處理單元,本設(shè)備作為BEB設(shè)備且不作為該SPB實例的用戶側(cè)單網(wǎng)關(guān)設(shè)備時,當(dāng)所述接收單元接收到用戶側(cè)發(fā)送用戶報文或ARP應(yīng)答報文時,如果目的MAC地址為網(wǎng)關(guān)MAC地址時,根據(jù)網(wǎng)關(guān)MAC地址的MAC地址轉(zhuǎn)發(fā)表項封裝該報文并轉(zhuǎn)發(fā),其中,網(wǎng)關(guān)MAC地址的MAC地址轉(zhuǎn)發(fā)表項根據(jù)網(wǎng)關(guān)設(shè)備發(fā)送的網(wǎng)關(guān)MAC地址通告靜態(tài)建立的,該MAC地址表項包括:網(wǎng)關(guān)MAC地址和出端口 ;出端口為PW,該PW包括:出端口號、出VLAN和出MAC,其中,出MAC為網(wǎng)關(guān)設(shè)備的B-MAC ;該靜態(tài)建立的網(wǎng)關(guān)MAC地址的MAC地址轉(zhuǎn)發(fā)表項不被動態(tài)學(xué)習(xí)到的網(wǎng)關(guān)MAC地址的MAC地址轉(zhuǎn)發(fā)表項覆蓋。
16.根據(jù)權(quán)利要求9-13任意一項所述的設(shè)備,其特征在于, 所述接收單元,本設(shè)備作為該SPB實例中的骨干網(wǎng)核心網(wǎng)橋BCB設(shè)備時,用于接收非MinM封裝的SPB報文; 所述處理單元,本設(shè)備作為該SPB實例中的BCB設(shè)備,用于當(dāng)所述接收單元接收到目的MAC地址為B-MAC地址的非MinM封裝的SPB報文時,根據(jù)該用戶報文的目的MAC在本地查找B-MAC地址轉(zhuǎn)發(fā)表項,并根據(jù)查找到的B-MAC地址轉(zhuǎn)發(fā)表項轉(zhuǎn)發(fā)該SPB報文。
【文檔編號】H04L12/741GK104079466SQ201410315823
【公開日】2014年10月1日 申請日期:2014年7月3日 優(yōu)先權(quán)日:2014年7月3日
【發(fā)明者】宋小恒, 鄭國良 申請人:杭州華三通信技術(shù)有限公司