
本申請涉及網(wǎng)絡(luò)通信
技術(shù)領(lǐng)域:
,特別涉及一種故障處理方法及裝置。
背景技術(shù):
:EVPN(EthernetVirtualPrivateNetwork,以太網(wǎng)虛擬專用網(wǎng)絡(luò))是一種二層VPN技術(shù),在控制平面上采用BGP(BorderGatewayProtocol,邊界網(wǎng)關(guān)協(xié)議)通告路由信息,在數(shù)據(jù)平面上采用VXLAN(VirtualeXtensibleLAN,可擴(kuò)展虛擬局域網(wǎng)絡(luò))封裝方式轉(zhuǎn)發(fā)用戶報(bào)文。租戶的物理站點(diǎn)(Site)分散在不同位置時(shí),EVPN可以基于已有的服務(wù)提供商或企業(yè)IP(InternetProtocol,因特網(wǎng)協(xié)議)網(wǎng)絡(luò),為同一租戶的相同子網(wǎng)提供二層互聯(lián);通過EVPN網(wǎng)關(guān)為同一租戶的不同子網(wǎng)提供三層互聯(lián),并為其提供與外部網(wǎng)絡(luò)的三層互聯(lián)。在基本的EVPN組網(wǎng)架構(gòu)中主要包括:VM(VirtualMachine,虛擬機(jī))、CE(CustomerEdge,用戶邊緣)設(shè)備和VTEP(VXLANTunnelEndPoint,VXLAN隧道端點(diǎn))。目前,為了提高EVPN的可靠性,通常會采用如圖1所示的分布式聚合方案。在如圖1所示的組網(wǎng)中,VTEP11和VTEP12組成一個(gè)DR(DistributedRelay,分布式聚合)系統(tǒng),VTEP11和VTEP12通過分布式聚合口與CE設(shè)備連接,CE設(shè)備通過普通聚合口與VTEP11和VTEP12連接。VTEP11和VTEP12連接GW(網(wǎng)關(guān))設(shè)備,VTEP11和VTEP12在與GW設(shè)備建立了BGP鄰居關(guān)系之后,使用相同的IP地址與GW設(shè)備建立VXLAN隧道。VTEP11與VTEP12之間通過IPL(IntraPortalLink,分布式聚合內(nèi)部鏈路)連接,通過IPL進(jìn)行協(xié)議報(bào)文交互和信息同步。假設(shè),在正常情況下,GW設(shè)備→CE設(shè)備方向的數(shù)據(jù)報(bào)文的轉(zhuǎn)發(fā)路徑為GW設(shè)備→VTEP11→CE設(shè)備。但是,在VTEP11與CE設(shè)備之間的鏈路發(fā)生故障之后,轉(zhuǎn)發(fā)路徑就會變更為GW設(shè)備→VTEP11→VTEP12→CE設(shè)備。這樣,IPL上就需要承載數(shù)據(jù)報(bào)文,從而會影響VTEP之間的協(xié)議報(bào)文交互和信息同步。技術(shù)實(shí)現(xiàn)要素:有鑒于此,本申請?zhí)峁┮环N故障處理方法及裝置。具體地,本申請是通過如下技術(shù)方案實(shí)現(xiàn)的:一方面,提供了一種故障處理方法,EVPN中的CE設(shè)備連接分布式聚合系統(tǒng)中的兩個(gè)以上VTEP,這兩個(gè)以上VTEP分別與網(wǎng)關(guān)設(shè)備建立鄰居關(guān)系,該方法應(yīng)用于這兩個(gè)以上VTEP中的任一VTEP,該方法包括:當(dāng)檢測到本VTEP與CE設(shè)備之間的AC鏈路不可用時(shí),確定與該AC鏈路對應(yīng)的AC接口以及與該AC接口對應(yīng)的VXLAN,根據(jù)該AC接口和該VXLAN確定對應(yīng)的MAC地址;將該VXLAN的ID以及該MAC地址攜帶在鏈路故障消息中發(fā)送給網(wǎng)關(guān)設(shè)備,以使網(wǎng)關(guān)設(shè)備根據(jù)該VXLAN的ID和該MAC地址確定對應(yīng)的VXLAN隧道,停止使用該VXLAN隧道對應(yīng)的網(wǎng)關(guān)設(shè)備與本VTEP之間的鏈路。另一方面,還提供了一種故障處理方法,EVPN中的CE設(shè)備連接分布式聚合系統(tǒng)中的兩個(gè)以上VTEP,這兩個(gè)以上VTEP分別與網(wǎng)關(guān)設(shè)備建立鄰居關(guān)系,該方法應(yīng)用于網(wǎng)關(guān)設(shè)備,該方法包括:接收VTEP發(fā)來的鏈路故障消息,其中,鏈路故障消息中攜帶有VXLANID以及MAC地址;根據(jù)該VXLANID和該MAC地址確定對應(yīng)的VXLAN隧道;停止使用該VXLAN隧道對應(yīng)的本設(shè)備與該VTEP之間的鏈路。另一方面,提供了一種故障處理裝置,EVPN中的CE設(shè)備連接分布式聚合系統(tǒng)中的兩個(gè)以上VTEP,這兩個(gè)以上VTEP分別與網(wǎng)關(guān)設(shè)備建立鄰居關(guān)系,該裝置應(yīng)用于兩個(gè)以上VTEP中的任一VTEP中,該裝置包括:檢測單元,用于檢測本VTEP與CE設(shè)備之間的AC鏈路的狀態(tài);查找單元,用于當(dāng)檢測單元檢測到本VTEP與CE設(shè)備之間的AC鏈路不可用時(shí),確定與該AC鏈路對應(yīng)的AC接口以及與該AC接口對應(yīng)的VXLAN,根據(jù)該AC接口和該VXLAN確定對應(yīng)的MAC地址;發(fā)送單元,用于將查找單元確定的VXLAN的ID以及MAC地址攜帶在鏈路故障消息中發(fā)送給網(wǎng)關(guān)設(shè)備,以使網(wǎng)關(guān)設(shè)備根據(jù)該VXLAN的ID和該MAC地址確定對應(yīng)的VXLAN隧道,停止使用該VXLAN隧道對應(yīng)的網(wǎng)關(guān)設(shè)備與本VTEP之間的鏈路。又一方面,還提供了一種故障處理裝置,EVPN中的CE設(shè)備連接分布式聚合系統(tǒng)中的兩個(gè)以上VTEP,這兩個(gè)以上VTEP分別與網(wǎng)關(guān)設(shè)備建立鄰居關(guān)系,該裝置應(yīng)用于網(wǎng)關(guān)設(shè)備,該裝置包括:接收單元,用于接收VTEP發(fā)來的鏈路故障消息,其中,鏈路故障消息中攜帶有VXLANID以及MAC地址;處理單元,用于在接收單元接收到該鏈路故障消息之后,根據(jù)該VXLANID和該MAC地址確定對應(yīng)的VXLAN隧道,停止使用該VXLAN隧道對應(yīng)的本設(shè)備與該VTEP之間的鏈路。通過本申請的以上技術(shù)方案,由于VTEP在檢測到本VTEP與CE設(shè)備之間的AC鏈路不可用時(shí),將對應(yīng)的MAC地址通告給了GW設(shè)備,因此,GW設(shè)備可以確定與該MAC地址對應(yīng)的VXLAN隧道,停止使用該VXLAN隧道對應(yīng)的GW設(shè)備與該VTEP之間的鏈路,這樣,GW設(shè)備會將用戶報(bào)文通過該VXLAN隧道轉(zhuǎn)發(fā)給其它VTEP,由該其它VTEP轉(zhuǎn)發(fā)給CE設(shè)備,從而避免了現(xiàn)有技術(shù)中存在的需要由IPL承載數(shù)據(jù)報(bào)文的問題,減輕了IPL的壓力。附圖說明圖1是GW設(shè)備→CE設(shè)備方向的報(bào)文轉(zhuǎn)發(fā)路徑示意圖;圖2是在VTEP11與CE設(shè)備之間的鏈路不可用時(shí),按照現(xiàn)有技術(shù)進(jìn)行路徑變更后的GW設(shè)備→CE設(shè)備方向的報(bào)文轉(zhuǎn)發(fā)路徑示意圖;圖3是在VTEP11與CE設(shè)備之間的鏈路不可用時(shí),VTEP11執(zhí)行的本申請實(shí)施例的故障處理方法的流程圖;圖4是在VTEP11與CE設(shè)備之間的鏈路不可用時(shí),按照本申請實(shí)施例進(jìn)行路徑變更后的GW設(shè)備→CE設(shè)備方向的報(bào)文轉(zhuǎn)發(fā)路徑示意圖;圖5是示出了CE設(shè)備→GW設(shè)備方向的報(bào)文轉(zhuǎn)發(fā)路徑示意圖;圖6是在GW設(shè)備與VTEP11之間的鏈路不可用時(shí),按照現(xiàn)有技術(shù)進(jìn)行路徑變更后的CE設(shè)備→GW設(shè)備方向的報(bào)文轉(zhuǎn)發(fā)路徑示意圖;圖7是在GW設(shè)備與VTEP11之間的鏈路不可用時(shí),按照本申請實(shí)施例進(jìn)行路徑變更后的CE設(shè)備→GW設(shè)備方向的報(bào)文轉(zhuǎn)發(fā)路徑示意圖;圖8是本申請一示例性實(shí)施例示出的故障處理裝置所在VTEP或網(wǎng)關(guān)設(shè)備的硬件結(jié)構(gòu)示意圖;圖9是本申請一示例性實(shí)施例示出的VTEP中的故障處理裝置的一種結(jié)構(gòu)示意圖;圖10是本申請一示例性實(shí)施例示出的VTEP中的故障處理裝置的另一種結(jié)構(gòu)示意圖;圖11是本申請一示例性實(shí)施例示出的網(wǎng)關(guān)設(shè)備中的故障處理裝置的結(jié)構(gòu)示意圖。具體實(shí)施方式這里將詳細(xì)地對示例性實(shí)施例進(jìn)行說明,其示例表示在附圖中。下面的描述涉及附圖時(shí),除非另有表示,不同附圖中的相同數(shù)字表示相同或相似的要素。以下示例性實(shí)施例中所描述的實(shí)施方式并不代表與本申請相一致的所有實(shí)施方式。相反,它們僅是與如所附權(quán)利要求書中所詳述的、本申請的一些方面相一致的裝置和方法的例子。在本申請使用的術(shù)語是僅僅出于描述特定實(shí)施例的目的,而非旨在限制本申請。在本申請和所附權(quán)利要求書中所使用的單數(shù)形式的“一種”、“所述”和“該”也旨在包括多數(shù)形式,除非上下文清楚地表示其他含義。還應(yīng)當(dāng)理解,本文中使用的術(shù)語“和/或”是指并包含一個(gè)或多個(gè)相關(guān)聯(lián)的列出項(xiàng)目的任何或所有可能組合。應(yīng)當(dāng)理解,盡管在本申請可能采用術(shù)語第一、第二、第三等來描述各種信息,但這些信息不應(yīng)限于這些術(shù)語。這些術(shù)語僅用來將同一類型的信息彼此區(qū)分開。例如,在不脫離本申請范圍的情況下,第一信息也可以被稱為第二信息,類似地,第二信息也可以被稱為第一信息。取決于語境,如在此所使用的詞語“如果”可以被解釋成為“在……時(shí)”或“當(dāng)……時(shí)”或“響應(yīng)于確定”。在如圖1所示的采用分布式聚合方案的組網(wǎng)中,VTEP11和VTEP12組成一個(gè)分布式聚合系統(tǒng),VTEP11和VTEP12通過分布式聚合口與CE設(shè)備連接,CE設(shè)備通過普通聚合口與VTEP11和VTEP12連接。具體的,CE設(shè)備上連接VTEP11的端口PortC和連接VTEP12的端口PortD加入普通聚合組AGG100中;VTEP11上連接CE設(shè)備的端口PortA加入groupID(組ID)為200的分布式聚合組DR200中,并且,在該聚合組DR200上創(chuàng)建AC(AttachmentCircuit,接入電路)接口;VTEP12上連接CE設(shè)備的端口PortB加入groupID為200的分布式聚合組DR200中,并且,在該分布式聚合組DR200上創(chuàng)建AC接口。VTEP11和VTEP12連接GW設(shè)備。VTEP11在使用IP21與GW設(shè)備建立了BGP鄰居關(guān)系之后,使用IP22與GW設(shè)備建立VXLAN隧道Tunnel0;VTEP12在使用IP23與GW設(shè)備建立了BGP鄰居關(guān)系之后,使用IP22與GW設(shè)備建立VXLAN隧道Tunnel0。這樣,在GW設(shè)備上,Tunnel0的目的IP地址為IP22,Tunnel0對應(yīng)2個(gè)下一跳設(shè)備VTEP11和VTEP12。VTEP11與VTEP12之間通過IPL連接,通過IPL進(jìn)行協(xié)議報(bào)文交互和信息同步,例如,同步學(xué)習(xí)到的本地VM的MAC地址。下面簡單介紹如圖1所示的網(wǎng)絡(luò)中的各個(gè)設(shè)備的MAC地址學(xué)習(xí)過程和報(bào)文轉(zhuǎn)發(fā)過程。VTEP11在通過PortA接收到本地VM41發(fā)出的用戶報(bào)文之后,確定該用戶報(bào)文所屬的VXLAN,記為VXLAN10,在VXLAN10對應(yīng)的MAC地址表中添加如表1-1所示的MAC表項(xiàng):表1-1MAC地址出接口VM41-MACTag(標(biāo)簽)為31的AC接口AC31其中,VM41-MAC是該用戶報(bào)文的源MAC地址,AC31是在PortA所屬分布式聚合組DR200上創(chuàng)建的。VTEP11將VM41-MAC通過IPL同步給VTEP12,并且,使用BGP協(xié)議將VM41-MAC同步給GW設(shè)備。VTEP12會在VXLAN10對應(yīng)的MAC地址表中添加如表2-1所示的MAC表項(xiàng),GW設(shè)備會在VXLAN10對應(yīng)的MAC地址表中添加如表3-1所示的MAC表項(xiàng)。表2-1MAC地址出接口VM41-MACTag為31的AC接口AC31表3-1MAC地址出接口VM41-MACTunnel0另外,GW設(shè)備在學(xué)習(xí)到本地VM42的MAC地址VM42-MAC之后,會在所屬VXLAN10對應(yīng)的MAC地址表中添加對應(yīng)的MAC表項(xiàng),此時(shí),表3-1更新為如表3-2所示;然后,GW設(shè)備使用BGP協(xié)議將VM42-MAC同步給VTEP11和VTEP12。VTEP11會在所屬VXLAN10對應(yīng)的MAC地址表中添加對應(yīng)的MAC表項(xiàng),此時(shí),表1-1更新為如表1-2所示;VTEP12會在所屬VXLAN10對應(yīng)的MAC地址表中添加對應(yīng)的MAC表項(xiàng),此時(shí),表2-1更新為如表2-2。表3-2MAC地址出接口VM41-MACTunnel0VM42-MACAC32表1-2MAC地址出接口VM41-MACAC31VM42-MACTunnel0表2-2MAC地址出接口VM41-MACAC31VM42-MACTunnel0此時(shí),GW設(shè)備→CE設(shè)備方向的數(shù)據(jù)報(bào)文的轉(zhuǎn)發(fā)流程如下:GW設(shè)備要發(fā)送用戶報(bào)文時(shí),根據(jù)該用戶報(bào)文的目的MAC地址VM41-MAC,在如表3-2所示的MAC地址表中查找對應(yīng)的出接口,結(jié)果查找到Tunnel0,查找Tunnel0對應(yīng)的下一跳設(shè)備,從查找到的2個(gè)下一跳設(shè)備VTEP11和VTEP12中選擇VTEP11,對該用戶報(bào)文進(jìn)行VXLAN封裝后轉(zhuǎn)發(fā)給VTEP11;VTEP11對接收到的VXLAN報(bào)文進(jìn)行解封裝得到其中的用戶報(bào)文,根據(jù)該用戶報(bào)文的目的MAC地址VM41-MAC,在如表1-2所示的MAC地址表中查找對應(yīng)的出接口,結(jié)果查找到AC31,因此,會通過與AC31對應(yīng)的分布式聚合組DR200中的成員端口PortA將該用戶報(bào)文轉(zhuǎn)發(fā)給CE設(shè)備。此時(shí),如圖1所示,GW設(shè)備→CE設(shè)備方向的數(shù)據(jù)報(bào)文的轉(zhuǎn)發(fā)路徑為GW設(shè)備→VTEP11→CE設(shè)備。當(dāng)VTEP11檢測到本設(shè)備與CE設(shè)備之間的AC鏈路不可用(down)時(shí),按照現(xiàn)有技術(shù),VTEP11會將分布式聚合組DR200中的成員端口PortA置為down,將本設(shè)備上連接IPL的端口PortE加入該分布式聚合組DR200中,從而,GW設(shè)備發(fā)出的VXLAN報(bào)文到達(dá)VTEP11后,VTEP11會對其進(jìn)行解封裝得到用戶報(bào)文,并將該用戶報(bào)文通過與AC31對應(yīng)的分布式聚合組DR200中的成員端口PortE轉(zhuǎn)發(fā)給CE設(shè)備。這樣,如圖2所示,GW設(shè)備→CE設(shè)備方向的數(shù)據(jù)報(bào)文的轉(zhuǎn)發(fā)路徑變更為了GW設(shè)備→VTEP11→VTEP12→CE設(shè)備,導(dǎo)致VTEP11與VTEP12之間的IPL需要承載數(shù)據(jù)報(bào)文,從而影響VTEP11與VTEP12之間的協(xié)議報(bào)文交互和信息同步。為了解決上述問題,本申請實(shí)施例中提供了一種故障處理方法,以及一種可以應(yīng)用該方法的故障處理裝置。該方法可以由如圖1所示的VTEP11和VTEP12中的任一VTEP執(zhí)行,在該方法中,當(dāng)檢測到本VTEP與CE設(shè)備之間的AC鏈路不可用時(shí),確定與該AC鏈路對應(yīng)的AC接口以及與該AC接口對應(yīng)的VXLAN,根據(jù)該AC接口和該VXLAN確定對應(yīng)的MAC地址,然后,將該VXLAN的ID以及該MAC地址攜帶在鏈路故障消息中發(fā)送給GW設(shè)備,以使GW設(shè)備和該MAC地址確定對應(yīng)的VXLAN隧道,停止使用該VXLAN隧道對應(yīng)的網(wǎng)關(guān)設(shè)備與本VTEP之間的鏈路。由于VTEP在檢測到本VTEP與CE設(shè)備之間的AC鏈路不可用時(shí),將對應(yīng)的MAC地址通告給了GW設(shè)備,因此,GW設(shè)備可以確定與該MAC地址對應(yīng)的VXLAN隧道,停止使用該VXLAN隧道對應(yīng)的GW設(shè)備與該VTEP之間的鏈路,這樣,GW設(shè)備會將用戶報(bào)文通過該VXLAN隧道轉(zhuǎn)發(fā)給其它VTEP,由該其它VTEP轉(zhuǎn)發(fā)給CE設(shè)備,從而避免了現(xiàn)有技術(shù)中存在的需要由IPL承載數(shù)據(jù)報(bào)文的問題,減輕了IPL的壓力。下面以圖1所示的組網(wǎng)為例,詳細(xì)介紹本申請實(shí)施例的故障處理方法。VTEP11在檢測到本VTEP與CE設(shè)備之間的鏈路不可用時(shí),會執(zhí)行如圖3所示的步驟:步驟S101,當(dāng)檢測到本VTEP與CE設(shè)備之間的AC鏈路不可用時(shí),確定與該AC鏈路對應(yīng)的AC接口為AC31,并確定與AC31對應(yīng)的VXLAN為VXLAN10,根據(jù)AC31和VXLAN10確定對應(yīng)的MAC地址為VM41-MAC;具體的,確定與該AC鏈路對應(yīng)的AC接口的具體方法可以是:首先確定VTEP11上連接CE設(shè)備的端口PortA所屬的聚合組為分布式聚合組DR200,然后,查找在該分布式聚合組DR200上創(chuàng)建的AC接口,結(jié)果查找到AC31。之后,針對查找到的AC31,確定與AC31對應(yīng)的VXLAN為VXLAN10,從VXLAN10對應(yīng)的MAC地址表(如表1-2所示)中查找包括AC31的MAC表項(xiàng),查找到的MAC表項(xiàng)中的MAC地址VM41-MAC即為與AC31對應(yīng)的MAC地址。步驟S102,將VXLAN10的ID10以及VM41-MAC攜帶在鏈路故障消息中發(fā)送給GW設(shè)備。具體的,為了能夠?qū)XLAN10的ID10以及VM41-MAC通告給GW設(shè)備,本申請實(shí)施例在現(xiàn)有的EVPN路由中新增了一種EVPN路由,可以稱為EVPN6類路由,該類路由用于通告MAC地址的鏈路故障消息。在步驟S102中,VTEP11將VXLAN10的ID10以及VM41-MAC攜帶在EVPN6類路由通告給GW設(shè)備。另外,該EVPN6類路由中還可以攜帶VTEP11建立與GW設(shè)備的VXLAN隧道所使用的IP地址IP22、和/或VTEP11建立與GW設(shè)備的BGP鄰居關(guān)系所使用的IP地址IP21。GW設(shè)備在接收到該EVPN6類路由之后,確定該路由為鏈路故障消息,根據(jù)VXLAN10的ID10以及VM41-MAC確定對應(yīng)的VXLAN隧道為Tunnel0,停止使用Tunnel0對應(yīng)的GW設(shè)備與VTEP11之間的鏈路。例如,GW設(shè)備在接收到該EVPN6類路由之后,在VXLAN10的ID10對應(yīng)的MAC地址表(如表3-2所示)中,查找與VM41-MAC對應(yīng)的VXLAN隧道,從而查找到Tunnel0。在查找到Tunnel0之后,由于GW設(shè)備可以確定出發(fā)來該EVPN6類路由的VTEP為VTEP11,因此,可以停止使用Tunnel0對應(yīng)的GW設(shè)備與VTEP11之間的鏈路。其中,GW設(shè)備確定發(fā)來該EVPN6類路由的VTEP為VTEP11的方式可以有多種,其中一種方式可以是:根據(jù)該EVPN6類路由中攜帶的IP21確定發(fā)來該EVPN6類路由的VTEP為VTEP11。另外,GW設(shè)備在查找到Tunnel0之后,可以先判斷Tunnel0的目的IP地址是否為IP22,和/或判斷BGP鄰居的IP地址中是否存在IP21,若判斷結(jié)果均為是,則停止使用Tunnel0對應(yīng)的GW設(shè)備與VTEP11之間的鏈路。其中,停止使用Tunnel0對應(yīng)的GW設(shè)備與VTEP11之間的鏈路的方法可以是:從Tunnel0的下一跳設(shè)備中刪除VTEP11,這樣刪除后的下一跳設(shè)備中僅包含VTEP12,從而在根據(jù)Tunnel0進(jìn)行報(bào)文轉(zhuǎn)發(fā)時(shí)就只會選擇VTEP12;或者,將Tunnel0的下一跳設(shè)備中的VTEP11置為down,這樣,在根據(jù)Tunnel0進(jìn)行報(bào)文轉(zhuǎn)發(fā)時(shí)就不會再選擇VTEP11。后續(xù),GW設(shè)備→CE設(shè)備方向的數(shù)據(jù)報(bào)文的轉(zhuǎn)發(fā)流程如下:GW設(shè)備要發(fā)送用戶報(bào)文時(shí),根據(jù)該用戶報(bào)文的目的MAC地址VM41-MAC,在如表3-2所示的MAC地址表中查找對應(yīng)的出接口,結(jié)果查找到Tunnel0,然后查找Tunnel0對應(yīng)的下一跳設(shè)備,由于查找到的下一跳設(shè)備中僅包含VTEP12、或者查找到的下一跳設(shè)備中包含的VTEP11置為了down,因此,GW設(shè)備對該用戶報(bào)文進(jìn)行VXLAN封裝后轉(zhuǎn)發(fā)給VTEP12;VTEP12對接收到的VXLAN報(bào)文進(jìn)行解封裝得到其中的用戶報(bào)文,根據(jù)該用戶報(bào)文的目的MAC地址VM41-MAC,在如表2-2所示的MAC地址表中查找對應(yīng)的出接口,結(jié)果查找到AC31,因此,VTEP12會通過與AC31對應(yīng)的分布式聚合組DR200中的成員端口PortB將該用戶報(bào)文轉(zhuǎn)發(fā)給CE設(shè)備。這樣,在VTEP11與CE設(shè)備之間的AC鏈路不可用后,GW設(shè)備→CE設(shè)備方向的數(shù)據(jù)報(bào)文的轉(zhuǎn)發(fā)路徑變更為了GW設(shè)備→VTEP12→CE設(shè)備,此時(shí),IPL無需再承載數(shù)據(jù)報(bào)文,如圖4所示。后續(xù),當(dāng)VTEP11檢測到本VTEP與CE設(shè)備之間的AC鏈路恢復(fù)可用(up)時(shí),VTEP11會將VXLAN10的ID以及VM41-MAC攜帶在MAC地址同步消息中發(fā)送給GW設(shè)備,GW設(shè)備在接收到該MAC地址同步消息之后,即可根據(jù)VXLAN10的ID10以及VM41-MAC確定對應(yīng)的VXLAN隧道為Tunnel0,使用Tunnel0對應(yīng)的GW設(shè)備與VTEP11之間的鏈路。例如,GW設(shè)備在接收到該MAC地址同步消息之后,在VXLAN10對應(yīng)的MAC地址表(如表3-2所示)中,查找與VM41-MAC對應(yīng)的VXLAN隧道為Tunnel0,然后,使用Tunnel0對應(yīng)的GW設(shè)備與VTEP11之間的鏈路。其中,使用Tunnel0對應(yīng)的GW設(shè)備與VTEP11之間的鏈路的方法可以是:將VTEP11添加到Tunnel0的下一跳設(shè)備中,添加后的下一跳設(shè)備中包含VTEP11和VTEP12,這樣,在根據(jù)Tunnel0轉(zhuǎn)發(fā)報(bào)文時(shí)可以選擇VTEP11或VTEP12;或者,將Tunnel0的下一跳設(shè)備中包含的VTEP11置為up,這樣,在根據(jù)Tunnel0轉(zhuǎn)發(fā)報(bào)文時(shí)可以選擇VTEP11或VTEP12。此時(shí),GW設(shè)備→CE設(shè)備方向的數(shù)據(jù)報(bào)文仍然可以通過轉(zhuǎn)發(fā)路徑GW設(shè)備→VTEP11→CE設(shè)備進(jìn)行轉(zhuǎn)發(fā)。其中,MAC地址同步消息即為現(xiàn)有的EVPN2類路由。此外,在現(xiàn)有技術(shù)中,如圖5所示,CE設(shè)備→GW設(shè)備方向的數(shù)據(jù)報(bào)文通過轉(zhuǎn)發(fā)路徑CE設(shè)備→VTEP11→GW設(shè)備轉(zhuǎn)發(fā)時(shí),如果VTEP11與GW設(shè)備之間的鏈路不可用,則VTEP11會將出接口為Tunnel0的MAC表項(xiàng)刪除,此時(shí),表1-2更新為如表1-1所示。后續(xù),在接收到CE設(shè)備發(fā)來的用戶報(bào)文之后,VTEP11根據(jù)該用戶報(bào)文的目的MAC地址VM42-MAC在如表1-1所示的MAC地址表中查找不到對應(yīng)的出接口,則將該用戶報(bào)文通過IPL轉(zhuǎn)發(fā)給VTEP12,VTEP12根據(jù)該用戶報(bào)文的目的MAC地址VM42-MAC,在如表2-2所示的MAC地址表中查找對應(yīng)的出接口為Tunnel0,從而對該用戶報(bào)文進(jìn)行VXLAN封裝后轉(zhuǎn)發(fā)給GW設(shè)備,如圖6所示,但是,這樣同樣存在需要由IPL承載數(shù)據(jù)報(bào)文的問題。為了解決上述問題,本申請實(shí)施例中,VTEP11在檢測到本VTEP與GW設(shè)備之間的鏈路不可用時(shí),阻塞本VTEP上連接CE設(shè)備的端口,這樣,CE設(shè)備在檢測到本設(shè)備與VTEP11之間的鏈路不可用時(shí),會確定本設(shè)備上連接VTEP11的端口PortC所屬的聚合組AGG100,然后,將該聚合組AGG100中的成員端口PortC置為down。后續(xù),CE設(shè)備在接收到用戶報(bào)文之后,就不會再選擇聚合組AGG100中的成員端口PortC,而是選擇成員端口PortD,將該用戶報(bào)文通過PortD轉(zhuǎn)發(fā)給VTEP12,由VTEP12通過VXLAN隧道轉(zhuǎn)發(fā)給GW設(shè)備,如圖7所示,從而避免了現(xiàn)有技術(shù)中存在的需要由IPL承載數(shù)據(jù)報(bào)文的問題。另外,在檢測到本VTEP與網(wǎng)關(guān)設(shè)備之間的鏈路恢復(fù)可用時(shí),VTEP11會開啟本VTEP上連接CE設(shè)備的端口,這樣,CE設(shè)備在檢測到本設(shè)備與VTEP11之間的鏈路恢復(fù)可用時(shí),會確定本設(shè)備上連接VTEP11的端口PortC所屬的聚合組AGG100,然后,將聚合組AGG100中的成員端口PortC置為up。后續(xù),CE設(shè)備在接收到用戶報(bào)文之后,可以從聚合組AGG100包含的成員端口PortC和PortD中選擇一個(gè)成員端口,如果選擇的成員端口為PortC,則通過PortC將該用戶報(bào)文轉(zhuǎn)發(fā)給VTEP11,由VTEP11通過VXLAN隧道轉(zhuǎn)發(fā)給GW設(shè)備。顯然,在采用分布式聚合方案的組網(wǎng)中,分布式聚合系統(tǒng)中也可以包含三個(gè)甚至更多的VTEP,CE設(shè)備通過普通聚合口與這些VTEP連接,這些VTEP分別與GW設(shè)備建立鄰居關(guān)系,并且,這些VTEP使用相同的IP地址與該GW設(shè)備建立VXLAN隧道,這些VTEP中的任意兩個(gè)VTEP之間通過IPL連接。此時(shí),這些VTEP中的任一VTEP依然可以執(zhí)行本申請上述實(shí)施例的故障處理方法,來解決現(xiàn)有技術(shù)中存在的需要由IPL承載數(shù)據(jù)報(bào)文的問題。與前述故障處理方法的實(shí)施例相對應(yīng),本申請還提供了故障處理裝置的實(shí)施例。一種實(shí)施例中,本申請故障處理裝置306的實(shí)施例可以應(yīng)用在VTEP上。裝置實(shí)施例可以通過軟件實(shí)現(xiàn),也可以通過硬件或者軟硬件結(jié)合的方式實(shí)現(xiàn)。以軟件實(shí)現(xiàn)為例,作為一個(gè)邏輯意義上的裝置,是通過其所在VTEP的處理器301將非易失性存儲器305中對應(yīng)的計(jì)算機(jī)程序指令讀取到內(nèi)存304中運(yùn)行形成的。從硬件層面而言,如圖8所示,為本申請故障處理裝置306所在VTEP的一種硬件結(jié)構(gòu)圖,除了圖8所示的處理器301、內(nèi)部總線302、網(wǎng)絡(luò)接口303、內(nèi)存304、以及非易失性存儲器305之外,實(shí)施例中裝置所在的VTEP通常根據(jù)該VTEP的實(shí)際功能,還可以包括其他硬件,對此不再贅述。請參考圖9,本申請實(shí)施例的VTEP中的故障處理裝置306中包括:檢測單元601、查找單元602和發(fā)送單元603,其中:檢測單元601,用于檢測本VTEP與CE設(shè)備之間的AC鏈路的狀態(tài);查找單元602,用于當(dāng)檢測單元601檢測到本VTEP與CE設(shè)備之間的AC鏈路不可用時(shí),確定與該AC鏈路對應(yīng)的AC接口以及與該AC接口對應(yīng)的VXLAN,根據(jù)該AC接口和該VXLAN確定對應(yīng)的MAC地址;發(fā)送單元603,用于將查找單元602確定的VXLAN的ID以及MAC地址攜帶在鏈路故障消息中發(fā)送給網(wǎng)關(guān)設(shè)備,以使網(wǎng)關(guān)設(shè)備根據(jù)該VXLAN的ID和該MAC地址確定對應(yīng)的VXLAN隧道,停止使用該VXLAN隧道對應(yīng)的網(wǎng)關(guān)設(shè)備與該VTEP(即本VTEP)之間的鏈路。其中,發(fā)送單元603,還用于當(dāng)檢測單元601檢測到本VTEP與CE設(shè)備之間的AC鏈路恢復(fù)可用時(shí),將查找單元602確定的VXLAN的ID以及MAC地址攜帶在MAC地址同步消息中發(fā)送給網(wǎng)關(guān)設(shè)備,以使網(wǎng)關(guān)設(shè)備根據(jù)該VXLAN的ID和該MAC地址確定對應(yīng)的VXLAN隧道,使用該VXLAN隧道對應(yīng)的網(wǎng)關(guān)設(shè)備與該VTEP(即本VTEP)之間的鏈路。其中,查找單元602具體用于通過以下方式確定與該AC鏈路對應(yīng)的AC接口:確定本VTEP上連接CE設(shè)備的端口所屬的聚合組;查找在該聚合組上創(chuàng)建的AC接口。另外,如圖10所示,上述VTEP中的故障處理裝置306中還可以包括:處理單元604,其中:檢測單元601,還用于檢測本VTEP與網(wǎng)關(guān)設(shè)備之間的鏈路的狀態(tài);處理單元604,用于當(dāng)檢測單元601檢測到本VTEP與網(wǎng)關(guān)設(shè)備之間的鏈路不可用時(shí),阻塞本VTEP上連接CE設(shè)備的端口。其中,處理單元604,還用于當(dāng)檢測單元601檢測到本VTEP與網(wǎng)關(guān)設(shè)備之間的鏈路恢復(fù)可用時(shí),開啟本VTEP上連接CE設(shè)備的端口。另一種實(shí)施例中,本申請故障處理裝置306可以應(yīng)用在網(wǎng)關(guān)設(shè)備上。裝置實(shí)施例可以通過軟件實(shí)現(xiàn),也可以通過硬件或者軟硬件結(jié)合的方式實(shí)現(xiàn)。以軟件實(shí)現(xiàn)為例,作為一個(gè)邏輯意義上的裝置,是通過其所在網(wǎng)關(guān)設(shè)備的處理器將非易失性存儲器中對應(yīng)的計(jì)算機(jī)程序指令讀取到內(nèi)存中運(yùn)行形成的。從硬件層面而言,本實(shí)施例中的故障處理裝置306所在網(wǎng)關(guān)設(shè)備的一種硬件結(jié)構(gòu)如圖8所示。如圖11所示,本申請實(shí)施例的網(wǎng)關(guān)設(shè)備中的故障處理裝置306中包括:接收單元701,用于接收VTEP發(fā)來的鏈路故障消息,其中,鏈路故障消息中攜帶有VXLANID以及MAC地址;處理單元702,用于在接收單元701接收到鏈路故障消息之后,根據(jù)鏈路故障消息中攜帶的VXLANID和MAC地址確定對應(yīng)的VXLAN隧道,停止使用該VXLAN隧道對應(yīng)的本設(shè)備與該VTEP(即發(fā)來鏈路故障消息的VTEP)之間的鏈路。其中,接收單元701,還用于接收VTEP發(fā)來的MAC地址同步消息,其中,MAC地址同步消息中攜帶有VXLANID以及MAC地址;處理單元702,還用于在接收單元701接收到MAC地址同步消息之后,根據(jù)MAC地址同步消息中攜帶的VXLANID和MAC地址確定對應(yīng)的VXLAN隧道,使用該VXLAN隧道對應(yīng)的本設(shè)備與該VTEP(即發(fā)來MAC地址同步消息的VTEP)之間的鏈路。上述裝置中各個(gè)單元的功能和作用的實(shí)現(xiàn)過程具體詳見上述方法中對應(yīng)步驟的實(shí)現(xiàn)過程,在此不再贅述。對于裝置實(shí)施例而言,由于其基本對應(yīng)于方法實(shí)施例,所以相關(guān)之處參見方法實(shí)施例的部分說明即可。以上所描述的裝置實(shí)施例僅僅是示意性的,其中所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個(gè)地方,或者也可以分布到多個(gè)網(wǎng)絡(luò)單元上??梢愿鶕?jù)實(shí)際的需要選擇其中的部分或者全部模塊來實(shí)現(xiàn)本申請方案的目的。本領(lǐng)域普通技術(shù)人員在不付出創(chuàng)造性勞動的情況下,即可以理解并實(shí)施。以上所述僅為本申請的較佳實(shí)施例而已,并不用以限制本申請,凡在本申請的精神和原則之內(nèi),所做的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本申請保護(hù)的范圍之內(nèi)。當(dāng)前第1頁1 2 3