一种转发流媒体的方法

文档序号:7969373阅读:181来源:国知局
专利名称:一种转发流媒体的方法
技术领域
本发明属于多媒体技术领域,涉及一种根据客户端请求实现流媒体数据 动态转发的方法。
背景技术
随着网络技术的发展, 一种新的媒体技术应运而生,这就是流媒体技术。 流媒体是指在网络中使用流式传输技术的连续时基媒体,如音频、视频或多 媒体文件。流服务可以给用户提供持续不断的音视频流,满足用户在线观看 动态影音的需求,因此,流媒体技术在媒体点播领域和媒体直播领域得到极 大的应用。
此类流^f某体系统通常采用c/s (客户端/服务器)架构,而作为流服务的
提供者服务器是系统的应用瓶颈。为緩解流媒体服务器的压力,在流媒体系
统引入转发服务器Relay来分担流媒体服务器的负载,Relay服务器緩存流 女某体服务器上的流媒体数据,这样一部分用户可以通过访问Relay服务器来 访问流媒体服务器的数据。
目前,Relay服务器通常采用 一种静态Relay的过程,在Relay服务之前, Relay服务器通常先与源服务器建立流媒体连接,并在Relay服务器保存媒 体源参数文件(通常是气SDP文件,遵循会话描述协议SDP),流媒体客户 端访问Relay服务器的参数配置文件,通过实时流协议RTSP/会话描述协议 SDP/实时传输协议RTP/实时传输控制协议RTCP获取媒体源的媒体数据。 这种Relay方法存在以下缺点
新增加或者修改了系统Relay的媒体源设置,系统需要更新参数保存文 件后重新启动;
Relay服务器需要先与媒体源建立流连接,然后才能为流媒体客户端提 供服务。也就是说,不论有无客户端访问,Relay服务器都需要与媒体源建 立连接,这造成了网络资源的浪费,也增加了 Relay服务器的负担。

