趙建立++陳建偉
摘 要:隨著電子商務(wù)、網(wǎng)絡(luò)會議、視頻點播等網(wǎng)絡(luò)應(yīng)用的不斷發(fā)展,網(wǎng)絡(luò)中交互的各種數(shù)據(jù)、語音和視頻信息越來越多,組播技術(shù)很好地滿足了上述需求。文章敘述了組播協(xié)議的產(chǎn)生和發(fā)展過程,并對現(xiàn)行的關(guān)鍵技術(shù)進行了介紹。
關(guān)鍵詞:組播;語音;視頻;網(wǎng)絡(luò)應(yīng)用
1 組播技術(shù)的概念
當(dāng)今流行的網(wǎng)絡(luò)協(xié)議為傳輸控制協(xié)議(Transmission Control Protocol,TCP)/ 網(wǎng)絡(luò)協(xié)議(Internet Protocol,IP),其對開放式系統(tǒng)互聯(lián)(Open System Interconnection,OSI)協(xié)議模型進行了改進,最大的成功之處就在于簡潔實用。人們應(yīng)用最多的是點對點的單播通信模式,即數(shù)據(jù)包從一個源點發(fā)送到一個目的節(jié)點,與之對應(yīng)的,報文從源節(jié)點發(fā)出,經(jīng)過網(wǎng)絡(luò)發(fā)送到一組接收者,稱之為組播。
20世紀80年代初,斯坦福大學(xué)的一個博士生為他的導(dǎo)師設(shè)計分布式系統(tǒng),在研究獨立計算機之間的通信問題時發(fā)現(xiàn),獨立計算機最開始處于同一個網(wǎng)段中,通過二層組播進行通信。隨著工作的深入研究,計算機需要跨越不同的網(wǎng)段進行通信,研究不得不設(shè)法在網(wǎng)絡(luò)層解決通信問題。通過對開放式最短路徑優(yōu)先(Open Shortest Path First,OSPF)協(xié)議和路由信息協(xié)議(Routing Information Protocol,RIP)的研究,發(fā)現(xiàn)可以把OSPF協(xié)議進行擴充,經(jīng)過一系列的改進,組播擴展(Multicast OSPF,MOSPF)和距離組播適量協(xié)議(Distance Vector Multicast Routing Protocol,DVMRP)誕生了,再經(jīng)過幾個版本的修訂最終成為Internet組管理協(xié)議(Internet Group Management Protocol,IGMP)。這些研究成果是組播技術(shù)的基礎(chǔ)框架。
2 組播技術(shù)的基本特點及相關(guān)術(shù)語
IP傳播分為3種方式,即單播、組播和多播。單播方式即點到點傳播,數(shù)據(jù)包使用單播地址發(fā)送到目的地,N個接收者需要源發(fā)送N份報文,并且為每份報文建立單獨的通道。單播傳播的缺點為當(dāng)用戶的數(shù)量增加時,網(wǎng)絡(luò)中將出現(xiàn)多份相同信息流,到每一個接收者,對處理器資源和帶寬都是很大的浪費,如圖1所示。
廣播方式即數(shù)據(jù)包使用廣播地址發(fā)送,報文被復(fù)制成多份發(fā)送到各個網(wǎng)段,不管接收者是否有需求,報文都會到達網(wǎng)絡(luò)中的每個用戶,如圖2所示。廣播方式的缺點是極大地浪費了網(wǎng)絡(luò)帶寬,適合用戶密集的網(wǎng)絡(luò)。
組播又稱為多播,是指IP數(shù)據(jù)從一個或者一組源發(fā)出,被轉(zhuǎn)發(fā)到一組特定的接收者。單播是點對點的轉(zhuǎn)發(fā)數(shù)據(jù),有多少接收者就需要由源發(fā)送多少數(shù)據(jù),廣播是不論接收者是否接收數(shù)據(jù),源都要在整個網(wǎng)段進行轉(zhuǎn)發(fā),而組播的傳輸方式介于單播和廣播之間,其既不指定接收者,也不將數(shù)據(jù)發(fā)送到網(wǎng)絡(luò)的所有用戶,如圖3所示。發(fā)送者不需要知道接收者的位置,只需要將數(shù)據(jù)發(fā)送到指定的組播地址,由網(wǎng)絡(luò)層完成余下的工作。組播的優(yōu)勢在于發(fā)送者只發(fā)送一份數(shù)據(jù),并且發(fā)送者不必對接收者的信息進行維護。
理解組播技術(shù),需要了解一下幾個基本概念。
最短路徑樹(Shortest Path Tree,SPT):也叫源樹,是指報文從源到接收者所經(jīng)過的路徑為最短路徑。最短路徑對于不同的網(wǎng)絡(luò)層協(xié)議也不同,因為不同的網(wǎng)絡(luò)層協(xié)議有不同的管理距離和度量值,所以這個最短在不同的路由協(xié)議下意義也不同。
共享樹(Rendezvous Point Tree,RPT):指來自不同的源地址,首先匯聚到稱為匯聚點的樹根,由匯聚點在發(fā)送到接收者,共享樹的特點是不同的源共享匯聚點到接收者這段路徑,節(jié)約了帶寬。
反向路徑轉(zhuǎn)發(fā)(Reverse-Path Forwarding,RPF):路由器針在單播路由表中查找組播報文源地址的路由,如果該路由的出口就是組播報文的入接口,則RPF檢查成功。該接口成為RPF接口。RPF檢查的目的是防止組播報文環(huán)路。對于最短路徑樹和共享樹檢查的地址有所不同,最短路徑樹檢查的地址是組播源的地址,而共享樹檢查的地址是匯聚點的地址。
組播路由表:和單播路由表類似,組播路由表用于組播數(shù)據(jù)的轉(zhuǎn)發(fā)。由于組播轉(zhuǎn)發(fā)策略比較復(fù)雜,所以組播路由表包含的信息比單播路由表多,如:源地址、組地址、入接口、出接口列表等信息。
3 組播技術(shù)的發(fā)展歷程
3.1 組播架構(gòu)的形成
1985年9月,Steve與其導(dǎo)師提出了支持IP組播的擴展模型,明確了Internet 組管理協(xié)(Internet Group Management Protocol,IGMP)概念。12月,Steve將此概念提交給了IETF,而后經(jīng)過兩次更新該組播模型,重新定義了IGMP的報文類型。IGMP模型只定義了一個IP網(wǎng)段內(nèi)IP主機如何接收和發(fā)送組播報文,而組播報文跨越不同網(wǎng)段的轉(zhuǎn)發(fā)沒有定義,此方面的工作已經(jīng)被獨立為組播路由技術(shù)。1989年8月,RFC1112作為IGMPv1的規(guī)范被廣泛接受,這是組播發(fā)展歷程中的一個重要里程碑。
3.2 組播路由技術(shù)的發(fā)展
1992年,研究者對OSPF協(xié)議進行了擴充以支持IP組播,又過了兩年,MOSPF協(xié)議被研究出來,并被定義為標(biāo)準(zhǔn)化。該文檔描述了對OSPF版本2的擴展,通過增加新的鏈路狀態(tài)廣播(Link-State Advertisement,LSA)支持SPF算法。
1993年,研究者提出了基于核心樹的組播路由協(xié)議技術(shù),該技術(shù)不再基于源在網(wǎng)絡(luò)中構(gòu)建最短路徑樹,而是創(chuàng)建一個虛擬的匯聚節(jié)點,到相同目的地組地址的數(shù)據(jù)包流向匯聚節(jié)點,再由匯聚節(jié)點轉(zhuǎn)發(fā)到最終用戶。
隨著組播路由協(xié)議的不斷發(fā)展,研究者提出了一種與單播路由協(xié)議無關(guān)的組播協(xié)議—域間組播路由(Protocol Independent Multicast,PIM)。該協(xié)議非常明確地指出與網(wǎng)絡(luò)層運行何種路由協(xié)議無關(guān),PIM只關(guān)心接收者和組播源的相關(guān)信息,不需要對網(wǎng)絡(luò)層的路由信息進行維護,不僅降低了路由的復(fù)雜性,而且減小了設(shè)備資源。在研發(fā)PIM的過程中參考了以前的組播技術(shù)和轉(zhuǎn)發(fā)方式,將組播分為密集模式(Dense Mode,DM)和稀疏模式(Sparse Mode,SM)。密集模式采用推送的方式,在網(wǎng)絡(luò)中周期性地進行泛洪和剪枝,而稀疏模式是在網(wǎng)絡(luò)中創(chuàng)建一個匯聚節(jié)點,組播源向匯聚節(jié)點注冊,通過最短路徑樹傳送流量,接收者通過直連路由器向匯聚節(jié)點加入,利用共享樹轉(zhuǎn)發(fā)組播流量。endprint
PIM-DM和PIM-SM技術(shù)的成功,使得以前的技術(shù)基本被淘汰。但是PIM仍然是一個區(qū)域內(nèi)的技術(shù),而域間組播協(xié)議解決了組播源和接收者不在同一個區(qū)域的情況,該協(xié)議通過策略控制對源的信息進行發(fā)布,也可以應(yīng)用在域內(nèi)滿足某些特殊的需求。MSDP的應(yīng)用場景中一般都會有PIM-DM和PIM-SM。
1997年,隨著RFC2236被IETF批準(zhǔn),IGMPv2標(biāo)準(zhǔn)形成了,IGMPv2版本對IGMPv1版本進行了兼容,并且對IGMPv1的版本進行了改進,例如增加了主機離開的消息報文,當(dāng)主機離開時,會發(fā)送離開消息報文,對響應(yīng)時間進行了改進,并且還可以對指定組進行查詢。
伴隨著IPv6技術(shù)的發(fā)展,在制定IPv6地址體系標(biāo)準(zhǔn)的同時,對IPv6協(xié)議的主機組播協(xié)議也進行了相應(yīng)的升級,用MLDv1協(xié)議取代了IGMPv2協(xié)議,MLDv1協(xié)議加入到了組播協(xié)議。
3.3 指定源組播和IGMPv3協(xié)議
隨著對組播協(xié)議的研究,一種新型的服務(wù)模型被提出,這種模型被稱為源特定組播(Source Specific Multicast,SSM),而老的模型被稱為ASM。模型SSM可以同時對特定源和目的組提供服務(wù),由于應(yīng)用層通常需要組播源地址和組地址,所以這對于大多數(shù)數(shù)據(jù)流量應(yīng)用更方便和高效。在跨域組播的應(yīng)用中,也不再需要MSDP去維護活動員的信息,但是需要對IGMPv2進行升級,而升級的IGMPv3解決的就是可以指定組播源。同時,組播偵聽者發(fā)現(xiàn)(Multicast Listener Discovery,MLD)協(xié)議的版本也升級到版本2,同樣解決了相同的問題。
4 結(jié)語
組播技術(shù)是在網(wǎng)絡(luò)中的應(yīng)用越來越廣泛,在很多場景下具有不可替代的優(yōu)勢,組播技術(shù)可以成倍地節(jié)約網(wǎng)絡(luò)帶寬,這非常符合建設(shè)節(jié)約社會的要求。本文可以幫助讀者對組播技術(shù)有一些簡單的了解,為深入學(xué)習(xí)組播技術(shù)提供了入門指導(dǎo)。
[參考文獻]
[1]董慶陽,李毓麟,謝峰.IP組播技術(shù)[J].數(shù)據(jù)通信,1998(3):18-21.
[2]LAWRENCE B,陸雪瑩,蔣慧.TCP/IP詳解卷2:實現(xiàn)[M].北京:機械工業(yè)出版社,2000.
[3]李炳彰.IP組播技術(shù)研究與實現(xiàn)[J]無線電通信技術(shù),2005(1):32-35.endprint