摘要:多協議標記交換MPLS通過在傳統的IP包里加入標記,使原來依賴于IP頭標分析的路由轉發轉變為依賴于標記的轉發,這不僅可以大大地提高IP包的轉發速度,更可使傳統IP網絡具有QoS能力。本文深入分析了標記轉發的思想,并指出了MPLS實現其優點所用的機制與原理。
關鍵詞:標記;服務質量;信令;MPLS
Abstract:By inserting labels into IP packet, multiprotocol label switching (MPLS) changes conventional routing forwarding mechanism that depends on IP head analysis into mechanism that depends on labels This can not only significantly improve the forwarding speed but also characterize the IP network as QoS capabilityThis article deeply analyses the idea of label forwardingand points out the principles are used.
Keywords:label;QoS;signaling;MPLS
1引言
網絡在今天已取得了驚人的發展。在過去的二十多年中,傳統的以IP包轉發為基礎的機制以其良好的統一性、兼容性已確立了無可撼動的地位。IP融合了各種不同的物理網絡,并以盡力傳送,服務不分等級的轉發,保證了網絡資源的充分利用。在帶寬資源緊張,主要以數據傳輸為中心的時代,這無疑是成功的。
然而,在二十多年后的今天,無論是網絡的基礎下部結構通信,還是上部推動力消費需求,都已發生了很大的變化。從通信技術的發展看,目前的主干網絡達到了每秒幾十個吉比特的速度,帶寬瓶頸已得到了很大的緩解,已有能力提供更好的服務;從客戶角度看,用戶對網絡的需求已不僅僅限于數據,而是進一步上升為語音、視頻等的傳送。用戶對傳送的可靠性、時延、時延變化等傳輸質量有了更明確的要求;從網絡服務商的角度看,提供高層次的服務,推出新的業務(如VPN等)以開發高層次用戶的消費,也是開發新的利潤點的來源。所有這些因素,都說明傳統的IP網絡已不太適應時代的要求,都推動了下一代網絡的發展。作為下一代網絡,對以下技術的支持是必不可少的[1]:
(1)服務水平(QoS)保證如,語音需要低的延遲和小的時延變化,視頻需要很高的帶寬等。
(2)流量工程(Traffic Engineering)能力 :從網絡管理者的角度看,他總是要使網絡資源盡可能地被利用。因而,如何使網絡流量均衡地在網絡中分布,而不是總是沿著傳統的OSPF最短路徑(容易造成網絡部分擁塞,部分卻利用不足),是下一代網絡必須要解決的問題之一。
(3)對虛擬私有網(VPN)的支持 :VPN是正在興起的應用。VPN允許客戶通過公共網絡,組成一個私有局域網,而不受地域的限制。服務提供商們保證這個私有網內傳送的質量及傳送的安全保密。
支持以上3種技術要求一個網絡是基于限制 (constrainbased)的,并且支持確定路由(explicit route);谙拗频奶卣魇咕W絡能夠為一個連接保留帶寬等資源,從而保證傳輸質量。支持確定路由意味著網絡具有按照預先確定的路徑建立真正的傳輸路徑的能力。這保證了網絡具有流量工程的能力。
2 MPLS介紹
MPLS(Multiprotocol Label Switching)是20世紀90年代末出現的網絡技術。名稱中的多協議是指該協議支持多種協議的傳送,標記交換是指該系統的轉發依賴于標記。標記是一個長32b,其位置和值依賴于具體的物理網絡的不同而不同的值,目前,對標記的位置和值有3種不同的規定:
(1)在ATM網絡中,標記的值是ATM的VCI/VPI,其位置位于IP包的第二層地址。
(2)在幀中繼中,值是DLCI,位置位于IP包的第二層地址。
(3)在最普通的情形中,標記的值未作規定,其位置位于IP包的第三層地址與第二層地址之間。
與傳統的網絡相似,MPLS系統也包含以下4個部分:
(1)一個信息交換機制用來提供網絡資源信息。傳統IP網絡利用IGP協議,讓每個路由器廣播自己的連接信息,來達到互相之間拓樸信息交換的目的。MPLS擴展了IGP協議,讓其還攜帶諸如最大連接帶寬、最大可保留帶寬、目前帶寬保留率等信息。
(2)一個路徑選擇過程利用上述信息挑選一個滿足用戶數據流需求,同時符合流量工程需求的路徑。這個過程能用一個基于限制的路由計算算法實現。
(3)一個信令過程用來建立路徑和保留該路徑的資源。
(4)一個包轉發機制用來轉發數據包。
上述4個過程中,第1個過程實現較簡單。第2個過程與流量工程算法有關,依賴于不同的評價指標及算法。第3,第4過程是MPLS轉發機制的主要實現部分。目前,用來做MPLS信令協議的主要有2個,即:資源保留協議流量工程(RSVPTE)[1],基于限制的標記分配協議(CRLDP)。兩種協議的實現過程大體相同,細節上則有很多區別[2],這里不贅述。
3標記的思想
3.1映射
傳統的IP轉發機制需要對IP頭標進行分析,以確定目的地的網絡地址。然后根據路由表找到對應的下一驛站網絡地址,然后據此轉發。標記轉發只需根據轉發狀態表就可以找到去往下一站的端口,無需分析。標記轉發相比傳統的IP轉發要簡單,然而卻可實現更多的功能如QoS,流量工程等,這是什么原因呢?總結前面的介紹可看出,標記轉發的思想其實是將包轉發過程中所需的復雜的信息(QoS,路由等)映射到一個簡單的可自由分配的標記中,即:(Layer2ID;Layer3ID;QoS)Lable
MPLS利用該標記的簡單性,實現轉發的快捷性;利用標記對QoS的映射,實現QoS能力;利用標記對第三層地址的映射,使標記能象IP地址那樣,具有兼容各種不同物理網的能力。此外,標記本身也可直接包含網絡的第二層地址,如ATM VCP/VPI(這種情況下標記的轉發速度可達到第二層的轉發速度);標記也可直接具有物理意義等。總之,標記通過映射實現了簡單性與復雜性的結合。
3.2工作的轉移
與基于路由表的傳統IP轉發機制相比,用標記轉發僅需分析IP頭標一次,因而包轉發速度可得到提高。然而與傳統的IP機制比,建立和維護路徑的開支卻大了許多?梢赃@樣認為:MPLS其實是把一部分正常轉發過程中所需要做的重復的工作,轉移到了路徑的建立過程中。 這樣做,對于需要一次傳輸大量數據的轉發而言,是可以大大地提高效率的。但對于那些一次只需傳輸很少數據的傳輸而言,則是得不償失的。這種工作的轉移其實也是造成MPLS可擴展性問題的根本原因。
3.3局部路徑
對一個普通的IP包而言,在一個自治系統內,每個路由器都必須能識別他的目的地地址,否則就無法轉發。而由于目的地地址可能是全局中的任何網絡,因而每個路由器必須建立和維護一個龐大的目的地路由表(其表項數為整個自治系統內的網絡數,其實自治系統的機制也是為了解決路由表過大的問題)。除了維護代價之外,路由表太大造成的問題是:為了找出一個IP包的下一轉發站,必須進行的平均匹配操作次數也隨著增大。這樣就加大了路由器的負擔,也造成了更長的轉發延時。
然而對MPLS的標記轉發而言,標記卻是局部的。MPLS的路徑其實是由一連串的局部標記組成的。每一個標記只負責局部的路徑轉發工作。這樣,就造成了一種可能:許多總體不同,但局部相同的路徑在局部可以合并,即:在局部他們擁有相同的標記。例如,假設圖2存在著兩條路徑分別為:D-E-B-C-D和F-E-B-C-A,則在LSR B上,這兩條路徑的轉發狀態表可以是一致的。 局部路徑的合并能大大的減小轉發狀態表的規模,同時也能減少轉發時的匹配操作次數。
3.4標記值
仔細考慮標記的意義發現,標記值其實是用來表示2個路由器之間約定的連接及其連接特性的。如圖3所示,標記值50存在于上游路由器的出端口,下游路由器的入端口中。這樣,標記值50表示的是這2個路由器之間的一個連接。
理論上,表示這個連接的可以是任何數只要不與其他連接混淆。然而實際上,標記值可被進一步用來表示這個連接的物理屬性。例如,在光纖網絡中,標記值常用來表示這個連接的波長、頻率等。關于MPLS在光網絡中的應用,請參見文獻[3]。
3.5與傳統IP網絡的關系
值得注意的是,MPLS并沒有取代IP協議。相反,MPLS還依賴于IP協議在MPLS路徑建立之前的信令過程必須運行于IP協議之上。MPLS也與目前的IP網絡相容,即2個協議可以互不干擾地在一起工作。此外,在某些場合,僅需改變軟件就可以使目前的路由器變成MPLS標記交換路由器(LSR),這無疑可以大大地節省投資。
4結語
MPLS在傳統的IP網絡基礎上,不但提高了包轉發速度,而且還使傳統的IP網絡具有了QoS和流量工程的能力。MPLS能夠滿足現代網絡的要求。目前,影響MPLS進入大規模應用的主要問題是擴展性問題。