一種報文轉發的方法及裝置與流程
2023-05-05 05:41:21 1

本發明涉及通信技術領域,尤其涉及一種報文轉發的方法及裝置。
背景技術:
在TRILL(Transparent Interconnection of Lots of Links,多鏈路透明互聯)網絡中,為增強接入的可靠性,伺服器通過多個RB(Routing Bridge,路由橋)接入網絡,這種接入方式稱為多歸接入方式。但同一時刻只有一臺RB,即指定的AVF(Appointed VLAN Forwarder,指定虛擬區域網轉發器)能為該伺服器轉發數據報文。而指定AVF的過程是由DRB(Designated Routing Bridge,指定路由橋)來完成的,DRB可以為該多歸接入的鏈路上的其中一個RB承擔。當作為AVF的RB故障後,DRB會指定多歸接入鏈路上的其他RB作為新的AVF。
如圖1所示,伺服器Server A同時通過RB1、RB2和RB3接入TRILL網絡中,其中RB3為DRB,此外,該TRILL網絡還包括接入其他伺服器的RB(如:接入Server B的RB4)。假設DRB指定RB1作為AVF為Server A轉發數據報文,當RB1故障後,DRB會重新指定RB2作為新的AVF。然而在AVF切換的過程中通常會有兩種情況發生,第一種情況,首先RB1對外通告AVF失效,於是其他RB加速老化Server A的MAC地址表,之後其他RB,如RB4,向Server A發送的數據報文都走廣播發送,直到Server A回復(或主動發送)的數據報文到達RB4,RB4才會新學習到Server A的MAC地址。若Server A不發送數據報文,則RB4所有轉發的數據報文都會廣播發送,這會造成網絡擁堵,浪費資源。第二種情況,若RB1無法發送通告(如RB1斷電重啟了),RB4轉發給ServerA的數據報文將會被丟包,一直到RB4新學習到Server A的MAC地址為止。
由此可見,現有的AVF切換過程存在上述缺陷,不能滿足業務的發展需求。
技術實現要素:
本發明實施例提供一種報文轉發的方法及裝置,能夠解決多歸接入的鏈路切換AVF後,其他RB不能及時學習到切換後的AVF信息,從而廣播報文造成網絡擁堵和資源浪費的問題。
為達到上述目的,本發明實施例採用如下技術方案:
第一方面,本發明提供一種報文轉發的方法,所述方法應用於多鏈路透明互聯TRILL網絡中,所述TRILL網絡中包括指定路由橋DRB和路由橋RB,所述方法包括:
第一RB接收所述DRB發送的第一報文,所述第一報文用於指定所述第一RB作為接入的第一伺服器對應的切換後的指定虛擬區域網轉發器AVF,所述第一報文包括虛擬區域網VLAN標識、切換後的AVF的標識以及切換後的指定埠的標識,所述指定埠的標識為所述第一RB用於接入所述第一伺服器的埠的標識;
當所述第一RB的標識和所述切換後的AVF的標識相同時,所述第一RB向第二RB發送第二報文,所述第二RB用於接入第二伺服器,所述第二報文用於所述第二RB學習所述第一伺服器對應的切換後的AVF,所述第二報文包括所述VLAN標識、所述切換後的AVF的標識以及所述切換後的指定埠的標識。
第二方面,本發明提供另一種報文轉發的方法,所述方法應用於多鏈路透明互聯TRILL網絡中,所述TRILL網絡中包括指定路由橋DRB和路由橋RB,所述方法包括:
第二RB接收第一RB發送的報文,所述第一RB用於接入第一伺服器,所述第二RB用於接入第二伺服器,所述報文用於所述第二RB學習所述第一伺服器對應的切換後的AVF,所述報文包括所述第一伺服器對應的VLAN標識、切換後的AVF的標識以及切換後的指定埠的標識;
所述第二RB根據所述報文更新所述第一伺服器的MAC地址表以使得更新後的所述MAC地址表中所述第一伺服器對應的出口RB的標識為所述切換後的AVF的標識,且所述第一伺服器對應的出口埠的標識為所述切換後的指定埠的標識。
第三方面,本發明提供一種報文轉發的裝置,所述裝置應用於多鏈路透明互聯TRILL網絡中,所述TRILL網絡中包括指定路由橋DRB和路由橋RB,所述裝置作為第一RB包括:
接收單元,用於接收所述DRB發送的第一報文,所述第一報文用於指定所述第一RB作為接入的第一伺服器對應的切換後的指定虛擬區域網轉發器AVF,所述第一報文包括虛擬區域網VLAN標識、切換後的AVF的標識以及切換後的指定埠的標識,所述指定埠的標識為所述第一RB用於接入所述第一伺服器的埠的標識;
發送單元,用於當所述第一RB的標識和所述接收單元接收到的所述第一報文中的所述切換後的AVF的標識相同時,向第二RB發送第二報文,所述第二RB用於接入第二伺服器,所述第二報文用於所述第二RB學習所述第一伺服器對應的切換後的AVF,所述第二報文包括所述VLAN標識、所述切換後的AVF的標識以及所述切換後的指定埠的標識。
第四方面,本發明提供另一種報文轉發的裝置,所述裝置應用於多鏈路透明互聯TRILL網絡中,所述TRILL網絡中包括指定路由橋DRB和路由橋RB,所述裝置作為第二RB包括:
接收單元,用於接收第一RB發送的報文,所述第一RB用於接入第一伺服器,所述第二RB用於接入第二伺服器,所述報文用於所述第二RB學習所述第一伺服器對應的切換後的AVF,所述報文包括所述第一伺服器對應的VLAN標識、切換後的AVF的標識以及切換後的指定埠的標識;
處理單元,用於根據接收單元接收到的所述報文更新所述第一伺服器的MAC地址表以使得更新後的所述MAC地址表中所述第一伺服器對應的出口RB的標識為所述切換後的AVF的標識,且所述第一伺服器對應的出口埠的標識為所述切換後的指定埠的標識。
本發明實施例提供的一種報文轉發的方法及裝置,通過作為切換後的AVF的第一RB向接入第二伺服器的第二RB發送第二報文,第二報文用於所述第二RB學習所述第一伺服器對應的切換後的AVF,第二報文包括切換後的AVF的標識和切換後指定的埠的標識。相比較於現有技術中的僅由切換前AVF公告AVF失效,接入第二伺服器的第二RB無法及時學習到新AVF的信息,在第二RB學習到新AVF的信息之前只能廣播發送報文相比,本發明實施例中接入第二伺服器的第二RB可以根據第二報文及時學習到切換後AVF的標識和指定埠的標識,從而更新第一伺服器的MAC地址表,第二RB通過查找更新後第一伺服器的MAC地址表即可向第一伺服器單播轉發報文。因此,本發明可以減少TRILL網絡中因AVF切換後,接入其他伺服器的RB沒有及時學習到新AVF的信息而廣播報文的情況,進而避免了網絡擁堵和資源浪費。
附圖說明
為了更清楚地說明本發明實施例中的技術方案,下面將對實施例中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發明的一些實施例,對於本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其它的附圖。
圖1為本發明實施例提供的一種TRILL網絡架構圖;
圖2為本發明實施例提供的一種報文轉發的方法流程圖;
圖3為本發明實施例提供的另一種報文轉發的方法流程圖;
圖4為本發明實施例提供的一種報文轉發的裝置的結構示意圖;
圖5為本發明實施例提供的另一種報文轉發的裝置的結構示意圖。
具體實施方式
下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發明一部分實施例,而不是全部的實施例。基於本發明中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其它實施例,都屬於本發明保護的範圍。
為了更好的理解本發明實施例,結合圖1所示的TRILL網絡的網絡架構,對AVF切換過程進行簡要說明。如圖1所示,伺服器Server A通過RB1、RB2和RB3接入TRILL網絡中,Server B通過RB4接入TRILL網絡中。其中RB3為Server A所在的多歸接入鏈路上的DRB,RB1為該DRB為Server A指定的AVF,即指定RB1為Server A轉發數據報文。當RB1出現故障時,DRB通過重新指定RB2為新的AVF,即指定RB2為Server A轉發數據報文,這個過程就是AVF切換的過程。
需要說明的是,本發明實施例並不限定TRILL網絡中接入伺服器、RB的數量以及伺服器接入RB的具體方式。
為了便於描述,本發明實施例中將不同伺服器對應的RB用「第一」、「第二」進行區分,將不同伺服器用「第一」、「第二」進行區分。例如:在圖1所示的網絡架構中,可以將Server A稱為第一伺服器,Server A通過RB1、RB2和RB3接入TRILL網絡,RB1、RB2和RB3中任一個RB稱為第一RB,將Server B稱為第二伺服器,第二伺服器對應的RB稱為第二RB。
需要說明的是,「第一」、「第二」僅僅用於區別不同的RB或不同的伺服器,並不限定RB之間或伺服器之間的順序。
本發明實施例提供一種報文轉發的方法,可應用於如圖1所示的TRILL網絡中,如圖2所示,所述方法包括:
101、第一RB接收所述DRB發送的第一報文。
其中,第一RB用於接入第一伺服器,第一伺服器採用多歸接入的方式接入TRILL網絡,第一RB可以為多歸接入的鏈路上的任一個RB。
所述第一報文用於指定所述第一RB作為接入的第一伺服器對應的切換後的指定虛擬區域網轉發器AVF,所述第一報文包括虛擬區域網VLAN標識、切換後的AVF的標識以及切換後的指定埠的標識,所述指定埠的標識為所述第一RB用於接入所述第一伺服器的埠的標識。
可選地,在本步驟之前,第一RB可向DRB發送第三報文,所述第三報文用於DRB學習第一RB的VLAN標識,第一RB的標識以及第一RB用於接入第一伺服器的埠的標識,這裡的第三報文可以是TRILL Hello報文。
作為一種具體實施例,第一報文可以是TRILL Hello報文,當DRB需要切換第一伺服器對應的AVF時,會向多歸接入的鏈路上的RB發送新的TRILL Hello報文,該TRILL Hello報文包含新的AVF的信息,具體地,AVF信息包括:VLAN標識、AVF的標識、指定埠的標識。AVF的標識是指在TRILL Hello報文中為第一伺服器分配的AVF的暱稱(Nickname);指定埠的標識是指AVF接入第一伺服器的埠的標識,而AVF接入第一伺服器的埠的標識可以從該AVF發送給DRB的TRILL Hello報文中獲取。
示例性的,結合圖1所示的TRILL網絡,以Server A對應的切換前的AVF為RB1,切換後的AVF為RB2為例,那麼此時TRILL Hello報文中切換後的AVF的標識即為RB2的標識,指定埠的標識是RB2接入Server A的埠的標識。
102、當所述第一RB的標識和所述切換後的AVF的標識相同時,所述第一RB向第二RB發送第二報文。
其中,所述第二RB用於接入第二伺服器。
所述第二報文用於所述第二RB學習所述第一伺服器對應的切換後的AVF,所述第二報文包括所述VLAN標識、所述切換後的AVF的標識以及所述切換後的指定埠的標識。
此外,所述第二報文還包括第一伺服器對應的切換前的AVF的標識以及切換前的指定埠的標識。
實際應用中,第二報文可以是LSPDU(Link State Protocol Data Unit,鏈路狀態協議數據單元)報文,簡稱LSP報文,當第二報文是LSP報文時,LSP報文包含「SubTLV:Interested-VLAN」欄位和「SubTLV:Old-Interested-VLAN」欄位。
具體地,「SubTLV:Interested-VLAN」欄位為RFC標準定義的欄位,欄位中包含的「Nickname」為第一RB的標識,「Interested VLANS」為第一RB作為AVF的VLAN列表。「SubTLV:Old-Interested-VLAN」欄位用於指示切換前的AVF的信息,欄位中包含的「Old-Nickname」為切換前AVF的標識;「Old-Port」為切換前AVF接入多歸接入的鏈路的指定埠的標識;「New-Nickname」為切換後的AVF的標識的標識;「New-Port」為切換後的指定埠的標識;「Interested VLANS」包含第一RB作為AVF的VLAN的列表。
需要說明的是,由於LSP報文中不包含第一伺服器的標識,所以只有通過「Old-Nickname」和「Old-Port」來識別該指定埠接入的伺服器(也可能是一組伺服器)。
作為一種具體實施例,當多歸接入的鏈路上的每個RB都能接收到DRB發送的第一報文後,第一RB判斷第一報文中第一伺服器對應的切換後的AVF的標識是否與為自身的標識相同,如果相同,則表明第一RB為切換後的AVF,則第一RB向第二RB發送第二報文;如果不相同則表明第一RB不為切換後的AVF,第一RB更新本地保存的AVF的信息。
可選的,如果第一RB標識和切換後的AVF的標識不同,且第一RB為切換前的AVF時,則第一RB向第二RB發送通告消息,用於通告第一RB作為AVF的信息失效。
示例性的,結合圖1所示的TRILL網絡,以Server A對應的切換前的AVF為RB1,切換後的AVF為RB2,用於接入Server B的RB為RB4,第一報文為TRILLHello報文,第二報文為LSP報文為例,當RB2接收到DRB發送的TRILL Hello報文時,由於RB2的標識和TRILL Hello報文中切換後的AVF的標識相同,因此RB2向第二RB發送LSP報文。
當RB1接收到DRB發送的TRILL Hello報文時,由於RB1的標識和切換後的AVF的標識不同,於是,RB1保存Server A對應的切換後AVF的信息,可選地,RB1向RB4發送通告消息,用於通告RB1作為AVF的信息失效。
103、第二RB接收第一RB發送的第二報文。
104、所述第二RB根據所述第二報文更新所述第一伺服器的MAC地址表。
其中,更新後的所述MAC地址表中所述第一伺服器對應的出口RB的標識為所述切換後的AVF的標識,且所述第一伺服器對應的出口埠的標識為所述切換後的指定埠的標識。
作為一種具體實施例,第二RB從接收到的第二報文中提取出切換後AVF的信息,切換後的AVF的信息包括切換後的AVF的標識以及切換後的指定埠的標識。然後,第二RB根據切換後的AVF的信息更新本地存儲的第一伺服器的MAC地址表。
具體地,當第二報文為LSP報文時,第二RB接收到第一RB發送的LSP報文。第二RB首先從LSP報文的「SubTLV:Interested-VLAN」欄位中提取切換後AVF的標識和切換後AVF的VLAN列表;再根據切換後AVF的VLAN的列表從「SubTLV:Old-Interested-VLAN」欄位中提取切換後AVF的VLAN的列表對應的切換前AVF的標識、切換前AVF對應的指定埠的標識、切換後AVF的標識以及切換後AVF對應的指定埠的標識。然後,第二RB遍曆本地存儲的MAC地址表,根據切換後AVF的VLAN列表查找MAC地址表中出口RB的標識為切換前的AVF的標識且出口埠的標識為切換前的指定埠的標識的MAC地址表,即為第一伺服器的MAC地址表。第二RB更新第一伺服器的MAC地址表的出口信息,將其出口RB的標識修改為切換後的AVF的標識,出口埠的標識修改為切換後的指定埠的標識。
第二RB在學習了切換後的AVF信息後,當第二伺服器有報文需要發送給第一伺服器時,第二RB可以查找到更新後的第一伺服器的MAC地址表,通過出口RB將數據報文單播轉發給第一伺服器。
示例性的,結合圖1所示的TRILL網絡,以Server A對應的切換前的AVF為RB1,第二RB為RB4,切換前的指定埠為第一埠,切換後的AVF為RB2,切換後的指定埠為第二埠,第二報文為LSP報文為例,當RB4接收到RB2發送的LSP報文時,RB4從LSP報文中「SubTLV:Interested-VLAN」欄位中提取RB2的標識和RB2的VLAN列表;再根據RB2的VLAN的列表從「SubTLV:Old-Interested-VLAN」欄位中提取RB1的標識、第一埠的標識、RB2的標識以及第二埠的標識。然後,RB4根據RB2的VLAN列表查找MAC地址表中出口RB的標識為RB1的標識且出口埠的標識為第一埠的標識的MAC地址表,即為Server A的MAC地址表。RB4更新Server A的MAC地址表的出口信息,將其出口RB的標識修改為RB2的標識,出口埠的標識修改為第二埠的標識。
本發明實施例提供的一種報文轉發的方法及裝置,通過作為切換後的AVF的第一RB向接入第二伺服器的第二RB發送第二報文,第二報文用於所述第二RB學習所述第一伺服器對應的切換後的AVF,第二報文包括切換後的AVF的標識和切換後指定的埠的標識。相比較於現有技術中的僅由切換前AVF公告AVF失效,接入第二伺服器的第二RB無法及時學習到新AVF的信息,在第二RB學習到新AVF的信息之前只能廣播發送報文相比,本發明實施例中接入第二伺服器的第二RB可以根據第二報文及時學習到切換後AVF的標識和指定埠的標識,從而更新第一伺服器的MAC地址表,第二RB通過查找更新後第一伺服器的MAC地址表即可向第一伺服器單播轉發報文。因此,本發明可以減少TRILL網絡中因AVF切換後,接入其他伺服器的RB沒有及時學習到新AVF的信息而廣播報文的情況,進而避免了網絡擁堵和資源浪費。
進一步的,在圖2所示方法的基礎上,為了呈現RB在AVF切換前後的完整的數據報文轉發的過程,本發明實施例還提供了一種報文處理的方法,可運用於圖1所示的TRILL網絡中,其中RB1、RB2和RB3均用於接入Server A,RB4用於接入Server B,所述方法如圖3所示包括:
201、RB1、RB2接收第一TRILL Hello報文。
作為一種具體的實施例,多歸接入的鏈路上的DRB(RB3)向多歸鏈路上的其他RB(如RB1和RB2)發送第一TRILL Hello報文,第一TRILL Hello報文中包括第一AVF信息,假設在第一AVF信息中,AVF的標識為RB1的標識,指定埠為第一埠。而多歸接入的鏈路上的RB1和RB2均能接收到第一TRILL Hello報文。
202、存儲第一TRILL Hello報文中的第一AVF信息。
作為一種具體的實施例,多歸接入的鏈路上的其他RB接收到第一TRILL Hello報文後,其他RB將第一AVF信息中AVF的標識與自身的標識比較。RB2和RB3與AVF的標識均不同,則RB2和RB3分別將第一AVF的信息保存在本地。
203、RB1轉發Server A發送的第一乙太網數據報文。
作為一種具體的實施例,RB1與AVF的標識相同,RB1作為AVF,為Server A轉發數據報文。RB1從第一埠接收到Server A發送的第一乙太網數據報文,其中,第一埠的標識為RB1用於接入Server A的接口的標識。RB1將第一乙太網數據報文封裝為第一TRILL數據報文,第一TRILL數據報文包括:入口RB(RB1)的標識、出口RB(RB4)的標識以及第一埠的標識。第一埠的標識可以封裝在TRILL頭部可選欄位中。
RB4接收到第一TRILL數據報文後,對第一TRILL數據報文進行解封裝,得到內層第一乙太網數據報文。RB4根據第一乙太網數據報文學習Server A的MAC地址表,MAC地址表包括:MAC、VLAN、RB1的標識以及第一埠的標識。
需要說明的是,這裡並不限定步驟202和203的順序關係。
204、RB1和RB2接收第二TRILL Hello報文。
作為一種具體的實施例,第二TRILL Hello報文中包含第二AVF信息,假設在第二AVF信息中,AVF的標識為RB2的標識,指定埠的標識為第二埠的標識。
本步驟具體實現方式可參考步驟201,在此不重複贅述。
205、更新本地存儲的AVF信息。
作為一種具體的實施例,當AVF的標識和自身的標識不同,RB1和RB3則分別更新本地保存的AVF信息。可選地,RB1向RB4發送通告消息,用於告知RB1作為AVF的信息已失效。
206、RB2向RB4發送LSP報文。
作為一種具體的實施例,當AVF的標識和自身的標識相同,RB2則作為切換後的AVF,向RB4發送LSP報文,LSP報文中包括VLAN標識、RB1的標識、第一埠的標識、RB2的標識以及第二埠的標識。
需要說明的是,這裡並不限定步驟205和206的順序關係。
207、RB4接收LSP報文,更新Server A的MAC地址表。
作為一種具體的實施例,RB4根據LSP報文中VLAN的標識、第一埠的標識以及RB1的標識查找本地的MAC地址表,找到本地存儲的Server A的MAC地址表,將該MAC地址表中出口RB的標識修改為RB2的標識,將出口埠的標識修改為第二埠的標識。
更新方法的具體實現可參考步驟104,在此不重複贅述。
208、RB4轉發Sever B發送的第二乙太網數據報文。
作為一種具體的實施例,當RB4從第三埠接收到Server B發送的第二乙太網數據報文時,將第二乙太網數據報文封裝成第二TRILL數據報文,第二TRILL數據報文包括RB4(入口RB)的標識、RB2(出口RB)的標識以及第三埠的標識。RB4根據出口RB的標識查找MAC地址表,根據MAC地址錶轉發第二TRILL數據報文。
本發明實施例還提供一種報文轉發的裝置40,如圖4所示,所述裝置應用於多鏈路透明互聯TRILL網絡中,所述TRILL網絡中包括指定路由橋DRB和路由橋RB,所述裝置作為第一RB包括:
接收單元41,用於接收所述DRB發送的第一報文,所述第一報文用於指定所述第一RB作為接入的第一伺服器對應的切換後的指定虛擬區域網轉發器AVF,所述第一報文包括虛擬區域網VLAN標識、切換後的AVF的標識以及切換後的指定埠的標識,所述指定埠的標識為所述第一RB用於接入所述第一伺服器的埠的標識。
發送單元42,用於當所述第一RB的標識和所述接收單元41接收到的所述第一報文中的所述切換後的AVF的標識相同時,向第二RB發送第二報文,所述第二RB用於接入第二伺服器,所述第二報文用於所述第二RB學習所述第一伺服器對應的切換後的AVF,所述第二報文包括所述VLAN標識、所述切換後的AVF的標識以及所述切換後的指定埠的標識。
本發明實施例提供的一種報文轉發的裝置,通過作為切換後的AVF的第一RB向接入第二伺服器的第二RB發送第二報文,第二報文用於所述第二RB學習所述第一伺服器對應的切換後的AVF,第二報文包括切換後的AVF的標識和切換後指定的埠的標識。相比較於現有技術中的僅由切換前AVF公告AVF失效,接入第二伺服器的第二RB無法及時學習到新AVF的信息,在第二RB學習到新AVF的信息之前只能廣播發送報文相比,本發明實施例中接入第二伺服器的第二RB可以根據第二報文及時學習到切換後AVF的標識和指定埠的標識,從而更新第一伺服器的MAC地址表,第二RB通過查找更新後第一伺服器的MAC地址表即可向第一伺服器單播轉發報文。因此,本發明可以減少TRILL網絡中因AVF切換後,接入其他伺服器的RB沒有及時學習到新AVF的信息而廣播報文的情況,進而避免了網絡擁堵和資源浪費。
進一步地,所述發送單元42,還用於向所述DRB發送第三報文,所述第三報文用於所述DRB學習所述第一RB的VLAN標識、所述第一RB的標識以及所述第一RB用於接入所述第一伺服器的埠的標識。
所述發送單元42發送的所述第二報文還包括第一伺服器對應的切換前的AVF的標識以及切換前的指定埠的標識。
所述接收單元41,還用於當所述第一RB的標識和所述切換後的AVF的標識相同時,接收所述第一伺服器發送的乙太網數據報文。
所述發送單元42,還用於將所述接收單元41接收到的所述乙太網數據報文封裝成TRILL數據報文並發送,所述TRILL數據報文包括所述第一伺服器對應的入口RB的標識、出口RB的標識以及所述第一RB用於接入所述第一伺服器的埠的標識。
本發明實施例還提供一種報文轉發的裝置50,如圖5所示,所述裝置應用於多鏈路透明互聯TRILL網絡中,所述TRILL網絡中包括指定路由橋DRB和路由橋RB,所述裝置作為第二RB包括:
接收單元51,用於接收第一RB發送的報文,所述第一RB用於接入第一伺服器,所述第二RB用於接入第二伺服器,所述報文用於所述第二RB學習所述第一伺服器對應的切換後的AVF,所述報文包括所述第一伺服器對應的VLAN標識、切換後的AVF的標識以及切換後的指定埠的標識。
處理單元52,用於根據接收單元51接收到的所述報文更新所述第一伺服器的MAC地址表以使得更新後的所述MAC地址表中所述第一伺服器對應的出口RB的標識為所述切換後的AVF的標識,且所述第一伺服器對應的出口埠的標識為所述切換後的指定埠的標識。
本發明實施例提供的一種報文轉發的裝置,通過作為切換後的AVF的第一RB向接入第二伺服器的第二RB發送第二報文,第二報文用於所述第二RB學習所述第一伺服器對應的切換後的AVF,第二報文包括切換後的AVF的標識和切換後指定的埠的標識。相比較於現有技術中的僅由切換前AVF公告AVF失效,接入第二伺服器的第二RB無法及時學習到新AVF的信息,在第二RB學習到新AVF的信息之前只能廣播發送報文相比,本發明實施例中接入第二伺服器的第二RB可以根據第二報文及時學習到切換後AVF的標識和指定埠的標識,從而更新第一伺服器的MAC地址表,第二RB通過查找更新後第一伺服器的MAC地址表即可向第一伺服器單播轉發報文。因此,本發明可以減少TRILL網絡中因AVF切換後,接入其他伺服器的RB沒有及時學習到新AVF的信息而廣播報文的情況,進而避免了網絡擁堵和資源浪費。
進一步地,所述接收單元51接收到的所述報文還包括所述第一伺服器對應的切換前的AVF的標識以及切換前的指定埠的標識。
所述處理單元52,還用於根據所述接收單元51接收的所述報文中所述VLAN的標識、所述切換前的AVF的標識以及所述切換前的指定埠的標識查找本地存儲的所述第一伺服器的MAC地址表。
所述接收單元51,還用於接收所述第一RB發送的TRILL數據報文,所述TRILL數據報文包括所述TRILL數據報文的入口RB的標識、出口RB的標識以及所述入口RB用於接入所述第一伺服器的埠的標識。
所述處理單元52,還用於根據所述接收單元51接收到的所述TRILL數據報文生成並存儲所述第一伺服器的MAC地址表,在所述MAC地址表中所述第一伺服器對應的出口RB為所述TRILL數據報文的入口RB,且所述第一伺服器對應的出口埠為所述TRILL數據報文的入口RB用於接入所述第一伺服器的埠。
本說明書中的各個實施例均採用遞進的方式描述,各個實施例之間相同相似的部分互相參見即可,每個實施例重點說明的都是與其他實施例的不同之處。尤其,對於設備實施例而言,由於其基本相似於方法實施例,所以描述得比較簡單,相關之處參見方法實施例的部分說明即可。
本領域普通技術人員可以理解實現上述實施例方法中的全部或部分流程,是可以通過電腦程式來指令相關的硬體來完成,所述的程序可存儲於計算機可讀取存儲介質中,該程序在執行時,可包括如上述各方法的實施例的流程。其中,所述的存儲介質可為磁碟、光碟、只讀存儲記憶體(Read-Only Memory,ROM)或隨機存儲記憶體(Random Access Memory,RAM)等。
以上所述,僅為本發明的具體實施方式,但本發明的保護範圍並不局限於此,任何在本發明揭露的技術範圍內的變化或替換,都應涵蓋在本發明的保護範圍之內。因此,本發明的保護範圍應該以權利要求的保護範圍為準。