实现流媒体服务的方法、装置及系统制造方法及图纸

技术编号:7936858 阅读:170 留言:0更新日期:2012-11-01 07:28
本发明专利技术公开了实现流媒体服务的方法、装置及系统。本发明专利技术中,接收各客户端的注册消息,对各客户端进行注册;接收各注册客户端根据预先设置的时间周期上报的客户端能力信息,进行存储;接收客户端发送的流媒体数据下载请求,根据存储的各客户端上报的客户端能力信息,选取能够为请求流媒体数据下载的客户端提供所需下载流媒体数据的客户端,生成点对点P2P客户端列表;向发送流媒体数据下载请求的客户端返回P2P客户端列表,以使发送流媒体数据下载请求的客户端建立与P2P客户端列表中客户端的P2P连接,获取请求下载的流媒体数据。本发明专利技术降低客户端获取流媒体数据所需时间,并且节约服务器带宽,提高服务器端的并发处理能力。

【技术实现步骤摘要】

本专利技术涉及流媒体技术,尤其涉及一种实现流媒体服务的方法、装置及系统
技术介绍
近年来,随着网络宽带业务的快速发展,用户对于在数据网络环境下点播和观看音视频等多媒体的需求越来越迫切。流媒体技术作为在数据网上实时传输音、视频的主要方式,成为一种在数据网络上传递多媒体数据的主流技术,可以满足用户不断增长的点播和观看需求。流媒体技术是指在数据网络上为用户提供流媒体服务,实现按时间先后次序传输和播放的连续音、视频数据流的技术。也就是说,采用流媒体技术传输的数据流具有三个特点连续性、实时性以及时序性,即其传输的数据流具有严格的前后时序关系,这样,用户可 以在下载部分流媒体数据时,即可利用相应的播放器对下载的流媒体数据进行播放,剩余部分的流媒体数据将继续进行下载,直至播放完毕,而无需等到整个流媒体数据全部下载完毕后,才进行播放。其中,使用流媒体技术提供多媒体音视频服务、实现流媒体服务的系统称为流媒体服务系统。传统的流媒体服务系统一般采用客户端/服务器(C/S,Client/Server)模式,客户端与服务器通过实时流传输协议(RTSP, Real Time Streaming Protocol)进行通信,即用户通过客户端登录流媒体服务器,从流媒体服务器选取需要观看的节目,流媒体服务器根据一个或多个用户选取的同一节目,以单播或组播的方式依序将节目对应的流媒体数据推送给客户端,用户通过客户端播放依序接收的流媒体数据,以进行观看。由上述可见,流媒体服务器提供的流媒体数据可以被多个客户端接收,当点播的用户数量增加时,只需要增加流媒体服务器的带宽资源即可,但随着用户数量的不断增加,由于流媒体服务器的带宽资源相对是有限的,因而,流媒体服务器的网络带宽资源成为流媒体服务系统能够接纳用户数量、为更多用户提供流媒体服务的瓶颈。为了提高流媒体服务器能够接纳的用户数量以及网络带宽资源的利用效率,现有技术中,从流媒体服务器端考虑,可以采用更高压缩比的视频编码技术,使传输的流媒体数据量降低,或是,采用更高效的分发技术,例如,组播技术或者内容分发网络(CDN,ContentDelivery Network)技术来降低流媒体服务器的带宽消耗。但上述方案需要大量的硬件支持,使得实现流媒体服务的成本较高。随着点对点(P2P,Pear to Pear)技术的推广,为了降低流媒体服务的成本,P2P技术也被引入到流媒体服务系统中,客户端在从流媒体服务器下载流媒体数据的同时,也向其它客户端提供已下载的流媒体数据,并可从其它客户端获取尚未从流媒体服务器下载的流媒体数据,即流媒体服务器与各客户端组建为对等网络,各客户端之间使用P2P协议支持流媒体服务,从而分担流媒体服务器的流量,降低流媒体服务器的带宽压力,这样,无需在流媒体服务器端增加大量的硬件,从而达到降低流媒体服务成本的目的。图I为现有结合RTSP和P2P实现流媒体服务的方法流程示意图。参见图1,该流程包括步骤101,客户端采用RTSP连接流媒体服务器,获得流媒体数据初始部分,存放在内容缓冲区;步骤102,客户端在播放所述内容缓冲区数据的同时,采用P2P连接下载有该流媒体数据的其它客户端,从连接的其它客户端获取所述内容缓冲区中该流媒体数据未下载的后续部分,存放在内容缓冲区;本步骤中,客户端在将下载的流媒体数据存放在内容缓冲区,并将该内容缓冲区进行共享,以便其它客户端能够通过P2P进行连接,以获取共享的流媒体数据,避免从流媒体服务器获取全部流媒体数据,从而有效降低流媒体服务器的带宽资源压力。获取下载有该流媒体数据的其它客户端的信息,可以通过向流媒体服务系统中的 各客户端发送相应查询信息,根据接收的查询响应信息中包含的内容,确定其它客户端是否下载有该流媒体数据。步骤103,客户端清除内容缓冲区中播放过的流媒体数据,若内容缓冲区的剩余数据量小于第一门限值,则启动RTSP连接流媒体服务器,将流媒体数据的后续部分下载到内容缓冲区,若剩余数据量大于第二门限值,则终止RTSP下载。本步骤中,内容缓冲区的剩余数据量大于第二门限值,表明可以从其它客户端通过P2P连接获取所需的流媒体数据,这样,可以终止从流媒体服务器获取流媒体数据,以节约流媒体数据的带宽资源。由上述可见,现有结合RTSP和P2P实现流媒体服务的方法,客户端在获得流媒体数据初始部分的同时,采用P2P连接其它客户端,并获取该流媒体数据未下载的后续部分,提高了接入流媒体服务系统的用户数量,降低了流媒体服务器端的带宽压力。但是,用户从其它客户端得到P2P流媒体数据时,由于缺乏对其它客户端的控制,其它客户端无法保证P2P流媒体数据按顺序传送,使得其它客户端发送的流媒体数据相互之间具有重复现象,消耗了有效的带宽资源,降低了系统带宽资源的利用率,而用户正常播放节目需要按顺序获取流媒体数据码流,导致请求流媒体数据的客户端需要缓存不按顺序传输、以及重复传输的流媒体数据,并对缓存的流媒体数据进行解析,清除重复的流媒体数据,浪费了客户端的缓存资源量,增加了客户端用于处理缓存的流媒体数据的资源开销;进一步地,下载流媒体数据的客户端需要了解整个流媒体服务系统网络拓扑,以发送查询请求的方式,尝试与网络拓扑中的每个客户端(节点)进行连接,获取其它下载有该流媒体数据的客户端列表,然后再根据该客户端列表与相应其它客户端分别建立P2P连接,请求流媒体数据传输,使得从其它客户端获取流媒体数据所需的时间较长、启动速度较慢,且流媒体服务系统中传输的冗余消息多,消耗了有效的带宽资源,降低了带宽资源的利用率;而且,客户端之间彼此独立进行信息的交互,传输需要的流媒体数据,流媒体服务器无法获知当前下载客户端的状态,因而,需要为该客户端预留带宽资源,无法真正有效地提高流媒体服务器的带宽利用率,解决流媒体服务器的带宽瓶颈问题;此外,客户端自行控制P2P连接,流媒体服务器失去了对流媒体数据的控制,既不利于保障服务质量,也不利于流媒体数据传输的安全性,从而导致流媒体服务器在文件定位、客户端选择、容错以及安全机制方面存在很大的局限,尤其是安全领域的身份识别认证、授权、数据完整性、保密性和不可否认性等方面难于控制。例如,客户端由于无法获取整个流媒体服务概况信息,所以无法选择最优的其它客户端为其服务。同时,客户端需要根据门限值选择下载流媒体数据的流媒体服务器或其它客户端,需要在RTSP与P2P之间进行频繁切换,增加了客户端的实现复杂度。
技术实现思路
本专利技术的实施例提供一种实现流媒体服务的方法,降低客户端获取流媒体数据所需的时间、提高带宽资源的利用率。本专利技术的实施例还提供一种实现流 媒体服务的装置,降低客户端获取流媒体数据所需的时间、提高带宽资源的利用率。本专利技术的实施例还提供一种实现流媒体服务的系统,降低客户端获取流媒体数据所需的时间、提高带宽资源的利用率。为达到上述目的,本专利技术实施例提供的一种实现流媒体服务的方法,包括接收各客户端的注册消息,对各客户端进行注册;接收各注册客户端根据预先设置的时间周期上报的客户端能力信息,进行存储;接收客户端发送的流媒体数据下载请求,根据存储的各客户端上报的客户端能力信息,选取能够为请求流媒体数据下载的客户端提供所需下载流媒体数据的客户端,生成点对点P2P客户端列表;向发送本文档来自技高网
...

