新四季網

一種邊緣設備報文轉發時的mac學習方法及邊緣設備的製作方法

2023-04-27 10:43:56 2

一種邊緣設備報文轉發時的mac學習方法及邊緣設備的製作方法
【專利摘要】本發明提供一種邊緣設備報文轉發時的媒體接入控制(MAC)地址學習方法以及邊緣設備,該方法用於乙太網虛擬化(EVI)網絡中的伺服器端邊緣設備(ED)以及客戶端ED。即:在伺服器端邊緣設備(ED)和客戶端ED之間建立備用隧道。伺服器端ED和客戶端ED利用備用隧道接收未知單播報文,對該報文進行MAC學習後再進行相應的報文轉發。應用本發明方案,由於邊緣設備是通過備用隧道轉發未知單播流量,並在轉發的過程中學習MAC地址,既可以達到MAC學習的目的,又可以有效地抑制報文的泛洪。
【專利說明】—種邊緣設備報文轉發時的MAC學習方法及邊緣設備
【技術領域】
[0001]本發明涉及通信【技術領域】,特別涉及一種邊緣設備報文轉發時的MAC學習方法及邊緣設備。
【背景技術】
[0002]乙太網連接虛擬化(EthernetVirtual Interconnection, EVI)網絡是一種可以將異地部署的多個站點網絡連接起來的網絡,是基於虛擬鏈路實現各站點網絡之間二層互聯的系統。EVI網絡利用先進的「MAC in IP」技術,實現基於IP核心網的二層虛擬專用網絡(L2VPN)技術。
[0003]EVI網絡通常由核心網絡、交疊網絡和若干站點網絡等組成。
[0004]其中,核心網絡主要由IP路由設備承載的提供站點網絡之間互聯的網絡,是公網,主要進行隧道報文的IP轉發。
[0005]交疊網絡是站點邊緣設備之間建立的虛擬網絡,實現虛擬區域網(Virtual LocalArea Network, VLAN)在不同站點之間的擴展,提供站點網絡之間的二層互聯。
[0006]站點網絡由一臺或多臺邊緣設備(Edge Device, ED)連接到核心網絡的具有獨立業務功能的二層網絡,其邊緣設備可以提供站點之間的二層交換功能。
[0007]在現有的EVI網絡中,ED之間通常採用全連接架構,即:各個ED之間分別建立隧道。站點之間的媒體接入控制(Media Access Control, MAC)地址是通過中間系統到中間系統(Intermediate System-1ntermediate System, ISIS)協議來發布的。比如:某個站點的ED新學習到站點內的某個MAC,可以採用ISIS協議並通過隧道將該MAC泛洪給其它所有的ED。但如果需要發布的MAC地址數量非常龐大,可能會造成報文的丟失,以至對端無法學習到MAC地址。此外,各站點用戶互訪時,如果某ED在自身MAC表中無法查詢到報文目的MAC地址,該報文就是一個未知單播報文。對此,ED可以採用EVI Flooding或EVI NoFlooding兩種模式處理。對於EVI Flooding模式,ED會將未知單播報文泛洪給其它所有的ED,這同樣會因為泛洪帶來丟失報文或佔用資源等缺陷。而對於EVI No Flooding模式,ED直接將未知單播報文丟棄,這將導致訪問的失敗。

【發明內容】

