本節書摘來自異步社區《思科數據中心I/O整合》一書中的第2章,第2.11節,作者【美】Silvano Gai , Claudio DeSanti,更多章節內容可以訪問云棲社區“異步社區”公眾號查看
2.11 活動-活動連接(Active-Active)
思科數據中心I/O整合
以太網通道
以太網通道是一種端口聚合技術,在1994年由思科公司提出,并且在2000年,由IEEE 802的IEEE 802.3ad 項目實現了標準化。這個協議在思科和非思科交換機上都得到了廣泛應用。
以太網通道支持將多個物理以以太網鏈路聚合為一個邏輯以太網鏈路,其帶寬等同于所聚合鏈路的帶寬之和。以太網通道可以聚合二至八條鏈路,而且所有高層協議都會將多條鏈路視為一個連接,如圖2-18所示。
以太網通道有利于在交換機、路由器和服務器之間實現容錯和高速的鏈路,同時不會阻塞任何端口,從而能夠利用所有的鏈路。
以太網通道的缺點是聚合的所有物理端口都必須位于同一個交換機上。為此,出現了下面三種解決方案(VSS、vPC和以太網主機虛擬器),具體參見圖2-19。
在圖2-19中,4臺接入層交換機連接了兩臺匯聚層交換機,而他們的上行鏈路則保持活動—活動狀態。(例如,STP不會裁剪任何鏈路。)
虛擬交換系統(VSS)
VSS是思科公司支持使用以太網通道將一臺接入層交換機連接到兩臺匯聚層交換機的兩種技術中最早使用的技術,如圖2-20所示。
具體的實現方式是,VSS通過集群方式將兩臺物理交換機形成一臺邏輯實體。由于每個物理設備變得不可區分,因此接入層交換機會將上游交換機視為一臺匯聚層交換機(參見圖2-18)。
此外,VSS還具有許多的優點,因為它能夠提高設備的高可用性、可擴展性、管理性和維護性。
思科VSS技術的關鍵因素是一條名為虛擬交換鏈路(VSL)的特殊鏈路,它能夠將兩臺物理交換機綁定在一起,并且能夠傳遞特殊的控制信息。
VSL鏈路是兩臺交換機的內部矩陣之間的連接,能夠將它們組合為一個邏輯網絡實體,并且使外部觀察者無法區分它們。因此,接入層交換機可以使用多條上行鏈路連接兩臺交換機,并將它們配置為標準的以太網通道,可以這樣做的原因是,VSS是作為一個邏輯交換機或路由器而出現的。
在思科VSS中,從數據平面看,兩臺交換機都處于活動狀態,但是從控制和管理平面看,只有一臺交換機處于活動狀態,而另一臺則處于熱待機狀態,與雙引擎交換機的情況很相似(例如,Catalyst 6500)。
所有控制平面功能,包括管理(SNMP、Telnet、SSH)、2層協議(STP、LACP等)和3層路由協議都由活動交換機集中管理。此外,這臺交換機還負責管理兩臺交換機的硬件轉發信息。
VSS要求兩臺集群成員交換機嚴格管理和整合。
虛擬端口通道(vPC)
vPC(也稱為多機箱以太網通道/虛擬端口通道,MCEC/vPC),實現了與VSS相似的結果,但是不需要在vPC交換機之間實現像VSS同等水平的嚴格整合(參見圖2-21)。具體地講,vPC不是一種類似VSL私有協議的概念,而且vPC交換機之間的整合要求也不像VSS那么高。
從接入層交換機的角度看,沒有任何變化:vPC仍然使用未修改的以太網通道,并且將vPC交換機視為一個STP邏輯網橋。
每一個vPC交換機都維護其身份、管理及控制平面,但是它們會與其他vPC交換機一起協作,實現活動—活動(Active-Active)的虛擬端口通道。vPC的目標并不是將兩臺vPC交換機整合在一起,而在VSS中是整合的。
vPC交換機之間的鏈路被稱為對等鏈路,這是一種常規的數據鏈路,涉及控制平面和數據平面轉發。特別是,該鏈路在以下方面發揮著重要作用:
vPC交換機之間與vPC相關的控制平面信息的交換;
vPC交換機之間的心跳機制;
故障情況下的數據流量;
不對稱連接的主機/交換機之間的數據流量;
廣播/組播/泛洪幀。
vPC(VSS中也存在)的主要挑戰是如何保證每個幀只被轉發一次,避免出現幀被復制和環路轉發。在一些與兩臺匯聚層交換機連接以及一些沒使用生成樹協議,且只連接一臺匯聚層交換機(例如,一條上行鏈路出現故障)的接入層交換機上,這個問題是必須解決的。
為了實現這個目標,每一個vPC交換機都需要將端口劃分成三個組(參見圖2-21)。
對等鏈路端口:這些端口連接其他的vPC交換機。
vPC端口:這些端口連接一臺活動的vPC(例如,主機或交換機鏈接到這些端口的同時,還連接著其他的vPC交換機)。
非vPC端口:連接一些“孤立的”主機或交換機(例如,由于配置或故障原因,它們不與其他vPC交換機連接)。
關于幀轉發工作方式的完整討論不屬于本書的闡述范圍,但是在一般情況下:
來自vPC端口或非vPC端口的單播幀會像普通交換機端口轉發單播幀一樣被轉發;
來自對等鏈路要轉發到vPC端口的單播幀會被丟棄,因為接收端交換機會假定該幀已經通過另一臺vPC交換機、順利地被傳輸到目標地址;
來自對等鏈路要轉發到非vPC端口的單播幀會被轉發,因為在另一臺vPC交換機上沒有直接傳輸該幀的路徑;
來自任意非對等鏈路端口的組播/廣播幀會被傳輸到所有其他端口;
來自對等鏈路的組播/廣播幀會被傳輸到所有非vPC端口,因為接收端交換機會假定它已經被傳輸到其他vPC交換機的vPC端口上。
以太網主機虛擬器(Ethernet Host Virtualizer)
VSS和vPC是匯聚層交換機實現的一種技術手段,它允許接入層交換機繼續以傳統方式使用以太網通道。
接入層交換機還可以使用一種名為以太網主機虛擬器的技術來解決這個問題。
如圖2-22所示,接入層交換機實現了以太網虛擬器,而匯聚層交換機則繼續運行傳統的STP。
運行以太網主機虛擬器的交換機會將端口分成兩組:主機端口和網絡端口。這兩種端口都可以是一個接口或一個以太網通道。然后,交換機會給每一個主機端口關聯一個網絡端口,這個過程稱為綁定(pinning)。
除非出現故障,否則同一個主機端口總是使用同一個網絡端口。在這種情況下,接入層交換機會將綁定轉移到另一個網絡端口。
在如圖2-22所示的例子中,MAC-A總是位于左邊的網絡端口,而MAC-B則總是位于右邊的網絡端口。
對于特定主機端口的網絡端口的選擇,取決于如何人工配置或者交換機根據其負載狀況決定,這種關系會一直維持到主機端口或網絡端口斷開連接。
如果出現這種情況,關聯的主機端口會被重新分配給剩余的其他活動的網絡端口。
必須特別注意組播和廣播幀,避免出現環路和重復幀。一般情況下,部署這個特性的接入層交換機會有以下表現:
它們不會將來自網絡端口的幀傳輸給另一個網絡端口;
它們會根據組播組劃分組播/廣播流量,而且會為每一個組播組分配一個網絡端口,只有一個網絡端口可以傳輸和接收該組播組流量。
以太網主機虛擬器比下一節中將要討論的二層多路徑技術更為少見,而且只適用于連接到主機或存儲陣列的接入層交換機,不適用于匯聚層或核心層交換機。但它的最大優勢是部署簡單,不需要任何改動就能夠連接到現有的核心—匯聚層網絡中。