針對(duì)網(wǎng)絡(luò)服務(wù)可用性的技術(shù)的制作方法
【專利摘要】提供了一種用于觸發(fā)媒體接入控制(MAC)地址和交換機(jī)端口之間的關(guān)聯(lián)的技術(shù)。所述關(guān)聯(lián)允許經(jīng)由所關(guān)聯(lián)的交換機(jī)端口轉(zhuǎn)發(fā)包括MAC地址作為目的地MAC地址的數(shù)據(jù)幀。關(guān)于所述技術(shù)的方法方面,接收從節(jié)點(diǎn)(18)發(fā)出的數(shù)據(jù)幀。所述數(shù)據(jù)幀包括發(fā)出節(jié)點(diǎn)(18)的MAC地址作為源MAC地址。存儲(chǔ)包括所述MAC地址的所述數(shù)據(jù)幀。成功地向第一交換機(jī)端口(112)發(fā)送所述數(shù)據(jù)幀。響應(yīng)于去往第一交換機(jī)端口(112)的第一鏈路(122)的故障,向與第一交換機(jī)端口(112)不同的第二交換機(jī)端口(114、116)重新發(fā)送所存儲(chǔ)的數(shù)據(jù)幀,以觸發(fā)第二交換機(jī)端口(114、116)與發(fā)出節(jié)點(diǎn)(18)的MAC地址之間的關(guān)聯(lián)。
【專利說明】
針對(duì)網(wǎng)絡(luò)服務(wù)可用性的技術(shù)
技術(shù)領(lǐng)域
[0001]本公開一般地涉及用于提供網(wǎng)絡(luò)服務(wù)的技術(shù)。具體地且非限制地,本公開涉及用于以特定服務(wù)質(zhì)量提供網(wǎng)絡(luò)服務(wù)的設(shè)備和方法。
【背景技術(shù)】
[0002]為了實(shí)現(xiàn)網(wǎng)絡(luò)服務(wù)的高可用性,網(wǎng)絡(luò)組件之間的備選鏈路提供備用路徑。例如,傳統(tǒng)地使用開放系統(tǒng)互連(OSI)模型的層2上的保護(hù)機(jī)制來實(shí)現(xiàn)使用位于OSI模型的層3-7中的任一層處的協(xié)議提供對(duì)多個(gè)主機(jī)的網(wǎng)絡(luò)接入,所述保護(hù)機(jī)制提供備選鏈路或備用路徑。這種保護(hù)機(jī)制包括以太網(wǎng)環(huán)網(wǎng)保護(hù)(ERP)、鏈路聚合(LAG)、生成樹協(xié)議(STP)、多協(xié)議標(biāo)簽交換傳輸簡檔(MPLS-TP)等。
[0003]當(dāng)在網(wǎng)絡(luò)中檢測到鏈路故障時(shí),必須使用形成備用路徑的一個(gè)或多個(gè)備選鏈路來立即重新路由之前貫穿故障鏈路的數(shù)據(jù)業(yè)務(wù),并避開所述故障鏈路??赏ㄟ^刪除關(guān)聯(lián)媒體接入控制(MAC)地址和交換機(jī)端口的表中的條目來觸發(fā)保護(hù)機(jī)制。刪除與可能被鏈路故障影響的MAC地址和/或交換機(jī)端口有關(guān)的條目。一些保護(hù)機(jī)制(例如ERP、LAG或MPLS-TP)在非常短的時(shí)間(例如,50ms或更少)內(nèi)完成用于將數(shù)據(jù)業(yè)務(wù)重新路由到備用路徑的全部操作。從而,提供給主機(jī)的網(wǎng)絡(luò)服務(wù)滿足特定的服務(wù)質(zhì)量(QoS)要求。例如,QoS要求可規(guī)定,對(duì)于提供音頻對(duì)話的網(wǎng)絡(luò)服務(wù)來講,差錯(cuò)信號(hào)小于50ms。
[0004]但是,直到備用路徑上的交換機(jī)接收到包括相應(yīng)源MAC地址的數(shù)據(jù)幀,才會(huì)重新獲知?jiǎng)h除的MAC條目。只要針對(duì)將在交換機(jī)處被轉(zhuǎn)發(fā)的數(shù)據(jù)幀不存在相應(yīng)條目,交換機(jī)就會(huì)對(duì)數(shù)據(jù)幀進(jìn)行泛洪,即在除了接收到數(shù)據(jù)幀的交換機(jī)端口之外的所有交換機(jī)端口處發(fā)送該數(shù)據(jù)幀。從而,不必要的泛洪會(huì)消耗網(wǎng)絡(luò)帶寬。此外,一些網(wǎng)絡(luò)組件可以設(shè)置泛洪數(shù)據(jù)業(yè)務(wù)的限制,例如總帶寬的10%。從而,可以在重新獲知相應(yīng)的MAC地址之前使QoS折衷,即使存在快速保護(hù)交換機(jī)制的情況下也是如此。
【發(fā)明內(nèi)容】
[0005]因而,需要在至少特定情況下改善網(wǎng)絡(luò)服務(wù)可用性的技術(shù)。
[0006]根據(jù)本發(fā)明的一個(gè)方面,提供了一種用于觸發(fā)媒體接入控制(MAC)地址和交換機(jī)端口之間的關(guān)聯(lián)的方法。所述關(guān)聯(lián)允許經(jīng)由所關(guān)聯(lián)的交換機(jī)端口轉(zhuǎn)發(fā)包括MAC地址作為目的地MAC地址的數(shù)據(jù)幀。所述方法包括以下步驟:接收從節(jié)點(diǎn)發(fā)出的數(shù)據(jù)幀,其中,所述數(shù)據(jù)幀將發(fā)出節(jié)點(diǎn)的MAC地址包括為源MAC地址;存儲(chǔ)包括所述MAC地址的所述數(shù)據(jù)幀;成功地向第一交換機(jī)端口發(fā)送數(shù)據(jù)幀;以及響應(yīng)于去往第一交換機(jī)端口的第一鏈路的故障,向與第一交換機(jī)端口不同的第二交換機(jī)端口重新發(fā)送所存儲(chǔ)的數(shù)據(jù)幀,以觸發(fā)第二交換機(jī)端口與發(fā)出節(jié)點(diǎn)的MAC地址之間的關(guān)聯(lián)。
[0007]根據(jù)另一方面,提供了一種計(jì)算機(jī)程序產(chǎn)品。所述計(jì)算機(jī)程序產(chǎn)品包括程序代碼部分,當(dāng)由計(jì)算設(shè)備執(zhí)行所述計(jì)算機(jī)程序產(chǎn)品時(shí),所述程序代碼部分執(zhí)行本文所公開的任一方法中的步驟。
[0008]關(guān)于硬件方面,提供了一種用于觸發(fā)媒體接入控制(MAC)地址和交換機(jī)端口之間的關(guān)聯(lián)的設(shè)備。所述關(guān)聯(lián)允許經(jīng)由所關(guān)聯(lián)的交換機(jī)端口轉(zhuǎn)發(fā)包括MAC地址作為目的地MAC地址的數(shù)據(jù)幀。所述設(shè)備包括:接收單元,適于接收從節(jié)點(diǎn)發(fā)出的數(shù)據(jù)幀,其中,所述數(shù)據(jù)幀將發(fā)出節(jié)點(diǎn)的MAC地址包括為源MAC地址;存儲(chǔ)單元,適于存儲(chǔ)包括所述MAC地址的所述數(shù)據(jù)幀;以及發(fā)送單元,適于向第一交換機(jī)端口發(fā)送所述數(shù)據(jù)幀,以及響應(yīng)于去往第一交換機(jī)端口的第一鏈路的故障,在成功地向第一交換機(jī)端口發(fā)送了數(shù)據(jù)幀之后,向與第一交換機(jī)端口不同的第二交換機(jī)端口重新發(fā)送所存儲(chǔ)的數(shù)據(jù)幀,以觸發(fā)第二交換機(jī)端口與發(fā)出節(jié)點(diǎn)的MAC地址之間的關(guān)聯(lián)。
【附圖說明】
[0009]下面,參考附圖中示出的示意性實(shí)施例,詳細(xì)描述本公開,在附圖中:
[0010]圖1示意性地示出了用于觸發(fā)MAC地址和交換機(jī)端口之間的關(guān)聯(lián)的設(shè)備的一個(gè)實(shí)施例的示例性網(wǎng)絡(luò)環(huán)境;
[0011]圖2示出了觸發(fā)可由圖1的設(shè)備執(zhí)行的MAC地址和交換機(jī)端口之間的關(guān)聯(lián)的方法的流程圖;
[0012]圖3-5示意性地示出了由圖1的設(shè)備和圖2的方法觸發(fā)的MAC重新獲知;
[0013]圖6-9示意性地示出了圖2的方法的實(shí)現(xiàn)的步驟;
[0014]圖10示出了包括圖1的設(shè)備的第一網(wǎng)絡(luò)環(huán)境;
[0015]圖11示出了包括圖1的設(shè)備的第二網(wǎng)絡(luò)環(huán)境;
[0016]圖12示出了包括圖1的設(shè)備的第三網(wǎng)絡(luò)環(huán)境;以及
[0017]圖13示出了圖10的網(wǎng)絡(luò)環(huán)境中的根據(jù)圖2的方法的圖1的設(shè)備的示例性操作。
【具體實(shí)施方式】
[0018]在以下描述中,為了解釋性而不是限制性的目的,為了提供對(duì)本文示出的技術(shù)的完整理解,闡述了具體細(xì)節(jié)(例如,特定設(shè)備和系統(tǒng)配置以及特定方法、步驟和功能)。本領(lǐng)域技術(shù)人員理解的是,還可以以脫離這些具體細(xì)節(jié)的其他實(shí)施例來實(shí)現(xiàn)本技術(shù)。
[0019]本領(lǐng)域技術(shù)人員還將認(rèn)識(shí)到,本文描述的方法、步驟和功能可以使用單獨(dú)的硬件電路、使用軟件功能結(jié)合程序微處理器或通用計(jì)算機(jī)、使用一個(gè)或多個(gè)專用集成電路(ASIC)、一個(gè)或多個(gè)數(shù)據(jù)信號(hào)處理器(DSP)和/或一個(gè)或多個(gè)現(xiàn)場可編程門陣列(FPGA)來實(shí)現(xiàn)。還將認(rèn)識(shí)到的是,本文公開的技術(shù)可以在處理器和耦合到該處理器的存儲(chǔ)器中實(shí)現(xiàn),其中存儲(chǔ)器存儲(chǔ)一個(gè)或多個(gè)程序,當(dāng)處理器執(zhí)行所述程序時(shí),完成本文描述的方法、步驟和功會(huì)K。
[0020]根據(jù)本發(fā)明的一個(gè)方面,提供了一種用于觸發(fā)媒體接入控制(MAC)地址和交換機(jī)端口之間的關(guān)聯(lián)的方法。所述關(guān)聯(lián)允許經(jīng)由所關(guān)聯(lián)的交換機(jī)端口轉(zhuǎn)發(fā)包括MAC地址作為目的地MAC地址的數(shù)據(jù)幀。所述方法包括以下步驟:接收從節(jié)點(diǎn)發(fā)出的數(shù)據(jù)幀,其中,所述數(shù)據(jù)幀包括發(fā)出節(jié)點(diǎn)的MAC地址作為源MAC地址;存儲(chǔ)包括所述MAC地址的所述數(shù)據(jù)幀;成功地向第一交換機(jī)端口發(fā)送數(shù)據(jù)幀;以及響應(yīng)于去往第一交換機(jī)端口的第一鏈路的故障,向與第一交換機(jī)端口不同的第二交換機(jī)端口重新發(fā)送所存儲(chǔ)的數(shù)據(jù)幀,以觸發(fā)第二交換機(jī)端口與發(fā)出節(jié)點(diǎn)的MAC地址之間的關(guān)聯(lián)。
[0021]第一和/或第二交換機(jī)端口可以與不同于執(zhí)行以上方法步驟中的至少一些的觸發(fā)節(jié)點(diǎn)的一個(gè)或多個(gè)節(jié)點(diǎn)的交換機(jī)端口有關(guān)。例如,第一交換機(jī)端口可位于接收至少成功發(fā)送的數(shù)據(jù)幀的第一節(jié)點(diǎn)處。第二交換機(jī)端口可位于接收至少重新發(fā)送的數(shù)據(jù)幀的第二節(jié)點(diǎn)處。第一節(jié)點(diǎn)和第二節(jié)點(diǎn)可以是包括第一和第二交換機(jī)端口兩者的相同節(jié)點(diǎn)。發(fā)送和重新發(fā)送中的至少一個(gè)可使用廣播或多播MAC地址作為目的地MAC地址。
[0022]“成功地”發(fā)送數(shù)據(jù)幀可涵蓋:在發(fā)生鏈路故障之前,由觸發(fā)節(jié)點(diǎn)發(fā)送數(shù)據(jù)幀。作為備選或補(bǔ)充,向第一交換機(jī)端口 “成功地”發(fā)送數(shù)據(jù)幀可涵蓋:數(shù)據(jù)幀貫穿至少一個(gè)鏈路,到達(dá)去往第一交換機(jī)端口的至少下一設(shè)備(例如,數(shù)據(jù)鏈路拓?fù)渲械南乱辉O(shè)備)或去往第一交換機(jī)端口的下一跳。作為進(jìn)一步的備選或補(bǔ)充,向第一交換機(jī)端口“成功地”發(fā)送數(shù)據(jù)幀可涵蓋:數(shù)據(jù)幀到達(dá)第一交換機(jī)端口。
[0023]鏈路(例如,第一鏈路)的“故障”可涵蓋:鏈路和/或鏈路的端點(diǎn)處的節(jié)點(diǎn)(例如,交換機(jī))的狀態(tài)(例如,連接狀態(tài))的改變。例如,所述狀態(tài)可從連接狀態(tài)改變到斷開狀態(tài)。在另一示例中,所述狀態(tài)可以從額定傳輸速率改變到低于額定傳輸速率的傳輸速率(例如,低于額定傳輸速率的10%或等于零)。作為備選或補(bǔ)充,鏈路的“故障”可與在其間不可經(jīng)由所述鏈路交換任何數(shù)據(jù)幀的情況有關(guān)。此外,所述故障可以是由所述鏈路所使用的物理傳輸介質(zhì)的故障(例如,破壞的線路或阻斷的無線電連接)引起的。此外,所述故障可以由鏈路的端點(diǎn)處的節(jié)點(diǎn)(例如,交換機(jī))的故障引起。
[0024]包括發(fā)出節(jié)點(diǎn)的MAC地址的數(shù)據(jù)幀可以是從發(fā)出節(jié)點(diǎn)周期性地接收的。周期性接收之間的持續(xù)時(shí)間可以是I秒、2秒或更長的量級(jí)。
[0025]存儲(chǔ)所接收的數(shù)據(jù)幀可以替換之間接收的數(shù)據(jù)幀,例如包括相同MAC地址作為源MAC地址的之前存儲(chǔ)的數(shù)據(jù)幀。所述數(shù)據(jù)幀可以是不完整地存儲(chǔ)的,例如,可以丟棄包括有效載荷數(shù)據(jù)的數(shù)據(jù)字段。備選地,可以存儲(chǔ)所接收的數(shù)據(jù)幀的一個(gè)或多個(gè)數(shù)據(jù)字段。所述重新發(fā)送步驟還可包括以下子步驟:基于所存儲(chǔ)的一個(gè)或多個(gè)數(shù)據(jù)字段生成數(shù)據(jù)幀。生成使用可變MAC地址作為源MAC地址的數(shù)據(jù)幀還可被稱為數(shù)據(jù)幀欺騙。
[0026]所述方法還可包括以下步驟:將經(jīng)由第一或第二交換機(jī)端口接收的第二數(shù)據(jù)幀轉(zhuǎn)發(fā)到發(fā)出節(jié)點(diǎn)。轉(zhuǎn)發(fā)到發(fā)出節(jié)點(diǎn)的第二數(shù)據(jù)幀的速率可以大于從發(fā)出節(jié)點(diǎn)發(fā)出的所接收的數(shù)據(jù)幀的速率(例如,至少大十倍)。
[0027]可由位于傳輸網(wǎng)絡(luò)中的一個(gè)或多個(gè)觸發(fā)節(jié)點(diǎn)執(zhí)行轉(zhuǎn)發(fā)、存儲(chǔ)、發(fā)送和重新發(fā)送步驟中的至少一個(gè)。傳輸網(wǎng)絡(luò)可包括電信網(wǎng)絡(luò)或可被包括在電信網(wǎng)絡(luò)中。觸發(fā)節(jié)點(diǎn)可位于發(fā)出節(jié)點(diǎn)和第一交換機(jī)端口之間。此外,觸發(fā)節(jié)點(diǎn)可位于發(fā)出節(jié)點(diǎn)和第二交換機(jī)端口之間。
[0028]觸發(fā)節(jié)點(diǎn)可在拓?fù)渖衔挥诎l(fā)出節(jié)點(diǎn)和第一和第二交換機(jī)端口中的每一個(gè)端口之間。例如,觸發(fā)節(jié)點(diǎn)可被布置在發(fā)出節(jié)點(diǎn)和包括第一交換機(jī)端口和/或第二交換機(jī)端口的一個(gè)或多個(gè)交換機(jī)之間。
[0029]在傳輸網(wǎng)絡(luò)內(nèi),觸發(fā)節(jié)點(diǎn)可在拓?fù)渖侠缭跀?shù)據(jù)鏈路層上離發(fā)出節(jié)點(diǎn)最近。例如,在位于傳輸網(wǎng)絡(luò)中且適于基于包括在數(shù)據(jù)幀中的目的地MAC地址轉(zhuǎn)發(fā)數(shù)據(jù)幀的節(jié)點(diǎn)中,觸發(fā)節(jié)點(diǎn)可以是拓?fù)渖想x發(fā)出節(jié)點(diǎn)最近的節(jié)點(diǎn)。在物理層上,觸發(fā)節(jié)點(diǎn)可以間接地連接到發(fā)出節(jié)點(diǎn)。例如,不能交換數(shù)據(jù)業(yè)務(wù)的一個(gè)或多個(gè)節(jié)點(diǎn)可以連接在觸發(fā)節(jié)點(diǎn)和發(fā)出節(jié)點(diǎn)之間。
[0030]觸發(fā)節(jié)點(diǎn)可以是傳輸網(wǎng)絡(luò)的頭端節(jié)點(diǎn)。傳輸網(wǎng)絡(luò)可以是數(shù)據(jù)鏈路層上的重疊網(wǎng)絡(luò)。傳輸網(wǎng)絡(luò)可以包括數(shù)據(jù)鏈路層上的保護(hù)機(jī)制。保護(hù)機(jī)制可以包括不同的第一和第二交換機(jī)端口。例如,保護(hù)機(jī)制可包括主路徑(包括第一交換機(jī)端口)以及備用路徑(包括第二交換機(jī)端口)。保護(hù)機(jī)制可包括以下中的一個(gè)或多個(gè):以太網(wǎng)環(huán)網(wǎng)保護(hù)(ERP)、鏈路聚合(LAG)、生成樹協(xié)議(STP)以及多協(xié)議標(biāo)簽交換傳輸簡檔(MPLS-TP)。
[0031 ]觸發(fā)節(jié)點(diǎn)可直接地或間接地將重疊網(wǎng)絡(luò)連接到發(fā)出節(jié)點(diǎn)。重疊網(wǎng)絡(luò)可以是虛擬局域網(wǎng)(VLAN) JLAN可以提供到多個(gè)空間分布主機(jī)的互聯(lián)網(wǎng)接入。
[0032]觸發(fā)節(jié)點(diǎn)可包括耦接到第一網(wǎng)絡(luò)交換機(jī)的第一本地端口和/或耦接到第二交換機(jī)端口的第二本地端口。重新發(fā)送的步驟還可包括在例如存儲(chǔ)在觸發(fā)節(jié)點(diǎn)處的本地MAC地址表中刪除指示第一本地端口的一個(gè)或多個(gè)條目。
[0033]可以向一個(gè)或多個(gè)交換機(jī)的一個(gè)或多個(gè)第二交換機(jī)端口重新發(fā)送所述數(shù)據(jù)幀,每個(gè)交換機(jī)包括所述第二交換機(jī)端口之一。在一個(gè)或多個(gè)交換機(jī)處對(duì)重新發(fā)送的數(shù)據(jù)幀的接收可以觸發(fā)存儲(chǔ)相應(yīng)的一個(gè)第二交換機(jī)端口與發(fā)出節(jié)點(diǎn)的MAC地址之間的關(guān)聯(lián)。所述關(guān)聯(lián)可以本地存儲(chǔ)在一個(gè)或多個(gè)交換機(jī)中的每一個(gè)處。
[0034]重新發(fā)送的數(shù)據(jù)幀可以在一個(gè)或多個(gè)交換機(jī)處接收。每個(gè)交換機(jī)可以具有多個(gè)交換機(jī)端口,例如包括第一交換機(jī)端口和/或第二交換機(jī)端口。鏈路故障可引起所述交換機(jī)中的一個(gè)或多個(gè)清除(flush)(例如,刪除)其MAC地址表。接收重新發(fā)送的數(shù)據(jù)幀可以觸發(fā)存儲(chǔ)第二交換機(jī)端口與發(fā)出節(jié)點(diǎn)的MAC地址之間的關(guān)聯(lián)。可在所述交換機(jī)的一個(gè)或多個(gè)中存儲(chǔ)所述關(guān)聯(lián)。所述一個(gè)或多個(gè)交換機(jī)可與觸發(fā)節(jié)點(diǎn)不同。
[0035]本文使用的術(shù)語交換機(jī)還可涵蓋:網(wǎng)橋或適于根據(jù)包括在數(shù)據(jù)幀中的作為目的地MAC地址的MAC地址轉(zhuǎn)發(fā)數(shù)據(jù)幀的任意節(jié)點(diǎn)。
[0036]第一鏈路和第二鏈路可分別耦合到第一交換機(jī)端口和第二交換機(jī)端口。在故障之前,可以經(jīng)由第一鏈路向第一交換機(jī)端口成功轉(zhuǎn)發(fā)數(shù)據(jù)幀。觸發(fā)節(jié)點(diǎn)可檢測鏈路故障。響應(yīng)于檢測到第一鏈路的故障,可經(jīng)由至少所述第二鏈路向第二交換機(jī)端口重新發(fā)送所存儲(chǔ)的數(shù)據(jù)幀。第二鏈路可以不同于第一鏈路。所述重新發(fā)送可以觸發(fā)基于源MAC地址的關(guān)聯(lián)。
[0037]所述關(guān)聯(lián)可通過經(jīng)由所關(guān)聯(lián)的交換機(jī)端口沿第一方向向發(fā)出節(jié)點(diǎn)發(fā)送數(shù)據(jù)幀來允許(例如在第一和/或第二節(jié)點(diǎn)處)轉(zhuǎn)發(fā)包括MAC地址作為目的地MAC地址的數(shù)據(jù)幀。發(fā)送和重新發(fā)送(例如,在觸發(fā)節(jié)點(diǎn)處)從發(fā)出節(jié)點(diǎn)發(fā)出的數(shù)據(jù)幀與和第一方向相反的第二方向有關(guān)。沿第一方向在傳輸網(wǎng)絡(luò)中的任何一個(gè)交換機(jī)處接收的并且尚未針對(duì)其存儲(chǔ)任何關(guān)聯(lián)的數(shù)據(jù)幀可以經(jīng)由除接收到該數(shù)據(jù)幀的交換機(jī)端口之外的所有交換機(jī)端口泛洪。
[0038]可以在首次發(fā)送數(shù)據(jù)幀后在觸發(fā)節(jié)點(diǎn)處將數(shù)據(jù)幀存儲(chǔ)一段時(shí)間??筛鶕?jù)數(shù)據(jù)幀中包括的字段值選擇性地存儲(chǔ)所接收的數(shù)據(jù)幀。
[0039 ]可以提供MAC地址的列表。所述列表可以指示優(yōu)先化的或關(guān)鍵的網(wǎng)絡(luò)組件,例如網(wǎng)關(guān)??蛇x地,只存儲(chǔ)包括也包括在所述列表中的源MAC地址的數(shù)據(jù)幀。響應(yīng)于第一鏈路的故障,可以重新發(fā)送所存儲(chǔ)的數(shù)據(jù)幀和/或基于所存儲(chǔ)的數(shù)據(jù)幀生成的數(shù)據(jù)幀。作為備選或補(bǔ)充,響應(yīng)于所述故障而重新發(fā)送的每個(gè)數(shù)據(jù)幀可包括列表中的MAC地址之一作為源MAC地址。
[0040]可以整個(gè)長度存儲(chǔ)所述數(shù)據(jù)幀??纱鎯?chǔ)所述數(shù)據(jù)幀,而不對(duì)所接收的數(shù)據(jù)幀進(jìn)行處理??蓪⑺鰯?shù)據(jù)幀存儲(chǔ)為從發(fā)出節(jié)點(diǎn)接收的數(shù)據(jù)幀。
[0041]發(fā)出節(jié)點(diǎn)可以是根據(jù)虛擬路由器冗余協(xié)議(VRRP)的當(dāng)前活躍的路由器或虛擬路由器。從發(fā)出節(jié)點(diǎn)發(fā)出的數(shù)據(jù)幀可包括VRRP消息。
[0042]備選地或組合地,從發(fā)出節(jié)點(diǎn)發(fā)出的數(shù)據(jù)幀可包括地址解析協(xié)議(ARP)消息??稍诓粓?zhí)行對(duì)數(shù)據(jù)幀的ARP分析的情況下,存儲(chǔ)包括ARP消息的數(shù)據(jù)幀。ARP消息可包括對(duì)ARP請求和/或ARP公告的ARP答復(fù)。ARP公告可指示例如當(dāng)活躍VRRP路由器已經(jīng)改變?yōu)橹暗膫溆肰RRP路由器時(shí)發(fā)出節(jié)點(diǎn)的MAC地址的改變。
[0043]根據(jù)另一方面,提供了一種計(jì)算機(jī)程序產(chǎn)品。所述計(jì)算機(jī)程序產(chǎn)品包括程序代碼部分,當(dāng)由計(jì)算設(shè)備執(zhí)行所述計(jì)算機(jī)程序產(chǎn)品時(shí),所述程序代碼部分執(zhí)行上述任一方法中的步驟。計(jì)算機(jī)程序產(chǎn)品可以存儲(chǔ)在計(jì)算機(jī)可讀記錄媒體上。
[0044]關(guān)于硬件方面,提供了一種用于觸發(fā)媒體接入控制(MAC)地址和交換機(jī)端口之間的關(guān)聯(lián)的設(shè)備。所述關(guān)聯(lián)允許經(jīng)由所關(guān)聯(lián)的交換機(jī)端口轉(zhuǎn)發(fā)包括MAC地址作為目的地MAC地址的數(shù)據(jù)幀。所述設(shè)備包括:接收單元,適于接收從節(jié)點(diǎn)發(fā)出的數(shù)據(jù)幀,其中,所述數(shù)據(jù)幀包括發(fā)出節(jié)點(diǎn)的MAC地址作為源MAC地址;存儲(chǔ)單元,適于存儲(chǔ)包括所述MAC地址的所述數(shù)據(jù)幀;以及發(fā)送單元,適于向第一交換機(jī)端口發(fā)送所述數(shù)據(jù)幀,以及響應(yīng)于去往第一交換機(jī)端口的第一鏈路的故障,在成功地向第一交換機(jī)端口發(fā)送了數(shù)據(jù)幀之后,向與第一交換機(jī)端口不同的第二交換機(jī)端口重新發(fā)送所存儲(chǔ)的數(shù)據(jù)幀,以觸發(fā)第二交換機(jī)端口與發(fā)出節(jié)點(diǎn)的MAC地址之間的關(guān)聯(lián)。
[0045]所述設(shè)備還適于執(zhí)行上述方法步驟中的任意一個(gè)。所述設(shè)備還可在觸發(fā)節(jié)點(diǎn)中實(shí)現(xiàn)。
[0046]關(guān)于以下的實(shí)施例,相同的附圖標(biāo)記用于表示相同或相應(yīng)的組件。
[0047]圖1示意性地示出了包括傳輸網(wǎng)絡(luò)12的網(wǎng)絡(luò)環(huán)境10。所述傳輸網(wǎng)絡(luò)12向多個(gè)主機(jī)14提供傳輸服務(wù)。一個(gè)或多個(gè)路由器16將傳輸網(wǎng)絡(luò)12連接到網(wǎng)絡(luò)20。網(wǎng)絡(luò)20可以是公共網(wǎng)絡(luò)或?qū)S芯W(wǎng)絡(luò)。備選地或組合地,網(wǎng)絡(luò)20可以是主干網(wǎng)絡(luò),例如專用于電信服務(wù)或一般地用于數(shù)據(jù)服務(wù)。例如,網(wǎng)絡(luò)20可以是互聯(lián)網(wǎng)。為了在不進(jìn)行限制的情況下清楚描述,在下文中描述互聯(lián)網(wǎng)20的示例。
[0048]傳輸網(wǎng)絡(luò)12以重疊模式操作。傳輸網(wǎng)絡(luò)12在數(shù)據(jù)鏈路層(例如OSI模型的層2)上的功能對(duì)于主機(jī)14是透明的。也就是說,操作傳輸網(wǎng)絡(luò)12的網(wǎng)絡(luò)提供商的消費(fèi)者不具有和/或不需要對(duì)傳輸網(wǎng)絡(luò)12的數(shù)據(jù)鏈路結(jié)構(gòu)或物理網(wǎng)絡(luò)拓?fù)涞娜魏沃R(shí)。例如,傳輸網(wǎng)絡(luò)12包括針對(duì)傳輸服務(wù)的高可用性的保護(hù)機(jī)制和/或冗余機(jī)制。這些機(jī)制對(duì)于主機(jī)14在網(wǎng)絡(luò)層(例如OSI模型的層3或更高層)處的操作是不可見的。
[0049]例如,傳輸網(wǎng)絡(luò)12不需要在網(wǎng)絡(luò)層協(xié)議或更高層的協(xié)議中的主機(jī)14側(cè)的特定于傳輸網(wǎng)絡(luò)12的任何處理。根據(jù)主機(jī)14上執(zhí)行的客戶端或服務(wù)器應(yīng)用,傳輸網(wǎng)絡(luò)12滿足服務(wù)質(zhì)量(QoS)要求,例如關(guān)于可用性和抖動(dòng)。數(shù)據(jù)鏈路層的拓?fù)浜蛿?shù)據(jù)鏈路層的配置將主機(jī)14在網(wǎng)絡(luò)層處的所有服務(wù)場景考慮在內(nèi)。
[0050]在圖1所示的示例性網(wǎng)絡(luò)環(huán)境10中,路由器16形成相同局域網(wǎng)(LAN)中的路由器16的群組。路由器16的群組根據(jù)虛擬冗余路由器協(xié)議(VRRP)充當(dāng)一個(gè)網(wǎng)關(guān)路由器18 JRRP是用來提供網(wǎng)關(guān)路由器的高可用性的協(xié)議。VRRP規(guī)定選擇協(xié)議,從而在任何時(shí)間點(diǎn),所述多個(gè)路由器16中只有一個(gè)是活躍路由器。此外,VRRP規(guī)定網(wǎng)關(guān)路由器的虛擬MAC地址。只有活躍路由器使用虛擬MAC地址作為目的地MAC地址來轉(zhuǎn)發(fā)數(shù)據(jù)幀。
[0051]VRRP提供網(wǎng)絡(luò)層上的冗余機(jī)制。在活躍路由器故障的情況下,選擇新的活躍路由器,并開始轉(zhuǎn)發(fā)具有虛擬目的地MAC地址的數(shù)據(jù)幀。通過這種方式,只要VRRP路由器16中的至少一個(gè)在起作用,經(jīng)由傳輸網(wǎng)絡(luò)12連接到虛擬網(wǎng)關(guān)18的主機(jī)14就不受影響。
[0052]針對(duì)從互聯(lián)網(wǎng)20向傳輸網(wǎng)絡(luò)12轉(zhuǎn)發(fā)的數(shù)據(jù)業(yè)務(wù),活躍VRRP路由器通常使用其(例如物理)端口 MAC地址作為源MAC地址,而不是根據(jù)VRRP的虛擬MAC地址。如文件“Reque stfor Comments(RFC)3768,〃Virtual Router Redundancy Protocol(VRRP)^from April2004”的第2.4章中所指出的,如果虛擬路由器MAC地址從不被用作數(shù)據(jù)幀(還被稱為“鏈路級(jí)別幀”)中的源MAC地址,則在操作為多接入LAN的傳輸網(wǎng)絡(luò)12中從不會(huì)獲知站點(diǎn)位置。只要傳輸網(wǎng)絡(luò)12中的網(wǎng)絡(luò)組件110沒有獲知MAC地址和交換機(jī)板之間的關(guān)聯(lián),便在傳輸網(wǎng)絡(luò)12中對(duì)沿從主機(jī)14經(jīng)由傳輸網(wǎng)絡(luò)12到虛擬路由器18的相反方向發(fā)送的所有數(shù)據(jù)幀進(jìn)行泛洪。
[0053]因此,VRRP路由器18周期性地向傳輸網(wǎng)絡(luò)12發(fā)送包括虛擬VRRPMAC地址作為MAC源地址的數(shù)據(jù)幀。RFC 3768的第5.3.7章針對(duì)周期性地發(fā)送這些數(shù)據(jù)幀規(guī)定了 I秒的缺省時(shí)間間隔(也被稱為通告時(shí)間間隔)。
[0054]參照圖1描述的網(wǎng)絡(luò)環(huán)境10是關(guān)于用于數(shù)據(jù)業(yè)務(wù)的MAC地址的非對(duì)稱數(shù)據(jù)業(yè)務(wù)模式的示例。非對(duì)稱數(shù)據(jù)業(yè)務(wù)模式影響傳輸網(wǎng)絡(luò)12內(nèi)的MAC獲知和重新獲知的收斂速度。
[0055]傳輸網(wǎng)絡(luò)12包括用于在適于存儲(chǔ)關(guān)聯(lián)的一個(gè)或多個(gè)網(wǎng)絡(luò)組件110處觸發(fā)MAC地址和交換機(jī)端口之間的關(guān)聯(lián)的設(shè)備100。設(shè)備100在拓?fù)渖?例如在數(shù)據(jù)鏈路層上和/或在物理層上)布置在發(fā)出節(jié)點(diǎn)18和傳輸網(wǎng)絡(luò)12的其他網(wǎng)絡(luò)組件110之間。由于其拓?fù)湮恢玫脑?,設(shè)備100還被稱為傳輸網(wǎng)絡(luò)12的頭端節(jié)點(diǎn)。
[0056]設(shè)備100包括直接或間接地連接到發(fā)出節(jié)點(diǎn)18的接收單元102、添加到其上以存儲(chǔ)從發(fā)出節(jié)點(diǎn)18接收的一個(gè)或多個(gè)數(shù)據(jù)幀的存儲(chǔ)節(jié)點(diǎn)、以及適于經(jīng)由一個(gè)或多個(gè)數(shù)據(jù)鏈路108、109向網(wǎng)絡(luò)組件110發(fā)送數(shù)據(jù)幀的發(fā)送單元106。
[0057]所述一個(gè)或多個(gè)網(wǎng)絡(luò)組件110包括至少一個(gè)第一交換機(jī)端口和至少一個(gè)第二交換機(jī)端口。第一和第二交換機(jī)端口可被實(shí)現(xiàn)為不同的節(jié)點(diǎn),比如交換機(jī)端口 112和114。作為備選或補(bǔ)充,第一和第二交換機(jī)端口可實(shí)現(xiàn)在傳輸網(wǎng)絡(luò)12的相同節(jié)點(diǎn)處,比如交換機(jī)127處的交換機(jī)端口 112和116。作為進(jìn)一步的備選或補(bǔ)充,在每種情況中,至少一個(gè)第一交換機(jī)端口和/或至少一個(gè)第二交換機(jī)端口可經(jīng)由一個(gè)鏈路直接連接到設(shè)備100。例如,交換機(jī)端口 118和119分別經(jīng)由鏈路108和109將交換機(jī)128和129連接到設(shè)備100。
[0058]第一交換機(jī)端口是用于經(jīng)由設(shè)備100在發(fā)出節(jié)點(diǎn)18和至少一個(gè)主機(jī)14之間傳輸數(shù)據(jù)的雙向主路徑的一部分。第二交換機(jī)端口是用于經(jīng)由設(shè)備100在發(fā)出節(jié)點(diǎn)18和至少一個(gè)主機(jī)14之間傳輸數(shù)據(jù)的雙向備用路徑的一部分。響應(yīng)于主路徑上的第一鏈路(例如鏈路122)的故障,經(jīng)由備用路徑路由所述數(shù)據(jù)。故障的第一路徑可以是沿傳輸網(wǎng)絡(luò)12中的主路徑的鏈路中的任何一個(gè),并且不限于直接連接到第一交換機(jī)端口和/或設(shè)備100的鏈路。此夕卜,鏈路故障可以是由于保持故障鏈路的網(wǎng)絡(luò)組件110中的任何一個(gè)(例如保持鏈路122的交換機(jī)127或128)。
[0059]圖2示出了觸發(fā)MAC地址和交換機(jī)端口之間的關(guān)聯(lián)的方法200的流程圖。所述關(guān)聯(lián)允許經(jīng)由所關(guān)聯(lián)的交換機(jī)端口轉(zhuǎn)發(fā)包括MAC地址作為目的地MAC地址的數(shù)據(jù)幀??捎稍O(shè)備100實(shí)現(xiàn)所述方法。在步驟202中,接收從節(jié)點(diǎn)(例如發(fā)出節(jié)點(diǎn)18)發(fā)出的數(shù)據(jù)幀。所接收的數(shù)據(jù)幀將發(fā)出節(jié)點(diǎn)18的MAC地址包括為源MAC地址。
[0060]在方法200的步驟204中,包括MAC地址的所接收的數(shù)據(jù)幀是在步驟206中向一個(gè)或多個(gè)第一交換機(jī)端口發(fā)送數(shù)據(jù)幀之前或之后存儲(chǔ)的。步驟204可以是用于在數(shù)據(jù)鏈路層上轉(zhuǎn)發(fā)數(shù)據(jù)幀的轉(zhuǎn)發(fā)功能的一部分。
[0061]響應(yīng)于去往第一交換機(jī)端口的第一鏈路的故障,向至少一個(gè)第二交換機(jī)端口重新發(fā)送所存儲(chǔ)的數(shù)據(jù)幀,以在步驟208中觸發(fā)第二交換機(jī)端口與發(fā)出節(jié)點(diǎn)18的MAC地址之間的關(guān)耳關(guān)。
[0062]方法200可由設(shè)備100在例如網(wǎng)絡(luò)環(huán)境10中執(zhí)行。方法200的步驟202和204可由設(shè)備100的單元102和104分別實(shí)現(xiàn)。步驟206和208可由單元106實(shí)現(xiàn)。備選地,設(shè)備100的專用子單元106a和106b可分別實(shí)現(xiàn)發(fā)送步驟206和重新發(fā)送步驟208。
[0063]參照圖3-5描述由通過設(shè)備100執(zhí)行的方法200的至少一些實(shí)現(xiàn)引起的觸發(fā)??稍诰W(wǎng)絡(luò)組件110中的任一組件(例如節(jié)點(diǎn)127)中觸發(fā)所述關(guān)聯(lián)。存儲(chǔ)MAC地址和交換機(jī)端口之間的關(guān)聯(lián)也被稱為MAC獲知。更新所述關(guān)聯(lián)也被稱為MAC重新獲知。為了簡明,傳輸網(wǎng)絡(luò)12的適于更新所述關(guān)聯(lián)的任何網(wǎng)絡(luò)組件被稱為交換機(jī),該交換機(jī)可包括例如網(wǎng)橋。MAC獲知是根據(jù)標(biāo)準(zhǔn)文件IEEE 802.1Q(例如,針對(duì)虛擬局域網(wǎng)(VLAN))和/或標(biāo)準(zhǔn)文件IEEE 802.1ad(例如針對(duì)VLAN)實(shí)現(xiàn)的。
[0064]MAC獲知與獲得連接到交換機(jī)的設(shè)備的MAC地址與交換機(jī)的交換機(jī)端口之間的關(guān)聯(lián)的過程有關(guān),其中設(shè)備經(jīng)由所述交換機(jī)端口連接到交換機(jī)。當(dāng)數(shù)據(jù)幀到達(dá)交換機(jī)的交換機(jī)端口中時(shí),交換機(jī)從數(shù)據(jù)幀中包括的源MAC地址字段讀取MAC地址并將源MAC地址與交換機(jī)中存儲(chǔ)的MAC地址表進(jìn)行比較。圖3示意性地分別示出了設(shè)備100和設(shè)備127以及它們的MAC地址表302和304。
[0065]MAC地址表304包括指示.MAC地址的列(示于左手側(cè))和指示與MAC地址相關(guān)聯(lián)的交換機(jī)端□的列(示于右手側(cè))JAC地址表304存儲(chǔ)在交換機(jī)127內(nèi)。圖3中所示的情況300是鏈路故障之前的情況,即主路徑區(qū)段108-128-122的第一交換機(jī)端口 112(標(biāo)示為“2”)包括在MAC地址表304中。
[0066]MAC獲知和MAC重新獲知基于在交換機(jī)127處接收的數(shù)據(jù)幀中包括的源MAC地址。如果交換機(jī)127不能找到MAC地址表304中的包括所接收的源MAC地址的條目,則交換機(jī)127在MAC地址表304中添加包括所獲取的與交換機(jī)端口相關(guān)聯(lián)的源MAC地址的新條目,其中包括源MAC地址的數(shù)據(jù)幀是經(jīng)由所述交換機(jī)端口接收的。
[0067]所存儲(chǔ)的條目(S卩,MAC地址和交換機(jī)端口之間的關(guān)聯(lián))被交換機(jī)127使用,以防止不包括由在將被轉(zhuǎn)發(fā)的另一數(shù)據(jù)幀中包括的目的地MAC地址標(biāo)識(shí)的節(jié)點(diǎn)的網(wǎng)絡(luò)分支中的不必要的數(shù)據(jù)業(yè)務(wù)。也就是說,使用MAC地址表304基于在交換機(jī)127處接收的數(shù)據(jù)幀中包括的目的地MAC地址。如果交換機(jī)127(例如,根據(jù)IEEE 802.1Q的網(wǎng)橋)接收到將未從MAC地址表304獲知的單播MAC地址作為目的地MAC地址的數(shù)據(jù)幀,則交換機(jī)127泛洪所述數(shù)據(jù)幀,即在交換機(jī)127的除了接收數(shù)據(jù)幀的端口之外的所有交換機(jī)端口處發(fā)出所述數(shù)據(jù)幀。清楚地,對(duì)單播數(shù)據(jù)幀進(jìn)行泛洪引起在不包括目的地節(jié)點(diǎn)的那些網(wǎng)絡(luò)分支中的不必要的數(shù)據(jù)業(yè)務(wù)。從而,泛洪消耗網(wǎng)絡(luò)帶寬,并且應(yīng)該被最小化。
[0068]由于交換機(jī)127基于從設(shè)備100接收的數(shù)據(jù)幀的源MAC地址獲知所述關(guān)聯(lián),并使用所獲知的關(guān)聯(lián)來避免對(duì)在反向轉(zhuǎn)發(fā)的數(shù)據(jù)幀(即,目的地為所獲知的MAC地址的數(shù)據(jù)幀)進(jìn)行泛洪,所以MAC獲知和MAC重新獲知依賴于雙向數(shù)據(jù)業(yè)務(wù)是有效的。如果在交換機(jī)127處從沒有接收到作為源MAC地址的MAC地址,則交換機(jī)127將不會(huì)把MAC地址插入到MAC地址表30中,從而目的地為該MAC地址的數(shù)據(jù)幀將會(huì)被泛洪。交換機(jī)127處的單向數(shù)據(jù)業(yè)務(wù)將會(huì)被泛洪。對(duì)于交換機(jī)127處的非對(duì)稱數(shù)據(jù)業(yè)務(wù),用于MAC重新獲知的時(shí)間以少見的通信方向?yàn)橹?。圖1所示的示例性網(wǎng)絡(luò)環(huán)境10中的目的地為VRRP虛擬路由器18的數(shù)據(jù)業(yè)務(wù)是非對(duì)稱數(shù)據(jù)業(yè)務(wù)的示例。
[0069]從而,在鏈路故障后在交換機(jī)127處的MAC重新獲知的時(shí)間是通過發(fā)送從VRRP虛擬路由器18向主機(jī)14發(fā)出的少見數(shù)據(jù)業(yè)務(wù)的周期確定的。如在圖4的情況400中針對(duì)包括網(wǎng)絡(luò)組件108、128和122的主路徑所示意性示出的,當(dāng)主路徑故障時(shí),一些保護(hù)機(jī)制可允許快速檢測主路徑中的鏈路故障,并且MAC地址表304中的相應(yīng)條目被移除。
[0070]此時(shí),設(shè)備100已經(jīng)在步驟202中接收到了包括VRRP網(wǎng)關(guān)18(作為發(fā)出節(jié)點(diǎn)的一個(gè)示例)的虛擬MAC地址的數(shù)據(jù)幀,并且已經(jīng)根據(jù)方法200的步驟204對(duì)包括虛擬MAC地址的數(shù)據(jù)幀進(jìn)行了存儲(chǔ)。即使已經(jīng)在情況300中在步驟206中向第一交換機(jī)端口 112成功地發(fā)送了數(shù)據(jù)幀,響應(yīng)于檢測到鏈路故障,設(shè)備100也會(huì)在方法200的步驟208中向第二交換機(jī)端口116重新發(fā)送包括VRRP網(wǎng)關(guān)18的虛擬MAC地址的數(shù)據(jù)幀。結(jié)果,包括第二交換機(jī)端口 116的交換機(jī)127立即重新獲知重新發(fā)送的數(shù)據(jù)幀中包括的虛擬MAC地址與接收重新發(fā)送的數(shù)據(jù)幀所經(jīng)由的第二交換機(jī)端口 116之間的關(guān)聯(lián)。圖5示意性地示出了在通過重新發(fā)送步驟208觸發(fā)了MAC重新發(fā)送之后得到的情況500。所述關(guān)聯(lián)被存儲(chǔ)在本地MAC地址表304中。發(fā)出節(jié)點(diǎn)18的MAC地址(標(biāo)示為“X”)從而與備用路徑區(qū)段109-129-126上的第二交換機(jī)端口 116(標(biāo)示為“3”)相關(guān)聯(lián)。
[0071]雖然針對(duì)包括第一交換機(jī)端口112和第二交換機(jī)端口 116兩者的交換機(jī)127已經(jīng)參照圖3-5意義性地描述了通過方法200觸發(fā)的MAC重新獲知,但是方法200還能夠針對(duì)包括第一交換機(jī)端口(例如交換機(jī)端口 118)的第一交換機(jī)(例如交換機(jī)128)以及針對(duì)與第一交換機(jī)不同且包括第二交換機(jī)端口的第二交換機(jī)(例如,包括交換機(jī)端口 119的交換機(jī)129)觸發(fā)MAC重新獲知。例如,當(dāng)鏈路108發(fā)生故障時(shí),設(shè)備100在步驟208中重新發(fā)送所存儲(chǔ)的數(shù)據(jù)幀。交換機(jī)129在交換機(jī)端口 119處接收到所重新發(fā)送的數(shù)據(jù)幀,從而交換機(jī)129將表示發(fā)出節(jié)點(diǎn)18的MAC地址和交換機(jī)端口 119之間的關(guān)聯(lián)的條目添加到其MAC地址表中。
[0072]如圖3-5中的每一個(gè)所指示,設(shè)備100還可通過刪除與故障鏈路相對(duì)應(yīng)的條目以及重新獲知與備用路徑相對(duì)應(yīng)的關(guān)聯(lián)來更新其MAC地址表302(例如基于在設(shè)備100處經(jīng)由交換機(jī)127接收的且目的地為發(fā)出節(jié)點(diǎn)18的隨后數(shù)據(jù)幀)。
[0073]作為方法200所觸發(fā)的關(guān)聯(lián)的結(jié)果,在鏈路故障后進(jìn)行MAC重新獲知的時(shí)間不是通過向網(wǎng)絡(luò)組件110發(fā)送包括發(fā)出節(jié)點(diǎn)18的MAC地址的數(shù)據(jù)幀的周期確定的。而是,MAC重新獲知時(shí)間與將數(shù)據(jù)幀從發(fā)出節(jié)點(diǎn)18發(fā)送到傳輸網(wǎng)絡(luò)12的速率解耦。一旦保護(hù)機(jī)制已經(jīng)引起對(duì)MAC地址表304的清除,則設(shè)備100立即重新發(fā)送所存儲(chǔ)的數(shù)據(jù)幀。包括MAC重新獲知收斂時(shí)間的保護(hù)交換時(shí)間的量級(jí)可以是50ms或更小。作為對(duì)比,VRRP協(xié)議公告時(shí)間間隔仍然能夠具有秒的量級(jí)(例如至多為240秒),在此期間,傳統(tǒng)網(wǎng)絡(luò)環(huán)境將經(jīng)歷目的地為VRRP網(wǎng)關(guān)18的數(shù)據(jù)幀的泛洪。
[0074]將根據(jù)地址解析協(xié)議(ARP)針對(duì)從發(fā)出節(jié)點(diǎn)18發(fā)出的數(shù)據(jù)幀更為詳細(xì)地描述方法200的實(shí)現(xiàn)。當(dāng)VRRP路由器16變得活躍時(shí),其開始發(fā)送VRRP數(shù)據(jù)分組以及免費(fèi)(gratuitous)ARP數(shù)據(jù)分組,其中的每一個(gè)是從發(fā)出節(jié)點(diǎn)18發(fā)出的且包括發(fā)出節(jié)點(diǎn)的MAC地址作為源MAC地址的數(shù)據(jù)幀的示例。圖6示意性地示出了在實(shí)現(xiàn)面對(duì)VRRP路由器16的設(shè)備100的頭端節(jié)點(diǎn)處接收從當(dāng)前活躍VRRP路由器發(fā)出的數(shù)據(jù)幀的步驟202。指向右側(cè)的箭頭指示根據(jù)步驟206由設(shè)備10向一個(gè)或多個(gè)網(wǎng)絡(luò)組件110的一個(gè)或多個(gè)第一交換機(jī)端口發(fā)送的數(shù)據(jù)幀。
[0075]頭端節(jié)點(diǎn)100從數(shù)據(jù)幀獲知虛擬MAC地址,并存儲(chǔ)數(shù)據(jù)幀,這在圖中示意性地示為附圖標(biāo)記700。根據(jù)步驟204存儲(chǔ)數(shù)據(jù)幀還被稱為高速緩存。在所述方法實(shí)現(xiàn)的一個(gè)變體中,為了更高的可靠性,對(duì)多個(gè)拷貝進(jìn)行了高速緩存??蛇x地,將時(shí)間戳與所存儲(chǔ)的數(shù)據(jù)幀700關(guān)聯(lián)地存儲(chǔ)。一旦在時(shí)間戳所指示的時(shí)間之后超過了預(yù)定義的時(shí)間間隔,則將數(shù)據(jù)幀700從高速緩存刪除。
[0076]設(shè)備100檢測沿傳輸網(wǎng)絡(luò)12內(nèi)的主數(shù)據(jù)路徑的鏈路之一中的任何鏈路故障。如圖8所示,由設(shè)備100檢測例如鏈路108的鏈路故障。設(shè)備100移除MAC地址表302中的受影響的條目。此外,如圖9所示,設(shè)備100根據(jù)步驟208向網(wǎng)絡(luò)組件110重新發(fā)送所高速緩存的數(shù)據(jù)幀700 ο設(shè)備100優(yōu)選地在除了在步驟202中從發(fā)出節(jié)點(diǎn)18接收數(shù)據(jù)幀的端口之外所有端口處重新發(fā)送所存儲(chǔ)的數(shù)據(jù)分組700。
[0077]所存儲(chǔ)的數(shù)據(jù)幀被指示為過時(shí)的和/或被移除的(可選地,與MAC地址表302中的獲知的MAC地址條目一起),以避免由重新發(fā)送過時(shí)數(shù)據(jù)幀對(duì)網(wǎng)絡(luò)組件引起的負(fù)面影響。
[0078]雖然已經(jīng)針對(duì)包括實(shí)現(xiàn)方法200的單個(gè)節(jié)點(diǎn)100的傳輸網(wǎng)絡(luò)12描述了上述實(shí)施例和示例性實(shí)現(xiàn),但是從發(fā)出節(jié)點(diǎn)18 (例如,VRRP或ARP數(shù)據(jù)分組)接收并轉(zhuǎn)發(fā)數(shù)據(jù)幀700的任何交換機(jī)都能夠?qū)崿F(xiàn)所述方法200,例如圖1中所示的節(jié)點(diǎn)127、128和/或129。此外,設(shè)備100不必直接連接到發(fā)出節(jié)點(diǎn)18,例如VRRP路由器16。例如,與實(shí)現(xiàn)方法200的節(jié)點(diǎn)100以及發(fā)出節(jié)點(diǎn)18在邏輯上鄰近就足夠了。
[0079]在高級(jí)實(shí)施例中,在方法200的步驟204中,根據(jù)由設(shè)備100執(zhí)行的相關(guān)性評(píng)估,選擇性地對(duì)所接收的數(shù)據(jù)幀700進(jìn)行存儲(chǔ)。例如,一些MAC地址(比如網(wǎng)關(guān)MAC地址或頻繁訪問的服務(wù)器MAC地址)比普通主機(jī)的MAC地址更為重要。設(shè)備100被設(shè)置為具有重要MAC地址的列表。在設(shè)備100的第一高級(jí)實(shí)施例中,MAC地址的列表用于在步驟204中對(duì)數(shù)據(jù)幀選擇性地進(jìn)行存儲(chǔ)。在第二高級(jí)實(shí)施例中,設(shè)備100主動(dòng)地為列表中所包括的MAC地址中的一個(gè)或全部發(fā)送所存儲(chǔ)的數(shù)據(jù)幀700,例如ARP數(shù)據(jù)分組或基于所存儲(chǔ)的數(shù)據(jù)幀700生成的欺騙數(shù)據(jù)分組。從而,設(shè)備選擇性地加速傳輸網(wǎng)絡(luò)12中的MAC重新獲知,例如,以避免或減少泛洪。
[0080]本文所呈現(xiàn)的技術(shù)可實(shí)現(xiàn)于例如提供MAC獲知機(jī)制和冗余機(jī)制的任何網(wǎng)絡(luò)的數(shù)據(jù)鏈路層上。圖10-12示意性地示出了所述技術(shù)在示例性網(wǎng)絡(luò)環(huán)境10中的應(yīng)用。
[0081 ] 示例性網(wǎng)絡(luò)環(huán)境1中實(shí)現(xiàn)的傳輸網(wǎng)絡(luò)12包括根據(jù)ITU-T推薦G.8032的以太網(wǎng)環(huán)網(wǎng)保護(hù)(ERP)交換機(jī)制,以提供在50ms或更短時(shí)間內(nèi)的保護(hù)和恢復(fù)交換。傳輸網(wǎng)絡(luò)12具有環(huán)形拓?fù)浣Y(jié)構(gòu)。
[0082]圖11示意性地示出了示例性網(wǎng)絡(luò)環(huán)境10,其中傳輸網(wǎng)絡(luò)12實(shí)現(xiàn)鏈路聚合(LAG),將設(shè)備100和交換機(jī)127之間的多個(gè)網(wǎng)絡(luò)鏈路107、108和109進(jìn)行組合。圖11中所示的傳輸網(wǎng)絡(luò)12是未與發(fā)出節(jié)點(diǎn)18直接連接的設(shè)備100的示例。
[0083]圖12示意性地示出了示例性網(wǎng)絡(luò)環(huán)境10,其中傳輸網(wǎng)絡(luò)12提供包括主路徑1202和備用路徑1204的多協(xié)議標(biāo)簽交換(MPLS)傳輸簡檔保護(hù)機(jī)制。
[0084]觸發(fā)所述關(guān)聯(lián)的設(shè)備100和方法200能夠根據(jù)所述技術(shù)的實(shí)現(xiàn)在設(shè)備100的下游節(jié)點(diǎn)中的一個(gè)、一些或全部中觸發(fā)所述關(guān)聯(lián)。圖13示意性地示出了設(shè)備100和方法200在圖10的示例性ERP傳輸網(wǎng)絡(luò)12中的觸發(fā)效果。為了簡明,只針對(duì)交換機(jī)127對(duì)效果進(jìn)行解釋。第一交換機(jī)端口由交換機(jī)127的交換機(jī)端口 112實(shí)現(xiàn)。第二交換機(jī)端口由交換機(jī)127的交換機(jī)端口 116實(shí)現(xiàn)。
[0085]在鏈路122發(fā)生故障之前,最初例如通過只在交換機(jī)127和128的MAC地址表中包括主鏈路122,將備用鏈路126阻斷。備用鏈路126沒有被包括在交換機(jī)127和129的MAC地址表304中。從而,針對(duì)目的地A和目的地B從節(jié)點(diǎn)18發(fā)出的數(shù)據(jù)幀分別采用路徑—H—X—A和—H
[0086]檢測到主路徑中的故障(在圖13中示意性地示為“X”)。在圖13中所示的示例情況中,鏈路122發(fā)生故障。設(shè)備100不是鏈路122的直接端點(diǎn)。
[0087]在鏈路故障后,針對(duì)目的地A和B的數(shù)據(jù)幀分別米用路徑—H—X—A和B。
[0088]根據(jù)示例性實(shí)施例的上述描述,顯然的是,所述技術(shù)在由例如至少一些實(shí)現(xiàn)中的鏈路故障引起的MAC條目移除之后加速M(fèi)AC重新獲知。在相同或其他實(shí)現(xiàn)中,服務(wù)恢復(fù)可被加速和/或消費(fèi)者服務(wù)中斷可被最小化。
[0089]在經(jīng)由至少一些網(wǎng)絡(luò)組件引起非對(duì)稱數(shù)據(jù)業(yè)務(wù)的網(wǎng)絡(luò)環(huán)境中,這一技術(shù)是有益的。該技術(shù)可在提供保護(hù)機(jī)制的傳輸網(wǎng)絡(luò)的一個(gè)或多個(gè)位置中實(shí)現(xiàn)。用于傳輸網(wǎng)絡(luò)的保護(hù)機(jī)制可包括例如ERP、LAG、STP、MPLS-TP或其子組合。
[0090]由鏈路故障引起的業(yè)務(wù)重新路由(例如包括服務(wù)恢復(fù)和數(shù)據(jù)泛洪的終止)可在少于50ms之內(nèi)完成。由鏈路故障(例如,由數(shù)據(jù)幀的泛洪導(dǎo)致的)引起的數(shù)據(jù)業(yè)務(wù)負(fù)載可減少,甚至在所述技術(shù)的一些實(shí)施例中可避免。
[0091 ]例如,針對(duì)MAC重新獲知的時(shí)間可以與由發(fā)出節(jié)點(diǎn)提供適合MAC獲知的數(shù)據(jù)幀的周期無關(guān)。數(shù)據(jù)幀可以是VRRP數(shù)據(jù)幀或根據(jù)虛擬化機(jī)制發(fā)送的任何其他數(shù)據(jù)幀。
[0092]存儲(chǔ)和重新發(fā)送可限于優(yōu)先排序的MAC地址,從而最小化由重新發(fā)送引起的網(wǎng)絡(luò)負(fù)載和存儲(chǔ)器資源。響應(yīng)于傳輸網(wǎng)絡(luò)的主路徑上的鏈路故障,可以容易地針對(duì)所有優(yōu)先排序的MAC地址觸發(fā)MAC地址和交換機(jī)端口之間的關(guān)聯(lián),使得優(yōu)先排序的服務(wù)滿足預(yù)設(shè)的服務(wù)質(zhì)量要求。
[0093]雖然已經(jīng)參照示例性實(shí)施例描述了本發(fā)明,但應(yīng)理解,描述僅為了說明的目的。從而,本發(fā)明只被所附的權(quán)利要求的范圍限制。
【主權(quán)項(xiàng)】
1.一種觸發(fā)媒體接入控制MAC地址和交換機(jī)端口之間的關(guān)聯(lián)的方法(200),其中所述關(guān)聯(lián)允許經(jīng)由所關(guān)聯(lián)的交換機(jī)端口對(duì)包括所述MAC地址作為目的地MAC地址的數(shù)據(jù)幀進(jìn)行轉(zhuǎn)發(fā),所述方法包括: 接收(200)從節(jié)點(diǎn)(I 8)發(fā)出的數(shù)據(jù)幀(700 ),其中,所述數(shù)據(jù)幀包括發(fā)出節(jié)點(diǎn)的MAC地址作為源MAC地址; 存儲(chǔ)(204)包括所述MAC地址的所述數(shù)據(jù)幀; 成功地向第一交換機(jī)端口(112、118)發(fā)送(206)所述數(shù)據(jù)幀;以及 響應(yīng)于去往第一交換機(jī)端口(112、118)的第一鏈路(108、122)的故障,向與第一交換機(jī)端口不同的第二交換機(jī)端口(114、116、119)重新發(fā)送(208)所存儲(chǔ)的數(shù)據(jù)幀,以觸發(fā)第二交換機(jī)端口與發(fā)出節(jié)點(diǎn)(18)的MAC地址之間的關(guān)聯(lián)。2.根據(jù)權(quán)利要求1所述的方法,其中,從發(fā)出節(jié)點(diǎn)(18)周期性地接收包括發(fā)出節(jié)點(diǎn)的MAC地址的數(shù)據(jù)幀(700),其中,周期性的接收之間的持續(xù)時(shí)間的量級(jí)是I秒或更長。3.根據(jù)權(quán)利要求1或2所述的方法,其中,所接收的數(shù)據(jù)幀(700)替換之前接收到數(shù)據(jù)幀。4.根據(jù)權(quán)利要求1-3中的任一項(xiàng)所述的方法,還包括: 將經(jīng)由第一交換機(jī)端口或第二交換機(jī)端口接收的第二數(shù)據(jù)幀轉(zhuǎn)發(fā)到發(fā)出節(jié)點(diǎn)(18),其中,轉(zhuǎn)發(fā)到發(fā)出節(jié)點(diǎn)(18)的第二數(shù)據(jù)幀的速率大于從發(fā)出節(jié)點(diǎn)(18)發(fā)出的所接收的數(shù)據(jù)幀(700)的速率。5.根據(jù)權(quán)利要求1-4中的任一項(xiàng)所述的方法,其中,轉(zhuǎn)發(fā)、接收(202)、存儲(chǔ)(204)、發(fā)送(206)和重新發(fā)送(208)步驟中的至少一個(gè)步驟是由位于發(fā)出節(jié)點(diǎn)(18)和第一和第二交換機(jī)端口(112、114、116、118、119)之間的電信網(wǎng)絡(luò)(10)中的觸發(fā)節(jié)點(diǎn)(100)執(zhí)行的。6.根據(jù)權(quán)利要求5所述的方法,其中,觸發(fā)節(jié)點(diǎn)(100)在電信網(wǎng)絡(luò)(10)的數(shù)據(jù)鏈路層的拓?fù)浣Y(jié)構(gòu)中離發(fā)出節(jié)點(diǎn)(18)最近。7.根據(jù)權(quán)利要求5或6所述的方法,其中,觸發(fā)節(jié)點(diǎn)(100)是電信網(wǎng)絡(luò)(10)內(nèi)的重疊網(wǎng)絡(luò)(12)的頭端節(jié)點(diǎn),其中,觸發(fā)節(jié)點(diǎn)(100)將重疊網(wǎng)絡(luò)(12)與發(fā)出節(jié)點(diǎn)(18)連接。8.根據(jù)權(quán)利要求7所述的方法,其中,重疊網(wǎng)絡(luò)(12)包括數(shù)據(jù)鏈路層上的保護(hù)機(jī)制(1202、1204),其中,所述保護(hù)機(jī)制包括第一交換機(jī)端口( 118)和第二交換機(jī)端口( 119)。9.根據(jù)權(quán)利要求5-8中的任一項(xiàng)所述的方法,其中,重新發(fā)送步驟(208)還包括:在觸發(fā)節(jié)點(diǎn)(100)的本地MAC表(302)中刪除與第一本地端口相關(guān)聯(lián)的一個(gè)或多個(gè)條目,所述第一本地端口經(jīng)由故障的第一鏈路與第一交換機(jī)端口( 112、118)耦接。10.根據(jù)權(quán)利要求1-9中的任一項(xiàng)所述的方法,其中,向一個(gè)或多個(gè)交換機(jī)(I27、129)的一個(gè)或多個(gè)第二交換機(jī)端口(114、116、119)重新發(fā)送所述數(shù)據(jù)幀(700),每個(gè)交換機(jī)包括所述第二交換機(jī)端口之一。11.根據(jù)權(quán)利要求10所述的方法,其中,在一個(gè)或多個(gè)交換機(jī)(127、129)處對(duì)重新發(fā)送的數(shù)據(jù)幀的接收觸發(fā)在所述一個(gè)或多個(gè)交換機(jī)中的每一個(gè)交換機(jī)處存儲(chǔ)相應(yīng)的一個(gè)第二交換機(jī)端口與發(fā)出節(jié)點(diǎn)的MAC地址之間的關(guān)聯(lián)。12.根據(jù)權(quán)利要求1-11中的任一項(xiàng)所述的方法,其中,根據(jù)數(shù)據(jù)幀中所包括的一個(gè)或多個(gè)字段值,選擇性地存儲(chǔ)所接收的數(shù)據(jù)幀(700)。13.根據(jù)權(quán)利要求1-12中的任一項(xiàng)所述的方法,還包括:提供MAC地址的列表,其中,響應(yīng)于第一鏈路(108、122)的故障,重新發(fā)送所存儲(chǔ)的數(shù)據(jù)幀和/或基于所存儲(chǔ)的數(shù)據(jù)幀生成的數(shù)據(jù)幀,重新發(fā)送的數(shù)據(jù)幀中的每一個(gè)包括列表中的MAC地址之一作為源MAC地址。14.根據(jù)權(quán)利要求1-13中的任一項(xiàng)所述的方法,其中,所述關(guān)聯(lián)允許經(jīng)由所關(guān)聯(lián)的交換機(jī)端口沿第一方向向發(fā)出節(jié)點(diǎn)(18)轉(zhuǎn)發(fā)包括所述MAC地址作為目的地MAC地址的數(shù)據(jù)幀,以及對(duì)從發(fā)出節(jié)點(diǎn)(18)發(fā)出的數(shù)據(jù)幀(700)進(jìn)行發(fā)送(206)和重新發(fā)送(208)涉及與第一方向相反的第二方向。15.根據(jù)權(quán)利要求1-14中的任一項(xiàng)所述的方法,其中,在成功地發(fā)送(206)數(shù)據(jù)幀(700)之后,將數(shù)據(jù)幀(700)存儲(chǔ)一段時(shí)間。16.根據(jù)權(quán)利要求1-15中的任一項(xiàng)所述的方法,其中,所述數(shù)據(jù)幀(700)是以整個(gè)長度存儲(chǔ)的。17.根據(jù)權(quán)利要求1-16中的任一項(xiàng)所述的方法,其中,從發(fā)出節(jié)點(diǎn)(18)發(fā)出的數(shù)據(jù)幀(700)包括互聯(lián)網(wǎng)組管理協(xié)議IGMP消息、虛擬路由器冗余協(xié)議VRRP消息和/或地址解析協(xié)議ARP消息。18.根據(jù)權(quán)利要求1-17中的任一項(xiàng)所述的方法,其中,發(fā)出節(jié)點(diǎn)(18)是根據(jù)虛擬路由器冗余協(xié)議VRRP的當(dāng)前活躍的路由器或虛擬路由器。19.一種包括程序代碼部分的計(jì)算機(jī)程序產(chǎn)品,所述程序代碼部分用于當(dāng)所述計(jì)算機(jī)程序產(chǎn)品通過計(jì)算設(shè)備執(zhí)行時(shí),執(zhí)行權(quán)利要求1至18中任意一項(xiàng)的步驟。20.根據(jù)權(quán)利要求19所述的計(jì)算機(jī)程序產(chǎn)品,所述計(jì)算機(jī)程序產(chǎn)品存儲(chǔ)在計(jì)算機(jī)可讀記錄介質(zhì)上。21.—種用于觸發(fā)媒體接入控制MAC地址和交換機(jī)端口之間的關(guān)聯(lián)的設(shè)備(100),其中所述關(guān)聯(lián)允許經(jīng)由所關(guān)聯(lián)的交換機(jī)端口對(duì)包括所述MAC地址作為目的地MAC地址的數(shù)據(jù)幀進(jìn)行轉(zhuǎn)發(fā),所述設(shè)備包括: 接收單元(102),適于接收從節(jié)點(diǎn)(18)發(fā)出的數(shù)據(jù)幀(700),其中,所述數(shù)據(jù)幀包括發(fā)出節(jié)點(diǎn)的MAC地址作為源MAC地址; 存儲(chǔ)單元(104),適于存儲(chǔ)包括所述MAC地址的所述數(shù)據(jù)幀;以及 發(fā)送單元(106),適于向第一交換機(jī)端口(112、118)發(fā)送所述數(shù)據(jù)幀,以及響應(yīng)于去往第一交換機(jī)端口( 112、118)的第一鏈路(108、122)的故障,在成功地向第一交換機(jī)端口發(fā)送了數(shù)據(jù)幀之后,向與第一交換機(jī)端口不同的第二交換機(jī)端口(114、116、119)重新發(fā)送所存儲(chǔ)的數(shù)據(jù)幀,以觸發(fā)第二交換機(jī)端口與發(fā)出節(jié)點(diǎn)(18)的MAC地址之間的關(guān)聯(lián)。
【文檔編號(hào)】H04L29/12GK105900406SQ201380081835
【公開日】2016年8月24日
【申請日】2013年12月23日
【發(fā)明人】劉俊輝, 潘自全, 孫巍
【申請人】瑞典愛立信有限公司