[0008]有鑑於此,本發明提供了一種邊緣設備報文轉發時的MAC學習方法及邊緣設備,可以不依靠ISIS協議發布MAC而同樣可能學習到MAC,儘量避免泛洪造成報文丟失及佔用資源的缺陷。
[0009]為達到上述目的,本發明實施例的技術方案可以這樣實現:
[0010]一種邊緣設備報文轉發時的MAC學習方法,該方法用於乙太網虛擬化EVI網絡中的伺服器端邊緣設備ED,所述伺服器端ED和EVI網絡中的客戶端ED之間建立了主用隧道,在所述伺服器端ED和客戶端ED之間還建立備用隧道,用於承載未知單播報文;該方法還包括:[0011]所述伺服器端ED從備用隧道接收來自源客戶端ED發送的未知單播報文,所述未知單播報文攜帶有源客戶端ED的ED標識;所述伺服器端ED對該報文的源MAC地址進行學習,將學習到的MAC地址、該伺服器端ED和源客戶端ED之間的主用隧道所對應的出接口一併配置給自身的MAC表;
[0012]所述伺服器端ED根據所述未知單播報文的目的MAC地址查詢MAC表,命中本地站點,則進行本地轉發;命中遠端站點,則通過自身和該目的客戶端ED之間的備用隧道轉發出去;未命中,則在EVI實例內進行廣播。
[0013]針對上述發明目的,還提出一種實施例方案,可以這樣實現:
[0014]一種邊緣設備報文轉發時的MAC學習方法,該方法用於乙太網虛擬化EVI網絡中的客戶端邊緣設備ED,所述客戶端ED和伺服器端ED之間建立了主用隧道,在所述客戶端ED與所述伺服器端之間還建立備用隧道,用於承載未知單播報文;該方法還包括:
[0015]所述客戶端ED作為源客戶端ED發送未知單播報文時,將自身的ED標識添加到該未知單播報文中,並通過自身與伺服器端ED之間建立的備用隧道發送給伺服器端ED ;
[0016]所述客戶端ED作為目的客戶端ED從備用隧道接收到未知單播報文時,根據該未知單播報文攜帶的ED標識獲知源客戶端ED,並對該報文的源MAC地址進行學習,將學習到的MAC地址、目的客戶端ED自身和源客戶端ED之間的主用隧道所對應的出接口一併配置給MAC表;再根據所述未知單播報文的目的MAC地址查詢自身的MAC表,如果命中本地站點,則進行本地轉發;如果未命中,則在本虛擬區域網VLAN內廣播。
[0017]針對上述發明目的,本發明實施例提出這樣一種方案:
[0018]一種邊緣設備,該設備為乙太網虛擬化EVI網絡中的伺服器端邊緣設備ED,包括主控單元、轉發單元和接口單元,所述伺服器端ED和EVI網絡中的客戶端ED之間均建立了主用隧道;
[0019]所述轉發單元用於,在接口單元從備用隧道接收到來自源客戶端ED的未知單播報文時,所述未知單播報文攜帶有源客戶端ED的ED標識,對該報文的源MAC地址進行學習,並將學習到的MAC地址、該伺服器端ED和源客戶端ED之間的主用隧道所對應的出接口一併配置給MAC表;還用於,根據所述未知單播報文的目的MAC地址查詢MAC表,命中本地站點,則通過接口單元進行本地轉發;命中遠端站點,則通過接口單元並利用與目的客戶端ED之間的備用隧道轉發出去;未命中,則通過接口單元在EVI實例內進行廣播。
[0020]針對上述發明目的,本發明實施例還提出這樣一種方案:
[0021]一種邊緣設備,該設備為乙太網虛擬化EVI網絡中的客戶端邊緣設備ED,包括主控單元、轉發單元和接口單元,所述客戶端ED和EVI網絡中的伺服器端ED之間建立了主用隧道;
[0022]所述主控單元用於,在作為源客戶端ED發送未知單播報文時,將自身的ED標識添加到該未知單播報文中;
[0023]所述轉發單元用於,在作為源客戶端ED時,通過接口單元從與伺服器端ED之間建立的備用隧道發送給伺服器端ED ;在作為目的客戶端ED時,通過接口單元從備用隧道接收到伺服器端ED轉發的未知單播報文,根據該未知單播報文攜帶的ED標識獲知源客戶端ED,對該報文的源MAC地址進行學習,將學習到的MAC地址、目的客戶端ED自身和源客戶端ED之間的主用隧道所對應的出接口一併配置給MAC表;還用於根據所述未知單播報文的目的MAC地址查詢MAC表,如果命中本地,則通過接口單元進行本地轉發;如果未命中,則通過接口單元在本VLAN內進行廣播。
[0024]綜上所述,本發明提供了一種邊緣設備報文轉發時的MAC學習方法及邊緣設備,在伺服器端ED和客戶端ED之間建立備用隧道,用於承載未知單播報文。伺服器端ED和客戶端ED可以利用備用隧道來轉發未知單播報文,並在報文轉發的過程中達到MAC學習的目的,同時有效地抑制報文的泛洪。
【專利附圖】

