媒體訪問控制mac地址獲取方法及裝置的製作方法
2023-05-06 01:22:26 2
專利名稱:媒體訪問控制mac地址獲取方法及裝置的製作方法
技術領域:
本發明涉及通信領域,具體而言,涉及一種媒體訪問控制MAC地址獲取方法及裝置。
背景技術:
以網狀結構(Fabric)拓撲組成的乙太網光纖通信(Fibre Channel OverEthernet,簡稱FCoE)網絡中,乙太網節點(ENode)可以通過名稱伺服器獲取其他ENode 的光纖通道標識(Fibre Channel ID,簡稱FCID)等信息,但FCoE幀的傳輸同時還需要MAC地址。目前名稱伺服器並不提供FCID對應的MAC地址信息,ENode只知道自己所登錄的FCoE 交換機(Fibre Channel Forwarder,簡稱 FCF)設備的媒體接入控制(Media AccessControl,簡稱為MAC),所以兩ENode之間的FCoE幀只能通過FCF設備進行路由轉發,並不能通過鏈路層交換直接進行通訊。如果兩個通過Fabric相連的ENode可以相互獲得對方的MAC地址,兩者即可以直接通過鏈路交換交互數據,從而獲得更高的傳輸效率。另外,在無損乙太網絡中,各種具有交換功能的設備,一般通過維護MAC-埠(MAC-Port)表來實現快速交換。此MAC表通過收到的乙太網報文頭中的源MAC來學習,並且定時老化。FCoE網絡中建立的Fabric登錄(Fabric Login,簡稱FLOGI)虛連結,會定時進行鏈路保活,相互發送的保活幀可以對網絡中保活交換設備的MAC表進行更新。但保活幀的發送間隔是比較長的,比如8秒甚至是90秒,此過程中如果發生MAC條目老化或者鏈路切換等情況,無法快速更新MAC表。針對相關技術中的無法直接通過鏈路層進行通信的問題,目前尚未提出有效的解決方案。
發明內容
本發明提供了一種媒體訪問控制MAC地址獲取方法及裝置,以至少解決上述問題。根據本發明的一個方面,提供了一種媒體訪問控制MAC地址獲取方法,包括接收MAC地址請求報文,其中,所述MAC地址請求報文中攜帶有光纖通道標識FCID ;判斷所述FCID與接收到所述MAC地址請求報文的接收方的FCID是否匹配;如果匹配,則所述接收方發送應答報文,其中,所述應答報文攜帶有所述接收方的MAC地址。優選地,接收MAC地址請求報文包括接收乙太網節點ENode或乙太網光纖通信FCoE交換機FCF發送的MAC地址請求報文。根據本發明的另一方面,提供了一種媒體訪問控制MAC地址獲取方法,包括發送MAC地址請求報文,其中,所述MAC地址請求報文中攜帶有光纖通道標識FCID ;接收所述MAC地址請求報文的應答報文,其中,所述應答報文是與所述FCID相匹配的應答方發送的應答報文,所述應答報文中攜帶有所述應答方的MAC地址。優選地,通過廣播、組播、或單播的方式發送MAC地址請求報文。
優選地,通過廣播、組播、或單播的方式發送MAC地址請求報文包括在未知與所述FCID相匹配的應答方的情況下,發送目的MAC為廣播MAC的MAC地址請求報文,以獲取所述MAC地址;在已知與所述FCID相匹配的應答方的情況下,發送目的MAC為單播MAC的MAC地址請求報文,以確定所述目的MAC是否在乙太網光纖通信FCoE網絡中。優選地,在接收所述MAC地址請求報文的應答報文之後,所述方法還包括根據所述應答報文更新MAC信息表,其中,所述MAC信息表包括MAC埠表。根據本發明的另一方面,提供了一種媒體訪問控制MAC地址獲取裝置,包括:ENode接收模塊,用於接收MAC地址請求報文,其中,所述MAC地址請求報文中攜帶有光纖通道標識FCID ;ENode判斷模塊,用於判斷所述FCID與接收到所述MAC地址請求報文的接收方的FCID是否匹配;ENode發送模塊,用於在判定匹配的情況下發送應答報文,其中,所述應答報文攜帶有所述接收方的MAC地址。優選地,所述ENode接收模塊用於接收乙太網節點ENode或乙太網光纖通信FCoE 交換機FCF發送的MAC地址請求報文。根據本發明的另一方面,提供了一種媒體訪問控制MAC地址獲取裝置,其特徵在於,包括發送模塊,用於發送MAC地址請求報文,其中,所述MAC地址請求報文中攜帶有光纖通道標識FCID ;接收模塊,用於接收所述MAC地址請求報文的應答報文,其中,所述應答報文是與所述FCID相匹配的應答方發送的應答報文,所述應答報文中攜帶有所述應答方的MAC地址。優選地,所述裝置還包括更新模塊,用於根據所述應答報文更新MAC信息表,其中,所述MAC信息表包括MAC埠表。通過本發明,首先接收MAC地址請求報文,其中,MAC地址請求報文中攜帶有光纖通道標識FCID ;然後判斷FCID與接收到MAC地址請求報文的接收方的FCID是否匹配;如果匹配,則接收方發送應答報文,其中,該應答報文攜帶有所述接收方的MAC地址,相關技術中無法直接通過鏈路層進行通信的問題,具有直接獲取對端FCID對應的MAC地址進而通過鏈路層快速交換進行通訊的效果。
此處所說明的附圖用來提供對本發明的進一步理解,構成本申請的一部分,本發明的示意性實施例及其說明用於解釋本發明,並不構成對本發明的不當限定。在附圖中圖1是根據本發明實施例的媒體訪問控制MAC地址獲取方法的流程圖一;圖2是根據本發明實施例的媒體訪問控制MAC地址獲取方法的流程圖二 ;圖1a是根據本發明實施例的媒體訪問控制MAC地址獲取裝置的結構框圖一;圖2a是根據本發明實施例的媒體訪問控制MAC地址獲取裝置的結構框圖二 ;圖3是根據本發明實施例的請求報文的處理流程圖;圖4是根據本發明實施例的應答報文的處理流程圖;圖5是根據本發明優選實施例的獲取MAC地址的方法的流程圖一;圖6是根據本發明優選實施例的獲取MAC地址的方法的流程圖二。
具體實施方式
下文中將參考附圖並結合實施例來詳細說明本發明。需要說明的是,在不衝突的情況下,本申請中的實施例及實施例中的特徵可以相互組合。實施例一本發明實施例提供了一種媒體訪問控制MAC地址獲取方法,圖1是根據本發明實施例的媒體訪問控制MAC地址獲取方法的流程圖一,如圖1所示,該流程包括以下步驟步驟S102,接收MAC地址請求報文,其中,該MAC地址請求報文中攜帶有光纖通道標識FCID ;步驟S104,判斷FCID與接收到MAC地址請求報文的接收方的FCID是否匹配;步驟S106,如果匹配,則接收方發送應答報文,其中,應答報文攜帶有接收方的MAC地址。 通過上述步驟,改變了相關技術中通過FCF轉發進行通信的做法。通過直接獲取對端的MAC地址,使得進行通信的兩端設備直接獲取對端FCID所對應的MAC地址,通過鏈路層快速交換來通訊,進而提高了通信的速率。接收MAC地址請求報文的方式有很多種,優選地,可以是接收乙太網節點ENode或FCF發送的MAC地址請求報文。如果接收的是ENode的MAC地址請求報文,則可以使得兩端的ENode通過MAC地址進行通信;如果接收的是FCF發送的MAC地址請求報文,則在鏈路切換等需要立即更新網絡中設備MAC-PORT表的情況下,可以主動進行MAC地址交互,從而快速更新MAC-PORT表。實施例二本發明實施例提供了另外一種媒體訪問控制MAC地址獲取方法,圖2是根據本發明實施例的媒體訪問控制MAC地址獲取方法的流程圖二,如圖2所示,該流程包括以下步驟步驟S202,發送MAC地址請求報文,其中,MAC地址請求報文中攜帶有光纖通道標識 FCID ;步驟S204,接收MAC地址請求報文的應答報文,其中,應答報文是與FCID相匹配的應答方發送的應答報文,應答報文中攜帶有應答方的MAC地址。優選地,可以通過廣播、組播、或單播的方式發送MAC地址請求報文。優選地,通過廣播、組播、或單播的方式發送MAC地址請求報文包括在未知與上述FCID相匹配的應答方的情況下,發送目的MAC為廣播MAC的MAC地址請求報文,以獲取MAC地址;在已知與上述FCID相匹配的應答方的情況下,發送目的MAC為單播MAC的MAC地址請求報文,以確定所述目的MAC是否在FCoE網絡中。優選地,在接收MAC地址請求報文的應答報文之後,該方法還包括根據該應答報文更新MAC信息表,其中,MAC信息表包括MAC埠表。實施例三本發明實施例提供了一種媒體訪問控制MAC地址獲取裝置,圖1a是根據本發明實施例的媒體訪問控制MAC地址獲取裝置的結構框圖一,如圖1a所示,該裝置包括ENode接收模塊10,用於接收MAC地址請求報文,其中,MAC地址請求報文中攜帶有光纖通道標識FCID ;ENode判斷模塊20,用於判斷所接收到的FCID與接收到MAC地址請求報文的接收方的FCID是否匹配;ENode發送模塊30,用於在判定匹配的情況下發送應答報文,其中,該應答報文攜帶有接收方的MAC地址。優選地,ENode接收模塊10用於接收乙太網節點ENode或乙太網光纖通信FCoE交換機FCF發送的MAC地址請求報文。實施例四本發明實施例提供了一種媒體訪問控制MAC地址獲取裝置,圖2a是根據本發明實施例的媒體訪問控制MAC地址獲取裝置的結構框圖二,如圖2a所示,該裝置包括發送模塊40,用於發送MAC地址請求報文,其中,MAC地址請求報文中攜帶有光纖 通道標識FCID ;接收模塊50,用於接收MAC地址請求報文的應答報文,其中,應答報文是與所接收到的FCID相匹配的應答方發送的應答報文,該應答報文中攜帶有應答方的MAC地址。應答方是接收到MAC地址請求報文的一方,發送方是發送MAC地址請求報文的一方。優選地,該裝置還包括更新模塊60,用於根據應答報文更新MAC信息表,其中,MAC信息表包括MAC埠表。實施例五本發明實施例提供了一種MAC地址獲取方法。FCoE設備可以向網絡中請求某指定FCID所對應的MAC地址,擁有指定FCID的設備在收到請求後向請求者發送攜帶本FCID對應MAC地址信息的應答。圖3是根據本發明實施例的請求報文的處理流程圖,如圖3所示,該流程包括以下步驟步驟S302,確定廣播還是單播。乙太網首部中,目的MAC為廣播MAC或者單播MAC :如果尚未知所請求的FCID對應的MAC,則使用廣播MAC作為目的MAC ;如果已知所請求的FCID對應MAC,而需要確定此目的MAC是否仍在網絡中存在,則可以使用此單播作為目的MAC,以減少乙太網絡的負擔。步驟S304,在MAC地址請求報文中攜帶FCID。攜帶所請求的FCID及其對應MAC地址信息。如果尚未知對應MAC,則可攜帶全O的MAC地址。步驟S306,在MAC地址請求報文中攜帶發送方的FCID。攜帶本端即發送方的FCID及其MAC地址信息。步驟S308,更新 MAC-PORT 表。發送方收到應答報文後,解析並記錄所請求FCID對應的MAC信息,並開始計算存活時間。如果記錄的MAC信息存活時間達到了指定的存活周期,則可對此信息進行老化,重新發送請求更新此信息。當擁有請求報文中攜帶的FCID的設備,收到請求報文後,應向發送方發送應答報文。如果本設備需要發送方的MAC同時請求報文中攜帶了發送方的FCID和MAC地址,本設備可以直接記錄發送方的MAC而無需再次發送請求。圖4是根據本發明實施例的應答報文的處理流程圖,如圖4所示,該流程包括以下步驟
步驟S402,在應答報文中攜帶MAC地址。在MAC地址請求報文的應答報文中,乙太網首部目的MAC設置為發送方的單播MAC。該應答報文應攜帶所請求的FCID與MAC即應答方的FCID和MAC,還可攜帶發送方的FCID與MAC,當然在應答報文中也可以不攜帶後者。步驟S404,發送應答報文。實施例六圖5是根據本發明優選實施例的獲取MAC地址的方法的流程圖一。本實施例中兩個ENode之間需要獲取MAC地址,實現FCoE業務幀的直接交互,流程部分的處理步驟如圖5所示,包括步驟S502,發送廣播MAC地址請求報文。 當ENodeA通過名稱服務已獲取了 ENode B的FCID,並需要獲取FCID對應的MAC地址。此時ENodeA向網絡中發送廣播MAC請求,即通過廣播的方式發送MAC地址請求報文。該請求報文的格式如下表所示
廣播B-MACMAC-AETH- TYPEFCID-BAtlZeroMACFCID-AMAC-A上表中,廣播目的MAC表示以廣播的方式發送MAC地址請求報文,ETH-TYPE表示乙太網的類型,FCID-B表示ENode B的FCID,All Zero MAC表示ENode B的MAC地址未知,設置為0,FCID-A表示ENode A的FCID,前面一個MAC-A是乙太網首部的源MAC,後面一個MAC-A是報文淨荷所攜帶的發送方信息,即Enode A的MAC,用於應答方直接記錄發送方的FCID和MAC,而無需再發請求。為了模塊分層要求,本發明實施例也可只關注淨荷中信息,乙太網首部只用於底層收包校驗與交換。步驟S504,對MAC地址請求報文進行應答。當ENode B收到請求報文後,判斷解析出的FCID-B是否與本設備的FCID匹配,如果匹配,在ENode B支持MAC應答時,將ENodeA的FCID和MAC地址信息保存下來,並對請求的FCID進行應答。應答報文格式如下表所示
ETH- TYPEMAC-AMAC-BFCID-AMAC-AFCID-BMAC-B上表中,廣播目的MAC表示以廣播的方式發送MAC地址請求報文,MAC-A表示ENodeA的MAC地址,ETH-TYPE表示乙太網的類型,FCID-B表示ENode B的FCID,All Zero MAC表示ENode B的MAC地址未知,設置為0,FCID-A表示ENodeA的FCID。步驟S506,進行業務交互。ENode A收到應答報文後,解析出ENode B的MAC地址信息,則ENode A和ENodeB可以直接通過MAC地址進行業務交互,進而提高了數據通信的效率。實施例七發送請求的設備不僅局限於ENode,由於ENode與其登錄的FCF之間不一定是直連的,雖然FCF已經得知登錄的ENode的FCID所對應MAC,但鏈路交換底面的MAC-Port表也需要定時更新。FCF在一些諸如鏈路切換、主備埠切換、主備設備切換等情況下,也可能需要更新一下本設備或者下遊交換設備的MAC-Port表,也可以通過主動發送MAC請求的方法實現。下面通過案例說明本發明實施例在FCF上的應用。圖6是根據本發明優選實施例的獲取MAC地址的方法的流程圖二,圖6中的FCF-A和FCF-B虛擬為邏輯設備FCF-V實現相互備份,ENode向FCF-V登錄後,如果登錄的實體FCF出現切換,則切換後的新FCF立即向ENode發送MAC地址請求報文來獲取ENode MAC在請求的FCF上的接入物理埠,更新MAC對應的埠表。如圖6所示,該流程包括以下步驟步驟S602,ENode 登錄 FCF。ENode向FCF-V登錄後,實際登錄的FCF-A為ENode分配FCID和MAC地址,ENode的所有業務數據實際通過FCF-A進行轉發。為達到FCF備份的目的,FCF-A將ENode信息通知給FCF-B。步驟S604,FCF-A的網絡中斷。FCF-A與無損乙太網交換機(Data Center Bridge Switch,簡稱DCB SW)之間的網絡斷開,需要FCF-B接管ENode。FCF-B已經擁有了 ENode的FCID和MAC信息,但需要得 知ENode是通過FCF-B的哪個物理埠接入的。步驟S606,FCF-B向ENode發送MAC地址請求報文。FCF-B向ENode發送MAC地址請求報文。由於FCF-B已經擁有ENode的MAC地址信息,發請求的主要目的是更新MAC表,此請求可以廣播也可以是單播。步驟S608,ENode 應答。當ENode收到MAC地址請求報文後,解析出請求報文中攜帶的接收方的FCID是否與本設備FCID相匹配,在匹配的情況下進行應答。步驟S610,更新 MAC-Port 表。FCF-B收到應答後更新MAC-Port表,保存ENodeB的MAC所對應的埠號。從以上的描述中,可以看出,本發明實現了如下技術效果可以使兩個ENode設備直接獲取對方FCID所對應的MAC地址,通過鏈路層快速交換來通訊,不必通過FCF轉發;在鏈路切換等需要立即更新網絡中設備MAC-Port表的情況下,可以主動進行MAC地址交互,從而快速更新MAC-Port表使得兩端設備可以直接獲取對端的MAC地址。顯然,本領域的技術人員應該明白,上述的本發明的各模塊或各步驟可以用通用的計算裝置來實現,它們可以集中在單個的計算裝置上,或者分布在多個計算裝置所組成的網絡上,可選地,它們可以用計算裝置可執行的程序代碼來實現,從而,可以將它們存儲在存儲裝置中由計算裝置來執行,並且在某些情況下,可以以不同於此處的順序執行所示出或描述的步驟,或者將它們分別製作成各個集成電路模塊,或者將它們中的多個模塊或步驟製作成單個集成電路模塊來實現。這樣,本發明不限制於任何特定的硬體和軟體結合。以上所述僅為本發明的優選實施例而已,並不用於限制本發明,對於本領域的技術人員來說,本發明可以有各種更改和變化。凡在本發明的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發明的保護範圍之內。
權利要求
1.一種媒體訪問控制MAC地址獲取方法,其特徵在於,包括 接收MAC地址請求報文,其中,所述MAC地址請求報文中攜帶有光纖通道標識FCID ; 判斷所述FCID與接收到所述MAC地址請求報文的接收方的FCID是否匹配; 如果匹配,則所述接收方發送應答報文,其中,所述應答報文攜帶有所述接收方的MAC地址。
2.根據權利要求1所述的方法,其特徵在於,接收MAC地址請求報文包括接收乙太網節點ENode或乙太網光纖通信FCoE交換機FCF發送的MAC地址請求報文。
3.一種媒體訪問控制MAC地址獲取方法,其特徵在於,包括 發送MAC地址請求報文,其中,所述MAC地址請求報文中攜帶有光纖通道標識FCID ; 接收所述MAC地址請求報文的應答報文,其中,所述應答報文是與所述FCID相匹配的應答方發送的應答報文,所述應答報文中攜帶有所述應答方的MAC地址。
4.根據權利要求3所述的方法,其特徵在於,通過廣播、組播、或單播的方式發送MAC地址請求報文。
5.根據權利要求4所述的方法,其特徵在於,通過廣播、組播、或單播的方式發送MAC地址請求報文包括 在未知與所述FCID相匹配的應答方的情況下,發送目的MAC為廣播MAC的MAC地址請求報文,以獲取所述MAC地址; 在已知與所述FCID相匹配的應答方的情況下,發送目的MAC為單播MAC的MAC地址請求報文,以確定所述目的MAC是否在FCoE網絡中。
6.根據權利要求3至5中任一項所述的方法,其特徵在於,在接收所述MAC地址請求報文的應答報文之後,所述方法還包括根據所述應答報文更新MAC信息表,其中,所述MAC信息表包括MAC埠表。
7.一種媒體訪問控制MAC地址獲取裝置,其特徵在於,包括 ENode接收模塊,用於接收MAC地址請求報文,其中,所述MAC地址請求報文中攜帶有光纖通道標識FCID ; ENode判斷模塊,用於判斷所述FCID與接收到所述MAC地址請求報文的接收方的FCID是否匹配; ENode發送模塊,用於在判定匹配的情況下發送應答報文,其中,所述應答報文攜帶有所述接收方的MAC地址。
8.根據權利要求7所述的裝置,其特徵在於,所述ENode接收模塊用於接收乙太網節點ENode或乙太網光纖通信FCoE交換機FCF發送的MAC地址請求報文。
9.一種媒體訪問控制MAC地址獲取裝置,其特徵在於,包括 發送模塊,用於發送MAC地址請求報文,其中,所述MAC地址請求報文中攜帶有光纖通道標識FCID ; 接收模塊,用於接收所述MAC地址請求報文的應答報文,其中,所述應答報文是與所述FCID相匹配的應答方發送的應答報文,所述應答報文中攜帶有所述應答方的MAC地址。
10.根據權利要求9所述的裝置,其特徵在於,所述裝置還包括更新模塊,用於根據所述應答報文更新MAC信息表,其中,所述MAC信息表包括MAC埠表。
全文摘要
本發明提供了一種媒體訪問控制MAC地址獲取方法及裝置,該方法包括接收MAC地址請求報文,其中,所述MAC地址請求報文中攜帶有光纖通道標識FCID;判斷所述FCID與接收到所述MAC地址請求報文的接收方的FCID是否匹配;如果匹配,則所述接收方發送應答報文,其中,所述應答報文攜帶有所述接收方的MAC地址。本發明解決了相關技術中無法直接通過鏈路層進行通信的問題,具有直接獲取對端FCID對應的MAC地址進而通過鏈路層快速交換進行通訊的效果。
文檔編號H04L29/12GK103023785SQ20121056811
公開日2013年4月3日 申請日期2012年12月24日 優先權日2012年12月24日
發明者趙清凌 申請人:中興通訊股份有限公司