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