【附圖說明】
[0025]圖1是本發明實施例一的系統結構圖。
[0026]圖2是本發明實施例一中伺服器端ED的內部結構示意圖。
[0027]圖3是本發明實施例一中客戶端ED的內部結構示意圖。
[0028]圖4是本發明實施例二中的系統結構圖。
[0029]圖5是本發明實施例二中添加了 ED標識的報文格式。
【具體實施方式】
[0030]本發明實施例一提出一種解決方案,S卩:在乙太網虛擬化(EVI)網絡中,邊緣設備(ED)進行報文轉發時,如果接收到遠端站點的單播報文,可以直接利用該報文進行MAC學習,並進行報文轉發。
[0031 ] 但,在MAC學習過程中,特別是初期階段,由於各ED未學習到遠端站點下掛主機的MAC地址,需要轉發的報文大多是未知單播報文,這就可能引起大量的未知單播報文泛洪的現象。比如:ED1站點內用戶設備CEl下掛的主機hostl要發送報文給ED2站點內CE2下掛的主機host2,但EDl事先並未學習到host2的MAC地址,自然無法根據MAC表命中目的MAC地址,那麼該報文就是通常所說的未知單播報文。為了將報文發送給目的地,EDl可能會將該未知單播報文泛洪給EVI網絡中其他所有的ED設備。為了抑制這種泛洪,本發明實施例中,除了各個ED之間建立主用隧道,還在伺服器端ED和客戶端ED之間建立了備用隧道,用於承載未知單播報文。這裡所述主用隧道和備用隧道為EVI隧道。該EVI隧道的隧道類型是IP GRE隧道,用於承載EVI Link,一條隧道上可以承載多條EVI Link。EVI隧道是點到多點的自動隧道,本地站點通過一條EVI隧道可以和多個鄰居站點建立連接,其中每一個連接對應一個EVI Link。
[0032]另外,為了表明未知單播報文的來源,還在其中添加了源ED的ED標識,使接收到該報文的ED可以正確地學習MAC地址。因此,本發明實施例中,當源客戶端ED需要泛洪未知單播報文時,可以通過備用隧道將報文僅泛洪給伺服器端ED,再由伺服器端ED轉發給目的客戶端ED。同時,在報文轉發過程中,伺服器端ED和客戶端ED都可以完成MAC學習。
[0033]圖1是本發明實施例一的系統架構示意圖。如圖1所示,該EVI網絡中包括一個伺服器端ED,若干客戶端ED,各ED站點內有若干CE,每個CE下掛有若干主機。各個ED之間都建立了主用隧道,此外,伺服器端ED和各個客戶端ED之間還建立了備用隧道,用於專門承載未知單播報文。這裡,各ED和其下屬的CE構成的網絡就是站點網絡,各ED之間交互的公網就是核心網絡。
[0034]為了更好地說明本實施例方案,下面分別對伺服器端ED和客戶端ED詳細描述。[0035]圖2是伺服器端ED的內部結構示意圖。如圖2所示,伺服器端ED包括:主控單元1011、轉發單元1012和接口單元1013。實際應用中,主控單元1011由CPU等硬體實現;轉發單元1012與現有技術中的轉發單元一樣,保存有MAC硬體表,主要負責報文轉發時的地址查詢等工作;而接口單元1013主要指邊緣設備對外的接口,包括物理埠或邏輯接口。其中,
[0036]所述轉發單元1012用於,在接口單元1013從備用隧道接收到來自源客戶端ED的未知單播報文時,所述未知單播報文攜帶有源客戶端ED的ED標識,對該報文的源MAC地址進行學習,並將學習到的MAC地址、該伺服器端ED和源客戶端ED之間的主用隧道所對應的出接口一併配置給MAC表;還用於,根據所述未知單播報文的目的MAC地址查詢MAC表,命中本地站點,則通過接口單元1013進行本地轉發;命中遠端站點,則通過接口單元1013並利用與目的客戶端ED之間的備用隧道轉發出去;未命中,則通過接口單元1013在EVI實例內進行廣播。
[0037]也就是說,伺服器端ED可以從備用隧道接收到的未知單播報文中學習到報文的源MAC地址,並在查詢MAC表之後進行相應的報文轉發。需要注意的是,伺服器端ED雖然是從備用隧道接收到未知單播報文,但,是將源MAC地址以及主用隧道所對應的出接口這一對應關係配置到自身的MAC表。其原因是:伺服器端ED —旦學習到源MAC地址後,如果後續要發送報文給該源MAC地址對應的設備時,此報文就應該是已知單播報文,無需再從備用隧道發送,直接從主用隧道發送,即根據MAC表中的主用隧道對應的出接口將報文發送出去。還需要注意的是,伺服器端ED將未知單播報文轉發給遠端站點時,仍然需要從備用隧道發送,以便於遠端站點正確地學習MAC地址。
[0038]圖3是客戶端ED的內部結構示意圖。如圖2所示,客戶端ED也包括:主控單元1021、轉發單元1022和接口單元1023。實際應用中,主控單元1021由CPU等硬體實現;轉發單元1022保存有MAC硬體表,主要負責報文轉發時的地址查詢等工作;而接口單元1023主要指邊緣設備對外的接口,包括物理埠或邏輯接口。其中,
[0039]所述主控單元1021用於,在作為源客戶端ED發送未知單播報文時,將自身的ED標識添加到該未知單播報文中;
[0040]所述轉發單元1022用於,在作為源客戶端ED時,通過接口單元1023從與伺服器端ED之間建立的備用隧道發送給伺服器端ED ;在作為目的客戶端ED時,通過接口單元1023從備用隧道接收到伺服器端ED轉發的未知單播報文,根據該未知單播報文攜帶的ED標識獲知源客戶端ED,對該報文的源MAC地址進行學習,將學習到的MAC地址、目的客戶端ED自身和源客戶端ED之間的主用隧道所對應的出接口一併配置給MAC表;還用於根據所述未知單播報文的目的MAC地址查詢MAC表,如果命中本地,則通過接口單元1023進行本地轉發;如果未命中,則通過接口單元1023在本VLAN內進行廣播。
[0041]也就是說,目的客戶端ED可以從備用隧道接收到的未知單播報文中學習到報文的源MAC地址,並在查詢MAC表之後進行相應的報文轉發。需要注意的是,目的客戶端ED雖然是從備用隧道接收到未知單播報文,但,是將源MAC地址以及自身與源客戶端ED之間的主用隧道所對應的出接口下發到自身的MAC表。其原因是:目的客戶端ED學習到的是源客戶端ED站點下掛主機MAC地址,但,是從目的客戶端ED與伺服器端ED之間的備用隧道接收到的。如果目的客戶端後續直接利用該備用隧道回應報文,將無法正確地到達源客戶端ED,因此,在MAC學習時應該保存目的客戶端ED與源客戶端ED之間的主用隧道對應的出接口。
[0042]為了更好地描述本發明方案,下面再用一個實施例詳細說明。
[0043]以圖4為例,假設伺服器端ED211站點內有CE221,下掛主機Host231,客戶端ED212站點內有CE222,下掛主機Host232,客戶端ED231站點內有CE223,下掛主機Host233,客戶端ED214站點內有CE224,下掛主機Host234。ED211?ED214兩兩之間建立了主用隧道,且伺服器端ED211還分別與客戶端ED212?ED214之間建立了備用隧道,並在EVI隧道的基礎上建立EVI LINK連接。其中,EDl和ED2之間的連接為LINKl和LINK1-2,EDl和ED3之間的連接為LINK2和LINK2-2,EDl和ED4之間的連接為LINK3和LINK3-2。不管是主用隧道,還是備用隧道,可以採用現有的方法建立,比如建立IP GRE隧道等。
[0044]本實施例假設客戶端ED212站點內的主機Host232要訪問客戶端ED213站點內的主機Host233,而客戶端ED212之前還沒有學習到Host232和Host233的MAC地址,客戶端ED213之前沒有學習到Host232的MAC地址。
[0045]本實施例中的未知單播報文需要添加源客戶端ED的ED標識,添加後的報文格式如圖5所示。其中,「EV1-ED Indentifier」欄位就是ED標識。實際應用中,各個ED可以事先配置ED標識。比如:可以將EDl的標識配置為idl,對應的地址為1.1.1.1 ;ED2的標識配置為id2,對應的地址為2.2.2.2 ;ED3的標識配置為id3,對應的地址為3.3.3.3 ;ED4的標識配置為id4,對應的地址為4.4.4.4。這裡,所述的地址可以唯一標識EVI隧道的設備,因此根據未知單播報文中的ED標識,就可以通過對應的地址明確源客戶端ED。
[0046]下面分兩個階段介紹本發明實施例實現訪問的方案:
[0047]第一階段:CE222連接的Host232向CE223連接的Host233發送乙太網報文。
[0048]步驟S1:CE222將來自Host232的乙太網報文發送給ED212,所述乙太網報文攜帶有源MAC地址和目的MAC地址。其中,源MAC地址為Host232的MAC地址,目的MAC地址為Host233 的 MAC 地址。
[0049]步驟S2:ED212進行MAC學習,ED212將乙太網報文的源MAC地址、所屬VLAN和接收該乙太網報文的埠保存在對應的EVI實例的MAC表中。
[0050]這裡,ED212可以根據接收到的乙太網報文所屬VLAN綁定的EVI實例確定對應的EVI實例。
[0051]步驟S3:ED212根據乙太網報文的目的MAC地址在MAC表中未查找到匹配表項,則根據與伺服器端ED211間的備用隧道將乙太網報文頭封裝為Ethernet over IP GRE隧道報文,將自身的ED標識添加到該隧道報文。
[0052]如圖5所示為ED212發送的攜帶有ED標識的Ethernet over IP GRE隧道報文的報文格式。圖5中,IP GRE隧道頭包括IP報文頭和GRE報文頭。相對於圖5所示乙太網報文所承載的IP報文的IP報文頭,IP GRE隧道頭中的IP報文頭可以看作隧道報文的外層IP報文頭,IP GRE隧道頭中的IP報文頭的源IP是ED212的IP位址,IP GRE隧道頭中的IP報文頭的目的IP位址是ED211的IP位址。GRE報文頭指示了承載的協議報文為乙太網報文。
[0053]圖5所示的公網二層報文頭可看作外層乙太網頭,公網二層報文的目的MAC是ED212連接的下一跳設備的MAC,如圖4所示設備P2 (若下一跳設備是ED211,則公網二層報文的目的MAC是ED211的MAC地址),公網二層報文的源MAC是ED211的虛接口 MAC,公網二層報文的VLANID是公網VLAN號。
[0054]步驟SI?步驟S3是Host232將乙太網報文發送給邊緣設備ED212,ED212確定該報文為未知單播報文。
[0055]步驟S4:ED212將隧道報文通過備用隧道LINK1-2發送給伺服器端ED211,所述隧道報文攜帶的源ED的標識為ED212的標識。
[0056]步驟S5:伺服器端ED211從備用隧道LINK1-2收到攜帶源ED標識的隧道報文。
[0057]步驟S6:伺服器端ED211將隧道報文的內層源MAC地址、所屬VLAN以及連接源ED的主用隧道的隧道接口配置到對應的EVI實例的MAC表的表項中。
[0058]ED211收到隧道報文後,去除公網二層報文頭和IP GRE隧道頭,根據乙太網報文所屬VLAN確定EVI實例。ED211去除公網二層和IP GRE隧道頭的原理與已有IP GRE隧道頭終結原理大致相同,本實施例不再贅述。
[0059]本實施例中,伺服器端ED211根據源客戶端ED標識確定隧道報文來自ED212,將ED212的主用隧道的隧道接口記錄在上述內層源MAC地址對應的表項;其中,該隧道接口就是ED211和ED212之間主用隧道對應的出接口。可以是指示隧道接口的隧道索引。
[0060]另外,實際應用中,伺服器端ED211還可以從來自本地CE或主用隧道的報文中學習MAC地址。對於來自本地站點的報文,學習MAC地址的方法與現有技術相同,此處不再贅述。對於來自主用隧道的報文,也就是說,圖2中的主控單元1011進一步用於,在接口單元1013從主用隧道接收到來自源ED發送的已知單播報文時,對該報文的源MAC地址進行學習,將學習到的MAC地址、伺服器端ED自身和源ED之間的主用隧道所對應的出接口一併配置到自身的MAC表。相應地,轉發單元1012進一步用於,根據所述已知單播報文的目的MAC地址查詢MAC表,如果命中本地站點(即本地站點下掛主機的MAC地址),則進行本地轉發;如果未命中,則在本VLAN內廣播。
[0061]步驟S7:伺服器端ED211根據乙太網報文的目的MAC地址在EVI實例的MAC表查找到表項,且該表項包含隧道接口,根據隧道接口確定目的客戶端ED為ED213,則根據連接ED213的備用隧道封裝,將該乙太網報文封裝為隧道報文並添加源ED的標識,即ED212的ED標識,通過備用隧道LINK2-2發送攜帶源ED標識的隧道報文給ED213。
[0062]本實施例中,如果伺服器端ED211查找到的表項包含埠,則進行本地轉發即可。
[0063]本實施例中,如果伺服器端ED211在對應的EVI實例的MAC表中沒有查找到匹配於乙太網報文的目的MAC地址的表項,則需要在EVI實例內廣播,其方法為:伺服器端ED211的轉發單元1012通過接口單元1013將在EVI實例的本地VLAN內廣播乙太網報文,並且分別依據自身與除源ED外的其它所有客戶端ED建立的備用隧道,將乙太網報文封裝為隧道報文,並添加源ED標識,分別發送給客戶端ED213和ED214。
[0064]步驟S8:ED213從備用隧道LINK2-2接收攜帶源ED標識的隧道報文。
[0065]步驟S9:ED213根據隧道報文攜帶的源ED標識獲知源ED為ED212,將內層乙太網報文的源MAC地址、乙太網報文所屬VLAN以及連接源客戶端ED的主用隧道的隧道接口配置在對應EVI實例的MAC表中。
[0066]這裡,步驟S8和S9描述的客戶端ED213如何從備用隧道接收到的報文中學習MAC,實際應用中,客戶端ED213還可以從來自本地站點或主用隧道的報文中學習MAC地址。[0067]也就是說,如果從本地站點的報文中學習MAC地址,圖3中的轉發單元1022進一步用於,在客戶端ED接收到本地站點的單播報文時,對該報文進行源MAC地址學習,將學習到的MAC地址和接收該報文的埠一併保存在MAC表中。轉發單元1022還進一步用於,根據該報文的目的MAC地址查詢自身的MAC表,如果命中本地站點下的主機,則通過接口單元1023進行本地轉發;如果命中遠端的伺服器端ED或目的客戶端ED站點下的主機,則通過接口單元1023並利用自身與伺服器端ED或目的客戶端ED之間的主用隧道轉發;如果未命中,則將該單播報文作為未知單播報文處理。
[0068]如果從主用隧道的報文中學習MAC地址,圖3中的轉發單元1022進一步用於,在客戶端ED作為目的客戶端ED從主用隧道接收到來自源ED發送的已知單播報文,對該報文的源MAC地址進行學習,將學習到的MAC地址、該目的客戶端ED和源ED之間的主用隧道所對應的出接口一併配置給自身的MAC表。轉發單元1022還進一步用於,根據所述已知單播報文的目的MAC地址查詢MAC表,如果命中本地站點下掛的主機,則進行本地轉發;如果未命中,則在本VLAN內廣播。
[0069]步驟SlO:ED213根據在對應EVI實例的MAC表中查找到乙太網報文的目的MAC地址對應的埠,則將乙太網報文通過該埠轉發到CE223。再由CE223轉發乙太網報文至Host2330
[0070]本實施例中,假設ED213此前已經學習到Host233的MAC地址,本步驟自然可以命中。實際應用中,如果沒有命中,在EVI實例的本地VLAN內廣播乙太網報文。這樣,CE223接收到該乙太網報文,再轉發至Host233。
[0071]第二階段:Host233向Host232反饋報文。
[0072]步驟Hl:CE223將Host233發送的乙太網報文發送給ED213,該乙太網報文的源MAC地址為Host233的MAC地址,目的MAC地址為Host232的MAC地址。
[0073]步驟H2:ED213根據在EVI實例的MAC表中查找到乙太網報文的目的MAC地址匹配的表項且該表項包含隧道接口,即ED213與ED212之間主用隧道的隧道接口。
[0074]步驟H3:ED213將乙太網報文封裝為隧道報文,通過與ED212之間的主用隧道將響應報文發送給ED212。
[0075]這裡,ED3可以根據隧道接口查詢隧道表項,獲取IP GRE隧道頭的源IP、目的IP,公網二層頭的公網VLAN、目的MAC、出埠等信息,封裝乙太網報文並轉發出去。
[0076]步驟H4:ED212收到隧道報文,將隧道報文封裝為乙太網報文,在EVI實例的MAC表查詢乙太網報文的目的MAC匹配的表項,且該表項出接口為埠,從該埠轉發乙太網報文至CE222。
[0077]CE222根據乙太網目的MAC地址繼續轉發乙太網報文至Host232。
[0078]由於此前在步驟S2中,ED212已經學習到CE222的MAC地址,本步驟可以命中,並獲知相應的埠,通過相應的埠,就可以將響應報文準確地發送給CE222,再由CE222轉發給Host232。至此,Host232已經成功地訪問了 Host233。在報文轉發到過程中,伺服器端ED211、客戶端ED212和ED213直接利用流量報文進行了 MAC學習。
[0079]本發明實施例中,如果Host231與Host232間需要發送單播報文時,CE221將Host231發出的乙太網單播報文轉給ED211,ED211在EVI實例的MAC表記錄乙太網報文的源MAC、VLAN信息以及埠信息後,若EDl在EVI實例的MAC表中未查找到匹配於乙太網報文的目的MAC的表項,則在EVI實例的本地VLAN內廣播乙太網報文並通過連接各客戶端ED的主用隧道封裝隧道報文,將隧道報文通過各主用隧道發送到各客戶端ED。或者,ED211在EVI實例的本地VLAN內廣播乙太網報文並通過連接各客戶端ED的備用隧道封裝隧道報文,將伺服器ED的ED標識作為源ED標識插入隧道報文,將攜帶源ED標識的隧道報文通過備用隧道發送給各客戶端ED。
[0080]如果Host231需要發送廣播報文時,CE221將Host231發出的乙太網廣播報文轉給ED211,ED211在EVI實例的MAC表記錄該乙太網報文的源MAC、VLAN信息以及埠信息後,則在EVI實例的本地VLAN內廣播乙太網報文並通過連接各客戶端ED的主用隧道封裝隧道報文,將隧道報文通過各主用隧道發送到各客戶端ED。或者,ED211在EVI實例的本地VLAN內廣播乙太網報文並通過連接各客戶端ED的備用隧道封裝隧道報文,將伺服器ED的ED標識作為源ED標識插入隧道報文,將攜帶源ED標識的隧道報文通過備用隧道發送給各客戶端ED。
[0081]本實施例通過伺服器端ED與客戶端ED間建立的備用隧道,不僅可以有效地抑制未知單播乙太網報文的泛洪現象。還可以避免丟棄未知單播乙太網報文,在抑制泛洪的同時還保證了報文的可靠傳輸。
[0082]以上舉較佳實施例,對本發明的目的、技術方案和優點進行了進一步詳細說明,所應理解的是,以上所述僅為本發明的較佳實施例而已,並不用以限制本發明,凡在本發明的精神和原則之內,所作的任何修改、等同替換和改進等,均應包含在本發明的保護範圍之內。
【權利要求】
1.一種邊緣設備報文轉發時的MAC學習方法,該方法用於乙太網虛擬化EVI網絡中的伺服器端邊緣設備ED,所述伺服器端ED和EVI網絡中的客戶端ED之間建立了主用隧道,其特徵在於,在所述伺服器端ED和客戶端ED之間還建立備用隧道,用於承載未知單播報文;該方法還包括: 所述伺服器端ED從備用隧道接收來自源客戶端ED發送的未知單播報文,所述未知單播報文攜帶有源客戶端ED的ED標識;所述伺服器端ED對該報文的源MAC地址進行學習,將學習到的MAC地址、該伺服器端ED和源客戶端ED之間的主用隧道所對應的出接口一併配置給自身的MAC表; 所述伺服器端ED根據所述未知單播報文的目的MAC地址查詢MAC表,命中本地站點,則進行本地轉發;命中遠端站點,則通過自身和該目的客戶端ED之間的備用隧道轉發出去;未命中,則在EVI實例內進行廣播。
2.根據權利要求1所述的方法,其特徵在於,所述在EVI實例內進行廣播的方法包括: 所述伺服器端ED將所述未知單播報文在本地虛擬區域網VLAN內廣播,並分別從自身與除所述源客戶端ED外的其它所有客戶端ED建立的備用隧道轉發出去。
3.根據權利要求1所述的方法,其特徵在於,該方法進一步包括: 所述伺服器端ED從主用隧道接收到來自源客戶端ED發送的已知單播報文,對該報文的源MAC地址進行學習,將學習到的MAC地址、該伺服器端ED和源客戶端ED之間的主用隧道所對應的出接口一併配置給自身的MAC表; 所述伺服器端ED根據所述已知單播報文的目的MAC地址查詢MAC表,命中本地站點,則進行本地轉發;未命中,則在本地虛擬區域網VLAN內廣播。
4.根據權利要求1所述的方法,其特徵在於,該方法進一步包括: 所述伺服器端ED接收到本地站點的單播報文,對該報文的源MAC地址進行學習,將學習到的MAC地址和埠一併配置給自身的MAC表;根據所述本地站點的單播報文的目的MAC地址查詢MAC表,未命中則在本地VLAN內廣播,並分別從自身與其它所有客戶端ED建立的主用隧道轉發出去,或者將伺服器端ED的ED標識攜帶於該單播報文再分別從自身與其它所有客戶端ED建立的備用隧道轉發出去。
5.根據權利要求1所述的方法,其特徵在於,該方法進一步包括: 所述伺服器端ED接收到本地站點的廣播報文,對該報文的源MAC地址進行學習,將學習到的MAC地址和埠一併配置給自身的MAC表;在本地VLAN內廣播,並分別從自身與其它所有客戶端ED建立的備用隧道或主用隧道轉發出去。
6.一種邊緣設備報文轉發時的MAC學習方法,該方法用於乙太網虛擬化EVI網絡中的客戶端邊緣設備ED,所述客戶端ED和伺服器端ED之間建立了主用隧道,其特徵在於,在所述客戶端ED與所述伺服器端之間還建立備用隧道,用於承載未知單播報文;該方法還包括: 所述客戶端ED作為源客戶端ED發送未知單播報文時,將自身的ED標識添加到該未知單播報文中,並通過自身與伺服器端ED之間建立的備用隧道發送給伺服器端ED ; 所述客戶端ED作為目的客戶端ED從備用隧道接收到未知單播報文時,根據該未知單播報文攜帶的ED標識獲知源客戶端ED,並對該報文的源MAC地址進行學習,將學習到的MAC地址、目的客戶端ED自身和源客戶端ED之間的主用隧道所對應的出接口一併配置給MAC表;再根據所述未知單播報文的目的MAC地址查詢自身的MAC表,如果命中本地站點,則進行本地轉發;如果未命中,則在本虛擬區域網VLAN內廣播。
7.根據權利要求6所述的方法,其特徵在於,該方法進一步包括: 所述客戶端ED作為源客戶端ED接收到本地站點的單播報文時,對該報文進行源MAC地址學習,將學習到的MAC地址和接收該報文的埠一併保存在自身的MAC表中; 根據該報文的目的MAC地址查詢自身的MAC表,如果命中本地站點,則進行本地轉發;如果命中伺服器端ED或目的客戶端ED站點,則通過自身與伺服器端ED或目的客戶端ED之間的主用隧道轉發出去;如果未命中,則將該單播報文作為未知單播報文處理。
8.根據權利要求6所述的方法,其特徵在於,該方法進一步包括: 所述客戶端ED作為目的客戶端ED從主用隧道接收到來自源客戶端ED發送的已知單播報文,對該報文的源MAC地址進行學習,將學習到的MAC地址、目的客戶端ED自身和源客戶端ED之間的主用隧道所對應的出接口一併配置給MAC表; 所述目的客戶端ED根據所述已知單播報文的目的MAC地址查詢MAC表,如果命中本地站點,則進行本地轉發;如果未命中,則在本VLAN內進行廣播。
9.一種邊緣設備,該設備為乙太網虛擬化EVI網絡中的伺服器端邊緣設備ED,包括主控單元、轉發單元和接口單元,所述伺服器端ED和EVI網絡中的客戶端ED之間均建立了主用隧道,其特徵在於, 所述轉發單元用於,在接口單元從備用隧道接收到來自源客戶端ED的未知單播報文時,所述未知單播報文攜帶有源客戶端ED的ED標識,對該報文的源MAC地址進行學習,並將學習到的MAC地址、該伺服器端ED和源客戶端ED之間的主用隧道所對應的出接口一併配置給MAC表;還用於,根據所述未知單播報文的目的MAC地址查詢MAC表,命中本地站點,則通過接口單元進行本地轉發;命中遠端站點,則通過接口單元並利用與目的客戶端ED之間的備用隧道轉發出去;未命中,則通過接口單元在EVI實例內進行廣播。
10.根據權利要求9所述的設備,其特徵在於,所述通過接口單元在EVI實例內進行廣播為:轉發單元通過接口單元將所述未知單播報文在本VLAN內廣播,通過接口單元並利用與除源客戶端ED外的其它所有客戶端ED建立的備用隧道轉發出去。
11. 根據權利要求9所述的設備,其特徵在於, 所述轉發單元進一步用於,在接口單元從主用隧道接收到來自源客戶端ED發送的已知單播報文時,對該報文的源MAC地址進行學習,將學習到的MAC地址、伺服器端ED自身和源客戶端ED之間的主用隧道所對應的出接口一併配置給自身的MAC表;還用於,根據所述已知單播報文的目的MAC地址查詢MAC表,命中本地站點,則進行本地轉發;未命中,則在本VLAN內廣播。
12.根據權利要求9所述的設備,其特徵在於, 所述轉發單元還用於,通過所述接口單元接收到自身本地站點的單播報文時,對該單播報文的源MAC地址進行學習,將學習到的MAC地址和埠一併配置給自身的MAC表;根據所述本地站點的單播報文的目的MAC地址查詢MAC表,未命中則在本地VLAN內廣播,並分別從自身與其它所有客戶端ED建立的主用隧道轉發出去,或者將伺服器端ED的ED標識攜帶於該單播報文再分別從自身與其它所有客戶端ED建立的備用隧道轉發出去。
13.根據權利要求9所述的方法,其特徵在於,所述轉發單元還用於,在所述接口單元接收到自身本地站點的廣播報文時,對該報文的源MAC地址進行學習,將學習到的MAC地址和埠一併配置給自身的MAC表;在本地VLAN內廣播,並分別從自身與其它所有客戶端ED建立的備用隧道或主用隧道轉發出去。
14.一種邊緣設備,該設備為乙太網虛擬化EVI網絡中的客戶端邊緣設備ED,包括主控單元、轉發單元和接口單元,所述客戶端ED和EVI網絡中的伺服器端ED之間建立了主用隧道,其特徵在於, 所述主控單元用於,在作為源客戶端ED發送未知單播報文時,將自身的ED標識添加到該未知單播報文中; 所述轉發單元用於,在作為源客戶端ED時,通過接口單元從與伺服器端ED之間建立的備用隧道發送給伺服器端ED ;在作為目的客戶端ED時,通過接口單元從備用隧道接收到伺服器端ED轉發的未知單播報文,根據該未知單播報文攜帶的ED標識獲知源客戶端ED,對該報文的源MAC地址進行學習,將學習到的MAC地址、目的客戶端ED自身和源客戶端ED之間的主用隧道所對應的出接口一併配置給MAC表;還用於根據所述未知單播報文的目的MAC地址查詢MAC表,如果命中本地,則通過接口單元進行本地轉發;如果未命中,則通過接口單元在本VLAN內進行廣播。
15.根據權利要求14所述的設備,其特徵在於, 所述轉發單元進一步用於,在接口單元接收到本地站點的單播報文時,對該報文進行源MAC地址學習,將學習到的MAC地址和接收該報文的埠一併保存在MAC表中。
16.根據權利要求14所述的設備,其特徵在於, 所述轉發單元進一步用於,在接口單元接收到本地站點的單播報文時,根據該報文的目的MAC地址查詢自身的MAC表,命中本地站點,則通過接口單元進行本地轉發;命中遠端的伺服器端ED或目的客戶端ED,則通過接口單元並利用自身與伺服器端ED或目的客戶端ED之間的主用隧道轉發;如果未命中,則將該單播報文作為未知單播報文處理。
17.根據權利要求14所述的設備,其特徵在於, 所述轉發單元進一步用於,在客戶端ED作為目的客戶端ED從主用隧道接收到來自源客戶端ED發送的已知單播報文,對該報文的源MAC地址進行學習,將學習到的MAC地址、該目的客戶端ED和源客戶端ED之間的主用隧道所對應的出接口一併配置給自身的MAC表;還用於,根據所述已知單播報文的目的MAC地址查詢MAC表,如果命中本地站點,則進行本地轉發;未命中,則在本VLAN內廣播。
【文檔編號】H04L12/741GK103685007SQ201210316996
【公開日】2014年3月26日 申請日期:2012年8月31日 優先權日:2012年8月31日
【發明者】宋小恆, 鄭國良 申請人:杭州華三通信技術有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