基于IP多播視頻系統的設計與實(shí)現
本文著(zhù)重介紹了流媒技術(shù)及其底層傳輸技術(shù)——IP多播。基于校園網(wǎng)設計并實(shí)現了一個(gè)可供網(wǎng)絡(luò )現場(chǎng)直播、視頻點(diǎn)播等服務(wù)的視頻通信系統,系統中結合了多播技術(shù)中節約帶寬、減輕服務(wù)器負載的優(yōu)勢,并采用了Real公司RealSystem流媒體系統,在客戶(hù)端/服務(wù)器模式下完成。
本文引用地址:http://dyxdggzs.com/article/155745.htm
1 流媒體技術(shù)
所謂流媒體是指采用流式傳輸方式在Internet播放媒體文件,即將整個(gè)音頻、視頻等連續媒體文件經(jīng)過(guò)壓縮后,由服務(wù)器向用戶(hù)計算機連續和實(shí)時(shí)傳送。用戶(hù)只需經(jīng)過(guò)幾秒或幾十秒的啟動(dòng)延時(shí)即可進(jìn)行播放和觀(guān)看,剩余部分將在后臺繼續下載,邊下載邊播放。實(shí)現流式傳輸有兩種方法:實(shí)時(shí)流式傳輸(Real times treaming)和順序流式傳輸(Progressive streaming)。其中實(shí)時(shí)流式傳輸需要專(zhuān)用的流媒體服務(wù)器與傳輸協(xié)議(如實(shí)時(shí)傳輸協(xié)議RTP、實(shí)時(shí)傳輸控制協(xié)議RTCP、實(shí)時(shí)流協(xié)議RTSP和媒體服務(wù)器協(xié)議MMS等)來(lái)保證媒體信號帶寬與網(wǎng)絡(luò )連接匹配,使媒體可被實(shí)時(shí)觀(guān)看到,特別適合用于現場(chǎng)直播。
目前支持流媒體技術(shù)的解決方案主要有RealNet works公司的RealSystem,Microsoft公司的Windows MediaTechnology和Apple公司的QuickTime。
2 多播技術(shù)
從底層傳輸模式看,實(shí)時(shí)流式傳輸支持單播、廣播和多播。所謂多播是指數據源將IP數據包“盡力而為”地發(fā)送到共享相同IP地址的一個(gè)主機組中,然后利用網(wǎng)絡(luò )設備進(jìn)行相應的復制和分發(fā),只有屬于該組的成員才能接收到該數據包。顯然,對于網(wǎng)上視頻直播來(lái)說(shuō),因為大部分用戶(hù)接收的數據都是相同的,使用多播傳輸模式比點(diǎn)對點(diǎn)的數據包傳輸方式——單播和一點(diǎn)對所有主機的數據包傳輸方式——廣播,在節約網(wǎng)絡(luò )帶寬、減輕服務(wù)器負載和分布式網(wǎng)絡(luò )應用更容易實(shí)現等方面有著(zhù)明顯優(yōu)勢。
多播采用IANAIP地址分類(lèi)中的D類(lèi)地址,即范圍為224.0.0.0~239.255.255.255。在此基礎上,CERNET還進(jìn)一步將該地址空間劃分為4個(gè)管理域:Internet范圍、CERNET主干網(wǎng)、省網(wǎng)和校園網(wǎng),其中校園網(wǎng)的多播地址空間為239.251.192.0/18。
除此之外,要實(shí)現多播至少還要:(1)在主機與路由器之間部署管理組成員關(guān)系的Internet組管理協(xié)議(IGMP)。(2)在路由器之間部署轉發(fā)數據包的多播路由協(xié)議。一般來(lái)說(shuō),多播路由協(xié)議可以分為兩類(lèi):一種是密集模式,如DVMRP、PIM-DM、MOSPF等,比較適合于網(wǎng)絡(luò )帶寬充足、組成員分布密集的環(huán)境;一種是稀疏模式,如PIM-SM等,比較適合于網(wǎng)絡(luò )帶寬有限、組成員分布稀疏的情況。(3)為了有效抑制多播數據包在鏈路層的擴散,需要部署IGMPSnooping,它依靠偵聽(tīng)主機與路由器之間通信的IGMP報文將同一多播組的活動(dòng)成員映射為一個(gè)VLAN,在收到多播數據包后,僅向該多播組所對應的VLAN成員轉發(fā)。
3 系統的設計與實(shí)現
系統采用了Real公司RealSystem的流媒體系統,結合IP多播技術(shù),在客戶(hù)端/服務(wù)器模式下,構建了一個(gè)可供在線(xiàn)直播,視頻點(diǎn)播等服務(wù)的流媒體通信系統如圖1所示。由于TCP的慢啟動(dòng)特性和丟失重傳的可靠性保證,使得它并不適合流媒體傳輸,更不適合多播。當前大多數研究均是基于UDP的Multicast,而用RTP/RTCP作為信息反饋的框架。因此IP多播(IPMulticast)成為了最好的解決方法。
3.1 RealSystem流媒體系統
3.1.1 RealSystem的構成
Real公司的RealSystem流媒體系統是一種性能非常優(yōu)秀和非常穩定的系統,它在全球有很高的市場(chǎng)占有率。它采用的是一種高性能的自適應壓縮算法,生成獨特的RM格式文件,可以有很高的壓縮比率,并可以適應從56kbit/s到10Mbit/s以上帶寬的線(xiàn)路要求。Real公司的流媒體系統目前在實(shí)時(shí)網(wǎng)絡(luò )直播領(lǐng)域無(wú)人可以替代,有大量的實(shí)際方案可供選擇,而且可以適應各個(gè)平臺的操作系統。目前可以選擇的平臺有NT、Linux、Solaris、UNIX、AIX及Irix系統等,是目前支持平臺最多的一個(gè)系統,其工作原理如圖2所示。
評論