ContentsIntroduction負(fù)載均衡是 Cisco IOS ? 路由器軟件的一項標(biāo)準(zhǔn)功能,此功能適用于所有路由器平臺。如果路由選擇表中有多條通往目標(biāo)的路徑,則此功能是路由器中轉(zhuǎn)發(fā)過程所固有的功能并且會自動激活。它基于標(biāo)準(zhǔn)路由選擇協(xié)議(如路由選擇信息協(xié)議 (RIP)、RIPv2、增強型內(nèi)部網(wǎng)關(guān)路由協(xié)議 (EIGRP)、開放最短路徑優(yōu)先 (OSPF) 和內(nèi)部網(wǎng)關(guān)路由選擇協(xié)議 (IGRP))或源自靜態(tài)配置的路由和數(shù)據(jù)包轉(zhuǎn)發(fā)機制。當(dāng)轉(zhuǎn)發(fā)數(shù)據(jù)包時,它允許路由器通過多條路徑到達目標(biāo)。 PrerequisitesRequirementsThere are no specific requirements for this document. Components UsedThis document is not restricted to specific software and hardware versions. Conventions有關(guān)文檔規(guī)則的詳細(xì)信息,請參閱 Cisco 技術(shù)提示規(guī)則。 負(fù)荷-平衡如果路由器通過多個路由選擇進程(或路由選擇協(xié)議,如 RIP、RIPv2、IGRP、EIGRP 和 OSPF)獲知多個通往特定網(wǎng)絡(luò)的路由,它會將管理距離最短的路由安裝在路由選擇表中。有關(guān)詳細(xì)信息,請參閱 Cisco 路由器的路由選擇。 有時路由器必須選擇一個路由從在通過與同一管理距離的同一個路由進程了解的許多中。在這種情況下,路由器選擇有最便宜(或權(quán)值的)路徑對目的地。每個路由進程不同地計算其費用,并且費用可能需要被操作為了完成負(fù)載平衡。 如果路由器接受并且安裝多條路徑以同一管理距離和費用對目的地,負(fù)載平衡能出現(xiàn)。使用的路徑的數(shù)量由路由協(xié)議在路由表里放置條目的數(shù)量限制。在 IOS 中,除默認(rèn)條目數(shù)為一條的邊界網(wǎng)關(guān)協(xié)議 (BGP) 之外,大多數(shù) IP 路由選擇協(xié)議的默認(rèn)條目數(shù)均為四條。最多可配置六條不同的路徑。 IGRP 和 EIGRP 路由選擇進程還支持不等價負(fù)載平衡??蓪?IGRP 和 EIGRP 使用 variance 命令來實現(xiàn)非等價負(fù)載平衡。若要根據(jù)針對協(xié)議配置的值確定可安裝的路由數(shù),請發(fā)出 maximum-paths 命令。如果將路由選擇表設(shè)置為一個條目,它會禁用負(fù)載平衡功能。請參閱非等價負(fù)載平衡 (Variance) 在 IGRP 和 EIGRP 中的工作原理。以了解關(guān)于 variance 的詳細(xì)信息。 通??墒褂?show ip route 命令來查找等價路由。例如,以下是某個具有多條路由的特定子網(wǎng)的 show ip route 命令輸出。請注意,有兩個路由選擇描述符塊。每一個塊都是一條路由。也有星號(*)在其中一塊條目旁邊。這個符號對應(yīng)于用于新流量的活動路由。術(shù)語‘新數(shù)據(jù)流’對應(yīng)于單個信息包或整個流對目的地,根據(jù)被配置的交換的種類。
每提供一次數(shù)據(jù)包/流,星號 (*) 的位置就會在等價路徑之間輪換一次。
基于目標(biāo)和基于數(shù)據(jù)包的負(fù)載平衡可將負(fù)載平衡設(shè)置為基于目標(biāo)或基于數(shù)據(jù)包。基于目標(biāo)的負(fù)載平衡表示路由器基于目標(biāo)地址分發(fā)數(shù)據(jù)包。給出兩條路徑同一網(wǎng)絡(luò), destination1的所有信息包在該網(wǎng)絡(luò)在第一條路徑去, destination2的所有信息包在該網(wǎng)絡(luò)在第二條路徑去,等等。這樣可保持?jǐn)?shù)據(jù)包的順序,但可能會不均衡地使用鏈路。如果一臺主機收到的絕大多數(shù)流量或所有數(shù)據(jù)包使用一條鏈路,則會使其他鏈路上的帶寬閑置。目標(biāo)地址較多可使鏈路得到更加均衡的利用。若要更均衡地利用鏈路,請使用 IOS 軟件為每個目標(biāo)地址(而不是每個目標(biāo)網(wǎng)絡(luò))生成一個路由緩存條目,就像只存在一條路徑一樣。這樣發(fā)往同一目標(biāo)網(wǎng)絡(luò)上不同主機的流量即可使用不同的路徑。這種方法的缺點是,對于傳送發(fā)往數(shù)千個目標(biāo)主機的流量的核心主干路由器來說,維護緩存所需的內(nèi)存和處理要求變得非常高。 每信息包負(fù)載平衡意味著路由器發(fā)送destination1的一個信息包在第一條路徑, (同樣) destination1的第二個信息包在第二條路徑,等等?;跀?shù)據(jù)包的負(fù)載平衡可以確保所有鏈路上的負(fù)荷保持均衡。不過,數(shù)據(jù)包到達目標(biāo)的順序可能會亂,因為網(wǎng)絡(luò)內(nèi)可能存在各種延遲。在 Cisco IOS 軟件中,除 11.1CC 版之外,基于數(shù)據(jù)包的負(fù)載平衡會禁用路由緩存的轉(zhuǎn)發(fā)加速功能,因為路由緩存信息包括出接口。對于基于數(shù)據(jù)包的負(fù)載平衡,轉(zhuǎn)發(fā)進程會通過查詢路由表并選擇使用頻率最低的接口來確定每個數(shù)據(jù)包的出接口。這樣可以保證均衡利用鏈路,但卻是一項需要大量占用處理器的任務(wù),并且會影響整體轉(zhuǎn)發(fā)性能。這種基于數(shù)據(jù)包的負(fù)載平衡并不太適合速度較高的接口。 使用基于目標(biāo)還是基于數(shù)據(jù)包的負(fù)載平衡取決于 IP 數(shù)據(jù)包使用的交換方案的類型。默認(rèn)情況下,在大多數(shù) Cisco 路由器上,接口下都啟用了快速交換功能。這是一種執(zhí)行基于目標(biāo)負(fù)載平衡的按需緩存方案。若要設(shè)置基于數(shù)據(jù)包的負(fù)載平衡,請使用以下命令啟用進程交換(或禁用快速交換): Router# config t Router(config)# interface Ethernet 0 Router(config-if)# no ip route-cache Router(config-if)# ^Z 現(xiàn)在,路由器 CPU 會根據(jù)路由選擇表中通往目標(biāo)的路由數(shù)查看每一個數(shù)據(jù)包和負(fù)載平衡。這可能會使低端路由器崩潰,因為 CPU 必須執(zhí)行所有處理。若要重新啟用快速交換,請使用以下命令: Router# config t Router(config)# interface Ethernet 0 Router(config-if)# ip route-cache Router(config-if)# ^Z 使用較新的交換方案(如 Cisco 快速轉(zhuǎn)發(fā) (CEF))可更快地執(zhí)行基于數(shù)據(jù)包和基于目標(biāo)的負(fù)載平衡。不過,這意味著您需要額外的資源來處理有關(guān)維護 CEF 條目和鄰接關(guān)系的任務(wù)。 當(dāng)使用 CEF 時,您可能會問:由誰來執(zhí)行負(fù)載平衡,是 CEF 還是使用的路由選擇協(xié)議?CEF 的工作方式是,CEF 根據(jù)要由 EIGRP 之類的路由選擇協(xié)議填充的路由選擇表來執(zhí)行數(shù)據(jù)包的交換。簡而言之,CEF 會在計算出路由選擇協(xié)議表之后執(zhí)行負(fù)載平衡。 有關(guān) CEF 負(fù)載平衡的詳細(xì)信息,請參閱使用 Cisco 快速轉(zhuǎn)發(fā)排除并行鏈路上的負(fù)載平衡故障和使用 CEF 執(zhí)行負(fù)載平衡。 這些文檔提供了有關(guān)不同協(xié)議如何選擇最佳路徑、如何計算其到達特定目標(biāo)的成本,以及它們?nèi)绾卧谶m用時執(zhí)行負(fù)載平衡的詳細(xì)信息。
Related Information |
|
|