【技术保护点】
一种实现流媒体服务的方法,该方法包括接收各客户端的注册消息,对各客户端进行注册;接收各注册客户端根据预先设置的时间周期上报的客户端能力信息,进行存储;接收客户端发送的流媒体数据下载请求,根据存储的各客户端上报的客户端能力信息,选取能够为请求流媒体数据下载的客户端提供所需下载流媒体数据的客户端,生成点对点P2P客户端列表;向发送流媒体数据下载请求的客户端返回P2P客户端列表,以使发送流媒体数据下载请求的客户端建立与P2P客户端列表中客户端的P2P连接,获取请求下载的流媒体数据。

【技术特征摘要】
1.一种实现流媒体服务的方法,该方法包括 接收各客户端的注册消息,对各客户端进行注册; 接收各注册客户端根据预先设置的时间周期上报的客户端能力信息,进行存储;接收客户端发送的流媒体数据下载请求,根据存储的各客户端上报的客户端能力信息,选取能够为请求流媒体数据下载的客户端提供所需下载流媒体数据的客户端,生成点对点P2P客户端列表; 向发送流媒体数据下载请求的客户端返回P2P客户端列表,以使发送流媒体数据下载请求的客户端建立与P2P客户端列表中客户端的P2P连接,获取请求下载的流媒体数据。2.根据权利要求I所述的方法,进一步包括 流媒体服务器向发送流媒体数据下载请求的客户端下发流动消息,以使发送流媒体数据下载请求的客户端根据流动消息中携带的待传输的流媒体数据信息,传输所述待传输的流媒体数据。3.根据权利要求2所述的方法,所述注册消息包括注册用户的用户名信息、注册用户的网络地址信息以及注册流媒体服务器的位置信息。4.根据权利要求3所述的方法,所述客户端能力信息包括客户端缓存的流媒体数据信息,所述根据存储的各客户端上报的客户端能力信息,选取能够为请求流媒体数据下载的客户端提供所需流媒体数据的客户端包括 根据流媒体数据下载请求中携带的流媒体数据信息,匹配存储的各客户端能力信息中包含的客户端缓存的流媒体数据信息,获取匹配的客户端; 从匹配的客户端中,选取能够提供下载流媒体数据的客户端。5.根据权利要求4所述的方法,所述客户端能力信息进一步包括客户端的网络负载信息,所述从匹配的客户端中,选取能够提供下载流媒体数据的客户端包括 从匹配的客户端中,再根据客户端的网络负载信息,选取网络负载较轻的一个或多个客户端。6.一种实现流媒体服务的装置,其特征在于,该装置包括注册模块、客户端能力信息存储模块以及下载请求处理模块,其中, 注册模块,用于接收各客户端的注册消息,对各客户端进行注册; 客户端能力信息存储模块,用于接收各注册客户端根据预先设置的时间周期上报的客户端能力信息,进行存储; 下载请求处理模块,用于接收客户端发送的流媒体数据下载请求,根据存储的各客户端上报的客户端能力信息,选取能够为请求流媒体数据下载的客户端提供所需下载流媒体数据的客户端,生成点对点P2P客户端列表;向发送流媒体数据下载请求的客户端返回P2P客户端列表,以使发送流媒体数据下载请求的客户端建立与P2P客户端列表中客户端的P2P连接,获取请求下载的流媒体数据。7.根据权利要求6所述的装置,其特征在于,进一步包括 中间操作请求处理模块,用于接收客户端发送的流媒体数据中间操作请求,使用流动方法,通知与该客户端建立P2P连接的客户端,按照流媒体数据中间操作请求调整发送至该客户...

【专利技术属性】
技术研发人员:董琪朱立松
申请(专利权)人:青岛海信传媒网络技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1