基于RSVP-TE的組播信令協(xié)議在ASON中的實(shí)現(xiàn)
1 引言
隨著網(wǎng)絡(luò)技術(shù)的不斷發(fā)展,網(wǎng)絡(luò)電視、視頻會(huì)議、遠(yuǎn)程教學(xué)、新聞發(fā)布等流媒體業(yè)務(wù)在應(yīng)用中變得日益重要。這類(lèi)業(yè)務(wù)的特點(diǎn)是,數(shù)據(jù)在一個(gè)組內(nèi)以一對(duì)多或者多對(duì)多的形式進(jìn)行傳輸,并對(duì)QoS提出很高的要求.包括時(shí)延、抖動(dòng)、丟包等等。為了更加有效地利用網(wǎng)絡(luò)帶寬資源,組播技術(shù)被認(rèn)為是承載上述業(yè)務(wù)的有效手段。在IP層,已經(jīng)有許多組播組管理協(xié)議(IGMP,MLD)和組播路由協(xié)議(PIM-SM,PIM-DM等)被實(shí)現(xiàn)并標(biāo)準(zhǔn)化。然而由于IP本身盡力服務(wù)的特性。使得IP組播無(wú)法提供嚴(yán)格的QoS保證.這導(dǎo)致IP組播在如今的Internet中并沒(méi)有得到大規(guī)模的推廣應(yīng)用。近幾年來(lái),自動(dòng)交換光網(wǎng)絡(luò)(ASON:Automatic Switched Optical Network)的研究取得了非常大的進(jìn)展,并且逐漸開(kāi)始在廣域網(wǎng)和城域網(wǎng)領(lǐng)域得到應(yīng)用?;?a class="contentlabel" href="http://www.ex-cimer.com/news/listbylabel/label/ASON">ASON本身光路交換的特性可減少時(shí)延、抖動(dòng)、丟包等的影響,提供更好的OoS支持,L.Sahasrabuddhe等人提出了基于光樹(shù)(light-tree)的光層組播以支持大范圍內(nèi)的點(diǎn)到多點(diǎn)通信[1]。擴(kuò)展現(xiàn)有的ASON控制平面,使其除了可以支持點(diǎn)到點(diǎn)的連接之外,同時(shí)還可以支持點(diǎn)到多點(diǎn)的連接,從而可以有效地利用網(wǎng)絡(luò)帶寬。
2 ASON控制平面和RSVP-TE
ASON控制平面是基于通用多協(xié)議標(biāo)記交換(GMPLS:Generalized Multi-Protocol Label Switching)協(xié)議體系,并采用流量工程(TE:Traffic Engineering)策略。ASON控制平面主要具備有三種基本功能:資源發(fā)現(xiàn)、路由控制、連接管理。資源發(fā)現(xiàn)功能負(fù)責(zé)自動(dòng)發(fā)現(xiàn)網(wǎng)絡(luò)中各種可使用資源,在GMPLS框架中由鏈路管理協(xié)議實(shí)現(xiàn)。路由控制功能負(fù)責(zé)實(shí)現(xiàn)自動(dòng)拓?fù)浒l(fā)現(xiàn)并為業(yè)務(wù)請(qǐng)求進(jìn)行路由選擇,運(yùn)營(yíng)商可以根據(jù)不同的TE策略對(duì)業(yè)務(wù)流的路徑進(jìn)行精確控制,不受基于IGP的最短路徑約束。GMPLS框架中對(duì)已有的OSPF/ISIS協(xié)議進(jìn)行了TE擴(kuò)展以實(shí)現(xiàn)路由信息的擴(kuò)散。連接管理功能負(fù)責(zé)為業(yè)務(wù)請(qǐng)求提供端到端的連接服務(wù),用戶(hù)可以通過(guò)用戶(hù)網(wǎng)絡(luò)接口(UNI)向ASON發(fā)送請(qǐng)求完成包括連接的建立、刪除、修改和查詢(xún)等各種操作。目前存在兩種主要的信令協(xié)議來(lái)實(shí)現(xiàn)連接管理:基于約束路由的標(biāo)記分發(fā)協(xié)議(CR-LDP:Constraint-based RoutedLabel Distribution Protocol)和基于流量工程擴(kuò)展的資源預(yù)留協(xié)議(RSVP-TE:Resource Reservation ProtocolTraffic Engineering)[2,3]。IETF針對(duì)這兩種協(xié)議都給出了相應(yīng)的RFC,但都只限于對(duì)點(diǎn)到點(diǎn)連接的支持。考慮到目前RSVP-TE得到了更多運(yùn)營(yíng)商和設(shè)備廠商的支持,我們也將基于RSVP-TE進(jìn)行相應(yīng)的組播擴(kuò)展。RSVP-TE有兩種基本消息類(lèi)型:Path消息和Resv消息。圖1顯示了一個(gè)簡(jiǎn)單的點(diǎn)到點(diǎn)標(biāo)記交換通道(LSP:Label Switching Path)建立的信令過(guò)程。當(dāng)入口標(biāo)記交換路由器(LSR:Label Switching Router)A接收到一個(gè)業(yè)務(wù)請(qǐng)求后,它根據(jù)路由控制模塊計(jì)算出來(lái)的路由填寫(xiě)顯示路由對(duì)象(ERO:Explicit Route Object):{B,D,E},然后將此ERO寫(xiě)入到一個(gè)新建的Path消息中。這個(gè)Path消息中還會(huì)包含一個(gè)會(huì)話(SESSION)對(duì)象用來(lái)全局唯一標(biāo)識(shí)這個(gè)LSP所屬的隧道(tunnel),此對(duì)象由出口LSR的地址和隧道標(biāo)識(shí)符組成。當(dāng)Path消息構(gòu)建完后,它將沿著指定的路由向下游節(jié)點(diǎn)傳送一直到出口LSRE。出口LSR收到Path消息后向上游節(jié)點(diǎn)返回Resv消息。收到Resv消息的中間節(jié)點(diǎn)將負(fù)責(zé)填寫(xiě)記錄路由對(duì)象(RRO:Record Route Object),記錄LSP的實(shí)際路由并分配標(biāo)記。當(dāng)入口LSR收到Resv消息后,這條點(diǎn)到點(diǎn)的LSP就建立成功了。
3 組播信令協(xié)議
為了能在現(xiàn)有的GMPLS框架下支持具有TE能力的點(diǎn)到多點(diǎn)連接,IETF討論了相應(yīng)的信令需求[4]。與傳統(tǒng)的點(diǎn)到點(diǎn)LSP相比,點(diǎn)到多點(diǎn)LSP除了原有的建立和刪除操作,還增加了嫁接(grafting)和剪枝(Druning)這兩個(gè)操作。嫁接操作允許將新的葉子(即出口LSR)動(dòng)態(tài)地加入到一個(gè)已經(jīng)存在的組播樹(shù)(即點(diǎn)到多點(diǎn)LSP),而剪枝操作則是從組播樹(shù)中動(dòng)態(tài)地將已存在的某些葉子剪除,所有的操作都不能影響組播樹(shù)上正在運(yùn)行的業(yè)務(wù)。與此同時(shí),擴(kuò)展后的信令協(xié)議必須與GMPLS已有的特性兼容并盡可能重用已存在的協(xié)議。基于上述要求.S.Yasukawa等人在RSVP-TE的基礎(chǔ)上做了擴(kuò)展.引入了次要顯示路由對(duì)象(SERO:Secondarv Explicit Route Object)、次要記錄路由對(duì)象(SRRO:Secondary Record Route Object)和"子LSP" (S2L sub-LSP)等概念[5]。這個(gè)擴(kuò)展在前不久剛剛成為RFC標(biāo)準(zhǔn)。
用圖2所示的6節(jié)點(diǎn)光網(wǎng)絡(luò)來(lái)闡述整個(gè)組播信令流程。與IP組播不同,點(diǎn)到多點(diǎn)LSP并不需要額外的組播組管理協(xié)議。這是因?yàn)槿~子節(jié)點(diǎn)的地址直接被包括在請(qǐng)求中,而不像IP組播中僅僅只是使用一個(gè)D類(lèi)地址。所有的組播樹(shù)請(qǐng)求都將用一個(gè)三元組來(lái)表示{T,a,L},其中T是組播樹(shù)的標(biāo)識(shí)符,s是源節(jié)點(diǎn),L是組播樹(shù)的葉子集合。當(dāng)T等于O的時(shí)候意味著這是一個(gè)組播樹(shù)建立請(qǐng)求。例如,源節(jié)點(diǎn)A希望建立一個(gè)到葉子E和F的組播樹(shù),那么這個(gè)請(qǐng)求就被表示為{0,A,{E,F(xiàn)}}。當(dāng)這顆樹(shù)被建立后,它將被分配一個(gè)全局唯一的標(biāo)識(shí)符,比如1。請(qǐng)求{1,A,{C1}}和{1,A,{F}}則分別意味著將葉子C嫁接到組播樹(shù)1和將葉子F從組播樹(shù)1中剪除。如果想刪除整棵樹(shù),只需要將組播樹(shù)1的所有葉子都剪除即可,即{1,A,{C,E}}。
3.1 組播樹(shù)建立
當(dāng)源節(jié)點(diǎn)收到一個(gè)建立請(qǐng)求后,它首先為這棵組播樹(shù)計(jì)算顯示路由。假設(shè)網(wǎng)絡(luò)中的每個(gè)節(jié)點(diǎn)都具有無(wú)限制的組播能力,其組播實(shí)現(xiàn)可以是通過(guò)使用分光器將光信號(hào)一分為幾[6],也可以是將光信號(hào)轉(zhuǎn)換成電信號(hào)然后進(jìn)行復(fù)制。這樣就不需要對(duì)路由擴(kuò)散協(xié)議進(jìn)行額外的擴(kuò)展。為一個(gè)組播組計(jì)算一棵從一個(gè)源節(jié)點(diǎn)到若干個(gè)葉子的最小代價(jià)樹(shù)的問(wèn)題被稱(chēng)之為Steiner樹(shù)問(wèn)題,眾所周知,這是一個(gè)NP-complete問(wèn)題。我們使用最近節(jié)點(diǎn)優(yōu)先啟發(fā)式算法來(lái)計(jì)算次優(yōu)的動(dòng)態(tài)點(diǎn)到多點(diǎn)Steiner樹(shù)[7]。
當(dāng)路由被計(jì)算好后,組播樹(shù)被分解成若干個(gè)"子LSP"。在一個(gè)Path消息中,除了第一個(gè)子LSP被編碼成ERO外,后續(xù)的子LSP都將被編碼成SERO。為了減小信令消息的長(zhǎng)度,如果某個(gè)SERO的部分路由與ERO或前面的SERO發(fā)生重疊,那么這部分冗余信息將被移除。例如,請(qǐng)求{0,A,{E,F(xiàn)}】的路由將被分解成2個(gè)子LSP,其中從源節(jié)點(diǎn)A到葉子E的子LSP的路由被編碼成ERO{B,D,E},而從源節(jié)點(diǎn)A到F的子LSP的路由則被編碼成SERO {D,F(xiàn)}。所有屬于同一個(gè)組播樹(shù)的子LSP共享一個(gè)全局唯一的組播樹(shù)標(biāo)識(shí)符。在實(shí)際的RSVP-TE消息中。這個(gè)標(biāo)識(shí)符由點(diǎn)到多點(diǎn)標(biāo)識(shí)符、隧道標(biāo)識(shí)符、擴(kuò)展隧道標(biāo)識(shí)符、源節(jié)點(diǎn)地址和LSP標(biāo)識(shí)符共同組成。當(dāng)分枝(branch)節(jié)點(diǎn)D收到Path消息后,Path消息被分解成兩個(gè)并被分別傳遞給下游節(jié)點(diǎn)E和F,每一個(gè)Path消息中只包含相應(yīng)子LSP的SERO。也就是說(shuō)前者為{E},而后者為{F}。當(dāng)收到返回的Resv消息時(shí),為了避免Resv消息的泛濫,分枝節(jié)點(diǎn)會(huì)等待所有下游節(jié)點(diǎn)的Resv消息都到達(dá)后再將其合并到一個(gè)消息中轉(zhuǎn)發(fā)至上游節(jié)點(diǎn)。Resv消息中RRO/SRRO對(duì)象的處理與Path消息中的ERO/SERO類(lèi)似。圖3描述了請(qǐng)求{0,A,{E,F(xiàn)}}的信令實(shí)現(xiàn)過(guò)程。
3.2 組播樹(shù)嫁接
組播樹(shù)的嫁接可以有兩種實(shí)現(xiàn)方式。第一種是將要嫁接的葉子添加到一個(gè)已經(jīng)存在的Path消息中,然后刷新整個(gè)Path消息。例如,請(qǐng)求{1,A,{C}}的實(shí)現(xiàn)可以通過(guò)類(lèi)似上一小節(jié)中處理請(qǐng)求{0,A,{C,E,F(xiàn)}}的信令過(guò)程實(shí)現(xiàn)。這種實(shí)現(xiàn)方式可能會(huì)導(dǎo)致ERO/SERO編碼方案的重新計(jì)算。
第二種方式被稱(chēng)為增量更新。源節(jié)點(diǎn)為需要嫁接的葉子生成一個(gè)新的Path消息,此Path消息和其他已經(jīng)存在并屬于同一組播樹(shù)的Path消息擁有同樣的組播樹(shù)標(biāo)識(shí)符。組播樹(shù)的嫁接只涉及對(duì)新Path消息的處理,不會(huì)影響組播樹(shù)中已經(jīng)存在的其他子LSP。基于這樣可以減少信令消息的開(kāi)銷(xiāo)以及節(jié)點(diǎn)的處理時(shí)延,我們的實(shí)現(xiàn)中采用的是第二種方式。請(qǐng)求{1,A,{C}}的信令實(shí)現(xiàn)過(guò)程如圖4所示。
3.3 組播樹(shù)剪枝
組播樹(shù)的剪枝同樣有兩種實(shí)現(xiàn)策略:隱示的和顯示的。隱示剪枝使用標(biāo)準(zhǔn)的RSVP消息處理機(jī)制,通過(guò)修改原來(lái)的Path或Resv消息實(shí)現(xiàn)子LSP的刪除。修改過(guò)的消息必須包含所有其他未被刪除的子LSP。當(dāng)使用這種方法的時(shí)候,節(jié)點(diǎn)在刪除到達(dá)相應(yīng)葉子的數(shù)據(jù)通道之前必須確保被刪除的子LSP未被包含在任何其他的Path狀態(tài)中。顯示剪枝的實(shí)現(xiàn)則是基于為每一個(gè)Path消息生成一個(gè)相對(duì)應(yīng)的PathTear消息。當(dāng)某個(gè)Path消息所對(duì)應(yīng)的所有葉子都需要被剪除的時(shí)候,顯示剪枝應(yīng)當(dāng)被使用。此外。如果需要?jiǎng)h除整個(gè)組播樹(shù)時(shí),必須為每一個(gè)Path消息建立的子LSP執(zhí)行顯示剪枝。
4 實(shí)驗(yàn)
圖5顯示了一個(gè)用來(lái)實(shí)現(xiàn)組播信令協(xié)議的4節(jié)點(diǎn)ASON網(wǎng)絡(luò)演示環(huán)境。圖中OXC的核心交換矩陣是基于時(shí)分交換,交換粒度為一個(gè)SDH VC-4,同時(shí)支持單播和組播連接。其中,節(jié)點(diǎn)2擁有1.28Tb/s嚴(yán)格無(wú)阻塞交換能力。而節(jié)點(diǎn)1、3和4擁有320Gb/s的交換能力。每個(gè)節(jié)點(diǎn)上都擁有3種板卡,GbE接口和STM-16接口的業(yè)務(wù)端板卡和STM-64接口的線路端板卡。GbE信號(hào)首先被映射到虛級(jí)聯(lián)VC-4容器中,然后在光網(wǎng)中傳輸。
在演示環(huán)境中,所有的節(jié)點(diǎn)都在一個(gè)控制域中??刂破矫娴膶?shí)現(xiàn)是基于GMPLS框架,路由協(xié)議是基于OSPF-TE的擴(kuò)展,信令協(xié)議即為進(jìn)行了組播擴(kuò)展的RSVP-TE.UNI和NNI也都進(jìn)行了擴(kuò)展以支持點(diǎn)到多點(diǎn)的連接??刂破矫嫘畔⒌膫鬟f是通過(guò)一個(gè)100M以太網(wǎng)的帶外信道。我們使用Ethereal作為協(xié)議分析儀,并對(duì)其做了部分修改以支持點(diǎn)到多點(diǎn)連接[8]。業(yè)務(wù)生成器用于生成以太網(wǎng)業(yè)務(wù)并校驗(yàn)組播樹(shù)的連通性。我們還擴(kuò)展了GMPLS的管理信息庫(kù)以支持組播連接。通過(guò)網(wǎng)絡(luò)管理系統(tǒng),可以觀察到組播樹(shù)的路由、帶寬使用率等情況。
首先,為了評(píng)估經(jīng)過(guò)擴(kuò)展后的控制平面與傳統(tǒng)的單播連接的兼容性,分別建立了一條從OXC 1出發(fā)的組播樹(shù)和單播連接,結(jié)果如表1所列。圖6顯示了Ethereal捕獲的組播樹(shù)建立的信令消息。在解開(kāi)的Path消息中,可以發(fā)現(xiàn)經(jīng)過(guò)擴(kuò)展的UNI組播對(duì)象。然后,對(duì)已存在的連接進(jìn)行了動(dòng)態(tài)的修改。在第三個(gè)測(cè)例中,一個(gè)葉子被添加到單播連接上并使其變?yōu)橐豢媒M播樹(shù)。在嫁接和剪枝的操作中,業(yè)務(wù)生成器在已建立的連接上沒(méi)有觀察到丟包的現(xiàn)象。
5 結(jié)束語(yǔ)
本文介紹了GMPLS架構(gòu)下為了支持組播連接做出的各種信令擴(kuò)展。在由4個(gè)具備組播能力的SDH交叉連接機(jī)組成的光網(wǎng)絡(luò)演示環(huán)境中,成功實(shí)現(xiàn)了對(duì)光組播樹(shù)的建立、嫁接、剪枝和刪除等操作,證明了基于RSVP-TE的組播信令協(xié)議的有效性和可行性。
評(píng)論