发明内容
本发明要解决的技术问题是提供一种动态转发流i某体的方法,不仅能够 根据客户端的请求转发相关的媒体源数据,而且节省了网络资源,减轻了 Relay服务器的负担。
为了解决上述问题,本发明提出了一种动态转发流4某体的方法,应用于 包括编码器、转发服务器和监控终端的转发流+某体系统,包括以下步骤
(1) 监控终端向转发服务器发送转发流请求;
(2) 转发服务器收到监控终端发出的转发流请求后,建立与转发源编 码器的流媒体会话;
(3 )转发服务器将緩存的转发媒体源编码器的媒体数据发送给监控终端。
其中,所述监控终端可以向转发服务器发送实时流协议RTSP请求,所 述RTSP请求中包括描述监控终端的请求信息RTSPDescribe请求。
其中,所述RTSP请求中还可以包含附加控制信息,所述信息内容有转 发服务器的互联网协议IP地址,编码器的唯一性标记,传输控制协议TCP 指定转发服务器与转发源间传输数据的方式,编码器的IP地址,编码器提 供的rtsp服务端口以及向编码器请求的具体内容。
其中,转发服务器还可以判断是否已与转发源编码器建立连接,如杲是, 直接执行步骤(3),否则,执行以下操作
(210 )转发服务器根据收到的RTSP Describe请求,解析出新的RTSP 请求,并利用新的RTSP请求,向转发々某体源编码器请求流々某体数据,建立 与转发媒体源的会话,保存会话描述协议SDP信息和接收到的流媒体数据;
(220 )转发服务器将与转发J(某体源编码器的会话SDP信息,作为客户 端RTSP Describe请求的响应发送给监控终端; (230)监控终端接收到RTSP Describe请求的响应后,继续与转发服务 器建立流媒体会话。
其中,所述转发服务器还可以将会话SDP信息保存在本地文件中,一 旦系统重启,通过读取本地文件获取信息;或直接将该SDP信息保存在内 存中,在系统重启后不需要再获取。
其中,当有多个监控终端请求同一个转发源,并且与转发源的连接已建 立,转发服务器还可以直接将转发源的数据发送给监控终端。
其中,转发服务器还可以判断请求转发媒体源的监控终端数目,如果编 码器的监控终端数目为0,则流媒体服务器自动断开与编码器的连接。
其中,转发服务器可以向监控终端转发实时传输协议RTP/实时传输控 制协议RTCP/文件传输协议ftp/超文本传输协议http网络传输协议传送的数 据,还传输RTP/RTCP在用户数据报协议UDP和传输控制协议TCP类型上 的数据。
与现有技术相比,本发明方法将两条独立的流连接合并为一条流连接, 客户端可以与Relay服务器通过一次流媒体会话获取转发媒体源数据,不仅 能够根据客户端的请求转发相关的媒体源数据,而且节省了网络资源,减轻 了 Relay服务器的负担。
附困说明
图l是实施例中转发流媒体的系统框图。 图2是实施例中转发流媒体的操作流程图。
具体实施例方式


图1所示为转发流^(某体的系统,所述系统包括编码器、基站系统BSS、 分组数据服务节点PDSN、 Relay服务器、监控终端和网络,其中
所述编码器用于响应流媒体请求并提供流媒体数据,包括基站側编码器 与网络侧编码器,其中,基站侧编码器与基站系统相连,用于移动网络环境
中;网络侧编码器与internet相连,用于固网环境中;
所述基站系统BSS、分组数据服务节点PDSN和Relay服务器依次相连, 进行双向传输,基站系统BSS和分組数据服务节点PDSN提供基站侧编码 器与Relay服务器之间发送请求与接收数据;
Relay服务器用于通过移动网络/固定网络向转发:&某体源的编码器请求 流媒体数据,建立与转发媒体源的会话,保存会话的SDP信息和接收到的 流媒体数据;
所述监控终端用于与Relay服务器进行流媒体请求的发送和数据接收, 包括移动终端/固定终端,其中,基站侧监控终端为移动终端,通过BSS和 PDSN与Relay服务器相连;所述网络侧监控终端为固定终端,通过移动网 络/固定网络与Relay服务器相连;当固定终端通过Relay服务器请求网络侧 的编码器数据,固定终端与Relay服务器的流媒体通过UDP传输,网络侧 编码器与Relay服务器流媒体通过TCP传输(遵循rtspt协议,即RTP/RTCP over TCP方式);
图2所示为转发流媒体的操作,包括以下步骤
步骤201,监控终端向Relay服务器发送包含转发媒体源信息的RTSP
请求;
流请求格式遵循标准的rtsp流请求格式,由服务器与客户端统一确定的 即可,在流请求中可以附加控制信息。本实施中流请求为rtsp: 〃<RelaySvr ip>/<codec guid>.sdp; Method = TCP; <Codec IP>; <rtsp port>;<URL>;...
其中,<RelaySvr ip〉为Relay服务器的IP地址,<codec guid〉为编码器 的唯一性标记,Method表明TCP指定Relay服务器与转发源间通过 RTP/RTCP over TCP方式传输数据,<Code IP〉为编码器的IP地址,<rtsp port〉为编码器提供的rtsp服务端口, 〈URL〉为向编码器请求的具体内容, 可以为空。
步骤202, Relay服务器收到监控终端发出的转发流请求后,判断是否 已与转发源编码器建立连接,如果是,直接执行步骤205,否则,执行步骤
203;
根据RTSP标准协议,Relay服务器首先会收到RTSP Describe请求, Describe请求中包含客户端的请求信息。Relay服务器分析请求信息,解析 出客户端所要求的转发媒体源信息,并组成新的RTSP请求rtspt:〃<codec ip>:<rtsp port〉/〈URL〉…,
其中,rtspt表明请求采用RTP/RTCP over TCP的方式传输数据。例如, RTSP:Z/转发媒体源IP:转发媒体源服务端口/转发媒体源路径。
步骤203, Relay服务器利用解析出来的新的RTSP请求,向转发^某体 源编码器请求流媒体数据,建立与转发媒体源的会话,保存会话的SDP信 息和接收到的流媒体数据;
Relay服务器与转发媒体源建立基于RTP/RTCP over TCP的会话,此过 程为标准过程可以参考rfc 2326文档《RFC 2326 - Real Time Streaming Protocol (RTSP)》。
Relay服务器在此过程中需保存与转发源编码器的SDP信息,保存会话 SDP信息的方法有两种 一是将该信息保存在本地文件中, 一旦系统重启, 可以通过读取本地文件获取信息;另一种是直接将该SDP信息保存在内存 中,这种方式在系统重启后不需要再获取。
步骤204, Relay服务器将与转发媒体源编码器的会话SDP信息,作为 客户端RTSP Describe请求的响应发送给监控终端;
步骤205,监控终端接收到RTSP Describe请求的响应后,遵循RTSP 标准协议RTP/RTCP over UDP的要求,继续通过RTSP Setup、 RTSP Play 方法与Relay服务器建立RTSP/SDP/RTP/RTCP流媒体会话;
通过简单变形,Relay服务器也可以动态转发使用ftp/http等其他网络传 输协议传送的数据,并且适用于RTP/RTCP over TCP类型的数据传输方式。
Relay流服务器可以根据流请求的内容,将两种不同数据传输类型的流 合并为一条流。
步骤206, Relay服务器与客户端的流媒体会话建立后,Relay服务器将 緩存的转发Jf某体源编码器的媒体数据发送给监控终端,这样监控终端就能访
问转发媒体源编码器的媒体数据;
当有多个客户端请求同 一个转发源时,如果与转发源的连接已建立, Relay服务器直接将转发源的数据发送给客户端即可,不需要与转发源再建 立新的流连接,节省网络带宽。
Relay服务器可以通过判断请求转发媒体源的客户端数目来管理流传 输,当编码器的客户端数目为0时,流媒体服务器自动断开与编码器的连接, 等待新的客户端的请求到来时重复步骤201的动作。
需要说明的是,上述方法可以用于移动网络和固定网络中,所述操作过 程相同,可以独立于具体的网络环境中,也可以由固定终端向移动网络侧发 起流媒体传输请求。
当然,本发明还可有其他多种实施例,在不背离本发明精神及其实质的 情况下,熟悉本领域的技术人员可根据本发明作出各种相应的改变和变形, 但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
权利要求
1、一种转发流媒体的方法,应用于包括编码器、转发服务器和监控终端的转发流媒体系统,包括以下步骤(1)监控终端向转发服务器发送转发流请求;(2)转发服务器收到监控终端发出的转发流请求后,建立与转发源编码器的流媒体会话;(3)转发服务器将缓存的转发媒体源编码器的媒体数据发送给监控终端。
2、 如权利要求l所迷方法,其特征在于,所述步骤(l)包括监控终端向转发服务器发送实时流协议RTSP请求,所述RTSP请求中 包括描述监控终端的请求信息RTSP Describe请求。
3、 如权利要求2所述方法,其特征在于,所述步骤(l)还包括所述RTSP请求中还包含附加控制信息,所述信息内容有转发服务器的 互联网协议IP地址,编码器的唯一性标记,传输控制协议TCP指定转发服 务器与转发源间传输数据的方式,编码器的IP地址,编码器提供的rtsp服 务端口以及向编码器请求的具体内容。
4、 如权利要求1或2所述方法,其特征在于,所述步骤(2)包括转发服务器判断是否已与转发源编码器建立连接,如果是,直接执行步 骤(3),否则,执行以下操作(210 )转发服务器根据收到的RTSP Describe请求,解析出新的RTSP 请求,并利用新的RTSP请求,向转发媒体源编码器请求流媒体数据,建立 与转发媒体源的会话,保存会话描述协议SDP信息和接收到的流^某体数据;(220)转发服务器将与转发媒体源编码器的会话SDP信息,作为客户 端RTSP Describe请求的响应发送给监控终端;(230)监控终端接收到RTSP Describe请求的响应后,继续与转发服务 器建立流媒体会话。
5、 如权利要求4所述方法,其特征在于,所述步骤(210)包括 所述转发服务器将会话SDP信息保存在本地文件中, 一旦系统重启, 通过读取本地文件获取信息;或直接将该SDP信息保存在内存中,在系统 重启后不需要再获取。
6、 如权利要求l所述方法,其特征在于,所述步骤(3)还包括当有多个监控终端请求同一个转发源,并且与转发源的连接已建立,转 发服务器直接将转发源的数据发送给监控终端。
7、 如权利要求l所述方法,其特征在于,所述步骤(3)还包括转发服务器判断请求转发媒体源的监控终端数目,如果编码器的监控终 端数目为0,则流媒体服务器自动断开与编码器的连接。
8、 如权利要求l所述方法,其特征在于,所述步骤(3)包括-.转发服务器向监控终端转发实时传输协议RTP/实时传输控制协议 RTCP/文件传输协议ftp/超文本传输协议http网络传输协议传送的数据,还 传输RTP/RTCP在用户数据报协议UDP和传输控制协议TCP类型上的数 据。
全文摘要
本发明提出了一种动态转发流媒体的方法,包括以下步骤(1)监控终端向转发服务器发送转发流请求;(2)转发服务器收到监控终端发出的转发流请求后,建立与转发源编码器的流媒体会话;(3)转发服务器将缓存的转发媒体源编码器的媒体数据发送给监控终端。本发明方法将两条独立的流连接合并为一条流连接,客户端可以与转发服务器通过一次流媒体会话获取转发媒体源数据,不仅能够根据客户端的请求转发相关的媒体源数据,而且节省了网络资源,减轻了转发服务器的负担。
文档编号H04L12/56GK101179480SQ20061013809
公开日2008年5月14日 申请日期2006年11月7日 优先权日2006年11月7日
发明者琰 刘, 夏正勋, 晔 王 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1