| ? 隨著全球互聯(lián)網(Internet)的迅猛發(fā)展,上網人數正以幾何級數快速增長,以因特網技術為主導的數據通信在通信業(yè)務總量中的比列迅速上升,因特網業(yè)務已成為多媒體通信業(yè)中發(fā)展最為迅速、競爭最為激烈的領域。Internet網絡傳輸和處理能力的大幅提高,使得網上應用業(yè)務越來越多,特別是視音頻壓縮技術的發(fā)展和成熟,使得網上視音頻業(yè)務成為Internet網上最重要的業(yè)務之一。 ? 在Internet上實現(xiàn)的視頻點播(VOD)、可視電話、視頻會議等視音頻業(yè)務和一般業(yè)務相比,有著數據量大、時延敏感性強、持續(xù)時間長等特點。因此采用最少時間、最小空間來傳輸和解決視音頻業(yè)務所要求的網絡利用率高、傳輸速度快、實時性強的問題,就要采用不同于傳統(tǒng)單播、廣播機制的轉發(fā)技術及QoS服務保證機制來實現(xiàn),而IP組播技術是解決這些問題的關鍵技術。 ? 一、IP組播技術的基礎知識概述 ? 1.IP組播技術的概念 IP組播(也稱多址廣播或多播)技術,是一種允許一臺或多臺主機(組播源)發(fā)送單一數據包到多臺主機(一次的,同時的)的TCP/IP網絡技術。組播作為一點對多點的通信,是節(jié)省網絡帶寬的有效方法之一。在網絡音頻/視頻廣播的應用中,當需要將一個節(jié)點的信號傳送到多個節(jié)點時,無論是采用重復點對點通信方式,還是采用廣播方式,都會嚴重浪費網絡帶寬,只有組播才是最好的選擇。組播能使一個或多個組播源只把數據包發(fā)送給特定的組播組,而只有加入該組播組的主機才能接收到數據包。目前,IP組播技術被廣泛應用在網絡音頻/視頻廣播、AOD/VOD、網絡視頻會議、多媒體遠程教育、“push”技術(如股票行情等)和虛擬現(xiàn)實游戲等方面。 ? 2.IP組播地址和組播組 IP組播通信必須依賴于IP組播地址,在IPv4中它是一個D類IP地址,范圍從224.0.0.0到239.255.255.255,并被劃分為局部鏈接組播地址、預留組播地址和管理權限組播地址三類。其中,局部鏈接組播地址范圍在224.0.0.0~224.0.0.255,這是為路由協(xié)議和其它用途保留的地址,路由器并不轉發(fā)屬于此范圍的IP包;預留組播地址為224.0.1.0~238.255.255.255,可用于全球范圍(如Internet)或網絡協(xié)議;管理權限組播地址為239.0.0.0~239.255.255.255,可供組織內部使用,類似于私有IP地址,不能用于Internet,可限制組播范圍。 ? 使用同一個IP組播地址接收組播數據包的所有主機構成了一個主機組,也稱為組播組。一個組播組的成員是隨時變動的,一臺主機可以隨時加入或離開組播組,組播組成員的數目和所在的地理位置也不受限制,一臺主機也可以屬于幾個組播組。此外,不屬于某一個組播組的主機也可以向該組播組發(fā)送數據包。 ? 3.組播分布樹 為了向所有接收主機傳送組播數據,用組播分布樹來描述IP組播在網絡中傳輸的路徑。組播分布樹有兩個基本類型:有源樹和共享樹。 ? 有源樹是以組播源作為有源樹的根,有源樹的分支形成通過網絡到達接收主機的分布樹,因為有源樹以最短的路徑貫穿網絡,所以也常稱為最短路徑樹(SPT)。 ? 共享樹以組播網中某些可選擇的組播路由中的一個作為共享樹的公共根,這個根被稱為匯合點(RP)。共享樹又可分為單向共享樹和雙向共享樹。單向共享樹指組播數據流必須經過共享樹從根發(fā)送到組播接收機。雙向共享樹指組播數據流可以不經過共享樹。 ? 4.逆向路徑轉發(fā) 逆向路徑轉發(fā)(RPF)是組播路由協(xié)議中組播數據轉發(fā)過程的基礎,其工作機制是當組播信息通過有源樹時,組播路由器檢查到達的組播數據包的組播源地址,以確定該組播數據包所經過的接口是否在有源的分支上,如果在,則RPF檢查成功,組播數據包被轉發(fā);如果RPF檢查失敗,則丟棄該組播數據包。 ? 5.Internet組播主干(MBONE)網絡 Internet組播主干(MBONE)網絡是由一系列相互連接的子網主機和相互連接支持IP組播的路由器組成。它可以看成是一個架構在Internet物理網絡上層的虛擬網,在該虛擬網中,組播源發(fā)出的組播信息流可直接在支持IP組播的路由器組之間傳輸,而在組播路由器組和非組播路由器組之間要通過點對點隧道技術進行傳輸。 ? 二、IP組播路由及其協(xié)議 ? 1.IP組播路由的基本類型 組播路由的一種常見的思路就是在組播組成員之間構造一棵擴展分布樹。在一個特定的“發(fā)送源,目的組”對上的IP組播流量都是通過這個擴展樹從發(fā)送源傳輸到接受者的,這個擴展樹連接了該組播組中所有主機。不同的IP組播路由協(xié)議使用不同的技術來構造這些組播擴展樹,一旦這個樹構造完成,所有的組播流量都將通過它來傳播。 ? 根據網絡中組播組成員的分布,總的說來IP組播路由協(xié)議可以分為以下兩種基本類型。第一種假設組播組成員密集地分布在網絡中,也就是說,網絡大多數的子網都至少包含一個組播組成員,而且網絡帶寬足夠大,這種被稱作“密集模式”(Dense-Mode)的組播路由協(xié)議依賴于廣播技術來將數據“推”向網絡中所有的路由器。密集模式路由協(xié)議包括距離向量組播路由協(xié)議(DVMRP:Distance Vector Multicast Routing Protocol)、組播開放最短路徑優(yōu)先協(xié)議(MOSPF:Multicast Open Shortest Path First)和密集模式獨立組播協(xié)議(PIM-DM:Protocol-Independent Multicast-Dense Mode)等。 ? 組播路由的第二種類型則假設組播組成員在網絡中是稀疏分散的,并且網絡不能提供足夠的傳輸帶寬,比如Internet上通過ISDN線路連接分散在許多不同地區(qū)的大量用戶。在這種情況下,廣播就會浪費許多不必要的網絡帶寬從而可能導致嚴重的網絡性能問題。于是稀疏模式組播路由協(xié)議必須依賴于具有路由選擇能力的技術來建立和維持組播樹。稀疏模式主要有基于核心樹的組播協(xié)議(CBT:Core Based Tree)和稀疏模式獨立協(xié)議組播(PIM-SM:Protocol-Independent Multicast-Sparse Mode)。 ? 2.密集模式協(xié)議 ? (1)距離向量組播路由協(xié)議 (DVMRP) 第一個支持組播功能的路由協(xié)議就是距離向量組播路由協(xié)議。它已經被廣泛地應用在組播骨干網MBONE上。 ? DVMRP為每個發(fā)送源和目的主機組構建不同的分布樹。每個分布樹都是一個以組播發(fā)送源作為根,以組播接受目的主機作為葉的最小擴展分布樹。這個分布樹為發(fā)送源和組中每個組播接受者之間提供了一個最短路徑,這個以“跳數”為單位的最短路徑就是DVMRP的量度。當一個發(fā)送源要向組播組中發(fā)送消息時,一個擴展分布樹就根據這個請求而建立,并且使用“廣播和修剪”的技術來維持這個擴展分布樹。 ? 擴展分布樹構建過程中的選擇性發(fā)送組播包的具體運作是:當一個路由器接收到一個組播包,它先檢查它的單播路由表來查找到組播組發(fā)送源的最短路徑的接口,如果這個接口就是這個組播包到達的接口,那么路由器就將這個組播組信息記錄到它的內部路由表(指明該組數據包應該發(fā)送的接口),并且將這個組播包向除了接受到該數據包的路由器以外的其他臨近路由器繼續(xù)發(fā)送。如果這個組播包的到達接口不是該路由器到發(fā)送源的最短路徑的接口,那么這個包就被丟棄。這種機制被稱為“反向路徑廣播”(Reverse-Path Broadcasting)機制,保證了構建的樹中不會出現(xiàn)環(huán),而且從發(fā)送源到所有接受者都是最短路徑。。 ? 對子網中密集分布的組播組來說DVMRP能夠很好的運作,但是對于在范圍比較大的區(qū)域上分散分布的組播組來說,周期性的廣播行為會導致嚴重的性能問題。DVMRP不能支持大型網絡中稀疏分散的組播組。 ? (2)組播開放最短路徑優(yōu)先 (MOSPF) 開放最短路徑優(yōu)先(OSPF)是一個單播路由協(xié)議,它將數據包在最小開銷路徑上進行路由傳送,這里的開銷是表示鏈路狀態(tài)的一種量度。除了路徑中的跳數以外,其他能夠影響路徑開銷的網絡性能參數還有負載平衡信息、應用程序需要的QoS等。 ? MOSPF是為單播路由組播使用設計的。MOSPF依賴于OSPF作為單播路由協(xié)議,就象DVMRP也包含它自己的單播協(xié)議一樣。在一個OSPF/MOSPF網絡中每個路由器都維持一個最新的全網絡拓撲結構圖。這個“鏈路狀態(tài)”信息被用來構建組播分布樹。 ? 每個MOSPF路由器都通過IGMP協(xié)議周期性的收集組播組成員關系信息。這些信息和這些鏈路狀態(tài)信息被發(fā)送到其路由域中的所有其他路由器。路由器將根據它們從臨近路由器接收到的這些信息更新他們的內部連接狀態(tài)信息。由于每個路由器都清楚整個網絡的拓撲結構,就能夠獨立的計算出一個最小開銷擴展樹,將組播發(fā)送源和組播組成員分別作為樹的根和葉。這個樹就是用來將組播流從發(fā)送源發(fā)送到組播組成員的路徑。 ? (3)獨立組播密集模式協(xié)議(PIM-DM) 獨立組播協(xié)議(PIM)是一種標準的組播路由協(xié)議,并能夠在Internet上提供可擴展的域間組播路由而不依賴于任何單播協(xié)議。PIM有兩種運行模式,一種是密集分布組播組模式,另一個是稀疏分布組播組模式,前者被稱為獨立組播密集模式協(xié)議(PIM-DM),后者被稱為獨立組播稀疏模式協(xié)議(PIM-SM)。 PIM-DM有點類似于DVMRP,這兩個協(xié)議都使用了反向路徑組播機制來構建分布樹。它們之間的主要不同在于PIM完全不依賴于網絡中的單播路由協(xié)議而DVMRP依賴于某個相關的單播路由協(xié)議機制,并且PIM-DM比DVMRP簡單。 ? PIM-DM協(xié)議和所有的密集模式路由協(xié)議一樣也是數據驅動的。但是既然PIM-DM不依賴于任何單播路由協(xié)議,路由器某個接收端口(就是返回到源的最短路徑的端口)接收到的組播數據包被發(fā)送到所有下行接口直到不需要的分枝從樹中被修剪掉。DVMRP在樹構建階段能夠使用單播協(xié)議提供的拓撲數據有選擇性的向下行發(fā)送數據包,PIM-DM則更加傾向于簡單性和獨立性。 ? 2.稀疏模式組播路由協(xié)議 當組播組在網絡中集中分布或者網絡提供足夠大帶寬的情況下,密集模式組播路由協(xié)議是一個有效的方法,當組播組成員在廣泛區(qū)域內稀疏分布時,就需要另一種方法即稀疏模式組播路由協(xié)議將組播流量控制在連接到組播組成員的鏈路路徑上,而不會“泄漏”到不相關的鏈路路徑上,這樣既保證了數據傳輸的安全,又能夠有效的控制網絡中的總流量和路由器的負載。 ? (1)基于核心樹的組播協(xié)議 (CBT) 和DVMRP和MOSPF為每個“發(fā)送源、目的組”對構建最短路徑樹不同的是,CBT協(xié)議只構建一個樹給組中所有成員共享,這個樹也就被稱為共享樹。整個組播組的組播通信量都在這個共享樹上進行收發(fā)而不論發(fā)送源有多少或者在什么位置。這種共享樹的使用能夠極大的減少路由器中的組播狀態(tài)信息。 ? CBT共享樹有一個核心路由器用來構建這個樹。要加入的路由器發(fā)送加入請求給這個核心路由器。核心路由器接收到加入請求后,沿反路徑返回一個確認,這樣就構成了樹的一個分枝。加入請求數據包在被確認之前不需要一直被傳送到核心路由器。如果加入請求包在到達核心路由器之前先到達樹上的某個路由器,該路由器就接收下這個請求包而不繼續(xù)向前發(fā)送并確認這個請求包。發(fā)送請求的路由器就連接到共享樹上了。CBT將組播流量集中在最少數量的鏈路而不是在一個基于發(fā)送源的共享樹上。集中在核心路由器上的流量可能會引起組播路由的某些問題。某些版本的CBT支持多個組播核心的使用,和單個組播核心相比多核心更能達到負載平衡。 ? (2)獨立組播稀疏模式協(xié)議 (PIM-SM) 和CBT相似,PIM-SM被設計成將組播限制在需要收發(fā)的路由器上。PIM-SM圍繞一個被稱為集中點(RP:Rendezvous Point)的路由器構建組播分布樹。這個集中點扮演著和CBT核心路由器相同的角色,接收者在集中點能查找到新的發(fā)送源。但是PIM-SM比CBT更靈活,CBT的樹通常是組播組共享樹,PIM-SM中的獨立的接收者可以選擇是構建組共享樹還是最短路徑樹。 ? PIM-SM協(xié)議最初先為組播組構建一個組共享樹。這個樹由連接到集中點的發(fā)送者和接收者共同構建,就像CBT協(xié)議圍繞著核心路由器構建的共享樹一樣。這共享樹建立以后,一個接受者(實際上是最接近這個接收者的路由器)可以選擇通過最短路徑樹改變到發(fā)送源的連接。這個操作的過程是通過向發(fā)送源發(fā)送一個PIM加入請求完成的。一旦從發(fā)送源到接收者的最短路徑建立了,通過RP的外部分枝就被修剪掉了。 ? 三、IP組播路由中的隧道傳輸機制 ? 組播中的隧道概念指將組播包再封裝成一個IP數據包在不支持組播的互聯(lián)網絡中路由傳輸。最有名的組播隧道的例子就是MBONE(采用DVMRP協(xié)議)。在隧道的入口處進行數據包的封裝,在隧道的出口處則進行拆封。在達到本地全IP組播配置傳輸機制上,隧道機制非常有用。 ? 四、網絡多媒體的應用要求 ? 因為多媒體信號是交互的、互動的,它對網絡提出了以下的應用要求: (1) 吞吐(throughtput)的要求:是指對高傳輸帶寬、大存儲緩沖帶寬的要求和對流量的控制。 (2) 可靠性的要求:在這里對可靠性的要求不是重點。適當的數據丟失不會過多影響視頻播出的實際效果。? (3) 網絡延時要求:對網絡延時、抖動要求較高,因為多媒體視頻流對網絡傳輸延時和抖動比較敏感。如傳輸的視頻信號與音頻信號必須同步等。? ? 五、IP視頻應用要求 ? 因為網上信息的交互性和互動性,使網絡中的信息傳輸量日益劇增,網絡傳輸的瓶頸問題是突出的。在多媒體應用中,視頻傳輸帶來的網絡帶寬問題更突出。當n個IP地址同時接收網絡多媒體視頻流時,設每個視頻流所需傳輸帶寬為1.5 Mbps,按現(xiàn)在網絡結構,所需帶寬為n×1.5 Mbps,同時會帶來無法忍受的網絡延時和抖動。現(xiàn)有的大部分網絡多是使用TCP/IP點到點的協(xié)議構置,因此我們研究的重點是如何在現(xiàn)有網絡條件下不作過多的改變來實現(xiàn)視頻的傳輸,即IP組播解決方案要與現(xiàn)有網絡兼容。 ? 多媒體視頻流對數據可靠性要求不高,適當的數據丟失不會過多影響視頻播出的實際效果。雖然多媒體視頻流對網絡傳輸延時和抖動比較敏感,而IP組播在網絡中延時與抖動是很少的。所以用IP組播通信來傳輸IP視頻信號是可行的。 ? 六、利用IP組播實現(xiàn)視頻傳輸的方法 ? 目前在IP網上提供視頻服務的方式主要有兩種: (1)完全利用路由器的Multicast技術,不需另加服務器轉發(fā),但會增加路由器負擔,有“ 廣播風暴”危險,網絡路由協(xié)議也需調整。 (2)利用軟件和服務器,在整個IP寬帶網上疊加一個處理媒體流的疊加網,由疊加網實現(xiàn)點到多點組播、媒體流路由和多點注入等功能。 ? 現(xiàn)在采用視頻服務方式一般為方案(2)。具體地說就是:計算機配合專用軟件組成服務器,實現(xiàn)實時控制。控制的目的是:對于多媒體視頻服務器端,必須具有最大效率的發(fā)送機制,也就是說,系統(tǒng)能夠最大限度地在最短時間內響應和滿足從多媒體視頻接收端送來的視頻請求,一次完成指向需求用戶所有地址的數據發(fā)送,計算機實時控制系統(tǒng)隨時監(jiān)控視頻傳輸的質量,同時自動調整帶寬等。當然傳輸方法的實現(xiàn)能與目前的網絡設施兼容。 ? 該方案實施過程中,計算機(服務器)時刻監(jiān)控著系統(tǒng),達到盡可能好的廣播質量和高效率,絕不發(fā)生如“廣播風暴”等危險。 ? 用IP組播實現(xiàn)視頻傳輸的系統(tǒng)由由4部分組成:即視頻發(fā)送、視頻轉發(fā)、視頻接收、視頻控制。 ? 視頻發(fā)送為預制視頻或者稱為實時視頻,它可以是獨立的計算機,也可以與第一級“視頻轉發(fā)”單元共用一臺計算機。具體地說,先將視頻按MPEG-1 編碼技術進行實時視頻壓縮,此格式的數碼率為1.5 Mbit/s,圖像采用SIF格式(352×288),每秒30幀,2路立體聲伴音。之所以按MPEG-1 編碼技術進行實時視頻壓縮,因為通過它壓縮后的視頻信號質量令人滿意,而數碼率帶寬相對比較窄,有利于IP組播(當然也可以用其他編碼技術),然后將壓縮后的信號送到視頻轉發(fā)端。信號從視頻發(fā)送連接到視頻轉發(fā)是點到點的傳輸(此單元屬于IPv4的通信方式)。 ? 視頻轉發(fā)主要是將從視頻發(fā)送端發(fā)送來的視頻信號,通過IP網絡轉發(fā)給視頻接收端或下一級的視頻轉發(fā)端。它是IP組播傳輸視頻信號的核心,視頻信號用IP組播方式轉發(fā),即對一組特定IP地址(同一類請求的用戶)進行數據傳送。視頻轉發(fā),由轉發(fā)計算機(服務器)完成。 ? 視頻接收是用戶的多媒體終端。要求用戶的多媒體終端設備必須能支持IP組播。 ? 視頻控制的主要功能是對轉發(fā)站點進行控制,用來建立和管理轉發(fā)站點上的IP組播數據組的傳輸。控制系統(tǒng)要最大限度地滿足完成指向需求用戶的數據發(fā)送,同時密切注意視頻傳輸的質量。具體地說就是要盡可能多地為同類請求用戶發(fā)送數據,但要在允許的帶寬范圍之內。這個帶寬是通過計算機實時控制的,計算機實時控制系統(tǒng)隨時監(jiān)控視頻傳輸的質量,自動調整帶寬;同時對網絡其他各項參數也實現(xiàn)實時監(jiān)控。可見,視頻控制實質上也就是計算機的實時控制。計算機實時控制的好壞直接決定了IP組播的效果。 ? 七、IP組播技術在多點視頻數據傳輸方面的優(yōu)勢 ? 由于數字視頻在網絡傳輸時有著很大的數據吞吐量,如果使用端對端的IP單播技術進行數字視頻的多點傳送,首先,視頻服務器必須始終保持在偵聽狀態(tài),以了解每一個動態(tài)加入的客戶端的服務請求,而套接字的偵聽非常消耗系統(tǒng)的CPU資源,過于頻繁的偵聽容易造成系統(tǒng)的不穩(wěn)定,同時還會影響視頻傳輸的實時性,造成視頻在網絡中傳輸時出現(xiàn)頻繁抖動,最終影響視頻傳輸的服務質量(QoS);其次,視頻服務器面對不同的客戶端的同一視頻服務請求,需要進行重復發(fā)送,N個客戶端需要占用N倍的網絡帶寬資源,極大地浪費了網絡帶寬資源,如果控制不力,還會引起廣播風暴,造成系統(tǒng)全面崩潰。 ? 因此,在網絡帶寬環(huán)境能夠無限滿足視頻傳輸需要的前提下,點對點傳送和組播在性能上無本質差異,但是,這種理想狀態(tài)基本上不會出現(xiàn),否則除了研究網絡帶寬以外,其它的網絡技術就失去了研究的基礎和意義。我們設想在10BASE-T的局域網環(huán)境下,當只有2個或單個客戶機提出視頻服務請求時,二者無明顯性能差異;當有3個至5個客戶機提出視頻服務請求時,二者之間的差異就比較顯著,采用點對點傳送方式的視頻服務器明顯已經力不從心,網絡丟包和延遲比較嚴重,接收端視頻明顯滯后、不連續(xù);當有5個以上的客戶機提出視頻服務請求時,就造成了廣播風暴,系統(tǒng)處于崩潰的邊緣。 ? 由此可見,IP組播技術在多點視頻數據傳輸方面具有很大的優(yōu)勢,當某個IP站點向網絡中的多個IP站點發(fā)送同一視頻數據時,IP組播技術可以減少不必要的重疊發(fā)送,與多次點對點的單播(Unicast)相比,減輕了系統(tǒng)和網絡的負擔,提高了CPU資源和網絡帶寬的利用率,極大地改善了視頻數據傳輸的實時性。參與通信的各主機不論是源站點還是目的站點均使用同一程序,無客戶機和服務器之分,從而具有對等性。 ? IP組播帶入了許多新的應用并減少了網絡的擁塞和服務器的負擔。目前IP組播的應用范圍還不夠大,但它能夠降低占用帶寬,減輕服務器負荷,并能改善傳送數據的質量,尤其適用于需要大量帶寬的多媒體應用,如音頻、視頻等。這項新技術已成為當前網絡界的熱門話題,并將從根本上改變網絡的體系結構。 |