EDN China > 设计实例 > 通信 > IPTV/VOIP > 正文
? 2016博客大赛-不限主题,寻找电子导师,大奖升级??

基于IP多播视频系统的设计与实现

电信工程技术与标准化 朱晓梅 郭宇明 牛立君?? 2011年09月21日 ?? 收藏0

  摘要:本文着重介绍了流媒技术及其底层传输技术——IP多播。基于校园网设计并实现了一个可供网络现场直播、视频点播等服务的视频通信系统,系统中结合了多播技术中节约带宽、减轻服务器负载的优势,并采用了Real公司RealSystem流媒体系统,在客户端/服务器模式下完成。

  1 流媒体技术

  所谓流媒体是指采用流式传输方式在Internet播放媒体文件,即将整个音频、视频等连续媒体文件经过压缩后,由服务器向用户计算机连续和实时传送。用户只需经过几秒或几十秒的启动延时即可进行播放和观看,剩余部分将在后台继续下载,边下载边播放。实现流式传输有两种方法:实时流式传输(Real times treaming)和顺序流式传输(Progressive streaming)。其中实时流式传输需要专用的流媒体服务器与传输协议(如实时传输协议RTP、实时传输控制协议RTCP、实时流协议RTSP和媒体服务器协议MMS等)来保证媒体信号带宽与网络连接匹配,使媒体可被实时观看到,特别适合用于现场直播。

  目前支持流媒体技术的解决方案主要有RealNet works公司的RealSystem,Microsoft公司的Windows MediaTechnology和Apple公司的QuickTime。

  2 多播技术

  从底层传输模式看,实时流式传输支持单播、广播和多播。所谓多播是指数据源将IP数据包“尽力而为”地发送到共享相同IP地址的一个主机组中,然后利用网络设备进行相应的复制和分发,只有属于该组的成员才能接收到该数据包。显然,对于网上视频直播来说,因为大部分用户接收的数据都是相同的,使用多播传输模式比点对点的数据包传输方式——单播和一点对所有主机的数据包传输方式——广播,在节约网络带宽、减轻服务器负载和分布式网络应用更容易实现等方面有着明显优势。

  多播采用IANAIP地址分类中的D类地址,即范围为224.0.0.0~239.255.255.255。在此基础上,CERNET还进一步将该地址空间划分为4个管理域:Internet范围、CERNET主干网、省网和校园网,其中校园网的多播地址空间为239.251.192.0/18。

  除此之外,要实现多播至少还要:(1)在主机与路由器之间部署管理组成员关系的Internet组管理协议(IGMP)。(2)在路由器之间部署转发数据包的多播路由协议。一般来说,多播路由协议可以分为两类:一种是密集模式,如DVMRP、PIM-DM、MOSPF等,比较适合于网络带宽充足、组成员分布密集的环境;一种是稀疏模式,如PIM-SM等,比较适合于网络带宽有限、组成员分布稀疏的情况。(3)为了有效抑制多播数据包在链路层的扩散,需要部署IGMPSnooping,它依靠侦听主机与路由器之间通信的IGMP报文将同一多播组的活动成员映射为一个VLAN,在收到多播数据包后,仅向该多播组所对应的VLAN成员转发。

  3 系统的设计与实现

  系统采用了Real公司RealSystem的流媒体系统,结合IP多播技术,在客户端/服务器模式下,构建了一个可供在线直播,视频点播等服务的流媒体通信系统如图1所示。由于TCP的慢启动特性和丢失重传的可靠性保证,使得它并不适合流媒体传输,更不适合多播。当前大多数研究均是基于UDP的Multicast,而用RTP/RTCP作为信息反馈的框架。因此IP多播(IPMulticast)成为了最好的解决方法。

流媒体通信系统

  3.1 RealSystem流媒体系统

  3.1.1 RealSystem的构成

  Real公司的RealSystem流媒体系统是一种性能非常优秀和非常稳定的系统,它在全球有很高的市场占有率。它采用的是一种高性能的自适应压缩算法,生成独特的RM格式文件,可以有很高的压缩比率,并可以适应从56kbit/s到10Mbit/s以上带宽的线路要求。Real公司的流媒体系统目前在实时网络直播领域无人可以替代,有大量的实际方案可供选择,而且可以适应各个平台的操作系统。目前可以选择的平台有NT、Linux、Solaris、UNIX、AIX及Irix系统等,是目前支持平台最多的一个系统,其工作原理如图2所示。

工作原理

  3.1.2 RealSystem中使用的通道和协议

  在Real公司的Server端使用两种通道与客户端软件Realplayer通信:一种是控制通道,用来传输诸如“暂停”、“向前”等命令,使用TCP协议;另一个是数据通道,用来传输实际的媒体数据,使用UDP协议。如图2所示,在RealSystem中,通信过程可分为如下两部分。


上一页12下一页
?? ?? ??


打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮

1.扫描左侧二维码
2.点击右上角的分享按钮
3.选择分享给朋友
?? ??

流媒体? IP多播? RealSystem? UDP?

相关文章

我来评论
美国的游客
美国的游客 ??? (您将以游客身份发表,请登录 | 注册)
?
有问题请反馈