通過 MPLS TE 進行不等成本負載平衡
給定以下網路,所有站點的網路路由表都通過 OSPF 建構:
Site_A | Site_A_router | \ | Intermediate_site_C_router -- Other_sites | | | Intermediate_site_D_router | | Site_B_router_1 Site_B_router_2 \ / Site_B_LAN | Site_B | Site_B_router_3 | Internet
目前,站點 A 和站點 C 之間沒有連結。我正在考慮添加它並在站點 A 和站點 B 之間設置不等成本負載平衡,以提供一些冗餘並在站點 A 和站點之間獲得更有效的頻寬Internet 和站點 B 上的主機。從大量的Google搜尋來看,我想在站點 A 路由器和站點 B 路由器之一之間建立 MPLS TE 隧道,以將兩個站點之間的所有流量引導到其中一個兩條路線。
我一直在試圖圍繞 MPLS 隧道如何適應路由網路的方案。根據我的閱讀,MPLS TE 位於 OSPF 之上的層派生路由,並簡單地定義了兩個路由器之間的路徑。
我是否需要通過 OSPF 宣傳它們的存在?我不這麼認為,因為我懷疑這最終會路由來自網路上任何地方的所有流量,通過站點 B 到站點 A,然後再通過兩條路徑之一返回站點 A。
或者,我是否只是在站點 B 路由器上設置隧道,但不宣傳它們的存在,只允許它們對到達兩條隧道路徑之一的任何流量進行分類?如果以這種方式工作,我希望站點 D、站點 C 和通過站點 C 連接的其他站點中的主機僅通過最短的 OSPF 路由路由流量,而忽略隧道。
更複雜的是,站點 B 中的許多主機都通過 OSPF 建構它們的路由表,因此主機不使用單個網關路由器來確定下一跳。我應該在三個路由器中的哪一個上設置 MPLS TE 隧道的站點 B -> 站點 A 方向,以獲得適當的負載平衡?
如果我在路由器 3 上設置它,我懷疑只有來自 Internet 的流量會被負載平衡,因為站點 B 中的主機將直接將站點 A 的數據包發送到路由器 1 或 2。或者,我可以在路由器 1 上設置它,因為這幾乎肯定是 OSPF 最短路由。但是,由於流量採用備用隧道,因此流量將在某種程度上不必要地從路由器 1 路由到路由器 2。我懷疑這有點過度思考,可能是過早的優化。
鑑於這種情況,做我想做的事情的最佳實踐方式是什麼?
是的,您可以在路由器之間創建 MPLS 隧道以在它們(隧道)之間進行 OSPF 負載平衡,因為 OSPF 本身不支持 UCLB。
您確實需要在 ospf 配置中添加一些 mpls 命令。請參閱此處
您應該能夠在站點 A 路由器和站點 B 的“主”路由器(可能是路由器 1)之間創建兩條隧道,一條隧道直接位於 A-1 和 B-1 之間,另一條隧道通過路由器 B -2。路由器 A-1 和 B-1 將執行流量的負載平衡
在這種情況下,需要將主機配置為使用路由器 B-1 作為站點 B 中的預設網關。
*編輯正確的路由器名稱。