一、IRF簡介
IRF(Intelligent Resilient Framework,智能彈性架構)是H3C自主研發的軟件虛擬化技術。它的核心思想是將多台設備通過IRF物理端口連接在一起,進行必要的配置后,虛擬化成一台“分布式設備”。使用這種虛擬化技術可以集合多台設備的硬件資源和軟件處理能力,實現多台設備的協同工作、統一管理和不間斷維護。
二、多IRF沖突檢測(MAD功能)
2.1 機制介紹
IRF鏈路故障會導致一個IRF變成兩個新的IRF。這兩個IRF擁有相同的IP地址等三層配置,會引起地址沖突,導致故障在網絡中擴大。為了提高系統的可用性,當IRF分裂時我們就需要一種機制,能夠檢測出網絡中同時存在多個IRF,並進行相應的處理盡量降低IRF分裂對業務的影響。MAD(Multi-Active Detection,多Active檢測)就是這樣一種檢測和處理機制。它主要提供以下功能:
(1)分裂檢測
通過LACP(Link Aggregation Control Protocol,鏈路聚合控制協議)、BFD(Bidirectional Forwarding Detection,雙向轉發檢測)或者免費ARP(GratuitousAddress Resolution Protocol)來檢測網絡中是否存在多個IRF。
(2)沖突處理
IRF分裂后,通過分裂檢測機制IRF會檢測到網絡中存在其它處理Active狀態(表示IRF處於正常工作狀態)的IRF。沖突處理會讓Master成員編號最小的IRF繼續正常工作(維持Active狀態),其它IRF會遷移到Recovery狀態(表示IRF處於禁用狀態),並關閉Recovery狀態IRF中所有成員設備上除保留端口以外的其它所有物理端口(通常為業務接口),以保證該IRF不能再轉發業務報文。(缺省情況下,只有IRF物理商品是保留商品,如果要將其它端口,比如用於遠程登錄的商品,也作為保留端口,需要使用命令行進行手工配置。
(3)MAD故障恢復
IRF鏈路故障導致IRF分裂,從而引起多Active沖突。因此修復故障的IRF鏈路,讓沖突的IRF重新合並為一個IRF,就能恢復MAD故障。如果在MAD故障恢復前,處於Recovery狀態的IRF也出現了故障,則需要將故障IRF和故障鏈路都修復后,才能讓沖突的IRF重新合並為一個IRF,恢復MAD故障;如果在MAD故障恢復前,故障的是Active狀態的IRF,則可以通過命令行先啟用Recovery狀態的IRF,讓它接替原IRF工作,以便保證業務盡量少受影響,再恢復MAD故障。
2.2 原理介紹
IRF支持的MAD檢測方式有:LACP MAD檢測、BFD MAD檢測和ARP MAD檢測。三種檢測方式雖然原理不同但是功能效果相同,能夠滿足不同組網需求。
- LACP MAD檢測用於基於LACP的組網檢測需求;
- BFD MAD檢測用於基於BFD的組網需求;
- ARP MAD檢測用於基於非聚合場合的Resilient ARP的組網檢測需求。
這三種方式獨立工作,彼此之間互不干擾。因此,同一IRF內可以配置多種MAD檢測方式。
2.2.1 LACP MAD
(1)LACP MAD檢測原理
LACP MAD檢測是通過擴展LACP協議報文內容實現的,即在LACP協議報文的擴展字段內定義一個新的TLV(Type/Length/Value,類型/長度/值)數據域——用於交互IRF的DomainID(域編號)和ActiveD。當網絡中同時存在多個IRF時(比如IRF級聯的組網情況),DomainID用於區別不同的IRF。當某個IRF分裂時,ActiveID用於MAD檢測,用IRF中Master設備的成員編號來表示。
使能LACP MAD檢測后,成員設備通過LACP協議報文和其它成員設備交互DomainID和ActiveID信息。
- 當成員設備收到LACP協議報文后,先比較DomainID。如果DomainID相同,再較ActiveID;如果DomainID不同,則認為報文來自不同IRF,不再進行MAD處理。
- 如果ActiveID相同,則表示IRF正常運行,沒有發生多Active沖突;如果ActiveID值不同,則表示IRF分裂,檢測到多Active沖突。
(2)LACP MAD檢測組網要求
LACP MAD檢測方式組網中需要使用中間設備,支持LACP協議擴展功能的H3C設備都能作為中間設備。
(3)配置LACP MAD檢測
LACP MAD檢測的配置步驟為:
- 配置IRF域編號;
- 創建聚合接口;(中間設備上也需要進行該項配置)
- 將聚合接口的工作模式配置為動態聚合模式;(中間設備上也需要進行該項配置)
- 在動態聚合接口下使能LACP MAD檢測功能;
- 給聚合組添加成員端口。(中間設備上也需要進行該項配置)
2.2.2 BFD MAD
(1)BFD MAD檢測原理
BFD MAD檢測是通過BFD協議來實現的。要使BFD MAD檢測功能正常運行,除在三層接口下使能BFD MAD檢測功能外,還需要在該接口上配置MAD地址。MAD IP地址與普通IP地址不同的地方在於MAD IP地址與成員設備是綁定的,IRF中的每個成員設備上都需要配置,且必須屬於同一網段。
- 當IRF正常運行時,只有Master上配置的MAD IP地址生效,Slave設備上配置的MAD IP地址不生效,BFD會話處於down狀態;(使用display bfd session命令查看BFD會話的狀態。如果Session State顯示為Up,則表示激活狀態;如果顯示為Down,則表示處於down狀態)
- 當IRF分裂后會形成多個IRF,不同IRF中Master上配置的MAD IP地址均會生效,BFD會話被激活,此時會檢測到多Active沖突。
(2)BFD MAD檢測組網要求
BFD MAD檢測方式可以使用中間設備來進行連接,也可以不使用中間設備。所有成員設備之間必須有一條BFD MAD檢測鏈路,這些鏈路連接的接口必須屬於同一VLAN,在該VLAN接口視圖下給不同成員設備配置同一網段下不同IP地址。
(3)配置BFD檢測
BFD MAD檢測功能的配置順序為:
- 創建一個新VLAN,專用於BFD MAD檢測;(如果用到中間設備組網,中間設備上也需要進行該項配置)
- 確定使用哪些物理端口用作BFD MAD檢測(每台成員設備上至少一個),並將這些端口都添加到BFD MAD檢測專用VLAN中;(如果用到中間設備組網,中間設備上也需要進行該項配置)
- 為BFD MAD檢測專用VLAN創建VLAN接口,在接口下使能BFD MAD檢測功能,並配置MAD IP地址。
2.2.3 ARP MAD
(1)ARP MAD檢測原理
ARP MAD檢測是通過擴展免費ARP協議報文內容實現的,即使用免費ARP協議報文中未使用的字段來交互IRF的DomainID和ActiveID。DomainID和ActiveID的定義及比較方法同LACP MAD檢測相同。使能ARP MAD檢測后,成員設備可以通過免費ARP協議報文和其它成員設備交互DomainID和ActiveID信息。ARP MAD適用於使用MSTP雙上行的組網。
- 當IRF正常運行時,MSTP功能會阻塞某條鏈路,使免費ARP報文無法到達另一台成員設備,不會發生多Active沖突。
- 當IRF分裂后會形成兩個或個IRF,MSTP將重新計算拓撲,原先阻塞的鏈路被打開,不同IRF中的成員設備便可以接收到另一個IRF發送的免費ARP協議報文,從而檢測到多Active沖突。
(2)ARP MAD檢測組網要求
ARP MAD檢測方式可以使用中間設備來進行連接,也可以不使用中間設備。成員設備之間通過兩台上行設備交互免費ARP報文,Device、Master和Slave上都要配置生成樹功能,以防止形成環路。
三、實驗
參考本博客另外兩篇文章:
-
H3C交換機IRF典型配置舉例LACP MAD檢測方式:https://www.cnblogs.com/sky5hat/p/10477569.htm
-
H3C BFD MAD檢測方式的IRF典型配置舉例:https://www.cnblogs.com/sky5hat/p/10477308.html
四、相關問題驗證
1)IRF合並時,兩台IRF會遵照角色選舉的規則進行競選,競選失敗方IRF的所有成員設備需要重啟才能加入獲勝方IRF,在此期間,競選獲勝的設備需不需要重啟?競選失敗方自動重啟有什么條件?
答:經驗證競選獲勝的設備不需要重啟,競選失敗方需配置irf auto-merge enable后才會自動重啟,否則需要用戶根據系統提示手工完成重啟。
2)兩個S12500堆疊,啟用LACP MAD檢測或者BFD檢測,IRF堆疊鏈路故障導致IRF分裂,slave設備進入recovery狀態,手工重啟處於recovery狀態的設備后會是什么狀態?
答:經驗證,IRF鏈路不修復,處於recovery狀態的設備通過console口手動重啟,重啟后會再一次進入recovery狀態。
LACP MAD或者BFD MAD效果一樣,重啟后MAD檢測機制仍然在每一個設備上生效,不會因為分裂消失。