1. 程式人生 > 實用技巧 >MPLS的概念、原理與作用

MPLS的概念、原理與作用

什麼是MPLS
  MPLS是一個可以在多種第二層媒質上進行標記交換的網路技術。這一技術結合了第二層的交換和第三層路由的特點,將第二層的基礎設施和第三層的路由有機地結合起來。第三層的路由在網路的邊緣實施,而在MPLS的網路核心採用第二層交換。

  MPLS通過在每一個節點的標籤交換來實現包的轉發。它不改變現有的路由協議,並可以在多種第二層的物理媒質上實施,目前有ATMFR(幀中繼)Ethernet以及PPP等媒質。

  通過MPLS,第三層的路由可以得到第二層技術的很好補充,充分發揮第二層良好的流量設計管理以及第三層 “Hop-By-Hop(逐跳尋徑)路由的靈活性,以實現端到端的QoS
保證。

  讓我們來打一個比方。最簡單的無外乎我們日常的走路。

  我們從A地走到B地的方法大體有三種:一種是大概朝著一個方向走,直到走到了為止,就像我們所熟知的南轅北轍的故事;另外一種方式卻截然相反,就是每過一個街區就問一次路,我要去B地,下一步怎麼走?,就像我們去一個陌生的地方,生怕走錯了路會遇到危險;最後一種情況就是在出發前就查好地圖,知道如何才能到達B地,朝東走5個街區,再向右轉第6個街區就是
  

  這三種情況如果和我們的包傳輸方式關聯的話,不難想像分別是廣播、逐跳尋徑以及源路由。
  

  當然,如果我們是跟在嚮導後面走,就會存在第四種走法。嚮導可以在走過的路上做好標記,你只要沿著標記的指示走就可以了。而這,就是
標記交換,如圖1所示。
<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" />實際上,我們在以往的多個網路中,都已經使用過標記,只不過標記的重要程度不同而已。我們很容易想起,在ATM網中,使用VPI/VCI作為標記;而在FR中,採用DLCI作為網路的標記;而X.25網中的LCNTDM的時隙,都可以看做是標記。

  

  那麼,基於標準的標記交換應該包括哪些部分呢?
  

  從IETF的眾多草案中可以看出,其組成大致可以分為以下幾個部分:
  

  框架和結構 Framework and Architecture),主要定義MPLS所涉及的範圍、部件以及相互之間的聯絡。
  

  封裝 Encapsulation),定義在資料層面用來轉發判斷的包封裝格式。
  

  ● “信令協議 Signaling Protocol),負責如何分配標記,以建立標記交換路徑(LSP)。
  

  流量設計 Traffic Engineering),描述如何設計流量管理。
  

  為什麼需要MPLS
  

  MPLS自提出以來就引起了各方面的廣泛注意,各個廠商都相繼投入大量的精力進行MPLS的研究和開發。由於不同的解決方案側重點不同,因而所帶來的好處也就不同。但至少有一點可以肯定,MPLS的快速轉發將為運營商和大型企業帶來眾多的利益。
  

  國內外的一些運營商以及大型企業已經開始在它們的骨幹網內部利用MPLS來提高網路資源的利用率。作為一個大規模運營商網路的未來關鍵技術,MPLS可以為運營商或者大企業帶來如下一些好處:
  

  功能上的獨立性。按照MPLS的思想,轉發功能和路由功能是分開的,這樣MPLS的核心只簡單地執行轉發功能,而無需檢查包的全部內容,這就允許僅在網路的邊緣實施一次路徑及策略的選擇。
  

  效能的優化。MPLS很好地結合了第二層交換的高效以及第三層路由的靈活,既簡化了IP路由的操作,也高效地利用了網路的資源,從而使網路的效能得到優化。
  

  資源的控制。MPLS可以很好地控制資源,可以通過不同的服務等級(COS),來提供原來無法提供的IP增值業務。
  
  網路的演進。MPLS正在演進到一個強大的骨幹網路中去。在這個網路中,MPLS作為惟一一個執行在多種第二層媒質之上的協議,將成為承載第三層業務(IP)的一項關鍵技術。
  

  當然,MPLS的好處還有很多,隨著MPLS技術的逐步成熟,相信將會有更多的商業價值被開發出來。
  

  MPLS是怎樣工作的?
  

  MPLS是一種特殊的轉發機制,它為進入網路中的IP資料包分配標記,並通過對標記的交換來實現IP資料包的轉發。標記作為IP包頭在網路中的替代品而存在,在網路內部MPLS在資料包所經過的路徑沿途通過交換標記(而不是看IP包頭)來實現轉發;當資料包要退出MPLS網路時,資料包被解開封裝,繼續按照IP包的路由方式到達目的地。

