《CCNP SWITCH 300-115认证考试指南》——1.3节模块化网络的设计
本節書摘來自異步社區《CCNP SWITCH 300-115認證考試指南》一書中的第1章,第1.3節模塊化網絡的設計,作者 【美】David Hucaby(戴維 胡卡比),更多章節內容可以訪問云棲社區“異步社區”公眾號查看
1.3 模塊化網絡的設計
CCNP SWITCH 300-115認證考試指南
借助分層網絡的設計思想來設計一個全新的3層網絡是非常簡單的任務。當然,你也可以把當前現有的網絡遷移為分層結構的設計。當完成這樣的設計改進后,網絡會變得更加組織有序,同時具備高效性和可預測性的優點。但是,簡單的分層網絡設計并不能為你提升網絡的冗余性和可擴展性。因此,當交換機或鏈路發生故障,當網絡需要增加一些大型的附加組件時,你會感到束手無策。
如圖1-8左半部分所示的分層網絡,所有的層面都僅僅使用一條鏈路與相鄰層面建立連接。如果任意一條鏈路發生故障,那么該網絡的特定部分就會變得孤立無援。另外,所有的接入層交換機都聚合到一臺匯聚交換機上,如果匯聚交換機出現了故障,那么此時所有的用戶也會面臨被孤立的境地。
為了緩解匯聚交換機發生故障所帶來的潛在威脅,你可以為園區網絡增加一臺冗余的匯聚交換機。另外,為了避免可能的鏈路失效,你同樣能夠在接入交換機與匯聚交換機之間增加一條冗余鏈路。在完成上述所有改進之后,當前園區網絡的拓撲情況如圖1-8的右半部分所示。
對于圖1-9所示的小型網絡而言,這里所提供的冗余性已經非常完備了。但是隨著網絡規模的不斷增長,越來越多的冗余交換機和冗余鏈路需要被考慮到網絡設計中去,那么此時的設計過程可能會變得非常混亂。例如,假設圖1-9所示的網絡需要增加更多的接入交換機,以便滿足新搬入企業大樓或相鄰大樓的部門員工的網絡需求。那么新增的接入層交換機是否需要與兩臺匯聚交換機建立雙宿主連接呢?是否還需額外部署新的匯聚交換機呢?如果答案是肯定的,那么對于任意一臺匯聚交換機而言,是否需要與其他匯聚交換機及核心交換機建立全互連(fully meshed)的網絡連接呢?
圖1-10所示描繪了為了滿足上述所有需求,一種可能的網絡設計方案。在這樣的網絡設計中,交換機之間建立了過多的互連連接,以至于想要準確定位特定的VLAN、掌握生成樹拓撲、區分3層連接等問題的難度已經不亞于進行一場“頭腦風暴”了。盡管這種網絡設計也能夠為用戶提供必要的連通性,但是對于網絡是如何正常工作的,以及當故障發生后如何有效地進行故障排除等此類問題,不得不說是網絡維護者的一種 “災難”。相比于組織有序、結構合理的網絡設計,這里所展示的網絡更像是一張繁瑣雜亂的蜘蛛網。
為了使園區網絡的設計始終保持組織有序、結構簡單和可預測的優勢,你可以采用一種模塊化的邏輯設計方法。這種方法的核心思想是,把分層網絡模型的每一個層面分解為基礎的功能性單元。這些單元,或稱之為建筑模塊,能夠靈活地制定大小,并最終作為網絡組件被使用。同時,這些單元還必須具備可擴展性,以便適應未來網絡的擴張。
如上所述,你可以把企業園區網絡劃分為以下幾種基本的單元或建筑模塊。
交換模塊——一組接入層交換機,以及與之互連的匯聚層交換機。由于該單元包含了兩個交換層面(接入層和匯聚層),因此也被稱為接入匯聚模塊。圖1-8至圖1-10中,虛線方框中所示的內容描繪了典型的交換模塊。
核心——園區網絡的骨干,負責連接所有的交換模塊。
關鍵
事實上,除了上述兩種基本的單元以外,還有一些其他的相關單元存在。盡管這些單元并不會對園區網絡的整體功能性造成太多影響,但是它們卻具有一定的獨立性,也能夠被添加到園區網絡的設計中。例如,數據中心包含了企業的核心資源或服務,它可以擁有自己獨立的接入層和匯聚層交換機,形成最終連接到園區網絡核心層的交換模塊。不僅如此,如果數據中心的規模足夠大的話,它也可以擁有自己的核心交換機,然后連接到園區網的核心。交換模塊包含了接入層和匯聚層的所有交換設備,并連接到核心層,提供跨越整個園區網的端到端的連通性。為了適應網絡的持續擴張,你可以把新增的接入層交換機連接至現有的一對匯聚交換機上,如圖1-11所示。另外,你也可以增加一個全新的接入匯聚交換模塊,從而覆蓋新的區域,如圖1-12所示。
1.3.1 確定交換模塊的大小
從概念上而言,交換模塊就是包含了接入層和匯聚層設備的園區網基本構建單元。但是在確定交換模塊的大小時,你依然需要考慮一些重要的因素。交換模塊中可用交換設備的數量靈活地決定了交換模塊的規模大小。從接入層來看,接入交換機的選擇結果通常是基于端口的密度或需要接入的用戶數量所得到的。
匯聚層的規模大小取決于一臺匯聚設備需要聚合或連接的接入層交換機的數量。在面對這個問題時,你可以考慮如下的一些因素:
流量類型和模型(pattern);
匯聚層應當具備的3層交換的能力;
連接到接入層交換機上的用戶數量總和;
子網或VLAN的地理邊界。
在設計一個交換模塊時,如果僅僅根據用戶的數量,或是模塊中包含終端設備的多少進行決策判斷的話,那么最終得到的結果往往是不準確的。通常情況下,一個交換模塊中所部署的用戶數量不應當超過2000個。盡管這一條件在交換模塊大小的初期評估時是有用的,但是這種評估卻沒有涉及作為一個功能性網絡應當考慮的動態因素。
因此,交換模塊的大小應當主要根據如下條件來確定:
流量的類型和行為;
工作組的大小和數量。
由于網絡擁有動態的本質,因此你可以簡單地設計一個足夠大的交換模塊,以便輕松處理模塊內必要的負載任務。但是,隨著網絡中用戶和應用數量的不斷增長,最初所設計的模塊大小(即使是非常大的交換模塊)也會逐漸無法滿足網絡的需求,此時你便需要拆分原始的交換模塊,并將其分解為多個規模較小的交換模塊。再次重申,交換模塊的大小是基于交換模塊中實際的數據流和數據模型來確定的。你可以使用一些網絡分析應用及工具來評估、建模和測量這些流量參數。
注意:
如何進行網絡分析的過程已經超出了本書所論述的范疇。流量的評估、建模和測量都是非常復雜的主題,并且它們都擁有各自專用的分析工具。
一般而言,如果出現了下面的情況,那么則表明交換模塊的規模過大。
位于匯聚層的路由器(或多層交換機)遇到了性能瓶頸,出現流量擁塞。這種擁塞可能是由于大量的VLAN間流量、過多的CPU占用率,或部署了大量高開銷的策略和安全特性(如訪問控制列表、隊列技術等)導致的。
大量的廣播或組播流量消耗了交換模塊中過多的交換資源。廣播和組播流量需要被復制,然后同時從大量接口轉發出去,這一過程需要耗用多層交換機的一些資源。如果廣播或組播流量的大小非常可觀,那么這對于交換模塊的性能影響也是不容忽視的。
1.3.2 交換模塊的冗余
在所有的網絡設計中,網絡組件無可避免地需要面對發生故障失效的狀況。例如,如果電路保險開關跳閘或意外地被關閉,那么交換機也可能會停電宕機。解決這一問題的最好方法是,任意一臺交換機都使用兩路獨立的供電電源,甚至于每一套供電設備都連接到兩個不同的電力供應源,從而使得交換機電力供應的可靠性足以應付上述故障失效的情況1。類似于上面的情況,一臺交換機可能由于自身內部的因素造成宕機失效,一條鏈路可能由于傳輸介質的問題(如介質模塊故障、光纖被切斷等)出現線路中斷。綜上所述,為了設計一個更為彈性的網絡2,你應當考慮為網絡中的各種網絡組件創建冗余組件。
關鍵
為了達到冗余的目的,一個交換模塊應當包含兩臺用于聚合接入層交換機的匯聚交換機。其中,每一臺接入層交換機都擁有兩條上聯線路——各自連接到不同的匯聚交換機。盡管這種冗余設計的物理線纜非常容易畫出,但是邏輯上的連通性卻并不明顯。例如,圖1-13展示了只部署了一個VLAN A的交換模塊,并且VLAN A跨越了多臺接入交換機。對于這樣的交換模塊,你可以非常輕松地在接入層機房發現一些能夠相互連通的接入交換機,或是察覺到兩個相鄰的房間共享了同一個VLAN。但是請注意圖中帶有陰影的線條,這些線條描繪了一個VLAN是如何跨越每一臺交換機(包括接入和匯聚交換機)以及連接交換機的每一條線路的。對于一個VLAN需要出現在所有的接入交換機上,以及利用冗余的上聯線路以獲得高可用性的實例而言,這樣的設計是可以接受的。
盡管上述設計是可行的,但這并非是最優的方案。VLAN A為了跨越所有的接入交換機,它必須出現在模塊內所有可能的鏈路上。另外,兩臺匯聚交換機也都必須支持VLAN A,因為它們需要為所有VLAN A的用戶提供3層路由的功能。此時,兩臺匯聚交換機可以使用一種冗余網關協議,從而為VLAN內的用戶提供一個活動IP網關和一個備份網關。但是這種UPS發生故障,也不會造成機房因停電而中斷服務。冗余網關協議要求匯聚交換機之間必須建立2層的連通性。有關此類冗余網關協議的介紹,本書將在第18章中進行論述。
需要注意的是,帶有陰影的鏈路連接形成了兩個三角形的環路。如果2層網絡中產生了環路,那么這樣的2層網絡將無法維持穩定,并最終導致崩潰。因此,交換網絡中必須存在一些機制用于檢測環路,并維護無環(loop-free)的網絡拓撲。
另外,一旦出現了2層環路,整個交換模塊將會成為一個單點故障域。如果一臺屬于VLAN A的主機因受到病毒侵擾而產生了大規模的廣播流量,那么該交換模塊中的所有交換機及鏈路都會受到這些廣播流量的消極影響。
為了解決上述問題,交換模塊必須采用一種能夠從本質上杜絕2層環路的更好設計。如圖1-14所示,這種無環設計的交換模塊需要所有的接入交換機部署完全不同的VLAN。換句話說,單個VLAN不再被允許穿越到多臺接入交換機。如圖中帶有陰影的鏈路所示,每一個VLAN的傳輸范圍已經變成了一個“V”字形,而不是之前閉合的三角形環路。
關鍵
2層和3層的邊界位置保持不變。所有的2層連通性全部由接入層提供,而匯聚層僅部署3層鏈路3。在杜絕了所有可能的2層環路后,交換模塊將不再依賴任何用于檢測及阻止環路的機制,其運行也會變得更加穩定。另外,由于每一臺接入交換機都擁有兩條互不影響的上聯路徑去往匯聚層4,因此這兩條鏈路可以同時被完全利用,從而做到流量傳輸的負載均衡。同樣地,3層匯聚交換機也能夠利用路由協議在連接到核心層的冗余鏈路上執行流量的負載均衡。
另外,你還可以把3層邊界從匯聚層下沉至接入層,只要接入交換機支持路由功能即可。圖1-15展示了這種設計。此時,3層鏈路貫穿了整個交換模塊,因此網絡的穩定性將依賴于路由協議及更新的收斂表現。路由協議也能夠在冗余的上聯鏈路上為數據包提供負載均衡的轉發,這能夠提高不同網絡層面之間鏈路的利用率。
為了更好地完成冗余的分層網絡設計,你應當掌握下面這些非常有用的經驗指南。
在每一個層面中設計兩臺交換機。
出于冗余性考慮,每一臺交換機都使用兩條鏈路連接到更高的層面。
在兩臺匯聚交換機之間建立一條連接,但是不要為接入交換機建立這樣的連接(除非接入交換機支持一些高級特性,使得多臺接入交換機能夠成為一個邏輯的堆棧或機箱)5。
不要讓VLAN的范圍跨越匯聚交換機。匯聚層應當成為VLAN、子網和廣播流量的邊界。盡管2層交換機能夠把VLAN傳遞到其他交換機和其他分層層面,但是并不推薦這么做6。VLAN流量不應當穿越網絡核心。
1.3.3 網絡核心
在園區網絡中,一個核心層通常連接了兩個或更多的交換模塊。由于所有需要去往其他交換模塊的流量都必須穿越核心,因此核心層應當盡可能地展現出流量轉發的高效性和面對故障的快速回彈性。作為園區網絡的聚合中心,核心層所處理的流量要遠遠大于任何交換模塊。
如前所述,匯聚層與核心層都可以提供3層的網絡功能。因此,匯聚與核心交換機之間的互連接口應當被設計為3層可路由接口。你也可以在匯聚和核心交換機上使用一些2層鏈路,用于傳輸小范圍的VLAN流量。對于這種情況,3層的交換虛擬接口(SVI)將被用于路由這些小型VLAN的流量。
匯聚層與核心層之間的鏈路至少要求傳輸匯聚交換機交付給較高層面(即核心層)的流量負載,核心交換機之間的鏈路要求承載來自于另一臺核心交換機的聚合流量。基于鏈路的平均使用率和未來網絡的增長量,以太網核心應當具備結構簡單和易于擴展的特性。在考慮核心層使用何種量級的鏈路時,你可以遵循從吉比特以太網遞進到10吉比特以太網的方式7。
關鍵
一個典型的核心設計應當包含兩臺多層交換機,并使用冗余的方式連接兩個或多個交換模塊。這種冗余的核心設計有時也被稱為雙核心,因為兩臺核心交換機通常選用一致的設備型號,如圖1-16所示。需要注意的是,這里的核心層是一個獨立的模塊,并沒有與其他模塊或層面合并。
所有交換模塊中的匯聚交換機都分別與核心層的兩臺核心交換機建立了連接,而兩臺核心交換機之間也使用了一條鏈路進行連接。
由于采用了雙核心的冗余設計,因此每一臺匯聚交換機都擁有兩條等價的路徑去往核心,兩條路徑的可用帶寬能夠被同時使用。這兩條上聯鏈路之所以能夠同時保持可用狀態,是因為匯聚層與核心層之間使用了3層連接,路由協議能夠執行等價的路由轉發。如果一臺核心交換機發生了故障,那么在路由協議完成路由收斂之后,流量會沿著另一條上聯路徑發送到正常的核心交換機。
如果園區網絡的規模持續增長,并要求覆蓋兩幢大的建筑物或辦公地點,那么此時你可以復制核心層,如圖1-17所示。需要注意的是,經過擴展的雙節點冗余核心包含了4臺核心交換機,這種核心結構被稱為多節點核心。在核心層內,4臺核心交換機兩兩相連,形成全互連。
盡管采用多點核心設計的4臺核心交換機已經建立了全互連,但是園區網絡依然將其劃分為兩個雙核心的結構。每一個交換模塊只和其中一個雙核心建立冗余連接,而不是與所有4臺核心交換機。
1.3.4 收縮核心
是否所有的網絡都適合采用不同的冗余的核心層設計呢?答案可能并非如此。對于小型的園區網絡而言,構建一個獨立的核心層通常要求投入較為可觀的費用成本8。從平衡成本及性能的角度考慮,如果園區網絡的規模較小,那么你可以選擇收縮核心的設計。收縮核心模塊是指在分層網絡中核心層收縮到匯聚層的一種設計。此時,匯聚層和核心層的功能由相同的交換設備提供。
圖1-18展示了一個基本的收縮核心設計。盡管匯聚層和核心層的功能是由相同的設備提供,但是保持功能上的區分以及正確的設計依然非常重要。需要注意的是,收縮核心不再是一個獨立的建筑模塊了,而是被整合到之前獨立的匯聚層交換模塊中。
在收縮核心的設計中,每一臺接入層交換機都擁有冗余的兩條鏈路連接到匯聚層交換機。接入層承載的所有2層流量都將在匯聚交換機的3層接口上終結,這和基礎的交換模塊設計一樣。匯聚交換機相互建立冗余的連接,以便在網絡故障時提供高可用性。
1.3.5 園區網絡中的核心規模
園區網絡的核心層由多臺冗余的交換機構成,并提供純粹的3層功能。路由協議為核心層執行路徑選擇,并維護正常的運行。對于所有的網絡而言,你都應當謹慎對待網絡中路由器和路由協議的設計。由于網絡拓撲可能會隨時發生變化,因此路由協議也會產生更新以應對網絡變更。當網絡發生變更時,網絡的規模(路由器或交換機的數量)會影響到路由協議的性能表現,以及網絡的收斂速度。
盡管圖1-16所示的網絡規模看似很小,僅僅由兩個包含冗余3層交換機(能夠執行路由選擇)的交換模塊組成,但是與大型園區網絡相比,它們在組成結構上是一致的,只是連接到核心層的交換模塊的數量有所不同。如果把每一臺3層交換機都看作是路由器的話,那么核心設備必須與所有相連的匯聚交換機保持路由連接(即路由協議的鄰居關系)。大部分的路由協議在路由對等體的數量上存在著一定的限制,這些對等體可以是通過點到點鏈路建立,或是多點訪問鏈路建立。在擁有大量交換模塊的網絡中,互連的多層交換機的數量也會變得非常可觀。那么一臺核心交換機需要顧慮與之相連的匯聚交換機的數量過多嗎?
答案是否定的,因為實際直連的對等關系數量是很少的,即便園區網絡的規模很大。通常,接入層VLAN終結于匯聚層交換機上(除非接入層部署為3層),交換模塊中唯一的路由對等體是在冗余的匯聚交換機之間建立的,目的是為接入層VLAN提供路由冗余性。在匯聚和核心邊界,每一臺匯聚交換機只與兩臺核心交換機建立3層的連接,因此,一臺核心與一個交換模塊的路由對等體關系只有2個。
當多層交換機用于匯聚層和核心層時,路由協議會把兩個層面之間的冗余鏈路作為等價路徑。流量在這些鏈路上傳輸時會采用負載均衡的方式,從而提高了鏈路的帶寬利用率。
核心層設計的最終著眼點是確定核心交換機的性能及型號,使其能夠應對入站的負載。從最基礎的要求出發,每一臺核心交換機必須能夠處理當所有匯聚上聯鏈路使用率為100%的情況。
1.3.6 選擇Cisco產品構建分層網絡
在真正開始著手對園區網絡進行設計之前,你應當熟悉一些實際的設備型號,以及它們各自適合于哪一個網絡層面。Cisco擁有豐富的交換產品線,提供了每個層面所需的功能,并且勝任于各種規模的園區網絡。
對于本節所討論的主題,不妨假設一個大型的園區網絡需要覆蓋許多建筑大樓,一個中型的園區網絡可能需要接入幾幢建筑物,而一個小型的園區網絡只需要覆蓋一幢大樓即可。
無論是大型、中型還是小型的園區網絡,你都需要基于它們各個層面必須提供的功能來選擇正確適合的Cisco產品。但不要害怕產品手冊中列出的大量參數和表格,相反地,你應當試圖理解哪些交換機適合于既定的網絡及其層面。
在接入層,較高的端口密度、以太網供電(PoE)和較低的價格通常是需要考慮的條件。Catalyst 2960-X、3650和3850系列交換機可以提供48個接入端口的規格。如果需要獲得更多的端口,那么你可以選擇添加一些支持的交換模塊用以擴充端口數量。Catalyst 4500E系列交換機提供了一個靈活的模塊化交換機箱,支持各種線速轉發卡。不僅如此,4500機箱還支持冗余的Supervisor引擎模塊,從而為網絡提供非常出色的高可用性(包括支持零宕機時間的升級)。表1-3列出了一些通常被用于接入層的交換機平臺。
1譯者注:例如,我們為機房采購兩套UPS(不間斷供電系統),每一套UPS分別連接不同的供電網絡。即便某一個供電網絡或UPS發生故障,也不會造成機房因停電而中斷服務。
2譯者注:一個有彈性的網絡是指網絡在出現失效和故障時,能夠利用自身現有的冗余條件,非常迅速地從失效或故障中恢復過來。
3譯者注:接入層與匯聚層之間依然使用2層鏈路建立連接。
4譯者注:生成樹協議不會阻塞其中一條上聯鏈路,因為在這種設計中并沒有環路的存在。
5譯者注:不要連接屬于不同交換模塊的匯聚交換機,這樣會使得網絡變得異常復雜。
6譯者注:這里的意思是指不要把匯聚交換機設計為單純的2層交換機。
7譯者注:通常情況下,如果核心層下聯線路采用1Gbit/s的鏈路,那么為了保障核心層高速轉發的特性,推薦核心層互連線路采用10Gbit/s的鏈路。
8譯者注:核心層往往需要選擇高性能的設備型號,例如Cisco 6500系列交換機,高性能也就意味著高成本投入。
9譯者注:GE是指Gigabit-Ethernet,即吉比特以太網;PoE+支持30W的供電功率,UPoE支持高達60W的供電功率。
總結
以上是生活随笔為你收集整理的《CCNP SWITCH 300-115认证考试指南》——1.3节模块化网络的设计的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 《树莓派实战秘籍》——2.7 技巧27尝
- 下一篇: 吴恩达:大数据终将帮助机器拥有自主智慧