華爲網絡設備MAC-Flapping簡介

MAC-Flapping概述

從MAC-Flapping出現的背景、MAC-Flapping簡介到相關概念等,描述了MAC-Flapping技術在VPLS(Virtual Private LAN Service)網絡中如何應用。

MAC-Flapping出現的背景

以太網交換網絡中為了進行鏈路備份,提高網絡可靠性,通常會使用冗餘鏈路。但是使用冗餘鏈路會在交換網絡上產生環路,並導致廣播風暴以及MAC地址表不穩定等故障現象,從而導致用戶通信質量較差,甚至通信中斷。為解決交換網絡中的環路問題,提出了生成樹協議STP(Spanning Tree Protocol)或二層環回檢測技術。但是STP要求每臺用戶網絡的設備都支持STP,且需要在每臺用戶網絡的設備上進行配置,而環回檢測技術也需要用戶側設備支持特殊的二層環路檢測報文通過。對於不可知或是不支持以上技術的用戶網絡,部署STP或二層環回檢測技術都無法解決環路的問題。

MAC-Flapping的引入則解決了此問題。MAC-Flapping不需要協議報文互通進行協商,部署該特性的設備都各自為陣,根據MAC表項的跳變來檢測當前所屬網絡是否存在環路。

MAC-Flapping簡介

在網絡中部署MAC-Flapping環路檢測功能後,如果網絡中出現環路,MAC-Flapping環路檢測功能通過MAC表項跳變頻率,可實現消除環路,即通過阻塞冗餘鏈路,消除網絡中可能存在的網絡通信環路。

如圖1所示,整個VPLS(Virtual Private LAN Service)網絡通過MPLS(Multiprotocol Label Switching)隧道在每個VPN(Virtual Private Network)的各個Site之間建立PW(Pseudo Wire),並通過PW將用戶二層報文在站點間透傳。PE設備會在轉發報文的同時學習源MAC並建立MAC表項,完成MAC地址與AC(Attachment Circuit)側接口和PW的映射關係。

華為網絡設備MAC-Flapping簡介

基於VPLS的MAC-Flapping環路檢測功能組網圖

但是,由於冗餘備份的需要,例如CE2和CE3雙歸接入PE1,而由於CE2和CE3所在的用戶網絡各用戶之間的連接並不可控,所以這樣的部署就可能會產生環路,即,PE1連接CE2和CE3的端口會收到源MAC地址相同的用戶報文,從而引起MAC跳變,甚至導致MAC表項被破壞。此時,可以在PE1設備上部署MAC-Flapping環路檢測功能,當檢測到環路後,若用戶需要阻斷接口以防止用戶流量成環,可以根據實際需要選擇阻斷接口的方式:

  • 根據接口的阻斷優先級:當設備檢測到環路時,會選擇阻塞阻斷優先級低的接口。
  • 根據接口是否為信任接口:當設備檢測到環路時,會選擇阻塞非信任接口。

另外,MAC-Flapping環路檢測功能除了能檢測以上AC側接口的環路以外,還能檢測PW側環路。原理類似,不再贅述。

MAC-Flapping環路檢測功能配置後,若設備收到用戶惡意構造的虛假源MAC的報文,會錯誤判斷出現環路。MAC-Flapping功能存在環路時,會阻斷端口所有流量,可能存在阻斷用戶關鍵流量的情況。建議用戶在設備正常運行過程中,關閉此功能。如果開局階段需要利用該功能判斷鏈路是否正常,在完成開局後應該關閉此功能。

MAC-Flapping相關概念

部署MAC-Flapping環路檢測方法時,需要了解以下基本概念:

檢測週期

檢測週期可配置,當在檢測週期內MAC表項跳變次數達到一定值時,便判斷已經出現環路。

臨時阻斷

當判斷出現環路時,接口或PW會臨時阻塞一段時間,時間可配置。

永久阻斷

當接口或PW被阻斷恢復正常後,如果出現環路的次數超過用戶配置的最大可允許出現的環路次數,當前接口或PW會被永久阻斷。

永久阻斷的接口或PW不能自行恢復正常,只能用戶手工恢復。

阻斷策略

部署MAC-Flapping環路檢測功能的設備在阻斷接口時,阻斷策略有兩種:

  • 按照接口的阻斷優先級

用戶可配置接口的阻斷優先級,當設備檢測到環路時,會選擇阻塞阻斷優先級低的接口。

  • 按照是否為信任接口(即精確阻斷)

如果一個動態MAC表項能夠在MAC表中穩定存在一段時間,中間沒有跳變,也沒有被刪除,那麼認為此MAC表項存在信任接口,信任接口就是穩定的這段時間內該MAC表項的出接口。當設備檢測到環路時,會選擇阻塞非信任接口。

部署MAC-Flapping環路檢測功能的設備在阻斷PW時,阻斷策略只有一條,即按照PW阻斷優先級進行阻斷,當設備檢測到環路時,會選擇阻塞阻斷優先級低的PW。

精確阻斷

設備部署MAC-Flapping環路檢測功能後,設備默認將根據接口的阻斷優先級阻斷髮生MAC地址跳變的用戶接入側接口,從而達到破除環路的目的。這種實現方式下,沒有環路的接口可能受遠端環路影響發生MAC表項的跳變,而由於阻斷優先級低而導致接口流量被阻斷。為解決此問題,可以部署MAC-Flapping環路檢測精確阻斷功能。MAC-Flapping環路檢測精確阻斷功能會分析環路產生時環路接入口和無環路接入口MAC跳變的差別,從而記錄信任接口,接口MAC跳變發生時可以憑藉此信息進行精確判斷,快速找出環路產生點,然後進行精確阻斷。


分享到:


相關文章: