本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種報(bào)文轉(zhuǎn)發(fā)方法及設(shè)備。
背景技術(shù):服務(wù)器虛擬化技術(shù)可以在一臺(tái)物理的服務(wù)器上虛擬出幾十個(gè)甚至上百個(gè)虛擬機(jī)(VirtualMachine,VM),以提升服務(wù)器的利用率。為了提升服務(wù)器的高可用性(HighAvailability,HA),需要VM能夠在同一接入設(shè)備的不同端口之間以及不同接入設(shè)備之間遷移。不同的標(biāo)準(zhǔn)組織制定了不同標(biāo)準(zhǔn)化協(xié)議,如多鏈路透明互聯(lián)(TransparentInterconnectionofLotsofLinks,Trill)協(xié)議、最短路徑橋(ShortestPathBridging,SPB)協(xié)議等等,用以構(gòu)建大二層網(wǎng)絡(luò)(Largescalelayer-2network),實(shí)現(xiàn)VM遷移。以包含多個(gè)數(shù)據(jù)中心的大二層網(wǎng)絡(luò)(VeryLargeLayer-2Network)為例,大二層組網(wǎng)技術(shù)分為數(shù)據(jù)中心內(nèi)部的大二層網(wǎng)絡(luò)技術(shù)和數(shù)據(jù)中心之間互聯(lián)的大二層網(wǎng)絡(luò)技術(shù)。前者可以實(shí)現(xiàn)單個(gè)數(shù)據(jù)中心內(nèi)單臺(tái)接入設(shè)備不同端口之間的VM遷移以及不同接入設(shè)備之間的VM遷移,后者可以實(shí)現(xiàn)不同數(shù)據(jù)中心的接入設(shè)備之間的VM遷移。目前,數(shù)據(jù)中心內(nèi)的大二層網(wǎng)絡(luò)的接入層設(shè)備能夠提供超過12000個(gè)以上的萬兆口,用于連接12000臺(tái)萬兆物理服務(wù)器。單臺(tái)萬兆物理服務(wù)器又能夠虛擬200個(gè)以上的VM。數(shù)據(jù)中心內(nèi)的大二層網(wǎng)絡(luò)的12000臺(tái)萬兆物理服務(wù)器能夠虛擬2.4兆(M)個(gè)以上的VM,導(dǎo)致單個(gè)數(shù)據(jù)中心內(nèi)大二層網(wǎng)絡(luò)的VM所需的MAC(MediaAccessControl,介質(zhì)訪問控制)地址數(shù)量高達(dá)2.4M個(gè)以上?;诙嘧鈶簦╩ultitenant)模型的數(shù)據(jù)中心內(nèi)的VM數(shù)量更大,需要的MAC地址將更多。相應(yīng)地,在數(shù)據(jù)中心內(nèi)部的大二層網(wǎng)絡(luò)內(nèi),接入設(shè)備需要在二層轉(zhuǎn)發(fā)表中學(xué)習(xí)大量的MAC地址,執(zhí)行轉(zhuǎn)發(fā)。
技術(shù)實(shí)現(xiàn)要素:本發(fā)明的目的在于提供一種報(bào)文轉(zhuǎn)發(fā)方法及設(shè)備。為實(shí)現(xiàn)該目的,本發(fā)明實(shí)施例提供了以下技術(shù)方案:一種報(bào)文轉(zhuǎn)發(fā)方法,所述方法包括:接收以太網(wǎng)報(bào)文;根據(jù)接收到的以太網(wǎng)報(bào)文的源媒體接入控制MAC地址在二層轉(zhuǎn)發(fā)表中執(zhí)行查找,確定查找到的表項(xiàng)中包含映射于所述源MAC地址的MAC地址,則根據(jù)映射于所述源MAC地址的MAC地址替換接收到的以太網(wǎng)報(bào)文中的源MAC地址;根據(jù)接收到的以太網(wǎng)報(bào)文的目的MAC地址在二層轉(zhuǎn)發(fā)表中執(zhí)行查找,確定查找到的表項(xiàng)中未包含映射于所述目的MAC地址的MAC地址,則根據(jù)查找到的表項(xiàng)中的出接口對替換了源MAC地址的以太網(wǎng)報(bào)文進(jìn)行大二層網(wǎng)絡(luò)協(xié)議封裝,并發(fā)送大二層網(wǎng)絡(luò)協(xié)議封裝后的以太網(wǎng)報(bào)文。一種路由交換設(shè)備,包括:接收模塊,用于接收以太網(wǎng)報(bào)文;轉(zhuǎn)發(fā)模塊,用于根據(jù)接收到的以太網(wǎng)報(bào)文的源媒體接入控制MAC地址在二層轉(zhuǎn)發(fā)表中執(zhí)行查找,確定查找到的表項(xiàng)中包含映射于所述源MAC地址的MAC地址,則根據(jù)映射于所述源MAC地址的MAC地址替換接收到的以太網(wǎng)報(bào)文中的源MAC地址;根據(jù)接收到的以太網(wǎng)報(bào)文的目的MAC地址在二層轉(zhuǎn)發(fā)表中執(zhí)行查找,確定查找到的表項(xiàng)中未包含映射于所述目的MAC地址的MAC地址,則根據(jù)查找到的表項(xiàng)中的出接口對替換了源MAC地址的以太網(wǎng)報(bào)文進(jìn)行大二層網(wǎng)絡(luò)協(xié)議封裝;發(fā)送模塊,用于發(fā)送大二層網(wǎng)絡(luò)協(xié)議封裝后的以太網(wǎng)報(bào)文。本發(fā)明的上述實(shí)施例中,大二層網(wǎng)絡(luò)中的接入層設(shè)備在進(jìn)行報(bào)文轉(zhuǎn)發(fā)時(shí),基于MAC地址掩碼的二層轉(zhuǎn)發(fā)表,根據(jù)以太網(wǎng)報(bào)文的目的MAC地址匹配二層轉(zhuǎn)發(fā)表項(xiàng),根據(jù)與目的MAC地址匹配的二層轉(zhuǎn)發(fā)表項(xiàng)中的出接口轉(zhuǎn)發(fā)以太網(wǎng)報(bào)文,從而實(shí)現(xiàn)基于MAC地址掩碼的二層轉(zhuǎn)發(fā)表項(xiàng)進(jìn)行報(bào)文轉(zhuǎn)發(fā)。附圖說明圖1為Trill組網(wǎng)示意圖;圖2為本發(fā)明實(shí)施例中的VM遷移的示意圖;圖3A為本發(fā)明實(shí)施例中數(shù)據(jù)中心內(nèi)相同VLAN內(nèi)報(bào)文轉(zhuǎn)發(fā)的示意圖;圖3B為本發(fā)明實(shí)施例提供的私有ARP報(bào)文的示意圖;圖4為本發(fā)明實(shí)施例中組播報(bào)文轉(zhuǎn)發(fā)的示意圖;圖5為本發(fā)明實(shí)施例中數(shù)據(jù)中心內(nèi)的報(bào)文轉(zhuǎn)發(fā)至外網(wǎng)的示意圖;圖6為本發(fā)明實(shí)施例中數(shù)據(jù)中心內(nèi)不同VLAN報(bào)文轉(zhuǎn)發(fā)的示意圖;圖7為本發(fā)明實(shí)施例中的不同數(shù)據(jù)中心之間的二層轉(zhuǎn)發(fā)的示意圖;圖8為本發(fā)明實(shí)施例提供的路由交換設(shè)備的結(jié)構(gòu)示意圖。具體實(shí)施方式本發(fā)明實(shí)施例不限定數(shù)據(jù)中心內(nèi)和數(shù)據(jù)中心之間使用何種大二層技術(shù)。單個(gè)數(shù)據(jù)中心內(nèi)可使用Trill、SPB等大二層網(wǎng)絡(luò)技術(shù),各數(shù)據(jù)中心互聯(lián)可使用MACoverIP(如OTV(OverlayTransportVirtualization,覆蓋傳輸虛擬化)協(xié)議、EVI(EthernetVirtualizationInterconnection,以太網(wǎng)虛擬互聯(lián))協(xié)議、VPLS(VirtualPrivateLANService,虛擬專用局域網(wǎng)業(yè)務(wù))協(xié)議等大二層網(wǎng)絡(luò)技術(shù)。本發(fā)明實(shí)施例以四個(gè)數(shù)據(jù)中心(DataCentre,DC)互聯(lián)構(gòu)成的大二層網(wǎng)絡(luò)的架構(gòu)為例進(jìn)行描述。該大二層網(wǎng)絡(luò)中還包括與四個(gè)數(shù)據(jù)中心連接的網(wǎng)絡(luò)管理裝置(也即networkmanagementplane,網(wǎng)絡(luò)管理平面)以及服務(wù)器管理裝置(也即VMmanagementplane,VM管理裝置或VM管理平面)。該架構(gòu)中,各數(shù)據(jù)中心內(nèi)的大二層網(wǎng)絡(luò)采用Trill技術(shù),各數(shù)據(jù)中心間的大二層網(wǎng)絡(luò)采用MACoverIP技術(shù)。圖1示出了Trill技術(shù)構(gòu)建的數(shù)據(jù)中心的大二層網(wǎng)絡(luò)的架構(gòu)。其它數(shù)據(jù)中心的大二層網(wǎng)絡(luò)架構(gòu)類似于圖1數(shù)據(jù)中心大二層網(wǎng)絡(luò)架構(gòu)。如圖1所示,數(shù)據(jù)中心1的大二層網(wǎng)絡(luò)包括核心層、接入層。leaf1、leaf2、leaf3、leaf4是位于接入層設(shè)備,core1和core2是核心層設(shè)備。數(shù)據(jù)中心1的接入層的leaf1、leaf2、leaf3、leaf4以及核心層的core1、core2運(yùn)行Trill協(xié)議,這些運(yùn)行Trill協(xié)議的設(shè)備稱為路由橋(RoutingBridge,RBridge),構(gòu)成了Trill網(wǎng)絡(luò)。各路由橋之間通過鏈路狀態(tài)協(xié)議獲取Trill網(wǎng)絡(luò)拓?fù)?。每個(gè)路由橋使用最短路徑樹算法生成從本路由橋到達(dá)Trill網(wǎng)絡(luò)里的其它各個(gè)路由橋的路由轉(zhuǎn)發(fā)表(稱之為Trill路由表)。本發(fā)明實(shí)施例中,“網(wǎng)絡(luò)管理裝置”按照虛擬MAC編碼規(guī)則為各數(shù)據(jù)中心內(nèi)的每個(gè)VM配置虛擬MAC地址。每個(gè)虛擬MAC地址為6字節(jié)的2進(jìn)制數(shù),并包含如下標(biāo)識:唯一性標(biāo)識(1字節(jié)):與現(xiàn)有已分配的OUI(Organizationallyuniqueidentifier,組織唯一標(biāo)識符)不沖突,可以使用OUI尚未被分配的標(biāo)識符,例如:ED,22等。DataCentreID(1字節(jié)):數(shù)據(jù)中心標(biāo)識或稱網(wǎng)絡(luò)標(biāo)識。DeviceID(2字節(jié)):接入層設(shè)備的標(biāo)識。HostID(2字節(jié)):VM的標(biāo)識,也即主機(jī)標(biāo)識。同一個(gè)物理接入層路由橋連接的物理服務(wù)器上承載的VM的hostID不能相同。不同物理接入層設(shè)備連接物理服務(wù)器上承載的VM的hostID可以相同?;谝陨蟅M的虛擬MAC地址編碼規(guī)則,本發(fā)明實(shí)施例定義如下掩碼:主機(jī)掩碼(Hostmask):ff-ff-ff-ff-ff-ff。接入設(shè)備掩碼(accessdevicemask):ff-ff-ff-ff-00-00。數(shù)據(jù)中心掩碼(datacentremask):ff-ff-00-00-00-00。網(wǎng)絡(luò)管理裝置可通過運(yùn)行批量配置工具,為全網(wǎng)的VM配置虛擬MAC地址。在配置虛擬MAC地址過程中,網(wǎng)絡(luò)管理裝置從VM管理裝置獲取包括整網(wǎng)VM的信息表以及物理設(shè)備的連接關(guān)系。在該表基礎(chǔ)上,根據(jù)上述虛擬MAC地址編碼規(guī)則,在該表中添加虛擬MAC地址,并維護(hù)該表。如表1所示,網(wǎng)絡(luò)管理裝置維護(hù)的整網(wǎng)設(shè)備及VM的信息表至少包含以下信息(其中僅示出了數(shù)據(jù)中心1的相關(guān)配置信息):表1:“device”(設(shè)備)分別是VM所在的物理服務(wù)器連接的接入層設(shè)備以及所在數(shù)據(jù)中心的核心層設(shè)備,Nickname(昵稱)分別是VM所在的物理服務(wù)器連接的接入層設(shè)備在Trill網(wǎng)絡(luò)內(nèi)的轉(zhuǎn)發(fā)標(biāo)識以及VM所在的物理服務(wù)器所屬數(shù)據(jù)中心的核心層設(shè)備在Trill網(wǎng)絡(luò)內(nèi)的轉(zhuǎn)發(fā)標(biāo)識;“Port”是接入層設(shè)備連接VM所在物理服務(wù)器的端口,“VLANID”(虛擬局域網(wǎng)標(biāo)識)描述了VM所在虛擬機(jī)局域網(wǎng)的標(biāo)識?!癐PaddressofVM”(虛擬機(jī)IP地址)是各虛擬機(jī)的IP地址;“MACaddressofVM”為VM的真實(shí)MAC地址,“VirtualMACaddressofVM”為VM的虛擬MAC地址。00-E0-FC-11-11-11、00-E0-FC-22-22-22、00-E0-FC-33-33-33分別為配置在核心層路由橋core1和core2三層接口上的VLAN網(wǎng)關(guān)地址,其中00-E0-FC-11-11-11為VLAN1的網(wǎng)關(guān)MAC地址,00-E0-FC-22-22-22為VLAN2的網(wǎng)關(guān)地址,00-E0-FC-33-33-33為VLAN3的網(wǎng)關(guān)地址。將每個(gè)VM的虛擬MAC地址與接入設(shè)備掩碼ff-ff-ff-ff-00-00進(jìn)行邏輯與(and)運(yùn)算,運(yùn)算結(jié)果同為48位的聚合MAC地址ED-01-00-01-00-00,因而接入同一接入層設(shè)備的VM的虛擬MAC地址聚合為基于接入設(shè)備掩碼的虛擬MAC地址(accessdevicemaskbasedvirtualMACAddress)。即,接入leaf1的所有VM的虛擬MAC地址可以聚合為ED-01-00-01-00-00。接入到leaf2、leaf3以及l(fā)eaf4的VM的虛擬MAC地址分別聚合為ED-01-00-02-00-00、ED-01-00-03-00-00以及ED-01-00-04-00-00。按照相同的虛擬MAC地址編碼規(guī)則,其他數(shù)據(jù)中心的VM的虛擬MAC地址可以基于接入設(shè)備掩碼聚合,在此不再舉例。將每個(gè)VM的虛擬MAC地址與數(shù)據(jù)中心掩碼ff-ff-00-00-00-00進(jìn)行邏輯與(and)運(yùn)算,運(yùn)算結(jié)果同為48位的聚合MAC地址ED-01-00-00-00-00,從而同一數(shù)據(jù)中心內(nèi)的VM的虛擬MAC地址能夠聚合為基于數(shù)據(jù)中心掩碼的虛擬MAC地址(DataCentreMaskbasedVirtualMACaddress)。即,數(shù)據(jù)中心1內(nèi)的VM的虛擬MAC地址能夠聚合為ED-01-00-00-00-00。同樣地,按照相同的虛擬MAC地址編碼,數(shù)據(jù)中心2、數(shù)據(jù)中心3、數(shù)據(jù)中心4的VM的虛擬MAC地址基于數(shù)據(jù)中心掩碼分別聚合為ED-02-00-00-00-00、ED-03-00-00-00-00以及ED-04-00-00-00-00。需要說明的是,不同數(shù)據(jù)中心的VM的唯一性標(biāo)識和數(shù)據(jù)中心標(biāo)識可以相同,也可以不同。只需要保證同一個(gè)數(shù)據(jù)中心內(nèi)的VM的唯一性標(biāo)識和數(shù)據(jù)中心標(biāo)識相同,確保同一數(shù)據(jù)中心的VM的聚合關(guān)系不被破壞,確保接入到相同接入層設(shè)備的VM的聚合關(guān)系不被破壞。在報(bào)文轉(zhuǎn)發(fā)前,網(wǎng)絡(luò)管理裝置根據(jù)其所維護(hù)的整網(wǎng)設(shè)備以及VM信息,在各數(shù)據(jù)中心的接入層路由橋以及核心層路由橋上配置二層轉(zhuǎn)發(fā)表。表2.1示出了配置于數(shù)據(jù)中心1的接入層路由橋leaf1上的二層轉(zhuǎn)發(fā)表。表2.1:Port1、Port2、Port3分別為leaf1連接VM所在服務(wù)器的端口;DC1_leaf2、DC1_leaf3、DC1_leaf4分別為數(shù)據(jù)中心1中的相應(yīng)接入層路由橋的nickname;DC1_core1為數(shù)據(jù)中心1的core1的nickname,DC1_core2為數(shù)據(jù)中心1的core2的nickname。00-E0-FC-11-11-11、00-E0-FC-22-22-22、00-E0-FC-33-33-33分別為VLAN1、VLAN2、VLAN3的網(wǎng)關(guān)MAC地址。表2.1中,core1被配置為負(fù)責(zé)數(shù)據(jù)中心1與其它數(shù)據(jù)中心(數(shù)據(jù)中心2、數(shù)據(jù)中心3、數(shù)據(jù)中心4)之間的流量轉(zhuǎn)發(fā),基于數(shù)據(jù)中心掩碼的虛擬MAC地址的3個(gè)表項(xiàng)(即初始MAC地址是ED-02-00-00-00-00、ED-03-00-00-00-00、ED-04-00-00-00-00的三個(gè)表項(xiàng))中的出接口配置為core1的nickname(DC1_core1)。當(dāng)core1被配置為負(fù)責(zé)數(shù)據(jù)中心1與數(shù)據(jù)中心2、數(shù)據(jù)中心3之間的流量轉(zhuǎn)發(fā)時(shí),則將初始MAC地址是ED-02-00-00-00-00、ED-03-00-00-00-00的兩個(gè)表項(xiàng)的出接口將被配置為core1的nickname(DC1_core1),core2被配置為負(fù)責(zé)數(shù)據(jù)中心1與數(shù)據(jù)中心4之間的流量轉(zhuǎn)發(fā)時(shí),則初始MAC地址為ED-04-00-00-00-00的表項(xiàng)中的出接口配置為core2的nickname(DC1_core2)。當(dāng)core1和core2堆疊構(gòu)成一臺(tái)虛擬設(shè)備,該虛擬設(shè)備被配置為負(fù)責(zé)數(shù)據(jù)中心1與其他三個(gè)數(shù)據(jù)中心之間的流量轉(zhuǎn)發(fā)時(shí),則將初始MAC地址為ED-02-00-00-00-00、ED-03-00-00-00-00和ED-04-00-00-00-00的三個(gè)表項(xiàng)的出接口均配置為虛擬設(shè)備的nickname。進(jìn)一步的,針對組播業(yè)務(wù),還需要在接入層路由橋設(shè)備配置相應(yīng)組播轉(zhuǎn)發(fā)表項(xiàng)。比如,在數(shù)據(jù)中心1內(nèi),組播組的組播樹根為core1(nickname為DC1_core1),對于VLAN1內(nèi)的組播組1(組播地址為01-00-5E-XX-XX-XX),作為該組播組的組播源的VM所在的物理服務(wù)器連接于leaf1,作為組播組的組播接收端VM所在的物理服務(wù)器連接于leaf3的Port1,另一個(gè)作為組播組的組播接收端VM所在物理服務(wù)器連接于leaf4的Port1.則leaf1、leaf3、leaf4上的二層轉(zhuǎn)發(fā)表中的相應(yīng)組播轉(zhuǎn)發(fā)表項(xiàng)包括:表2.2:leaf1上二層轉(zhuǎn)發(fā)表中的組播轉(zhuǎn)發(fā)表項(xiàng)表2.3:leaf3上二層轉(zhuǎn)發(fā)表中的組播轉(zhuǎn)發(fā)表項(xiàng)表2.4:leaf4上二層轉(zhuǎn)發(fā)表中的組播轉(zhuǎn)發(fā)表項(xiàng)作為組播組的接收端的VM所在的服務(wù)器通過Port2連接到leaf1,則在表2.2所示的組播轉(zhuǎn)發(fā)表項(xiàng)的出接口中增加Port2。數(shù)據(jù)中心2、數(shù)據(jù)中心3、數(shù)據(jù)中心4的接入層路由橋的二層轉(zhuǎn)發(fā)表的組播轉(zhuǎn)發(fā)表項(xiàng)的配置方式與表2.1-表2.4中數(shù)據(jù)中心的接入層設(shè)備的組播轉(zhuǎn)發(fā)表項(xiàng)的配置方式相同。core1的二層轉(zhuǎn)發(fā)表至少包括表2.5所示的表項(xiàng):表2.5core2的二層轉(zhuǎn)發(fā)表至少包含表2.6所示的表項(xiàng):表2.6其中,DC1_leaf1、DC1_leaf2、DC1_leaf3、DC1_leaf4分別為數(shù)據(jù)中心1中l(wèi)eaf1-leaf4的nickname;IP2、IP3、IP4是根據(jù)協(xié)議定義的數(shù)據(jù)中心2、數(shù)據(jù)中心3和數(shù)據(jù)中心4的IP地址,數(shù)據(jù)中心1的core1向這三個(gè)數(shù)據(jù)中心發(fā)送數(shù)據(jù)時(shí),可將這些IP地址作為MACoverIP的隧道(tunnel)的目的IP地址;相應(yīng)地,IP1是數(shù)據(jù)中心1的IP地址,其他三個(gè)數(shù)據(jù)中心的核心層設(shè)備向數(shù)據(jù)中心1發(fā)送數(shù)據(jù)時(shí),可將IP1作為MACoverIP隧道的目的IP地址。00-E0-FC-11-11-11、00-E0-FC-22-22-22、00-E0-FC-33-33-33分別為VLAN1、VLAN2、VLAN3的網(wǎng)關(guān)MAC地址;L3為三層轉(zhuǎn)發(fā)標(biāo)識,用于表示對目的MAC地址為這三個(gè)MAC地址的以太網(wǎng)報(bào)文執(zhí)行三層轉(zhuǎn)發(fā)。數(shù)據(jù)中心2、數(shù)據(jù)中心3、數(shù)據(jù)中心4中的核心層路由橋的二層轉(zhuǎn)發(fā)表,與表2.5或2.6所示的二層轉(zhuǎn)發(fā)表的配置方式相同,本實(shí)施例不再詳細(xì)描述。為支持到外網(wǎng)的VLAN(如VLANm)的報(bào)文轉(zhuǎn)發(fā),表2.5中core1的二層轉(zhuǎn)發(fā)表中包含對應(yīng)的表項(xiàng)(表2.5中的最后一行),該表項(xiàng)包括:VLAN標(biāo)識m、本路由橋到VLANm的下一跳設(shè)備的MAC地址Next-hopMAC、出端口Portm。core1根據(jù)ARP(AddressResolutionProtocol,地址解析協(xié)議)報(bào)文學(xué)習(xí)下一跳設(shè)備的MAC地址。core1和core2的下一跳設(shè)備不同,因此core2學(xué)習(xí)到的下一跳設(shè)備表項(xiàng)(表2.6的最后一行所示的表項(xiàng))包括:VLAN標(biāo)識n,本路由橋到VLANn的下一跳設(shè)備的MAC地址Next-hopMAC’,出端口Portn?;趫D1所示的組網(wǎng)架構(gòu),圖2所示為本發(fā)明實(shí)施例中VM遷移的示意圖。VM從連接到leaf3的物理服務(wù)器遷移到連接于leaf4的物理服務(wù)器。虛擬機(jī)的真實(shí)MAC地址和IP地址不變。遷移前,虛擬機(jī)所在的物理服務(wù)器視為源物理服務(wù)器,連接于源物理服務(wù)器leaf3可視為遷移主機(jī)的源接入設(shè)備。遷移后,VM所在的物理服務(wù)器視為目標(biāo)物理服務(wù)器,Leaf4連接于目標(biāo)物理服務(wù)器可視為遷移主機(jī)的目標(biāo)接入設(shè)備。leaf3將VM遷移事件通知給網(wǎng)絡(luò)管理裝置(networkmanagementplane)。根據(jù)802.1Qbg定義的VDP(VSIDiscoveryandConfigurationProtocol,VSI發(fā)現(xiàn)和配置協(xié)議),物理交換機(jī)可感知VM的遷移過程,并將變化信息通知給網(wǎng)絡(luò)管理裝置。網(wǎng)絡(luò)管理裝置根據(jù)leaf3通知的信息,在leaf3接入的VM信息中,刪除遷移的VM。網(wǎng)絡(luò)管理裝置按照虛擬MAC地址編碼規(guī)則為遷移到leaf4的VM設(shè)置新的虛擬MAC地址,在leaf4接入的VM信息中增加遷移的VM信息,以保證對外的聚合關(guān)系不受破壞。網(wǎng)絡(luò)管理裝置在leaf4的二層轉(zhuǎn)發(fā)表中添加關(guān)聯(lián)于遷移的VM的真實(shí)MAC地址和虛擬MAC地址的二層轉(zhuǎn)發(fā)表項(xiàng),并在leaf3的二層轉(zhuǎn)發(fā)表中刪除關(guān)聯(lián)于遷移的VM的真實(shí)MAC地址和虛擬MAC地址的二層轉(zhuǎn)發(fā)表項(xiàng)。本步驟的目的在于減少無效表項(xiàng)的占用。本步驟還可采用其它實(shí)施方式,如將leaf3上遷出的VM的二層轉(zhuǎn)發(fā)表項(xiàng)標(biāo)記為無效。遷移的VM廣播免費(fèi)ARP報(bào)文。leaf4收到免費(fèi)ARP報(bào)文后,根據(jù)二層轉(zhuǎn)發(fā)表將該免費(fèi)APR報(bào)文以太網(wǎng)頭的“源MAC地址(SourceMACaddress)”和“發(fā)送端MAC地址(SenderMACAddress)”信息都替換為VM的虛擬MAC地址,廣播收到的ARP報(bào)文。leaf4在相同VLAN的其他端口廣播免費(fèi)ARP報(bào)文,將免費(fèi)ARP報(bào)文進(jìn)行Trill封裝,在Trill網(wǎng)絡(luò)內(nèi)廣播。網(wǎng)關(guān)和相同VLAN內(nèi)的其他虛擬機(jī)根據(jù)免費(fèi)ARP報(bào)文學(xué)習(xí)ARP表項(xiàng),將遷移的VM的IP地址對應(yīng)的原虛擬MAC地址刷新為新分配的虛擬MAC地址。按照ARP協(xié)議,設(shè)備發(fā)送免費(fèi)ARP報(bào)文時(shí),將設(shè)備的真實(shí)MAC地址寫入發(fā)送端MAC地址;其他設(shè)備收到免費(fèi)ARP報(bào)文時(shí),根據(jù)“發(fā)送端IP地址”和“發(fā)送端MAC地址”學(xué)習(xí)ARP表項(xiàng)。如果leaf4不修改免費(fèi)ARP報(bào)文的發(fā)送端MAC地址,網(wǎng)關(guān)以及相同VLAN內(nèi)的其他VM學(xué)習(xí)的ARP表項(xiàng)中的MAC地址是遷移的VM的真實(shí)MAC地址。相同VLAN的其他VM或網(wǎng)關(guān)向遷移的VM發(fā)送以太網(wǎng)報(bào)文,將遷移的VM的真實(shí)MAC地址作為目的MAC地址。Leaf4收到的以太網(wǎng)報(bào)文的目的MAC地址是遷移的VM的真實(shí)MAC地址時(shí),根據(jù)二層轉(zhuǎn)發(fā)表將報(bào)文的目的MAC映射為遷移VM的虛擬MAC地址并發(fā)送給遷移的VM。遷移的VM收到目的MAC地址為自身虛擬MAC地址的以太網(wǎng)報(bào)文時(shí),執(zhí)行丟棄,導(dǎo)致了報(bào)文丟失。如圖2所示,IP地址為1.1.1.7的VM從源接入設(shè)備連接的物理服務(wù)器遷移到目標(biāo)接入設(shè)備連接的物理服務(wù)器后,網(wǎng)絡(luò)管理裝置為遷移的虛擬機(jī)重新分配的虛擬MAC地址為ED-01-01-04-00-04。網(wǎng)絡(luò)管理裝置在leaf4配置遷移的虛擬機(jī)關(guān)聯(lián)的轉(zhuǎn)發(fā)表項(xiàng)。當(dāng)遷移的虛擬機(jī)發(fā)送免費(fèi)ARP報(bào)文時(shí),leaf4根據(jù)配置的轉(zhuǎn)發(fā)表項(xiàng),替換免費(fèi)ARP報(bào)文的以太網(wǎng)頭的源MAC地址以及免費(fèi)ARP報(bào)文的發(fā)送端MAC地址。網(wǎng)關(guān)以及同VLAN的其他VM學(xué)習(xí)的ARP表項(xiàng)中,IP地址1.1.1.7對應(yīng)的MAC地址為ED-01-01-04-00-04。在另一場景下,物理服務(wù)器的任一VM被刪除時(shí),接入層設(shè)備將該VM事件通知給網(wǎng)絡(luò)管理裝置。網(wǎng)絡(luò)管理裝置根據(jù)接入層設(shè)備的通知,刪除被刪除的VM的信息,刪除關(guān)聯(lián)于被刪除的VM的一對二層轉(zhuǎn)發(fā)表項(xiàng)。(圖2未示)在另一場景下,物理服務(wù)器上新增加VM時(shí),接入層設(shè)備將該VM事件通知給網(wǎng)絡(luò)管理裝置。網(wǎng)絡(luò)管理裝置按照虛擬MAC地址編碼規(guī)則為新增VM設(shè)置虛擬MAC地址,在該接入層設(shè)備的VM信息中增加新增VM的信息,以保證對外的聚合關(guān)系不受破壞。網(wǎng)絡(luò)管理裝置在接入層設(shè)備的二層轉(zhuǎn)發(fā)表中配置關(guān)聯(lián)于新增VM的一對二層轉(zhuǎn)發(fā)表項(xiàng)。新增的VM廣播免費(fèi)ARP報(bào)文,接入層設(shè)備根據(jù)配置的二層轉(zhuǎn)發(fā)表項(xiàng)替換免費(fèi)ARP報(bào)文的源MAC地址和發(fā)送端MAC地址,在相同VLAN內(nèi)和Trill網(wǎng)絡(luò)內(nèi)廣播ARP報(bào)文,從而使網(wǎng)關(guān)以及同VLAN的其他VM學(xué)習(xí)到ARP表項(xiàng)中記錄新增VM的IP地址和虛擬MAC地址(圖2未示)。本發(fā)明實(shí)施例對大二層網(wǎng)絡(luò)的報(bào)文轉(zhuǎn)發(fā)機(jī)制進(jìn)行了相應(yīng)改進(jìn),這些改進(jìn)主要包括以下幾個(gè)方面:(1)路由橋根據(jù)以太網(wǎng)報(bào)文的源MAC地址(相較于Trill封裝的報(bào)文,該源MAC地址為內(nèi)層源MAC地址),在二層轉(zhuǎn)發(fā)表查找到匹配表項(xiàng)且該表項(xiàng)中包含映射MAC地址(MappedMACaddress),則將以太網(wǎng)報(bào)文的源MAC地址替換為該映射MAC地址。同理,路由橋根據(jù)以太網(wǎng)報(bào)文的目的MAC地址(相較,Trill封裝的報(bào)文,該目的MAC地址為內(nèi)層的目的MAC地址),在二層轉(zhuǎn)發(fā)表查找到匹配表項(xiàng)且該表項(xiàng)中包含映射MAC地址(MappedMACaddress),則將以太網(wǎng)報(bào)文的目的MAC地址替換為該映射MAC地址。(2)路由橋支持基于掩碼的MAC地址查找方式。路由橋用以太網(wǎng)頭(Trill報(bào)文的內(nèi)層以太網(wǎng)頭)的源MAC地址或目的MAC地址與各表項(xiàng)的“mask”進(jìn)行“邏輯與”運(yùn)算,再將運(yùn)算結(jié)果與相應(yīng)表項(xiàng)中的初始MAC地址“InitialMACaddress”比較,如果一致,則確定查找到的匹配表項(xiàng)。(3)路由橋支持已知VLAN(VLANaware)轉(zhuǎn)發(fā)以及未知VLAN(VLANunaware)轉(zhuǎn)發(fā)。VLANaware方式利用以太網(wǎng)頭的VLANID以及MAC地址方式查找記錄了VLANID的表項(xiàng),VLANunaware方式利用內(nèi)層以太網(wǎng)頭的源MAC地址和目的MAC地址查找未記錄VLANID的表項(xiàng)。通過VLANunaware表項(xiàng),連接至同一個(gè)接入設(shè)備的不同VLAN的VM的虛擬MAC地址被聚合成一個(gè)表項(xiàng),同一個(gè)數(shù)據(jù)中心的不同VLAN的VM的虛擬MAC地址被聚合成一個(gè)表項(xiàng),顯著減少了接入層設(shè)備和核心層設(shè)備的二層轉(zhuǎn)發(fā)表項(xiàng)的數(shù)目。(4)接入層路由橋的二層轉(zhuǎn)發(fā)表由網(wǎng)絡(luò)管理裝置配置,核心層路由橋的二層轉(zhuǎn)發(fā)表包括網(wǎng)絡(luò)管理裝置配置的表項(xiàng)以及根據(jù)已有MAC地址學(xué)習(xí)機(jī)制動(dòng)態(tài)記錄生成的表項(xiàng)。譬如,核心設(shè)備對外的接口使能MAC地址學(xué)習(xí)。其中,核心層設(shè)備學(xué)習(xí)到的MAC地址在二層轉(zhuǎn)發(fā)表中同樣設(shè)置48位的主機(jī)掩碼。核心層設(shè)備和接入層設(shè)備的MAC地址學(xué)習(xí)可根據(jù)具體組網(wǎng)按全局和按端口靈活使能和去使能。(5)VM在發(fā)送多目的MAC地址的報(bào)文(如廣播報(bào)文、已知組播報(bào)文、未知組播報(bào)文或未知單播報(bào)文)時(shí),報(bào)文中的目的MAC地址不進(jìn)行聚合處理。為了更清楚的說明本發(fā)明實(shí)施例的報(bào)文轉(zhuǎn)發(fā)機(jī)制,下面以圖1所示的組網(wǎng)架構(gòu)和前述虛擬MAC地址編碼規(guī)則為例,對幾種典型場景下的報(bào)文轉(zhuǎn)發(fā)流程進(jìn)行描述。參見圖3A,為本發(fā)明實(shí)施例提供的一個(gè)數(shù)據(jù)中心內(nèi)的相同VLAN內(nèi)的報(bào)文轉(zhuǎn)發(fā)示意圖。其中,源VM位于leaf1的port1連接的物理服務(wù)器上,目的VM位于leaf3的port1連接的物理服務(wù)器上;源VM和目的VM的IP地址分別是1.1.1.1和1.1.1.8。圖3A中,leaf1的二層轉(zhuǎn)發(fā)表中至少包括表3.1所示的表項(xiàng):表3.1leaf3的二層轉(zhuǎn)發(fā)表中至少包括表3.2所示的表項(xiàng):表3.2core1的二層轉(zhuǎn)發(fā)表中至少包括表3.3所示的表項(xiàng):表3.3源VM發(fā)送以太網(wǎng)報(bào)文給leaf1,該以太網(wǎng)報(bào)文的源MAC地址為00-11-11-11-11-11,目的MAC地址為ED-01-00-03-00-02。源VM確定IP報(bào)文的目的IP地址1.1.1.8與自身的IP地址1.1.1.1處于同一IP網(wǎng)段,源VM根據(jù)目的IP地址1.1.1.8查找ARP表,查找到ARP表項(xiàng)記錄的MAC地址是虛擬MAC地址ED-01-00-03-00-02。源VM將IP報(bào)文封裝為以太網(wǎng)報(bào)文,其中,源MAC地址=00-11-11-11-11-11,目的MAC地址=ED-01-00-03-00-02。leaf1將收到的以太網(wǎng)報(bào)文的源MAC地址00-11-11-11-11-11與二層轉(zhuǎn)發(fā)表項(xiàng)(表3.1的第二行所示的表項(xiàng))的48位掩碼ff-ff-ff-ff-ff-ff進(jìn)行“邏輯與”運(yùn)算,運(yùn)算結(jié)果00-11-11-11-11-11與該二層轉(zhuǎn)發(fā)表項(xiàng)的初始MAC地址00-11-11-11-11-11一致,確定查找到表項(xiàng),leaf1將找到的表項(xiàng)的映射MAC地址(MappedMACaddress)替換以太網(wǎng)報(bào)文的源MAC地址。leaf1將目的MAC地址ED-01-00-03-00-02與一個(gè)表項(xiàng)(表3.1的第三行所示的表項(xiàng))的32位接入設(shè)備掩碼ff-ff-ff-ff-00-00進(jìn)行“邏輯與”運(yùn)算,leaf1確定運(yùn)算結(jié)果ED-01-00-03-00-00與該表項(xiàng)的初始MAC地址ED-01-00-03-00-00一致。leaf1根據(jù)找到的表項(xiàng)的EgressPort轉(zhuǎn)發(fā)以太網(wǎng)報(bào)文到leaf3。leaf1根據(jù)DC1_leaf3為收到的以太網(wǎng)頭封裝Trill頭;其中,Ingressnickname=leaf1的nickname,EgressNickname=DC1_leaf3(即leaf3的nickname)。然后,leaf1為以太網(wǎng)報(bào)文封裝下一跳頭;其中,源MAC地址=leaf1的MAC地址;目的MAC地址=Core1的MAC地址;VLANID=指定VLAN(DesignatedVLAN)ID。該下一跳頭是一個(gè)逐跳頭。本實(shí)施例中,RBridge之間是以太網(wǎng)鏈路,因此leaf1在Trill頭外封裝的下一跳頭視為外層以太網(wǎng)頭;Leaf1可以根據(jù)Trill路由表確定到達(dá)leaf3的下一跳是core1,然后根據(jù)Trill鄰接表查找到core1的MAC地址。下一跳頭的源MAC地址以及目的MAC地址專用于識別發(fā)送RBridge(transmittingRBridge)以及下一跳RBridge(NexthopRBridge)。leaf1轉(zhuǎn)發(fā)Trill封裝的報(bào)文到下一跳core1。core1收到Trill封裝的報(bào)文,解封裝外層以太網(wǎng)頭,根據(jù)Trill頭的EgressNickname重新封裝下一跳頭,其中,源MAC地址=core1的MAC地址,目的MAC地址=leaf3的MAC地址,VLANID=指定VLANID。core1轉(zhuǎn)發(fā)重新封裝的Trill報(bào)文到下一跳leaf3。leaf3收到Trill報(bào)文后,發(fā)現(xiàn)下一跳頭的目的MAC地址為本設(shè)備MAC地址則移除下一跳頭,leaf3確定Trill頭的Egressnickname是本設(shè)備的DC1_leaf3則移除Trill頭,leaf3獲得內(nèi)層以太網(wǎng)報(bào)文。leaf3根據(jù)內(nèi)層以太網(wǎng)報(bào)文的源MAC地址ED-01-00-01-00-01在表3.2所示二層轉(zhuǎn)發(fā)表中查找到表項(xiàng)(表3.2第三行所示的表項(xiàng)),該表項(xiàng)未包含映射MAC地址,則不替換以太網(wǎng)報(bào)文的源MAC地址;leaf3根據(jù)以太網(wǎng)報(bào)文的目的MAC地址ED-01-00-03-00-02查找到包含映射MAC地址的表項(xiàng)(表3.2第三行所示的表項(xiàng))。leaf3將以太網(wǎng)報(bào)文中的目的MAC替換為00-1D-A1-75-28-70,將該以太網(wǎng)報(bào)文通過表項(xiàng)的port1,轉(zhuǎn)發(fā)以太網(wǎng)報(bào)文。leaf3將源MAC地址ED-01-00-01-00-01與表項(xiàng)32位掩碼ff-ff-ff-ff-00-00進(jìn)行“邏輯與”運(yùn)算,運(yùn)算結(jié)果ED-01-00-01-00-00與該初始MAC地址ED-01-00-01-00-00一致,則確定查找到表項(xiàng)。leaf3將目的MAC地址ED-01-00-03-00-02與表項(xiàng)的48位的掩碼ff-ff-ff-ff-ff-ff進(jìn)行“邏輯與”運(yùn)算,運(yùn)算結(jié)果表項(xiàng)中初始MAC地址ED-01-00-03-00-02一致,則確定查找到表項(xiàng)。圖3A中,若源VM在ARP表中未查找到目的IP地址1.1.1.8對應(yīng)的ARP表項(xiàng),則發(fā)送ARP請求報(bào)文,以請求該目的IP地址1.1.1.8對應(yīng)的MAC地址。其中,ARP請求報(bào)文的SenderIP地址是1.1.1.1,SenderMAC地址是00-11-11-11-11-11,TargetIP地址是1.1.1.8,TargetMAC地址是全0的MAC地址。ARP請求報(bào)文的以太網(wǎng)頭的源MAC地址和目的MAC地址分別是00-11-11-11-11-11和全F的廣播地址。leaf1收到ARP請求報(bào)文后,不在Trill網(wǎng)絡(luò)廣播ARP請求報(bào)文,而是將收到的ARP請求報(bào)文轉(zhuǎn)化為私有ARP請求報(bào)文(如圖3B所示),將其單播發(fā)送給網(wǎng)絡(luò)管理裝置。leaf1移除收到的ARP請求報(bào)文的以太網(wǎng)頭,封裝IP頭,其中,源IP地址為leaf1的IP地址1.1.1.30,目的IP地址是網(wǎng)絡(luò)管理裝置的IP地址122.1.2.1。然后,leaf1在IP報(bào)文頭外封裝一個(gè)逐跳頭。本實(shí)施例中,該逐跳頭是以太網(wǎng)頭,其中,源MAC地址是對應(yīng)leaf1的MAC地址00-5F-AA-95-82-07(對應(yīng)于IP頭的源IP地址1.1.1.30),目的MAC地址是VLAN1網(wǎng)關(guān)的MAC地址00-E0-FC-11-11-11。Leaf1根據(jù)私有ARP請求報(bào)文的源MAC地址未查找到二層轉(zhuǎn)發(fā)表項(xiàng)。leaf1根據(jù)目的MAC地址00-E0-FC-11-11-11查找到未包含映射MAC地址的二層轉(zhuǎn)發(fā)表項(xiàng)(表3.1第五行所示的表項(xiàng)),根據(jù)查找到的表項(xiàng)的出接口將私有ARP報(bào)文封裝為Trill封裝的私有ARP請求報(bào)文發(fā)往core1。leaf1在私有ARP請求報(bào)文外封裝Trill頭和以太網(wǎng)頭(外層的以太網(wǎng)頭),私有ARP請求報(bào)文的以太網(wǎng)頭位于Trill頭與IP頭之間,仍可以視為內(nèi)層的以太網(wǎng)頭,Trill頭外的以太網(wǎng)頭仍視為外層的以太網(wǎng)頭。core1收到Trill封裝的報(bào)文,移除Trill封裝(外層的以太網(wǎng)頭和Trill頭),移除內(nèi)層的以太網(wǎng)頭,根據(jù)私有ARP請求報(bào)文的IP頭的目的IP地址重新封裝以太網(wǎng)頭(逐跳頭),其中,目的MAC地址是到達(dá)目的IP地址的下一跳的MAC地址,VLANID是下一跳設(shè)備所在的VLAN的標(biāo)識;源MAC地址是core1的一個(gè)三層接口MAC地址,該三層接口所在的VLAN與下一跳設(shè)備位于相同的VLAN。下一跳設(shè)備收到core1重新封裝的私有ARP請求報(bào)文后,根據(jù)私有ARP請求報(bào)文的IP頭的目的IP地址執(zhí)行三層轉(zhuǎn)發(fā),方式與core1的轉(zhuǎn)發(fā)過程類似。網(wǎng)絡(luò)管理裝置收到該私有ARP請求報(bào)文后,在表1所示的全網(wǎng)設(shè)備以及VM信息表查找IP地址1.1.1.8對應(yīng)的虛擬MAC地址ED-01-00-03-00-02,將IP地址1.1.1.1和MAC地址00-11-11-11-11-11設(shè)置為ARP響應(yīng)報(bào)文TargetIP地址和TargetMAC地址(IP地址1.1.1.1和MAC地址00-11-11-11-11-11分別是網(wǎng)絡(luò)管理裝置收到的ARP請求報(bào)文中的SenderIP地址和SenderMAC地址),將目的VM的IP地址1.1.1.8和虛擬MAC地址ED-01-00-03-00-02設(shè)置為ARP響應(yīng)報(bào)文的SenderIP地址和SenderTargetMAC地址,將ARP響應(yīng)報(bào)文封裝單播的私有ARP響應(yīng)報(bào)文(如圖3B所示)。即,網(wǎng)絡(luò)管理裝置在ARP響應(yīng)報(bào)文封裝IP頭和以太網(wǎng)頭(逐跳頭)。私有ARP響應(yīng)報(bào)文的IP頭的源IP地址是其自身的IP地址122.1.2.1,目的IP地址是Leaf1的IP地址1.1.1.30。私有ARP響應(yīng)報(bào)文的以太網(wǎng)頭的源MAC地址是網(wǎng)絡(luò)管理裝置的MAC地址,目的MAC地址是到達(dá)目的IP地址的下一跳設(shè)備的MAC地址。這樣,私有ARP響應(yīng)報(bào)文的以太網(wǎng)頭的源MAC地址和目的MAC地址會(huì)逐跳改變,但是私有ARP響應(yīng)報(bào)文的目的IP地址不變,這樣私有ARP報(bào)文被逐跳發(fā)送到作為VLAN1的網(wǎng)關(guān)core1。core1收到私有ARP響應(yīng)報(bào)文,根據(jù)私有ARP響應(yīng)報(bào)文的IP頭的目的IP地址執(zhí)行三層轉(zhuǎn)發(fā),將私有ARP響應(yīng)報(bào)文的以太網(wǎng)頭的源MAC地址和目的MAC地址分別修改為VLAN1網(wǎng)關(guān)的MAC地址00-E0-FC-11-11-11和leaf1的MAC地址00-5F-AA-95-82-07。core1根據(jù)私有ARP響應(yīng)報(bào)文的以太網(wǎng)頭的目的MAC地址查找到表項(xiàng)(表3.3第二行所示的表項(xiàng)),對私有ARP響應(yīng)報(bào)文進(jìn)行Trill封裝,在Trill域內(nèi)將Trill封裝的私有ARP響應(yīng)報(bào)文發(fā)送到leaf1。leaf1收到Trill封裝的私有ARP響應(yīng)報(bào)文,移除外層以太網(wǎng)頭和Trill頭,將私有ARP響應(yīng)報(bào)文的以太網(wǎng)頭和IP頭移除,為ARP響應(yīng)報(bào)文設(shè)置以太網(wǎng)頭,其中,源MAC地址=ED-01-00-03-00-02;目的MAC地址=ED-01-00-01-00-01。leaf1根據(jù)SenderMAC地址ED-01-00-03-00-02地址查找到的表項(xiàng)不包含映射的虛擬MAC地址,則將SenderMAC地址設(shè)置為ARP響應(yīng)報(bào)文的源MAC地址。leaf1根據(jù)TargetMAC地址00-11-11-11-11-11在二層轉(zhuǎn)發(fā)表中查找到映射的虛擬MAC地址ED-01-00-01-00-01,將其作為ARP響應(yīng)報(bào)文的目的MAC地址。leaf1根據(jù)轉(zhuǎn)發(fā)ARP響應(yīng)報(bào)文到源VM。leaf1根據(jù)源MAC地址查找到未包含映射MAC地址的表項(xiàng),根據(jù)目的MAC地址ED-01-00-01-00-01查找到包含映射MAC地址的表項(xiàng),將ARP響應(yīng)報(bào)文的以太網(wǎng)頭的目的MAC地址ED-01-00-01-00-01替換為00-11-11-11-11-11,通過端口Port1發(fā)送ARP響應(yīng)報(bào)文至源VM。源VM根據(jù)收到的ARP響應(yīng)報(bào)文學(xué)習(xí)ARP表項(xiàng),該ARP表項(xiàng)記錄了IP地址1.1.1.8與虛擬MAC地址ED-01-00-03-00-02的映射關(guān)系。本發(fā)明實(shí)施例中,網(wǎng)絡(luò)管理裝置可采用其他方式設(shè)置私有ARP響應(yīng)報(bào)文的一對發(fā)送端地址和一對目標(biāo)端地址。網(wǎng)絡(luò)管理裝置將IP地址1.1.1.1和MAC地址ED-01-00-01-00-01設(shè)置為ARP響應(yīng)報(bào)文TargetIP地址和TargetMAC地址(TargetIP地址1.1.1.1是收到的ARP請求報(bào)文中的SenderIP地址,TargetMAC地址ED-01-00-01-00-01映射于收到ARP請求報(bào)文的SenderMAC地址的虛擬MAC地址),將目的VM的IP地址1.1.1.8和虛擬MAC地址ED-01-00-03-00-02設(shè)置為ARP響應(yīng)報(bào)文的SenderIP地址和SenderMAC地址。網(wǎng)絡(luò)管理裝置將ARP響應(yīng)報(bào)文封裝為單播的私有ARP響應(yīng)報(bào)文。私有ARP報(bào)文逐跳地發(fā)送core1。core1收到私有ARP響應(yīng)報(bào)文,根據(jù)私有ARP響應(yīng)報(bào)文的IP頭的目的IP地址執(zhí)行路由轉(zhuǎn)發(fā),修改私有ARP響應(yīng)報(bào)文的以太網(wǎng)頭的源MAC地址和目的MAC地址,其中,源MAC地址和目的MAC地址分別是VLAN1網(wǎng)關(guān)的MAC地址00-E0-FC-11-11-11和leaf1的MAC地址00-5F-AA-95-82-07。core1根據(jù)私有ARP響應(yīng)報(bào)文的以太網(wǎng)頭的目的MAC地址查找到表項(xiàng)(表3.3第二行所示的表項(xiàng)),對私有ARP響應(yīng)報(bào)文進(jìn)行Trill封裝,在Trill域內(nèi)將Trill封裝的私有ARP響應(yīng)報(bào)文發(fā)送到leaf1。leaf1收到Trill封裝的私有ARP響應(yīng)報(bào)文,移除外層以太網(wǎng)頭和trill頭,將私有ARP響應(yīng)報(bào)文的以太網(wǎng)頭和IP頭移除,將ARP響應(yīng)報(bào)文中的SenderMAC地址ED-01-00-03-00-02和TargetMAC地址ED-01-00-01-00-01分別設(shè)置為ARP響應(yīng)報(bào)文的源MAC地址和目的MAC地址。leaf1轉(zhuǎn)發(fā)ARP響應(yīng)報(bào)文到源VM。leaf1根據(jù)源MAC地址查找到未包含映射MAC地址的表項(xiàng)。leaf1根據(jù)配置的二層轉(zhuǎn)發(fā)表項(xiàng)將ARP響應(yīng)報(bào)文的以太網(wǎng)頭的目的MAC地址ED-01-00-01-00-01替換為00-11-11-11-11-11,通過端口Port1發(fā)送ARP響應(yīng)報(bào)文至源VM。源VM根據(jù)收到的ARP響應(yīng)報(bào)文學(xué)習(xí)ARP表項(xiàng),該ARP表項(xiàng)記錄了IP地址1.1.1.8與虛擬MAC地址ED-01-00-03-00-02的映射關(guān)系。需要說明的是,接入層路由橋?qū)τ趶钠胀ń涌谑盏降腁RP請求報(bào)文進(jìn)行截獲,而對使能Trill協(xié)議的接口收到的ARP請求報(bào)文的不進(jìn)行截獲。大二層網(wǎng)絡(luò)中,如果核心層路由橋的三層L3接口以廣播方式發(fā)送ARP請求報(bào)文以學(xué)習(xí)VM的ARP表項(xiàng),為了控制ARP請求報(bào)文的洪泛(flooding),可同樣使用上述的ARP截獲機(jī)制。例如,圖1中的三層設(shè)備core1發(fā)送單播的私有ARP請求報(bào)文至網(wǎng)絡(luò)管理裝置,請求數(shù)據(jù)中心內(nèi)VLAN1內(nèi)所有VM的ARP信息?;蛘撸琧ore1發(fā)送單播的私有ARP請求報(bào)文至網(wǎng)絡(luò)管理裝置,請求某一個(gè)VM的ARP信息。仍以目的VM為例,core1發(fā)送私有ARP請求報(bào)文。私有ARP請求報(bào)文的SenderIP地址是VLAN1網(wǎng)關(guān)的IP地址,SenderMAC地址VLAN1網(wǎng)關(guān)的MAC地址00-E0-FC-11-11-11,TargetIP地址是1.1.1.8,TargetMAC地址是全0的MAC地址。私有ARP請求報(bào)文的源IP地址VLAN1網(wǎng)關(guān)的IP地址1.1.1.30,目的IP地址是網(wǎng)絡(luò)管理裝置的IP地址122.1.2.1。然后,core1在IP報(bào)文頭外封裝一個(gè)逐跳的以太網(wǎng)頭。最終,私有ARP請求報(bào)文被逐跳的發(fā)送到網(wǎng)絡(luò)管理裝置。網(wǎng)絡(luò)管理裝置根據(jù)私有ARP請求報(bào)文的TargetIP地址1.1.1.8查找到對應(yīng)的虛擬MAC地址ED-01-00-03-00-02,將IP地址1.1.1.8和虛擬MAC地址D-01-00-03-00-02設(shè)置為私有ARP響應(yīng)報(bào)文SenderIP地址和SenderMAC地址,將收到的私有ARP請求報(bào)文中的SenderIP地址和SenderMAC地址設(shè)置為私有ARP報(bào)文的TargetIP地址和TargetMAC地址。網(wǎng)絡(luò)管理裝置將私有ARP響應(yīng)報(bào)文的源IP地址設(shè)置自身的IP地址122.1.2.1,將私有ARP響應(yīng)報(bào)文的目的IP地址是設(shè)置為VLAN1網(wǎng)關(guān)的IP地址1.1.1.30。私有ARP響應(yīng)報(bào)文的以太網(wǎng)頭的源MAC地址是網(wǎng)絡(luò)管理裝置的MAC地址,目的MAC地址是到達(dá)core1的下一跳設(shè)備的MAC地址。這樣,私有ARP響應(yīng)報(bào)文的被逐跳發(fā)送到作為VLAN1的網(wǎng)關(guān)core1。core1收到私有ARP響應(yīng)報(bào)文,根據(jù)SenderIP地址和SenderMAC地址學(xué)習(xí)ARP表項(xiàng)。而外網(wǎng)VLAN(如VLANm)與數(shù)據(jù)中心Trill網(wǎng)絡(luò)無關(guān),因此core1仍可按照ARP協(xié)議機(jī)制學(xué)習(xí)外網(wǎng)VLANm三層接口的ARP表項(xiàng)。因此,ARP請求報(bào)文是否采用截獲處理方式可以在設(shè)備的VLAN和port模式下進(jìn)行配置以示區(qū)分。參見圖4,為本發(fā)明實(shí)施例提供的組播報(bào)文轉(zhuǎn)發(fā)的示意圖。其中,源VM為leaf1的port1所連接的MAC地址為00-11-11-11-11-11的VM。leaf1的二層轉(zhuǎn)發(fā)表中至少包括表4.1所示的表項(xiàng):表4.1leaf3的二層轉(zhuǎn)發(fā)表中至少包括表4.2所示的表項(xiàng):表4.2leaf4的二層轉(zhuǎn)發(fā)表中至少包括表4.2所示的以下表項(xiàng):表4.3如圖4所示,作為組播源的VM發(fā)送組播報(bào)文給leaf1,該報(bào)文的源MAC地址為源VM的真實(shí)MAC地址00-11-11-11-11-11,目的MAC地址為組播組1的MAC地址01-00-5E-XX-XX-XX。leaf1接收到組播報(bào)文后,根據(jù)該報(bào)文的源MAC地址00-11-11-11-11-11查找到表項(xiàng)(表4.1第二行所示的表項(xiàng));根據(jù)該表項(xiàng)的映射MAC地址ED-01-00-01-00-01替換源MAC地址。leaf1根據(jù)該以太網(wǎng)報(bào)文的目的MAC地址01-00-5E-XX-XX-XX,查找到表項(xiàng)(表4.1第四行所示的表項(xiàng)),根據(jù)查找到表項(xiàng)的出接口DC1_core1將收到的組播報(bào)文封裝為Trill報(bào)文并將Trill封裝的報(bào)文分發(fā)到Trill網(wǎng)絡(luò)。即,core1的nickname是目的組播組所在組播樹的樹根的nickname),本步驟中,leaf1將該出接口的Nickname作為Egressnickname,將自身的DC1_leaf1作為IngressNickname,為組播該報(bào)文封裝Trill報(bào)文頭。leaf1將本設(shè)備的MAC地址和Trill定義的特定組播MAC地址作為下一跳頭的源MAC地址和目的MAC地址。leaf1通過Trill封裝的報(bào)文至該組播組的組播樹的樹根core1。core1接收到Trill封裝的組播報(bào)文后,移除外層的以太網(wǎng)頭和Trill頭,根據(jù)Trill頭的EgressNickname在Trill組播表確定該組播組在VLAN1的組播轉(zhuǎn)發(fā)樹有兩個(gè)下游節(jié)點(diǎn)leaf3和leaf4,因此復(fù)制兩份報(bào)文并分別封裝為Trill封裝的組播報(bào)文,然后發(fā)送給兩個(gè)下游路由橋leaf3和leaf4。leaf3和leaf4各自收到Trill封裝的組播報(bào)文,解封裝獲得內(nèi)層組播報(bào)文,然后根據(jù)該內(nèi)層以太網(wǎng)頭的源MAC地址分別在表4.2、表4.3所示的二層轉(zhuǎn)發(fā)表進(jìn)行查找。leaf3和leaf4分別查找到表項(xiàng)(表4.2第三行所示的表項(xiàng)以及表4.3所示的第三行所示的表項(xiàng)),這些表項(xiàng)未包含映射MAC地址,leaf3和leaf4不替換組播報(bào)文的源MAC地址,leaf3和leaf4各自根據(jù)組播MAC地址查到對應(yīng)的表項(xiàng)(表4.2第二行所示的表項(xiàng)以及表4.3所示的第二行所示的表項(xiàng))二層轉(zhuǎn)發(fā)表,然后根據(jù)表項(xiàng)中的出接口port1發(fā)送組播報(bào)文。參見圖5,為本發(fā)明實(shí)施例中數(shù)據(jù)中心內(nèi)的報(bào)文轉(zhuǎn)發(fā)至外網(wǎng)的示意圖。其中,源VM為數(shù)據(jù)中心1中的leaf1的port1所接入的VM,源VM的IP地址為1.1.1.1。目的端的IP地址為172.1.1.1,該IP地址是用戶的業(yè)務(wù)IP地址而非跨數(shù)據(jù)中心二層互聯(lián)用的隧道IP地址,VLAN為VLANm。數(shù)據(jù)中心1核心層的core1和core2采用堆疊協(xié)議構(gòu)成的一個(gè)虛擬設(shè)備作為網(wǎng)關(guān),以實(shí)現(xiàn)負(fù)載均衡與備份。該虛擬設(shè)備是一個(gè)虛擬的核心層設(shè)備。leaf1將自身連接core1和core2的鏈路綁定為一個(gè)鏈路聚合組。leaf2-leaf4各自將自身連接core1和core2的鏈路綁定為一個(gè)鏈路聚合組。表1中數(shù)據(jù)中心1的core1和core2的配置信息按表5.1做如下修改:表5.1本實(shí)施例中,DC1_core是虛擬設(shè)備的Nickname。core2是虛擬設(shè)備的master設(shè)備。圖5中l(wèi)eaf1的二層轉(zhuǎn)發(fā)表中至少包括表5.2所示的以下表項(xiàng):表5.2core1和core2的二層轉(zhuǎn)發(fā)表中至少包括表5.3所示的以下表項(xiàng):表5.3如圖5所示,源VM發(fā)送以太網(wǎng)報(bào)文給leaf1,該報(bào)文的源MAC地址為該VM的真實(shí)MAC地址00-11-11-11-11-11,目的MAC地址為VLAN1網(wǎng)關(guān)的MAC地址00-E0-FC-11-11-11。此步驟中,源VM確定IP地址1.1.1.1與目的IP地址172.1.1.1不在同一網(wǎng)段,因此通過查詢VM本地路由表獲得VLAN1的網(wǎng)關(guān)的IP地址(網(wǎng)關(guān)IP地址可以是通過靜態(tài)配置方式或動(dòng)態(tài)主機(jī)設(shè)置協(xié)議方式配置)。若源VM未查找到VLAN1網(wǎng)關(guān)IP地址匹配的ARP表項(xiàng),則廣播ARP請求報(bào)文,以請求VLAN1網(wǎng)關(guān)的IP地址1.1.1.100對應(yīng)的MAC地址。具體過程本實(shí)施例不再贅述。源VM根據(jù)網(wǎng)關(guān)的IP地址為1.1.1.100在ARP表項(xiàng)中查找到對應(yīng)的MAC地址為00-E0-FC-11-11-11,將該MAC地址作為以太網(wǎng)頭的目的MAC地址。leaf1收到該報(bào)文后,根據(jù)該報(bào)文的源MAC地址00-11-11-11-11-11在二層轉(zhuǎn)發(fā)表查找到表項(xiàng)(表5.2第二行所示的表項(xiàng)),將收到的以太網(wǎng)報(bào)文的源MAC地址00-11-11-11-11-11替換為該表項(xiàng)的映射MAC地址ED-01-00-01-00-01。leaf1根據(jù)該報(bào)文的目的MAC地址00-E0-FC-11-11-11在二層轉(zhuǎn)發(fā)表中查找到表項(xiàng)(表5.2第四行所示的表項(xiàng)),且該表項(xiàng)未包含對應(yīng)的mappedMAC地址,leaf1根據(jù)表項(xiàng)的出接口Egressnickname(即core1和core2堆疊構(gòu)成的邏輯節(jié)點(diǎn)的nickname:DC1_core),將收到的以太網(wǎng)報(bào)文外封裝為Trill封裝的報(bào)文。leaf1將DC1_core(core1和core2堆疊構(gòu)成的邏輯節(jié)點(diǎn)的nickname)作為Egressnickname,將自身的DC1_leaf1作為Ingressnickname,封裝Trill頭。leaf1根據(jù)Till路由表,確定到達(dá)EgressNickname的下一跳是DC1_core,在Trill鄰接表查找到DC1_core的MAC地址,在Trill報(bào)文頭外封裝下一跳頭(Next-Hopheader);其中,源MAC地址為leaf1的MAC地址,目的MAC地址為DC1_core1的MAC地址,VLANID是指定VLAN(DesignatedVLAN)標(biāo)識。leaf1轉(zhuǎn)發(fā)Trill封裝的報(bào)文至DC1_core。DC1_core的主設(shè)備core2收到Trill封裝的以太網(wǎng)報(bào)文,移除下一跳頭和Trill頭,根據(jù)內(nèi)層以太網(wǎng)報(bào)文的源MAC地址ED-01-00-01-00-01在二層轉(zhuǎn)發(fā)表中查找到表項(xiàng)(表5.3第五行所示的表項(xiàng)),該表項(xiàng)不包括mappedMAC地址,core1不替換源MAC地址。然后core1根據(jù)內(nèi)層以太網(wǎng)頭的目的MAC地址00-E0-FC-11-11-11在二層轉(zhuǎn)發(fā)表查找到表項(xiàng)(表5.3第二行所示的表項(xiàng))且該表項(xiàng)的出端口信息為L3標(biāo)記(表示使能L3轉(zhuǎn)發(fā)處理),因此core2轉(zhuǎn)入三層轉(zhuǎn)發(fā)處理流程:在路由表中查目的IP地址172.1.1.1的路由表項(xiàng),確定到達(dá)目的IP地址的下一跳,查詢下一跳的MAC地址,將解Trill封裝后的以太網(wǎng)報(bào)文的源MAC地址設(shè)置虛擬設(shè)備DC1_core的VLANm的接口的MAC地址,將以太網(wǎng)報(bào)文的目的MAC地址設(shè)置為下一跳的MAC地址(next-hopMACaddress),報(bào)文在IP網(wǎng)絡(luò)內(nèi)基于路由被逐跳轉(zhuǎn)發(fā)到至IP地址為172.1.1.1的目的端設(shè)備。IP地址為172.1.1.1的設(shè)備發(fā)給源VM的IP報(bào)文在IP網(wǎng)絡(luò)內(nèi)被逐跳地發(fā)到虛擬設(shè)備。DC1_core的成員設(shè)備core1收到來自數(shù)據(jù)中心外的以太網(wǎng)報(bào)文時(shí),其中,源MAC是DC1_core學(xué)習(xí)到的下一跳的MAC地址;目的MAC地址是DC1_core的VLANm的三層接口MAC地址。core1根據(jù)目的MAC地址在二層轉(zhuǎn)發(fā)表進(jìn)行查找,確定執(zhí)行三層轉(zhuǎn)發(fā)。core1根據(jù)目的IP地址1.1.1.1查詢ARP表,確定對應(yīng)的MAC地址是ED-01-00-01-00-01,將1.1.1.1所在VLAN的標(biāo)識VLAN1設(shè)置為收到的以太網(wǎng)報(bào)文的VLANID,將根據(jù)ARP表查詢到的MAC地址設(shè)置為收到以太網(wǎng)報(bào)文的目的MAC地址,將VLAN1網(wǎng)關(guān)的MAC地址00-E0-FC-11-11-11設(shè)置為收到的以太網(wǎng)報(bào)文的源MAC地址。core1根據(jù)源MAC地址00-E0-FC-11-11-11和目的MAC地址ED-01-00-01-00-01分別在二層轉(zhuǎn)發(fā)表執(zhí)行查找,core1查找到的表項(xiàng)(表5.3第二行以及第五行所示的表項(xiàng))不包含映射的虛擬MAC地址。core1根據(jù)目的MAC地址匹配的二層轉(zhuǎn)發(fā)表項(xiàng)中的出接口,封裝收到的以太網(wǎng)報(bào)文封裝為Trill報(bào)文,其中,Egressnickname是DC1_leaf1,Ingressnickname是DC1_core。core1根據(jù)Till路由表,確定到達(dá)EgressNickname的下一跳是Leaf1,在Trill鄰接表查找到leaf1的MAC地址,在Trill報(bào)文頭外封裝下一跳頭(Next-Hopheader);其中,源MAC地址為DC1_core1的MAC地址,目的MAC地址為leaf1的MAC地址,VLANID是指定VLAN(DesignatedVLAN)標(biāo)識。core1轉(zhuǎn)發(fā)Trill封裝的報(bào)文至leaf1。參見圖6,為本發(fā)明實(shí)施例中數(shù)據(jù)中心內(nèi)不同VLAN報(bào)文轉(zhuǎn)發(fā)的示意圖。其中,源VM所在的物理服務(wù)器連接到leaf1的port1,源VM的IP地址為1.1.1.1,所屬VLAN為VLAN1。目的VM所在的物理服務(wù)器連接到leaf3的port2,目的VM的IP地址為2.2.2.7,所屬VLAN為VLAN2。圖6中,數(shù)據(jù)中心1核心層的core1和core2堆疊構(gòu)成的一個(gè)虛擬設(shè)備,以實(shí)現(xiàn)負(fù)載均衡與備份。虛擬設(shè)備的Nickname為DC1_core。core2是虛擬設(shè)備的master設(shè)備。leaf1-leaf4各自將自身連接core1和core2的鏈路綁定為一個(gè)鏈路聚合組。leaf1的二層轉(zhuǎn)發(fā)表中至少包括表6.1所示的以下表項(xiàng):表6.1core1和core2的二層轉(zhuǎn)發(fā)表中至少包括表6.2所示的以下表項(xiàng):表6.2leaf3的二層轉(zhuǎn)發(fā)表中至少包括表6.3所示的以下表項(xiàng):表6.3如圖6所示,源VM發(fā)送以太網(wǎng)報(bào)文給leaf1,該報(bào)文的源MAC地址為該VM的真實(shí)MAC地址00-11-11-11-11-11,目的MAC地址為VLAN1網(wǎng)關(guān)的MAC地址00-E0-FC-11-11-11。leaf1接收到以太網(wǎng)報(bào)文后,根據(jù)源MAC地址00-11-11-11-11-11查二層轉(zhuǎn)發(fā)表,查找到包含映射MAC地址的表項(xiàng)(表6.1第二行所示表項(xiàng)),將報(bào)文的源MAC地址00-11-11-11-11-11替換為映射MAC地址ED-01-00-01-00-01。leaf1根據(jù)該報(bào)文的目的MAC地址00-E0-FC-11-11-11查二層轉(zhuǎn)發(fā)表,leaf1查找到未包含映射MAC地址的表項(xiàng)(表6.1第四行表項(xiàng)所示的表項(xiàng)),leaf1根據(jù)查找到的表項(xiàng)出接口DC1_core將收到的以太網(wǎng)報(bào)文封裝為Trill報(bào)文,然后根據(jù)Trill路由表發(fā)送到Trill網(wǎng)絡(luò)進(jìn)行轉(zhuǎn)發(fā)。DC1_core的主設(shè)備core2收到Trill封裝的報(bào)文,移除下一跳頭和Trill頭,根據(jù)內(nèi)層以太網(wǎng)頭報(bào)文的源MAC地址ED-01-00-01-00-01查二層轉(zhuǎn)發(fā)表,core2查找到未包含映射MAC地址的表項(xiàng)(表6.2第四行所示的表項(xiàng)),core2不替換內(nèi)層以太網(wǎng)頭的源MAC地址。core2根據(jù)內(nèi)層以太網(wǎng)頭的目的MAC地址00-E0-FC-11-11-11查二層轉(zhuǎn)發(fā)表,core2查找到未包含映射MAC地址且出接口信息為L3屬性的表項(xiàng)(表6.2第二行所示的表項(xiàng))。core2路由表中查目的IP地址2.2.2.7的路由表項(xiàng),然后根據(jù)命中的路由表項(xiàng)中的IP地址在ARP表查找到對應(yīng)的虛擬MAC地址ED-01-00-03-00-04,將內(nèi)層以太網(wǎng)報(bào)文的VLANID由VLAN1更換為VLAN2,將源MAC地址設(shè)置為VLAN2網(wǎng)關(guān)的三層接口MAC地址00-E0-FC-22-22-22,將內(nèi)層以太網(wǎng)頭的目的MAC地址設(shè)置為ED-01-00-03-00-04。DC1_core的主設(shè)備core2根據(jù)目的MAC地址ED-01-00-03-00-04查找到未包含映射MAC地址的表項(xiàng)(表6.2第六行所示的表項(xiàng)),然后根據(jù)查找到的表項(xiàng)的出接口將以太網(wǎng)報(bào)文封裝為Trill封裝的以太網(wǎng)報(bào)文,發(fā)送Trill封裝的以太網(wǎng)到leaf3。leaf3收到Trill封裝的以太網(wǎng)報(bào)文后,移除Trill頭和下一跳頭。Leaf3根據(jù)以太網(wǎng)報(bào)文的源MAC地址00-E0-FC-22-22-22查二層轉(zhuǎn)發(fā)表,leaf3查找到未包含映射MAC地址的表項(xiàng)(表6.3第三行所示表項(xiàng)),leaf3不替換源MAC地址;leaf3根據(jù)以太網(wǎng)報(bào)文的目的MAC地址ED-01-00-03-00-04查找到包含映射MAC地址的表項(xiàng)(表6.3最后一行所示的表項(xiàng)),leaf3將以太網(wǎng)報(bào)文的目的MAC地址ED-01-00-03-00-04替換為表項(xiàng)中的映射MAC地址00-25-9C-2F-63-FE,leaf3根據(jù)查找到的表項(xiàng)的物理端口port1轉(zhuǎn)發(fā)替換了目的MAC地址的以太網(wǎng)報(bào)文給目的VM。圖7為本發(fā)明實(shí)施例中的不同數(shù)據(jù)中心之間的二層轉(zhuǎn)發(fā)的示意圖。該組網(wǎng)中,數(shù)據(jù)中心互聯(lián)網(wǎng)絡(luò)采用MACoverIP技術(shù),每個(gè)數(shù)據(jù)中心設(shè)備同時(shí)支持Trill和MACoverIP,并支持Trill和MACoverIP的雙向轉(zhuǎn)換,即Trill終結(jié)后繼續(xù)封裝MACoverIP報(bào)文,MACoverIP終結(jié)后繼續(xù)封裝Trill報(bào)文。在數(shù)據(jù)中心1中,核心層的core1和core2堆疊構(gòu)成的一個(gè)虛擬設(shè)備,以實(shí)現(xiàn)負(fù)載均衡與備份。core1和core2堆疊構(gòu)成的虛擬設(shè)備的Nickname為DC1_core,core2是邏輯節(jié)點(diǎn)的master設(shè)備。在數(shù)據(jù)中心2中,核心層的core1’和core2’堆疊構(gòu)成的一個(gè)虛擬設(shè)備,以實(shí)現(xiàn)負(fù)載均衡與備份。core1’和core2’堆疊構(gòu)成的虛擬設(shè)備的Nickname為DC2_core,core1’是邏輯節(jié)點(diǎn)的master設(shè)備。該流程中,源VM所在的物理服務(wù)器連接于數(shù)據(jù)中心1的leaf1,源VM的IP地址為1.1.1.1,所屬VLAN為VLAN1。目的VM所在的物理服務(wù)器連接于數(shù)據(jù)中心2的leaf1’,目的VM的IP地址為1.1.1.100,所屬VLAN為VLAN1。leaf1的二層轉(zhuǎn)發(fā)表中至少包括表7.1所示的以下表項(xiàng):表7.1core1和core2各自的二層轉(zhuǎn)發(fā)表至少包括表7.2所示的以下表項(xiàng):表7.2core1’和core2’各自轉(zhuǎn)發(fā)二層轉(zhuǎn)發(fā)表中至少包括表7.3所示的以下表項(xiàng):表7.3leaf1’的二層轉(zhuǎn)發(fā)表中至少包括表7.4所示的以下表項(xiàng):表7.4如圖7所示,源VM發(fā)送以太網(wǎng)報(bào)文到leaf1,該以太網(wǎng)報(bào)文的源MAC地址為真實(shí)MAC地址00-11-11-11-11-11,目的MAC地址為目的IP地址對應(yīng)的虛擬MAC地址ED-02-00-01-00-01。leaf1收到該以太網(wǎng)報(bào)文,根據(jù)源MAC地址00-11-11-11-11-11在二層轉(zhuǎn)發(fā)表中查找到具有映射MAC地址的表項(xiàng)(表7.1第二行所示的表項(xiàng)),將報(bào)文的源MAC地址替換為映射MAC地址ED-01-00-01-00-01;leaf1根據(jù)目的MAC地址ED-02-00-01-00-01在二層轉(zhuǎn)發(fā)表查找到未包含映射MAC地址表項(xiàng)(表7.1第四行所示的表項(xiàng)),根據(jù)表項(xiàng)的出接口DC1_core將收到的以太網(wǎng)報(bào)文封裝為Trill報(bào)文,在Trill網(wǎng)絡(luò)內(nèi)發(fā)送到出口設(shè)備DC1_core。DC1_core的主設(shè)備core2接收到Trill報(bào)文,解封裝得到以太網(wǎng)報(bào)文,根據(jù)解封裝后的以太網(wǎng)報(bào)文的源MAC地址ED-01-00-01-00-01查找到未包含映射MAC地址的表項(xiàng)(表7.2第二行所示的表項(xiàng)),core1不替換源MAC地址。core2根據(jù)解封裝后的以太網(wǎng)報(bào)文的目的MAC地址ED-02-00-01-00-01查找到未包含映射MAC地址的表項(xiàng)(表7.2第三行所示的表項(xiàng)),core2根據(jù)查找到表項(xiàng)中的出接口IP2將解封裝后的以太網(wǎng)報(bào)文進(jìn)行MACoverIP封裝,core2為報(bào)文封裝MACoverIP報(bào)文頭,其中,外層的源IP地址=IP1、外層的目的IP地址=IP2,core2根據(jù)IP2進(jìn)行路由轉(zhuǎn)發(fā),在外層IP頭外封裝逐跳的以太網(wǎng)頭,從而將MACoverIP封裝后的報(bào)文通過數(shù)據(jù)中心互聯(lián)(DCI,datacentreinterconnecting)網(wǎng)絡(luò)被逐跳的發(fā)送到數(shù)據(jù)中心2。DC2_core的主設(shè)備core1’收到MACoverIP封裝的報(bào)文,解封裝外層的以太網(wǎng)頭和IP頭,得到內(nèi)層的以太網(wǎng)報(bào)文,根據(jù)內(nèi)層以太網(wǎng)頭的源MAC地址ED-01-00-01-00-01在二層轉(zhuǎn)發(fā)表查找到未包含映射MAC地址的表項(xiàng)(表7.3第二行所示的表項(xiàng)),core1’不替換源MAC地址。core1’根據(jù)解封裝后的以太網(wǎng)報(bào)文目的MAC地址ED-02-00-01-00-01查找到未包含映射MAC地址的表項(xiàng)(表7.3第三行所示的表項(xiàng)),core1’根據(jù)該表項(xiàng)中的出端口DC2_leaf1將內(nèi)層的以太網(wǎng)報(bào)文封裝為Trill封裝的以太網(wǎng)報(bào)文,在數(shù)據(jù)中心2的Trill網(wǎng)絡(luò)內(nèi)將Trill封裝的以太網(wǎng)報(bào)文發(fā)到Leaf1’。leaf1’收到Trill封裝的報(bào)文,移除下一跳頭和Trill頭,根據(jù)源MAC地址ED-01-00-01-00-01在二層轉(zhuǎn)發(fā)表查找到未包含映射MAC地址的表項(xiàng),(表7.4最后一行所示的表項(xiàng)),leaf1’不替換源MAC地址學(xué)習(xí)和替換;leaf1’根據(jù)目的MAC地址ED-02-00-01-00-01在二層轉(zhuǎn)發(fā)表查找到包含映射MAC地址的表項(xiàng)(表7.4第二行所示的表項(xiàng)),則將目的MAC地址替換為映射MAC地址00-20-00-20-20-20,通過出端口Port1將替換了目的MAC地址的以太網(wǎng)報(bào)文發(fā)送給目的VM。上述實(shí)施例通過將地址層次化和掩碼的機(jī)制引入到二層轉(zhuǎn)發(fā)表的管理,實(shí)現(xiàn)基于mask的二層轉(zhuǎn)發(fā)表,極大的縮減二層轉(zhuǎn)發(fā)表的表項(xiàng)的數(shù)量。通過縮減二層轉(zhuǎn)發(fā)表的表項(xiàng)數(shù)量,可以有效解決大數(shù)據(jù)中心內(nèi)二層轉(zhuǎn)發(fā)的表項(xiàng)數(shù)目過大問題。同時(shí),可以避免MAC地址學(xué)習(xí)時(shí),因HASH沖突而使二層轉(zhuǎn)發(fā)表的表項(xiàng)的實(shí)際數(shù)量不能達(dá)到設(shè)備支持的表項(xiàng)數(shù)量最大值的問題。需要說明的是,本發(fā)明實(shí)施例中僅以虛擬MAC地址格式為6字節(jié)的OUI-DCID-DeviceID-hostID,掩碼為32位的接入設(shè)備掩碼和16位的數(shù)據(jù)中心掩碼,進(jìn)行了具體描述,并以此為基礎(chǔ)描述了基于掩碼的二層轉(zhuǎn)發(fā)表的配置方式,以及各種場景下的基于二層轉(zhuǎn)發(fā)表的報(bào)文轉(zhuǎn)發(fā)流程。本領(lǐng)域技術(shù)人員應(yīng)該能夠理解,依據(jù)本發(fā)明實(shí)施例提供的原理,還可以設(shè)計(jì)出其它的虛擬MAC地址格式和相應(yīng)的不同層次的MAC地址掩碼,以及以此為基礎(chǔ)的基于掩碼的二層轉(zhuǎn)發(fā)表及各種場景下的基于二層轉(zhuǎn)發(fā)表實(shí)現(xiàn)的報(bào)文轉(zhuǎn)發(fā)流程,只要能夠通過不同層次的掩碼將VM的虛擬MAC地址進(jìn)行層次化的聚合,均應(yīng)在本發(fā)明的保護(hù)范圍之內(nèi)?;谙嗤募夹g(shù)構(gòu)思,本發(fā)明實(shí)施例還通過了一種路由交換設(shè)備。該路由交換設(shè)備可作為接入層設(shè)備應(yīng)用于上述實(shí)施例中。參見圖8,為本發(fā)明實(shí)施例提供的路由交換設(shè)備的結(jié)構(gòu)示意圖。如圖所示,該路由交換設(shè)備可包括接收模塊81、發(fā)送模塊82、轉(zhuǎn)發(fā)模塊83,以及至少一個(gè)端口85,還可以進(jìn)一步包括ARP處理模塊84。接收模塊81、發(fā)送模塊82、轉(zhuǎn)發(fā)模塊83和ARP處理模塊84之間通過總線80進(jìn)行信息交互。接收模塊81可通過本設(shè)備的端口85接收報(bào)文,發(fā)送模塊82可通過本設(shè)備的端口85發(fā)送報(bào)文。下面詳細(xì)描述該路由交換設(shè)備中的各功能模塊。接收模塊81用于接收以太網(wǎng)報(bào)文。轉(zhuǎn)發(fā)模塊82用于根據(jù)接收到的以太網(wǎng)報(bào)文的源MAC地址在二層轉(zhuǎn)發(fā)表中執(zhí)行查找,確定查找到的表項(xiàng)中包含映射于所述源MAC地址的MAC地址,則根據(jù)映射于所述源MAC地址的MAC地址替換接收到的以太網(wǎng)報(bào)文中的源MAC地址;根據(jù)接收到的以太網(wǎng)報(bào)文的目的MAC地址在二層轉(zhuǎn)發(fā)表中執(zhí)行查找,確定查找到的表項(xiàng)中未包含映射于所述目的MAC地址的MAC地址,則根據(jù)查找到的表項(xiàng)中的出接口對替換了源MAC地址的以太網(wǎng)報(bào)文進(jìn)行大二層網(wǎng)絡(luò)協(xié)議封裝。發(fā)送模塊83用于發(fā)送大二層網(wǎng)絡(luò)協(xié)議封裝后的以太網(wǎng)報(bào)文。其中,所述大二層網(wǎng)絡(luò)協(xié)議可以是Trill協(xié)議或SPB協(xié)議。具體的,轉(zhuǎn)發(fā)模塊83根據(jù)接收到的以太網(wǎng)報(bào)文的目的MAC地址查找到的表項(xiàng)為關(guān)聯(lián)于同一數(shù)據(jù)中心內(nèi)的一個(gè)其它接入層設(shè)備的接入設(shè)備表項(xiàng)。相應(yīng)的,轉(zhuǎn)發(fā)模塊83將查找到的接入設(shè)備表項(xiàng)中到達(dá)所述接入設(shè)備表項(xiàng)所關(guān)聯(lián)的接入層設(shè)備的出接口,作為大二層網(wǎng)絡(luò)協(xié)議封裝中的出口信息,對替換了源MAC地址的以太網(wǎng)報(bào)文進(jìn)行大二層網(wǎng)絡(luò)協(xié)議封裝;發(fā)送模塊82從查找到的接入設(shè)備表項(xiàng)中的出接口向到達(dá)所述接入設(shè)備表項(xiàng)所關(guān)聯(lián)的接入層設(shè)備發(fā)送大二層網(wǎng)絡(luò)協(xié)議封裝后的以太網(wǎng)報(bào)文。具體的,轉(zhuǎn)發(fā)模塊84根據(jù)接收到的以太網(wǎng)報(bào)文的目的MAC地址查找到的表項(xiàng)為關(guān)聯(lián)于其它數(shù)據(jù)中心的數(shù)據(jù)中心表項(xiàng)。相應(yīng)的,轉(zhuǎn)發(fā)模塊82將查找到的數(shù)據(jù)中心表項(xiàng)中到達(dá)所述數(shù)據(jù)中心表項(xiàng)所關(guān)聯(lián)的數(shù)據(jù)中心的出接口,作為大二層網(wǎng)絡(luò)協(xié)議封裝中的出口信息,對替換了源MAC地址的以太網(wǎng)報(bào)文進(jìn)行大二層網(wǎng)絡(luò)協(xié)議封裝;發(fā)送模塊82從查找到的數(shù)據(jù)中心表項(xiàng)中的出接口向到達(dá)所述數(shù)據(jù)中心表項(xiàng)所關(guān)聯(lián)的數(shù)據(jù)中心發(fā)送大二層網(wǎng)絡(luò)協(xié)議封裝后的以太網(wǎng)報(bào)文。具體的,轉(zhuǎn)發(fā)模塊83根據(jù)接收到的以太網(wǎng)報(bào)文的目的MAC地址查找到的表項(xiàng)為網(wǎng)關(guān)轉(zhuǎn)發(fā)表項(xiàng)。相應(yīng)的,轉(zhuǎn)發(fā)模塊83將查找到的網(wǎng)關(guān)轉(zhuǎn)發(fā)表項(xiàng)中指向所述網(wǎng)關(guān)的出接口,作為大二層網(wǎng)絡(luò)協(xié)議封裝中的出口信息,對替換了源MAC地址的以太網(wǎng)報(bào)文進(jìn)行大二層網(wǎng)絡(luò)協(xié)議封裝;發(fā)送模塊82從查找到的網(wǎng)關(guān)轉(zhuǎn)發(fā)表項(xiàng)中的出接口向所指向的網(wǎng)關(guān)發(fā)送大二層網(wǎng)絡(luò)協(xié)議封裝后的以太網(wǎng)報(bào)文。具體的,接收模塊81接收到的所述以太網(wǎng)報(bào)文為組播報(bào)文。相應(yīng)的,轉(zhuǎn)發(fā)模塊83根據(jù)接收到的以太網(wǎng)報(bào)文的目的MAC地址查找到的表項(xiàng)為組播轉(zhuǎn)發(fā)表項(xiàng),所述組播轉(zhuǎn)發(fā)表項(xiàng)的出接口包含指向所述組播組的組播樹的樹根的出接口;轉(zhuǎn)發(fā)模塊83將查找到的組播轉(zhuǎn)發(fā)表項(xiàng)中指向所述組播組的組播樹的樹根的出接口,作為大二層網(wǎng)絡(luò)協(xié)議封裝中的出口信息,對替換了源MAC地址的以太網(wǎng)報(bào)文進(jìn)行大二層網(wǎng)絡(luò)協(xié)議封裝;發(fā)送模塊82從查找到的組播轉(zhuǎn)發(fā)表項(xiàng)中的出接口向所述組播組的組播樹的樹根發(fā)送大二層網(wǎng)絡(luò)協(xié)議封裝后的組播報(bào)文。具體的,接收模塊81接收到的以太網(wǎng)報(bào)文為組播報(bào)文。相應(yīng)的,轉(zhuǎn)發(fā)模塊83根據(jù)接收到的以太網(wǎng)報(bào)文的目的MAC地址查找到的表項(xiàng)為組播轉(zhuǎn)發(fā)表項(xiàng),所述組播轉(zhuǎn)發(fā)表項(xiàng)的出接口包含指向組播接收端的出端口;發(fā)送模塊82根據(jù)查找到的組播轉(zhuǎn)發(fā)表項(xiàng)中的出接口向所指向的組播接收客戶端發(fā)送替換了源MAC地址的組播報(bào)文。進(jìn)一步的,轉(zhuǎn)發(fā)模塊83根據(jù)接收到的以太網(wǎng)報(bào)文的目的MAC地址在二層轉(zhuǎn)發(fā)表中執(zhí)行查找時(shí),確定查找到的表項(xiàng)中包含映射于所述目的MAC地址的MAC地址,則根據(jù)所述映射于所述目的MAC地址的MAC地址替換接收到的以太網(wǎng)報(bào)文中的目的MAC地址。相應(yīng)的,發(fā)送模塊82根據(jù)查找到的表項(xiàng)中的出端口發(fā)送替換了源MAC地址和目的MAC地址的以太網(wǎng)報(bào)文。進(jìn)一步的,接收模塊81還用于接收大二層網(wǎng)絡(luò)協(xié)議封裝的以太網(wǎng)報(bào)文。相應(yīng)的,轉(zhuǎn)發(fā)模塊83還用于根據(jù)所述以太網(wǎng)報(bào)文的大二層網(wǎng)絡(luò)協(xié)議封裝確定本設(shè)備為所述大二層網(wǎng)絡(luò)協(xié)議封裝的以太網(wǎng)報(bào)文的目的設(shè)備,則解除大二層網(wǎng)絡(luò)協(xié)議封裝;根據(jù)解封裝后的以太網(wǎng)報(bào)文的目的MAC地址在二層轉(zhuǎn)發(fā)表中執(zhí)行查找,根據(jù)與所述目的MAC地址匹配的二層轉(zhuǎn)發(fā)表項(xiàng)中映射于所述目的MAC地址的MAC地址,替換解封裝后的以太網(wǎng)報(bào)文的目的MAC地址;發(fā)送模塊82還用于通過與所述目的MAC地址匹配的二層轉(zhuǎn)發(fā)表項(xiàng)的出端口發(fā)送替換了目的MAC地址的以太網(wǎng)報(bào)文。進(jìn)一步的,接收模塊還用于接收ARP請求報(bào)文。相應(yīng)的,ARP處理模塊84將收到的ARP請求報(bào)文轉(zhuǎn)換為私有ARP請求報(bào)文;根據(jù)所述私有ARP報(bào)文的源MAC地址和目的MAC地址在所述二層轉(zhuǎn)發(fā)表中執(zhí)行查找;根據(jù)所述私有ARP報(bào)文的目的MAC地址的匹配表項(xiàng)中到達(dá)大二層網(wǎng)絡(luò)內(nèi)網(wǎng)關(guān)的出接口對替換了私有ARP報(bào)文進(jìn)行大二層網(wǎng)絡(luò)協(xié)議封裝;發(fā)送模塊82還用于發(fā)送大二層網(wǎng)絡(luò)協(xié)議封裝后的ARP請求報(bào)文。進(jìn)一步的,接收模塊81還用于接收大二層網(wǎng)絡(luò)協(xié)議封裝的私有ARP響應(yīng)報(bào)文。相應(yīng)的,ARP處理模塊84還用于解除大二層網(wǎng)絡(luò)協(xié)議封裝,將私有ARP響應(yīng)報(bào)文轉(zhuǎn)換為帶有以太網(wǎng)頭的ARP響應(yīng)報(bào)文,根據(jù)所述ARP響應(yīng)報(bào)文的目的MAC地址的匹配表項(xiàng)的映射MAC地址替換所述ARP響應(yīng)報(bào)文的目的MAC地址;發(fā)送模塊82還用于根據(jù)所述ARP響應(yīng)報(bào)文的目的MAC地址的匹配表項(xiàng)的出端口發(fā)送替換了目的MAC地址的ARP響應(yīng)報(bào)文。本發(fā)明實(shí)施例在實(shí)現(xiàn)方式上,如果對于處理性能要求很高的以太網(wǎng)交換機(jī)設(shè)備來說,需要使用硬件ASIC的方式來實(shí)現(xiàn),如果性能要求不高,如路由器,vswitch等,可以使用純軟件的方式來實(shí)現(xiàn)。通過以上的實(shí)施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到本發(fā)明可借助軟件加必需的通用硬件平臺(tái)的方式來實(shí)現(xiàn),當(dāng)然也可以通過硬件?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì)算機(jī)軟件產(chǎn)品存儲(chǔ)在一個(gè)存儲(chǔ)介質(zhì)中,包括若干指令用以使得一臺(tái)設(shè)備執(zhí)行本發(fā)明各個(gè)實(shí)施例所述的方法。以上所述僅是本發(fā)明的優(yōu)選實(shí)施方式,應(yīng)當(dāng)指出,對于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以做出若干改進(jìn)和潤飾,這些改進(jìn)和潤飾也應(yīng)視本發(fā)明的保護(hù)范圍。