前面已經(jīng)提到,vPC技術是在兩臺獨立的交換機上,對外虛擬出一臺邏輯二層交換機,并以邏輯交換機身份參與PortChannel建立時的雙方協(xié)商和STP計算。因此,這兩臺交換機之間的控制平臺需要相互協(xié)作,并實時交換各自的數(shù)據(jù),才能完成該功能。
vPC domain可以看做是在兩臺獨立的交換機上跨平臺虛擬出的一臺二層交換機,它提供了一個配置vPC的全局參數(shù)的環(huán)境。以下是組成vPC功能的必要組件(如圖 2)。
vPC對等交換機,既參與vPC的兩臺交換機,且必須是兩臺,可以是Cisco的 Nexus 3K、5K、6K、7K和9K系列交換機之一。下文中以“vPC交換機”指稱。
圖2 vPC功能組件
連 接vPC交 換 機和接入交換機之間的PortChannel。一般情況下,組成vPC的物理端口分布均勻分布在兩個vPC交換機上,且端口不能是三層口,即端口模式要么為access,要么為trunk。 通過vPC,可以將傳統(tǒng)二層交換機、三層交換機,或是支持PortChannel技術任意第三方設備,比如服務器、存貯等設備連接到vPC domain。
連接兩臺vPC交換機,必須為10G鏈路,必須為trunk模式。該鏈路除了傳輸普通數(shù)據(jù)外,主要用來傳輸(使用CFS協(xié)議,Cisco Frabic Services)兩臺交換機之間的控制信息和同步二層數(shù)據(jù)(MAC、IGMP......)。
即平時所說的心跳線,用來檢測對端交換機是否正常。
兩臺vPC對等交換機,包括vPC peer link和vPC peer-keepalive link組成一個vPC domain,使用一個ID來標識它。
vPC成員端口,即參與聚合為某個vPC的物理交換機端口,該端口必須屬于兩臺vPC交換機之一。
允許在某一vPC鏈路(access或trunk)上傳輸,并且允許在vPC peer link上傳輸?shù)腣LAN,稱為vPC VLAN。
不允許在任一個vPC鏈路(access或trunk)上傳輸,但有可能允許在vPC peer link上傳輸?shù)腣LAN,稱為non-vPC VLAN。
孤端口,屬于某個vPC VLAN,用來連接某臺設備,但所連設備僅使用了單條線路,則該端口稱為孤端口。
在圖1中給大家展示了上述組件相互之間的邏輯關系。本文中如沒有特殊說明,將認為vPC domain就是vPC系統(tǒng)虛擬出的一臺虛擬交換機(可能會混用“vPC虛擬交換機” 和“vPC domain”),vPC屬于該虛擬交換機的一 條 PortChannel,vPC member port是屬于某一個PortChannel的成員端口。
注:有資料認為,所有成員端口在同一臺vPC交換機上的vPC端口,也稱為孤端口。這種看法應該是合理的,但實踐中很少有這樣的做法。
需要注意的是,以上所列舉的概念僅僅是從組成vPC domain的交換機角度看才有意義,對連接到vPC domain的外部設備,是不存在這些概念的。對它們來說,自己僅僅是通過一個普通的PortChannel連接到另外一臺普通的設備(vPC虛擬交換機)。
形成vPC domain的兩臺交換機,一臺被配置為primary,一臺被配置secondary(vPC優(yōu)先級低者成為primary)。這兩臺設備的主要區(qū)別是,primary交換機負責運行控制STP協(xié)議和應答ARP請求。當探測到兩臺設備之間的vPC peer link鏈路中斷時,secondary交換機會將自身的所有vPC member port和vPC VLAN SVI設置為down狀態(tài)。