劉曉燕, 王志剛, 于惠鈞
(①株洲職工大學(xué) 信息技術(shù)系,湖南 株洲 412008;②中山火炬職業(yè)技術(shù)學(xué)院,廣東 中山 528436;③湖南工業(yè)大學(xué) 電氣與信息工程學(xué)院,湖南 株洲 412008)
組播是基于將一臺(tái)發(fā)送者的數(shù)據(jù)同時(shí)發(fā)送給多個(gè)接收者,從而達(dá)到優(yōu)化使用帶寬的路由技術(shù),允許 IP 數(shù)據(jù)流從一個(gè)源或多個(gè)源發(fā)送到多個(gè)目的地。組播技術(shù)主要是依靠將某一組播地址(包含了多個(gè)目的地址)作為信息的目的地址,并使用最高效的傳輸策略。MPLS的基本工作原理是當(dāng)一個(gè)未被標(biāo)記的分組到達(dá)MPLS 邊緣路由器LER時(shí),入口的邊緣路由器 LER根據(jù)輸入分組頭本身的包頭信息和本身包含的路由信息等確定通向目的地的標(biāo)記交換路徑LSP,把對(duì)應(yīng)LSP的標(biāo)記Lable插入到分組頭中,完成IP地址與MPLS標(biāo)記Lable的映射,從而實(shí)現(xiàn)通過標(biāo)記Lable來轉(zhuǎn)發(fā)數(shù)據(jù)。當(dāng)然在實(shí)際映射過程中,IP地址與Label的映射規(guī)則不但考慮數(shù)據(jù)流目的地的信息,還考慮了鏈路狀態(tài)及QoS等信息。這樣,MPLS可提供高性價(jià)比和多業(yè)務(wù)能力的轉(zhuǎn)發(fā)數(shù)據(jù)的能力,解決了傳統(tǒng)IP分組交換的局限性,在業(yè)界受到了廣泛的關(guān)注和應(yīng)用。同時(shí)MPLS技術(shù)可以提供靈活的流量工程、虛擬專網(wǎng)等功能,而且MPLS的信令可實(shí)現(xiàn)涉及多層網(wǎng)絡(luò)控制與管理的功能,最終達(dá)到靈活網(wǎng)管的目的。
傳統(tǒng)的MPLS VPN組播模型如圖1所示。在支持組播的網(wǎng)絡(luò)中,各節(jié)點(diǎn)使用組播路由協(xié)議(如DVMRP、PIM、CBT等)建立組播樹。業(yè)務(wù)源的業(yè)務(wù)流量根據(jù)建立的組播樹進(jìn)行傳播,最終到達(dá)該組播組的各個(gè)成員。在MPLS VPN環(huán)境下,組播流量就要沿著建立組播樹時(shí)建立的標(biāo)簽交換路徑 LSP進(jìn)行交換,這樣的標(biāo)簽交換路徑LSP叫做組播LSP。如圖1所示,由組播路由協(xié)議生成的路由樹映射到組播LSP上,在LSR上存在一個(gè)入標(biāo)簽對(duì)應(yīng)于多個(gè)出標(biāo)簽[1]。
對(duì)MPLS VPN技術(shù)本身而言,在進(jìn)行標(biāo)簽映射時(shí)存在一定的局限,包括標(biāo)簽空間有限及二層技術(shù)不支持多點(diǎn)到點(diǎn)和多點(diǎn)到多點(diǎn)的鏈接等。在組播的情況下這些局限更加突出:組播樹在建立過程中需消耗大量的標(biāo)簽值,組播情況下存在點(diǎn)到多點(diǎn)、多點(diǎn)到多點(diǎn)的鏈接。所以,必須對(duì)現(xiàn)有的各種機(jī)制進(jìn)行改進(jìn),滿足在MPLS技術(shù)下實(shí)現(xiàn)克服以上缺陷的組播。
圖1 MPLS VPN組播組網(wǎng)
當(dāng)數(shù)據(jù)流進(jìn)入MPLS網(wǎng)絡(luò)時(shí),入口標(biāo)簽交換邊緣路由器LER首先將數(shù)據(jù)流映射到某個(gè)轉(zhuǎn)發(fā)等價(jià)類 FEC(轉(zhuǎn)發(fā)等價(jià)類是指網(wǎng)絡(luò)中沿相同路徑進(jìn)行轉(zhuǎn)發(fā)的一類分組的集合),再將對(duì)應(yīng)的FEC映射到對(duì)應(yīng)的標(biāo)簽值,根據(jù)映射的標(biāo)簽值為對(duì)應(yīng)的分組加上固定長度的標(biāo)簽。每個(gè)FEC對(duì)應(yīng)的標(biāo)簽是根據(jù)各種路由協(xié)議及業(yè)務(wù)特性等分發(fā)給對(duì)應(yīng) LSP的標(biāo)簽交換路由器LSR和標(biāo)簽邊緣路由器LER。數(shù)據(jù)流一旦進(jìn)入MPLS網(wǎng)絡(luò),標(biāo)簽交換路由器 LSR不再根據(jù)原來的分組中的信息轉(zhuǎn)發(fā)數(shù)據(jù),而只是僅僅根據(jù)分組所攜帶的標(biāo)簽進(jìn)行交換和轉(zhuǎn)發(fā)。由于分組在通過網(wǎng)絡(luò)時(shí)只需一次路由,無需路由判斷,從而提高了轉(zhuǎn)發(fā)速度。CR-LDP是根據(jù)明確的路由約束、服務(wù)質(zhì)量(QoS)約束及其它約束,建立一個(gè)標(biāo)簽交換路徑 LSP,從而避免了以前 LDP協(xié)議分發(fā)標(biāo)簽時(shí)只是根據(jù)傳統(tǒng)路由協(xié)議來分發(fā)標(biāo)簽;避免了傳統(tǒng)LSP會(huì)出現(xiàn)部分網(wǎng)絡(luò)擁塞而其它部分仍有可用資源,極大地浪費(fèi)了網(wǎng)絡(luò)資源。CR-LDP在分發(fā)標(biāo)簽時(shí)充分考慮了帶寬的可用性和業(yè)務(wù)特性,避免了擁塞的發(fā)生,充分利用了網(wǎng)絡(luò)帶寬資源[2-3]。
標(biāo)簽交換發(fā)起(即LSP 建立的過程)方式主要有三種:請求驅(qū)動(dòng)、拓?fù)潋?qū)動(dòng)和流量驅(qū)動(dòng)。
請求驅(qū)動(dòng)方式是指標(biāo)簽邊緣路由器 LER通過偵聽控制協(xié)議的消息來觸發(fā)標(biāo)簽的分發(fā),該節(jié)點(diǎn)根據(jù)其他節(jié)點(diǎn)的請求信息,對(duì)請求信息發(fā)送對(duì)應(yīng)的LSP的標(biāo)簽。圖2描述了請求驅(qū)動(dòng)的一般過程。下游的 LSR(LSRd)發(fā)送一個(gè)控制消息到上游LSR(LSRu)。在第一種情況下,LSRu 偵聽到控制消息,它的MPLS 模塊決定建立一條 LSP,于是它發(fā)送 LDP綁定(上游主動(dòng)模式) 或者LDP綁定請求(下游按需模式) 控制消息給 LSRd。同理,圖中的右半部分描述了 LSRd在發(fā)送控制消息的同時(shí),觸發(fā)建立LSP。
圖2 兩種請求驅(qū)動(dòng)的報(bào)文
拓?fù)潋?qū)動(dòng)方式是指MPLS路由器將網(wǎng)絡(luò)層的路由協(xié)議形成的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)映射成標(biāo)簽交換路徑,同時(shí)在網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)發(fā)生變化時(shí)建立相應(yīng)的LSP。對(duì)于拓?fù)潋?qū)動(dòng),路由器的組播路由協(xié)議模塊負(fù)責(zé)維護(hù)組播路由表(MRT),接著MPLS 的控制單元負(fù)責(zé)把組播路由表MRT映射到點(diǎn)到多點(diǎn)(p2mp)LSP上。
一般而言,拓?fù)潋?qū)動(dòng)方式與請求驅(qū)動(dòng)方式可結(jié)合使用,一般稱為控制驅(qū)動(dòng)??刂乞?qū)動(dòng)技術(shù)的關(guān)鍵技術(shù)在于拓?fù)涞淖兓徒M播成員的動(dòng)態(tài)加入,會(huì)導(dǎo)致控制報(bào)文流量的增加;另外上游LSR向下游LSR請求標(biāo)簽的時(shí)候,在MPLS網(wǎng)絡(luò)中的某個(gè)節(jié)點(diǎn)上存在一個(gè)入標(biāo)簽對(duì)應(yīng)多個(gè)出標(biāo)簽的情況,要消耗大量的標(biāo)簽值。
流量驅(qū)動(dòng)是指在某一個(gè)邊緣路由器 LSR 收到新的業(yè)務(wù)流時(shí),路由器本身的信息確定該業(yè)務(wù)流的FEC,再根據(jù)FEC決定是否發(fā)起標(biāo)簽的申請或分發(fā)。流量驅(qū)動(dòng)技術(shù)本身存在的問題在于需轉(zhuǎn)發(fā)的數(shù)據(jù)流中可能包含非標(biāo)簽交換的分組,而這些分組須通過上層的控制單元來實(shí)現(xiàn)轉(zhuǎn)發(fā)。在實(shí)際應(yīng)用中,網(wǎng)絡(luò)處理器可以實(shí)現(xiàn)高效的流的鑒別,但是標(biāo)簽分發(fā)還是要使用軟件來處理。
數(shù)據(jù)流驅(qū)動(dòng)情況下,影響性能的主要因素包含網(wǎng)絡(luò)路由器的控制單元本身的處理能力和數(shù)據(jù)流中非標(biāo)簽交換分組所占的比例(p):
轉(zhuǎn)發(fā)性能=控制單元交換能力×p+硬件轉(zhuǎn)發(fā)能力×(1- p)
在組播情況下,流量驅(qū)動(dòng)技術(shù)的優(yōu)勢主要體現(xiàn)在:有新的數(shù)據(jù)流時(shí)才觸發(fā)標(biāo)簽的分發(fā),這樣減少了標(biāo)簽的消耗。這種由數(shù)據(jù)流驅(qū)動(dòng)方式建立的 LSP在實(shí)際應(yīng)用中更符合組播基于組播樹的結(jié)構(gòu)。
表1列出了組播情況下三種驅(qū)動(dòng)方式的比較。從表中可看出:流量驅(qū)動(dòng)的可靠性同控制驅(qū)動(dòng)相比較要差得多,主要原因是由于數(shù)據(jù)流驅(qū)動(dòng)技術(shù)受數(shù)據(jù)流變化的影響,數(shù)據(jù)流的變化非常頻繁而且難以預(yù)測;而控制驅(qū)動(dòng)主要受控制流包括拓?fù)浣Y(jié)構(gòu)、用戶請求、組播成員變化等因素的影響,而這些因素相對(duì)數(shù)據(jù)流的變化來說是較少的,而且變化基本上是相對(duì)穩(wěn)定的。
表1 標(biāo)簽分發(fā)驅(qū)動(dòng)方式比較
MPLS的信令協(xié)議本身可以支持組播。在MPLS VPN支持組播的信令協(xié)議包括資源預(yù)留協(xié)議RSVP協(xié)議和標(biāo)簽分發(fā)協(xié)議LDP協(xié)議兩種。
RSVP(Resource Reservation Protocol)是一種主要用于支持多媒體通信的路由層協(xié)議,用于在無連接協(xié)議上提供端到端的實(shí)時(shí)傳輸服務(wù),為特定的多媒體流提供端到端的QoS保證和控制功能,以達(dá)到減小網(wǎng)絡(luò)傳輸延遲和提供一定的帶寬保證。其基本的工作原理是:發(fā)送方在發(fā)送數(shù)據(jù)前首先發(fā)送Path報(bào)文用于與接收者建立一個(gè)傳輸路徑。當(dāng)然在Path報(bào)文中包含有數(shù)據(jù)流標(biāo)識(shí)符(ID)和其它控制信息,沿途的各個(gè)路由器都登記該流標(biāo)識(shí)符,并在資源允許的情況下為該流標(biāo)識(shí)做好預(yù)留必須資源的準(zhǔn)備。在接收方收到相應(yīng)的Path報(bào)文后,則使用相同的流標(biāo)識(shí)符發(fā)送一個(gè)Path報(bào)文的Resv應(yīng)答報(bào)文。Resv報(bào)文沿完全相反的路徑傳送給發(fā)送方,途經(jīng)各個(gè)路由器時(shí),對(duì)Path報(bào)文指定的QoS參數(shù)給予確認(rèn)。在確認(rèn)無誤的情況下,發(fā)送方和接收方之間可以通過這條路徑傳輸數(shù)據(jù)流,沿途的各個(gè)路由器為該數(shù)據(jù)流保留必須的資源,按所協(xié)商的QoS參數(shù)提供滿足相應(yīng)的QoS要求的轉(zhuǎn)發(fā)服務(wù)[4]。
RSVP的資源預(yù)留主要是針對(duì)路由器端口的,路由器通過使用Filterspec和Flowspec為相應(yīng)的端口定義其保留模式,并對(duì)資源預(yù)留操作過程進(jìn)行控制。RSVP可用的保留模式主要有[5]:
①Fixed Filter(FF),用于單播;
②Shared Explicit(SE), 用于組播;
③Wildcard Filter(WF),用于廣播。
其中,用于組播模式的SE模式允許接收方明確規(guī)定其選擇的發(fā)送方集合,并為所選擇的上游發(fā)送方(源)創(chuàng)建一個(gè)共享的預(yù)留,同時(shí)可允許新建立的LSP隧道與以前建立的LSP隧道共享特定的網(wǎng)絡(luò)資源,這樣就適合組播成員的加入和退出該組播組。
LDP是用于控制標(biāo)簽交換路由器 LSR之間交換標(biāo)簽與FEC對(duì)應(yīng)的綁定,協(xié)調(diào)LSR間協(xié)同工作的一系列規(guī)程。LDP與傳統(tǒng)網(wǎng)絡(luò)中的信令協(xié)議類似,用于動(dòng)態(tài)生成標(biāo)記,負(fù)責(zé)FEC分類、標(biāo)記分配分發(fā)、建立維護(hù)LSP。
目前主要研究了三種標(biāo)記分發(fā)協(xié)議:
①基本的標(biāo)簽分發(fā)協(xié)議LDP;
②基于顯式路由的CR-LDP;
③擴(kuò)展的資源預(yù)留協(xié)議RSVP-TE。
其中,CR-LDP是基本的LDP協(xié)議的擴(kuò)展。該協(xié)議采用標(biāo)準(zhǔn)的LDP消息,與LDP共享建立的TCP連接。CR-LDP與基本的 LDP區(qū)別在于通過網(wǎng)絡(luò)管理員制定或是在路由器在路由計(jì)算中引入約束參數(shù)的方法建立顯式路由,CR-LDP在流量參數(shù)、搶占資源、顯示路由、鎖定路由、資源分類以及標(biāo)記請求和標(biāo)記映射消息等方面對(duì)LDP進(jìn)行了擴(kuò)展,提供了一種簡單的、可用硬件實(shí)現(xiàn)的LSP,同時(shí)可有效的支持流量工程等功能[6]。
對(duì)CR-LDP的消息進(jìn)行擴(kuò)展,可以在MPLS網(wǎng)絡(luò)中建立組播路徑和LSP,從而可實(shí)現(xiàn)支持流量工程的組播路徑。利用 LSP-ID TLV機(jī)制,在 MPLS網(wǎng)絡(luò)中的 LSP-ID 和入口LSR-ID,利用這兩個(gè)控制標(biāo)記,網(wǎng)絡(luò)中各個(gè)節(jié)點(diǎn)可以唯一確定數(shù)據(jù)流分組傳送的起始節(jié)點(diǎn)。
RSVP和LDP的比較主要在以下四個(gè)方面:
①網(wǎng)絡(luò)結(jié)構(gòu):在組播的情況下,RSVP采用源樹結(jié)構(gòu),LDP采用目的樹結(jié)構(gòu);
②可靠性:RSVP協(xié)議使用的是UDP,控制信令采用不可靠傳輸?shù)膫鬏敺绞剑琇DP使用的TCP,提供可靠的傳輸;
③多樣性:在標(biāo)簽分配時(shí),RSVP只支持下游按需標(biāo)簽分發(fā),LDP支持多種標(biāo)簽分發(fā)方式;
④可維護(hù)性:RSVP協(xié)議采用的是軟狀態(tài)技術(shù),路由器必須周期性的維護(hù)RSVP的狀態(tài)信息,勢必會(huì)帶來附加的一些網(wǎng)絡(luò)開銷,而LDP是基于硬狀態(tài)技術(shù),不需要周期性的維護(hù)狀態(tài)信息,減少了不必要的網(wǎng)絡(luò)開銷。
目前存在多種組播路由協(xié)議, 如 DVMRP、PIM-SM、PIM2DM和CBT等。它們在樹類型、控制消息開銷、計(jì)算復(fù)雜性、延遲等方面分別具有不同的優(yōu)勢。為提高網(wǎng)絡(luò)性能,在MPLS VPN環(huán)境下,需要考察組播路由協(xié)議的下列特性:
①算法本身的聚合性;
②控制信息的泛洪和剪枝性;
③源樹、目的樹及共享樹的共存性;
④共享樹的單向、雙向特性;
⑤組播數(shù)據(jù)的封裝效率;
⑥環(huán)回性。
針對(duì)MPLS 與多種組播路由協(xié)議相關(guān)時(shí)要考慮的問題,可以從中分析MPLS在于各種協(xié)議協(xié)同工作時(shí)的優(yōu)缺點(diǎn)。
①DVMRP和PIM-DM使用泛洪剪枝的方式來建立組播樹,在組播樹建立的過程中要消耗大量的標(biāo)簽值;同時(shí),該協(xié)議組播樹采用源樹的方式,不存在合并問題,但也會(huì)帶來網(wǎng)絡(luò)資源的浪費(fèi);
②MOSPF不使用泛洪剪枝,其使用源樹,但是由于協(xié)議本身的特性導(dǎo)致LSP的建立時(shí)間會(huì)比較長,很難做到網(wǎng)絡(luò)拓?fù)涞目焖偈諗浚?/p>
③CBT和PIM-SM、SSM不使用泛洪剪枝,不會(huì)消耗大量標(biāo)簽;但是,他們都采用雙向共享樹,會(huì)產(chǎn)生大量的合并點(diǎn),這樣就會(huì)節(jié)省網(wǎng)絡(luò)的帶寬資源。但LSP的建立時(shí)間會(huì)比較長,不利于網(wǎng)絡(luò)拓?fù)涞目焖偈諗俊?/p>
從以上分析可知,實(shí)現(xiàn)MPLS VPN組播包含多種技術(shù),同時(shí)也并非各種技術(shù)組合都適用。按照標(biāo)簽分發(fā)協(xié)議的不同,可采用的組播方案分成兩大類,在權(quán)衡各種因素后可在這兩大類可選方案采用適合本身要求的解決方案。
①RSVP方式。該協(xié)議使用數(shù)據(jù)驅(qū)動(dòng)發(fā)起標(biāo)簽的申請和分發(fā),采用支持源樹的組播路由協(xié)議,主要選擇了比較流行的組播路由協(xié)議;
②LDP方式。使用控制驅(qū)動(dòng)發(fā)起標(biāo)簽申請和分發(fā),支持源樹的組播路由協(xié)議PIM-SM、MOSPF等。
對(duì)于以上兩種方式,都需要解決的問題包括TTL、MPLS VPN組播流量工程以及安全等問題。
隨著光波路由技術(shù)的發(fā)展,光波長路由器間交換控制信息和建立光通路所用的協(xié)議MPLS將逐漸與IP層面的MPLS互通,從而為IP Over Optical網(wǎng)絡(luò)建立起統(tǒng)一的、開放的、標(biāo)準(zhǔn)的控制平面提供了可靠的技術(shù)支持和保證。在MPLS 組播方案由于解決實(shí)際的網(wǎng)絡(luò)應(yīng)用時(shí),不單單要考慮技術(shù)的可行性和先進(jìn)性,還要考慮與目前網(wǎng)絡(luò)中采用的協(xié)議的兼容性,真正實(shí)現(xiàn)MPLS對(duì)多協(xié)議的支持。
[1] OOMS D, SALES B, LIVENS W, et al. Overview of IP Multicast in a Multi-Protocol Label Switching (MPLS) Environment[S].[s.l.]:RFC,2002.
[2] 韓波,沈富可.BGP/MPLS VPN在NS-2中的實(shí)現(xiàn)[J].計(jì)算機(jī)應(yīng)用, 2006,4(26):980-982.
[3] 董玲,黃楊.BGP/MPLS VPN實(shí)現(xiàn)細(xì)節(jié)探討[J].計(jì)算機(jī)工程與應(yīng)用,2005,41(29):117-119.
[4] WANG Z,CROW C J.Quality-of-service for Routing Supporting Multimedia Applications[J].IEEE Journal of Selected Areas in Communications,1996,14(07):131-162.
[5] CHUNG Jongmoon, MAURICIO A S B, HARLEEN Chhabra, et al. RSVP-TE Extensions for MPLS Multicasting Services[S].USA:[s.n.],2002.
[6] CHUNG Jongmoon, MAURICIO A A S B, HARLEEN Chhabra, et al. LDP Extensions for MPLS Multicasting Services[S]. USA:[s.n.],2002.