MPLS技術實現細節以及體系結構
MPLS技術實現細節以及體系結構,MPLS技術設置是一個很普通的問題,但我們如何對MPLS技術進行更精確的設置,給我們的使用到來方便呢?傳統的IP數據轉發是基于逐跳式的,每個轉發數據的路由器都要根據IP包頭的目的地址查找路由表來獲得下一跳的出口,這是個繁瑣又效率低下的工作,主要的原因是兩個:1、有些路由的查詢必須對路由表進行多次查找。
這就是所謂的遞歸搜索;2、由于路由匹配遵循最長匹配原則,所以迫使幾乎所有的路由器的交換引擎必須用軟件來實現,用軟件實現的交換引擎和ATM交換機上用硬件來實現的交換引擎在效率上無法相抗衡。
當今的互聯網應用需求日益增多,對帶寬、對時延的要求也越來越高。如何提高轉發效率,各個路由器生產廠家做了大量的改進工作,如Cisco在路由器上提供CEF(CiscoExpress Forwarding)功能、修改路由表搜索算法等等。但這些修補并不能完全解決目前互聯網所面臨的問題。
IP和ATM曾經是兩個互相對立的技術,各個IP設備制造商和ATM設備制造商都曾努力想吃掉對方,想IP一統天下,或者ATM一家獨秀!但是最終是這兩種技術的融合,那就是MPLS(Multi-Protocol Label Switching)技術的誕生!MPLS技術結合和IP技術信令簡單和ATM交換引擎高效的優點!
MPLS技術的實現細節
IP設備和ATM設備廠商實現MPLS技術是在各自原來的基礎上做的,對于IP設備商,它修改了原來IP包直接封裝在二層鏈路幀中的規范,而是在二層和三層包頭之間插了一個標簽(Label),而ATM設備制造商利用了原來ATM交換機上的VPI/VCI的概念,在使用Label來代替了VPI/CVI,當然ATM交換機上還必修改信令控制部分,引入了路由協議,ATM交換使用了路由協議來和其他設備交換三層的路由信息。
標簽的結構入下:20比特的LABEL字段用來表示標簽值,由于標簽是定長的,所以對于路由器來說,可以分析定長的標簽來做數據包的轉發,這是標簽交換的最大優點,定長的標簽就意味這可以用硬件來實現數據轉發,這種硬件轉發方式要比必須用軟件實現的路由最長匹配轉發方式效率要高得多!
3比特的EXP用來實現QOS,1比特S值用來表示標簽棧是否到底了,對于VPN,TE等應用將在二層和三層頭之間插入兩個以上的標簽,形成標簽棧。8比特TTL值用來防止數據在網上形成環路。這樣完整的帶有標簽的二層幀就成了如下形式:在ATM信元模式下,信元的結構如下形式:
LSR設備的體系結構
通過修改,能支持標簽交換的路由器為LSR(Label Switch Router),而支持MPLS功能的ATM交換機我們一般稱之為ATM-LSR。LSR設備的體系結構如下:LSR的體系結構分為兩塊:
控制平面(Control Plane)
該模塊的功能是用來和其他LSR交換三層路由信息,以此建立路由表;和交換標簽對路由的綁定信息,以此建Label Information Table(LIB)標簽信息表。同時再根據路由表和LIB生成Forwarding Information Table(FIB)表和Label Forwarding Information Table(LFIB)表。控制平面也就是我們一般所說的路由引擎模塊!
數據平面(Data Plane)
MPLS技術數據平面的功能主要是根據控制平面生成的FIB表和LFIB表轉發IP包和標簽包。對于控制平面中所使用的路由協議,可以使用以前的任何一種,如OSPF、RIP、BGP等等,這些協議的主要功能是和其他設備交換路由信息,生成路由表。這是實現標簽交換的基礎。
在控制平面中導入了一種新的協議—LDP,該協議的功能是用來針對本地路由表中的每個路由條目生成一個本地的標簽,由此生成LIB表,再把路由條目和本地標簽的綁定通告給鄰居LSR,同時把鄰居LSR告知的路由條目和標簽幫定接收下來放到LIB表里,最后在網絡路由收斂的情況下,參照路由表和LIB表的信息生成FIB表和LFIB表。具體的標簽分發模式如下敘述。