邊界網關協議 BGP( 三 )


-只安裝具體路由
-安裝聚合路由
-均不安裝
一定的路由策略可能依靠于NLRI(比如 , "研究"與"商業") 。因此 , 一個運行路由聚合的BGP發言人 , 可能的情況下 , 應該能認知聚合NLRI時路由策略的潛在實現 。
5. BGP的策略生成
BGP通過各種路由參數選擇和約束 , 實現策略 。策略并不直接編入協議 。而是 , 策略通過BGP的配置信息來實現 。
BGP實現策略的途徑有 , 影響從多條路徑中的選擇 , 控制路由信息的下步傳遞 。策略由AS的治理者決定 。
路由策略與政治、安全或經濟考慮有關 。
例如 , 假如一個AS不愿意將流量運輸到其他AS , 它可以制定策略來禁止 。如下是一些能夠改變BGP使用的路由策略的例子:
1. 一個多宿主AS可以拒絕成為其他AS的過渡AS 。(它只告知那些目標網絡在自己AS內部的路由 。)
2. 一個多宿主AS可以指定成為幾個相鄰AS的過渡AS , 也就是說 , 一部分而不是全部AS , 可以把該多宿主AS作為過渡AS 。(它只把它的路由信息告知被答應的AS 。)
3. 一個AS向外運輸流量時 , 可以決定是否偏愛特定的AS 。
BGP應用可以控制許多性能相關的標準:
1. 一個AS可以最少化過渡AS的數目 。(AS path越短 , 越可能被采用 。)
2. 過渡AS的權重 。假如一個AS決定 , 兩個以上的AS path可以用來到達目標網絡 , 那么 , AS可以使用多種方法來決定采納哪個候選AS path 。一個AS的權重值由以下幾個因素決定:徑向距離 , 鏈路速度 , 容量 , 擁塞的趨勢 , 和運行質量 。這些性能值可以由BGP以外的方法決定 。
3. 優先考慮內部路由 , 而不是外部路由 。
為了一個AS的統一性 , 那些產自策略和/或正常路由選擇過程的等值路徑 , 必須以一致的方式解決 。
BGP的基礎 , 是這樣一個規則:一個AS只把自己使用的路由通知給相鄰的AS 。該規則反映了目前互聯網常用的"一跳接一跳"的路由方式 。
6. BGP的路徑選擇
BGP 發言人的一項主要任務 , 是評價諸條從自身出發到那些用網絡前綴表達的目的地的路徑 , 從中選出最優 , 應用合適的策略約束 , 然后將它通知給所有的BGP鄰居 。要害問題是如何評價和比較這些不同的路徑 。傳統的距離向量協議(比如RIP)中 , 每條路徑只有一個度量 。因此 , 不同路徑的比較簡化為兩個值的比較 。AS間路由的復雜性 , 源自人們在如何評價外部路由的問題上缺少共同認可的度量 。于是 , 每個AS擁有自己的一套對路徑的評價指標 。
BGP發言人構建的路由數據庫 , 由所有可用的路徑和每條路徑可達的目標集合(表達為網絡前綴)組成 。為了達到前面討論的目的 , 考慮目標網絡所對應的可用路徑 , 是有用的 。大多數情況下 , 我們期望找到唯一一條可用路徑 。但是 , 當不是這樣時 , 所有可用的路徑應當保存 , 當主要路徑缺失時 , 保存能以最快的速度適應 , (產生新的主要路徑) 。任何時候 , 只有主要路徑才會被廣播 。
路徑選擇過程可以形式化為 , 對所有可用路徑及相對應的目標IP , 定義完整的優先級 。定義這種優先級的一種方法 , 是定義一個函數 , 將每條完整的AS path映射成一個非負整數 , 用來表示該路徑的優先級 。路徑選擇于是簡化為 , 將該函數應用到所有可用路徑 , 再選擇最高的優先級 。
在真實的BGP實現中 , 為路徑分配優先級的標準在配置信息中說明 。
為路徑分配優先級的過程源于以下幾個信息:
1. 整條AS path顯示的信息
2. 由AS path和BGP以外信息(比如 , 配置信息中的路由策略約束)引申出來的混合信息 。

推薦閱讀