天天看點

《BGP設計與實作》一第2章 了解BGP的構件塊2.1 比較控制層面和轉發層面

本節書摘來自異步社群《bgp設計與實作》一書中的第2章,第2.1節,作者【美】randy zhang , micah bartell,更多章節内容可以通路雲栖社群“異步社群”公衆号檢視

bgp設計與實作

本章涵蓋以下主題:

比較控制層面和轉發層面;

bgp程序和記憶體使用;

bgp路徑屬性;

了解内部bgp;

路徑決策過程;

bgp的能力;

bgp-igp的路由交換;

路由選擇資訊庫;

交換路線。

本章的内容将為本書後面的内容打下基礎。本章并不試圖涵蓋bgp所有的基

礎内容,而着重地強調一些基本的bgp構件和概念,以便給你一些适當的觀點。在适當的地方,也會提供一些更新的資訊。特别地,這一章将盡力達到以下一些目标:

概覽了bgp的cisco實作,例如ios中的bgp程序。在本章的結尾,将提供一個關于如何在cisco路由器中評估bgp記憶體使用的案例研究。

回顧bgp的基本元件,例如,bgp的屬性、bgp的決策過程、bgp的能力交換、路由選擇資訊庫(rib)等。

讨論bgp的一些基本概念,例如ibgp、bgp和igp的路由交換等。

概覽了cisco ios軟體中可用的主要交換路經,以及在資源競争的情況下,它們是如何與bgp的性能和路由器的性能相關聯的。

路由器由兩種邏輯元件組成:控制層面和轉發層面。控制層面(control plane)負責建立rib,而轉發層面(forwarding plane)可以用rib來分類和轉發資料包。

路由器的性能和這兩個層面的性能,以及它們互相協調的有效程度是緊密相關的。在路由選擇體系結構的設計中,了解這兩個層面關于資料包的轉發與資源競争的互相作用是非常重要的。

控制層面和轉發層面的互相作用,以及由此對bgp性能産生的影響可以通過下面的例子來說明。bgp協定資料包的處理涉及到大量的計算和資料操作,特别是在路由收斂過程中。因而,bgp将會和路由器上運作的其他程序競争cpu時間。減少被路由器程序交換(一種cpu密集(cpu-intensive)的操作)的穿越資料包(不直接指向該路由器的資料包)的數目能夠改進bgp的性能,特别是在初始化的收斂期間。這是因為此時bgp有更多的cpu周期可用。

路由器可以使用很多資訊資源來建立它的rib。在像internet這樣大型的互連網絡環境中,路由選擇資訊可以通過多種動态路由選擇協定來交換,例如内部網關協定(igp)或者外部網關協定(egp)。在整個網絡中及時地分發正确的路由選擇資訊,是組建一個可靠網絡的主要成分。後面的章節将在收斂性、政策控制和擴充性等方面講述多種優化bgp路由選擇架構的技巧。

轉發層面有兩個主要的功能:資料包分類和資料包轉發。資料包分類(packet classification)是指把rib精簡到轉發資訊庫(forwarding information base,fib)中的過程。典型的fib是根據目的地字首來組織的,每一條字首都和一個下一跳位址、出站接口(outgoing interface)等相關聯。實際的資料包轉發由轉發層面的交換元件來執行。特别是,路由器将把字首作為主鍵(key)來執行查找操作,進而産生下一跳位址、出站接口和第2層幀頭,這裡的第2層幀頭是根據出站接口的類型來确定的。

繼續閱讀