流媒体网欢迎您!
全世界的网络联合起来,流媒体世界一定能实现!
 
   
IPTV | P2P流媒体 | 移动流媒体 | 数字家庭 | 流媒体宽频 | 网络流媒体 | 安防监控 | 视频会议 | VIP会员 | 新闻专题
 
 
 
您现在的位置: 流媒体网 >> 技术平台 >> 硬件 >> 技术正文
 
浅析流媒体电影服务器设计的高效化
作者:佚名  来源:eNet硅谷动力  发布时间:2007-12-6 19:00:39

【流媒体网】摘要:


1 引言

    随着网络技术的发展,主干网与宽带网接入技术的日臻成熟,网络视频的传输成为 Internet应用的一个亮点。为了提高视频数据在网上的传输效率,并实现视频的实时播放,流媒体技术的研究与应用得到了很大发展。

    其中,流媒体服务器技术在流媒体的应用中发挥了关键的作用。

    传统的网络传输数据的方法是文件下载:用户需要准备大量的磁盘空间,并花大量的时间等待下载结束。但是,当数据变成海量的视频数据时,在数据处理量大,数据吞吐量高,视频播放实时性,客户连接请求数目大,连接时间长等一些情况下,传统的服务器技术已经无法高效的满足要求。面对这样的技术要求,本文从 CPU调度,资源控制内存分配,I/O总线管理这三个方面出发,综合的给出了一种高效的服务器设计方法,从而有效的提高了视频流式传输时的效率。该方法也具有很强的可扩展性,当服务器的CPU数目增加时,服务器的性能将能得到成倍的增长。

2 流媒体服务器的设计

2.1 流媒体服务器的功能

    流媒体在播放前不是完全下载整个文件,而是把开始部分内容存入内存,数据流是随时传送随时播放。

    流媒体服务器提供的流式传输方式有两种:顺序流式传输和实时流式传输两种方式。顺序流式传输是顺序下载,在下载文件的同时用户可观看在线媒体。实时流式传输与顺序流式传输不同,实时流式传输总是实时传送,特别适合现场事件。实时流式传输必须匹配连接带宽,这意味着图像质量会因网络速度降低而变差。

    在流式传输时,流媒体数据具有实时性,等时性等基本特点,流服务期和客户终端要保证各种媒体间的同步关系,因此,流媒体传输对“最大延时”,“延时抖动”等QoS参数都有严格要求。

2.2 流媒体服务器协议栈的设计

    在TCP/IP参考模型中,传输层通信协议TCP和UDP都不能满足流媒体传输的QoS要求。由于TCP协议采用滑动窗口控制机制,数据传送随着流控窗口动态的启动和关闭,难以满足流媒体实时和等时的传送要求。UDP协议的无连接特点能够提高传输速率,虽然可以在某种程度上满足流媒体的实时性要求,但是由于其本身的不可靠性,也无法满足流媒体传输的需要。

    针对传输层协议的矛盾,为了实现流媒体在IP上的实时传送播放,设计流媒体服务器时需要在传输层协议(TCP/UDP)和应用层之间增加一个通信控制层。在增加的通信控制层,采用相应的实时传输协议,主要有:数据流部分的实时传输协议RTP(Real-time Transport Protocol),用于控制部分的实时传输控制协议RTCP(Real-time Transport图1 流媒体服务协议栈Streaming Protocol)。RTP协议主要是用来传送实时的流媒体信息,数据报主要包括多媒体数据,以及所携带负载的时间戳,顺序号等。RTCP协议的数据报主要包括了接收者收到某个多媒体流的服务质量信息,用于对服务器端的反馈。

    当服务器收到RTSP请求,它首先产生RTSP请求对象。服务器通过RTSP协议的应答信息将请求的内容以流会话(streaming session)的形式描述,内容包括数据流包含多少个流、媒体类型、和编解码格式。一个流会话由一个或多个数据流组成,如视频流和音频流等。实际的数据流通过RTP协议传递到客户端。RTP在一对一或一对多的传输情况下工作,其目的是提供时间信息和实现流同步。RTP本身并不能为顺序传送数据包提供可靠的传送机制,它依靠RTCP一起提供流量控制和拥塞控制服务。在RTP会话期间,各连接者监视下层网络的性能,并将相关信息放入RTCP包,周期性地传送 RTCP包来通知发送方。发送方也可以用RTCP包提供每次的会话信息,包中含有已发送的数据包的数量、丢失的数据包的数量等统计资料。因此,服务器可以利用这些信息动态地改变传输速率,甚至改变有效载荷类型。RTP和RTCP配合使用,因有效的反馈和最小的开销使传输效率最佳化。
 
 
2.3 高效流媒体服务器的设计

    通过流媒体服务器的协议栈的设计,可以明确流媒体服务器是在传输层协议(TCP,UDP)上解释RTP,RTCP,RTSP协议的,所有的客户连接请求都是以TCP的端口获得的,流媒体数据也都是打成RTP包,通过UDP端口发出去的,因此,对于TCP,UDP端口事件的调度以及如何把大量的流媒体数据从磁盘空间传递到网络上成为制约流媒体服务器性能的主要因素。

流媒体服务器面对一个单一的客户,完成的过程如下:

1)在客户端发出RTSP连接请求后,服务器通过对TCP端口的监听,读入请求。

2)解析请求内容,调入相应的流媒体文件。

3)形成RTP包,分发数据流包,获得RTCP包。

4)数据包发送完毕,关闭连接。

[1] [2] 下一页

责任编辑:sand


发表评论】【告诉好友】【打印此文】【关闭窗口收藏此页到365Key   
  • 上一篇技术:
  • 下一篇技术: 没有了
  •  
    相关新闻
    全球互联网带宽2年内将耗尽 危言耸听?
    网络转型迎接下一代网络NGN
    ASON多播的信令技术研究
    星盈科技助流媒体网络建立存储系统
    流媒体系统提升政府网站信息传播能力