如圖2所示,MPLS網路包含一些基本的元素。在網路邊緣的節點就稱做標記邊緣路由器(LER),而網路的核心節點就稱做為標記交換路由器(LSR)LER節點在MPLS網路中完成的是IP包的進入和退出過程;LSR節點在網路中提供高速交換功能。在MPLS節點之間的路徑就叫做標記交換路徑。一條LSP可以看做是一條貫穿網路的單向隧道。
  MPLS的工作流程可以分為幾個方面,即網路的邊緣行為、網路的中心行為以及如何建立標記交換路徑。

  

  1.網路的邊緣行為
  

  當IP資料包到達一個LER時,MPLS第一次應用標記。首先,LER要分析IP包頭的資訊,並且按照它的目的地址和業務等級加以區分。
  

  在LER中,MPLS使用了轉發等價類(FEC)的概念來將輸入的資料流對映到一條LSP上。簡單地說,FEC就是定義了一組沿著同一條路徑、有相同處理過程的資料包。這就意味著所有FEC相同的包都可以對映到同一個標記中。
  

  對於每一個FECLER都建立一條獨立的LSP穿過網路,到達目的地。資料包分配到一個FEC後,LER就可以根據標記資訊庫(LIB)來為其生成一個標記。標記資訊庫將每一個FEC都對映到LSP下一跳的標記上。如果下一跳的鏈路是ATM,則MPLS將使用ATM VCC裡的VCI作為標記。
  

  轉發資料包時,LER檢查標記資訊庫中的FEC,然後將資料包用LSP的標記封裝,從標記資訊庫所規定的下一個介面傳送出去。
  

  2.網路的核心行為
  

  當一個帶有標記的包到達LSR的時候,LSR提取入局標記,同時以它作為索引在標記資訊庫中查詢。當LSR找到相關資訊後,取出出局的標記,並由出局標記代替入局標籤,從標記資訊庫中所描述的下一跳介面送出資料包。
  

  最後,資料包到達了MPLS域的另一端,在這一點,LER剝去封裝的標記,仍然按照IP包的路由方式將資料包繼續傳送到目的地。
  

  3.如何建立標記交換路徑
  

  建立LSP的方式主要有兩種:
  

  (1“Hop by Hop”路由
  

  一個Hop-by-HopLSP是所有從源站點到一個特定目的站點的IP樹的一部分。對於這些LSPMPLS模仿IP轉發資料包的面向目的地的方式建立了一組樹。
  從傳統的IP路由來看,每一臺沿途的路由器都要檢查包的目的地址,並且選擇一條合適的路徑將資料包傳送出去。而MPLS則不然,資料包雖然也沿著IP路由所選擇的同一條路徑進行傳送,但是它的資料包頭在整條路徑上從始至終都沒有被檢查。

  在每一個節點,MPLS生成的樹是通過一級一級為下一跳分配標記,而且是通過與它們的對等層交換標記而生成的。交換是通過LDP的請求以及對應的訊息完成的。

  

  (2)顯式路由
  

  MPLS最主要的一個優點就是它可以利用流量設計引導資料包,比如避免擁塞或者滿足業務的QoS等。MPLS允許網路的執行人員在源節點就確定一條顯式路由的LSP(ER-LSP),以規定資料包將選擇的路徑。
  

  不像Hop-by-HopLSPER-LSP不會形成IP樹。取而代之,ER-LSP從源端到目的端建立一條直接的端到端的路徑,如圖3所示。MPLS將顯式路由嵌入到限制路由的標記分配協議的資訊中,從而建立這條路徑。

MPLS術語的縮寫
  

  ● LDPLabel Distribution Protocol),標記分配協議
  

  ● LSPLabel Switched Path),標記交換路徑
  

  ● FECForwarding Equivalence Class),轉發等價類
  

  ● LSRLabel Switching Router),標記交換路由器
  

  ● LERLabel Edge Router),標記邊緣路由器
  

  ● CR-LDPConstraint Route Label Distribution Protocol),限制路由的標記分配協議