CN105847264A - 一种提供流媒体服务的方法和系统 - Google Patents
一种提供流媒体服务的方法和系统 Download PDFInfo
- Publication number
- CN105847264A CN105847264A CN201610201045.4A CN201610201045A CN105847264A CN 105847264 A CN105847264 A CN 105847264A CN 201610201045 A CN201610201045 A CN 201610201045A CN 105847264 A CN105847264 A CN 105847264A
- Authority
- CN
- China
- Prior art keywords
- streaming media
- information
- data
- elected
- media server
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/65—Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1014—Server selection for load balancing based on the content of a request
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/238—Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
- H04N21/2387—Stream processing in response to a playback request from an end-user, e.g. for trick-play
Abstract
本发明实施例公开了一种提供流媒体服务的方法和系统,所述方法包括:接收到终端发送的流媒体服务请求后,确定所述终端所请求的流媒体服务;根据所述终端所请求的流媒体服务,生成相应的策略文件,其中包括:当选的,以及至少一个备选的流媒体服务器的地址和路径信息,用以指示所述终端与所述当选或备选的流媒体服务器连接获取流媒体服务;将所述策略文件向所述终端返回。应用本发明,可以使得终端的用户获取流媒体服务时减少延时,提高流媒体服务的实时性。
Description
技术领域
本发明实施例涉及流媒体技术领域,特别是涉及一种提供流媒体服务的方法和系统。
背景技术
流媒体是指采用流式传输的方式在互联网进行播放的媒体格式,如音频、视频或多媒体文件。流媒体技术能够广泛应用于多媒体新闻发布、在线直播、网络广告、电子商务、视频点播、远程教育、网络电台、实时视频会议等,它丰富了传统互联网内容的表现形式,赋予宽带应用更多的娱乐性和互动性。
随着宽带的普及,流媒体应用得到了快速发展。传统的由互联网内容提供商(ICP)直接提供流媒体服务的方式无法满足大量用户访问的情况。为解决该问题,目前采用流媒体服务器集群的方式满足大量用户的点播或直播需求。
在流媒体服务器集群中包括一台调度服务器,以及若干个流媒体服务器。用户的终端以请求/响应方式与调度服务器进行通信;调度服务器接收到终端的请求后,根据用户终端的IP地址,各流媒体服务器的IP地址、负载情况、服务状态、网络情况,CPU、内存等情况,按一定策略原则选择一个流媒体服务器,以重定向方式将该终端连接到选择的流媒体服务器;流媒体服务器以RSTP方式具体处理终端的服务请求。
虽然,上述方法有助于解决大量用户访问的情况,并以负载均衡的方式调配终端用户的访问需求至合适的流媒体服务器,然而,本发明的发明人发现,Z复杂多变的网络状况下现有技术会出现延时较大的情况,降低终端获取流媒体服务的实时性:
在实际应用中,网络状态并非稳定不变。由于互联网中接入的设备繁多,状态不一,终端连接到流媒体服务器后经常会出现网络不稳定的情况,从而导致接收或上传数据出错,甚至连接断开。此时,用户的终端不得不重新向调度服务器发送请求,调度服务器根据出错情况进行决策,并发相应指令给终端;或者为终端重新选择流媒体服务器。此时,一方面终端与调度服务器之间进行交互、调度服务器重新决策的过程会增加获取流媒体服务过程中的延时;另一方面,当网络不稳定时众多的用户终端需要与调度服务器频繁交互,导致调度服务器负载过大而延迟响应。
发明内容
有鉴于此,本发明的目的在于提出一种提供流媒体服务的方法和系统,使得终端的用户获取流媒体服务时减少延时,提高流媒体服务的实时性。
基于上述目的,本发明实施例提供的一种提供流媒体服务的方法,包括:
接收到终端发送的流媒体服务请求后,确定所述终端所请求的流媒体服务;
根据所述终端所请求的流媒体服务,生成相应的策略文件,其中包括:当选的,以及至少一个备选的流媒体服务器的地址和路径信息,用以指示所述终端与所述当选或备选的流媒体服务器连接获取流媒体服务;
将所述策略文件向所述终端返回。
进一步,所述策略文件中还包括:所述当选的,以及备选的流媒体服务器所支持的通讯协议、数据格式。
较佳地,所述终端所请求的流媒体服务具体为下载流媒体数据的服务,以及所述策略文件中还包括:
所述当选的,以及备选的流媒体服务器中定义的如下至少一个参数:数据分片信息、大小、校验总数、解包方式、防盗链及解密相关信息。
进一步,所述策略文件中还包括:防盗链或数据校验失败后的重新下载或丢弃的指示信息。
较佳地,所述终端所请求的流媒体服务具体为上传流媒体数据的服务,以及所述策略文件中还包括:
所述当选的,以及备选的流媒体服务器的如下至少一个数据上传相关信息:
上传的数据拆分打包规则信息、上传的路由信息及数据负载分配策略信息、协同上传策略信息、参与协同的流媒体服务器的设备信息。
在本发明实施例的另一方面,还提供了一种提供流媒体服务的方法,包括:
向调度服务器发送流媒体服务请求,并接收所述调度服务器返回的策略文件;其中,所述策略文件包括:当选的,以及至少一个备选的流媒体服务器的地址和路径信息;
根据所述策略文件,与所述当选的流媒体服务器连接获取流媒体服务;以及在与该流媒体服务器连接异常时,与所述备选的流媒体服务器之一连接,继续获取所述流媒体服务。
进一步,所述策略文件中还包括:所述当选的,以及备选的流媒体服务器所支持的通讯协议、数据格式;以及
所述与所述当选的流媒体服务器连接具体为:
根据所述当选的流媒体服务器所支持的通讯协议、数据格式与该流媒体服务器连接。
较佳地,所述流媒体服务具体为下载流媒体数据的服务,以及所述策略文件中还包括:
所述当选的,以及备选的流媒体服务器中定义的如下至少一个参数:
数据分片信息、大小、校验总数、解包方式、防盗链及解密相关信息;以及
所述获取所述流媒体服务包括:
所述终端根据所述策略文件中记载的所述当选的、或备选的流媒体服务器定义的参数下载流媒体数据。
较佳地,所述策略文件中还包括:防盗链或数据校验失败后的重新下载或丢弃的指示信息;以及
所述获取所述流媒体服务还包括:
所述终端在下载流媒体数据的过程中,若检测到防盗链或数据校验失败的情况,则根据所述策略文件中的指示信息重新下载数据包,或选择丢弃该数据包继续下载下一个数据包。
较佳地,所述流媒体服务具体为上传流媒体数据的服务,以及所述策略文件中还包括:
所述当选的,以及备选的流媒体服务器的如下至少一个数据上传相关信息:
上传的数据拆分打包规则信息、上传的路由信息及数据负载分配策略信息、协同上传策略信息、参与协同的流媒体服务器的设备信息;以及
所述获取所述流媒体服务包括:
所述终端根据所述策略文件中所述当选的、或备选的流媒体服务器的数据上传相关信息上传流媒体数据。
在本发明实施例的另一方面,还提供了一种调度服务器,包括:
请求信息处理模块,用于接收到终端发送的流媒体服务请求后,确定所述终端所请求的流媒体服务;
策略文件生成模块,用于根据所述终端所请求的流媒体服务,生成相应的策略文件,其中包括:当选的,以及至少一个备选的流媒体服务器的地址和路径信息,用以指示所述终端与所述当选或备选的流媒体服务器连接获取流媒体服务;
策略文件发送模块,用于将所述策略文件向所述终端返回。
进一步,所述策略文件还包括至少如下一种信息:
所述当选的,以及备选的流媒体服务器所支持的通讯协议、数据格式及相关参数;
所述当选的,以及备选的流媒体服务器中定义的数据分片信息、大小、校验总数、解包方式、防盗链及解密相关信息;
防盗链或数据校验失败后的重新下载或丢弃的指示信息;
所述当选的,以及备选的流媒体服务器的上传的数据拆分打包规则信息、上传的路由信息及数据负载分配策略信息、协同上传策略信息、参与协同的流媒体服务器的设备信息。
在本发明实施例的另一方面,还提供了一种终端,包括:
请求发送模块,用于向调度服务器发送流媒体服务请求,并接收所述调度服务器返回的策略文件;其中,所述策略文件包括:当选的,以及至少一个备选的流媒体服务器的地址和路径信息;
服务获取模块,用于根据所述策略文件,与所述当选的流媒体服务器连接获取流媒体服务;以及在与该流媒体服务器连接异常时,与所述备选的流媒体服务器之一连接,继续获取所述流媒体服务。
进一步,所述策略文件还包括至少如下一种信息:
所述当选的,以及备选的流媒体服务器所支持的通讯协议、数据格式及相关参数;
所述当选的,以及备选的流媒体服务器中定义的数据分片信息、大小、校验总数、解包方式、防盗链及解密相关信息;
防盗链或数据校验失败后的重新下载或丢弃的指示信息;
所述当选的,以及备选的流媒体服务器的上传的数据拆分打包规则信息、上传的路由信息及数据负载分配策略信息、协同上传策略信息、参与协同的流媒体服务器的设备信息。
本发明实施例的技术方案中,由于终端向调度服务器发送流媒体服务器请求后,调度服务器向终端返回的策略文件包含当选的,以及至少一个备选的流媒体服务器的地址和路径信息,使得终端可以根据策略文件从当选的流媒体服务器获取流媒体服务,还可以在与该流媒体服务器之间数据传输错误,甚至连接断开等情况下,自动根据策略文件中备选的流媒体服务器的信息,与备选流媒体服务器进行连接,继续获取流媒体服务。在此过程中,终端不需要再次向调度服务器发送请求、等待调度服务器的决策及响应。终端在流媒体任务执行过程中一方面节省了与调度服务器之间交互的时间、调度服务器重新决策的时间;另一方面,当网络不稳定时众多的用户终端需要与调度服务器频繁交互,避免调度服务器负载过大。
附图说明
图1为本发明实施例的提供流媒体服务的系统架构图;
图2为本发明实施例的提供流媒体服务的方法流程图;
图3为本发明实施例的调度服务器内部结构框图;
图4为本发明实施例的终端内部结构框图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
需要说明的是,本发明实施例中所有使用“第一”和“第二”的表述均是为了区分两个相同名称非相同的实体或者非相同的参量,可见“第一”“第二”仅为了表述的方便,不应理解为对本发明实施例的限定,后续实施例对此不再一一说明。
本发明实施例的技术方案中,终端向调度服务器发送流媒体服务器请求后,调度服务器根据终端所请求的流媒体服务,不但选择出合适的流媒体服务,还为终端备选其它的流媒体服务器,并将选择的和备选的流媒体服务器的地址和路径信息记载到为终端生成的策略文件中,将策略文件向终端返回。终端可以根据策略文件中的信息与选择的流媒体服务器连接,获取流媒体服务;如果因网络原因导致终端与流媒体服务器之间数据传输错误,甚至连接断开等情况,终端则自动根据策略文件中备选流媒体的信息,自动与备选流媒体服务器进行连接,继续获取流媒体服务。在此过程中,终端不需要再次向调度服务器发送请求、等待调度服务器的决策及响应。终端在流媒体任务执行过程中一方面节省了与调度服务器之间交互的时间、调度服务器重新决策的时间;另一方面,当网络不稳定时众多的用户终端需要与调度服务器频繁交互,避免调度服务器负载过大。
下面结合附图详细说明本发明的技术方案。
本发明实施例的一种提供流媒体服务的系统,架构如图1所示,包括:调度服务器101、若干个流媒体服务器102、用户的终端103。
其中,调度服务器101用于根据终端103发送的流媒体服务请求生成策略文件后向终端103返回;其中所述策略文件中包括:当选的,以及至少一个备选的流媒体服务器102的地址和路径信息;进一步,所述策略文件中还可以包括:所述当选的,以及备选的流媒体服务器所支持的通讯协议、数据格式及相关参数。
进一步,当调度服务器101确定终端103所请求的流媒体服务具体为下载流媒体数据的服务,则生成的策略文件中还可以包括:所述当选的,以及备选的流媒体服务器中定义的如下至少一个参数:数据分片信息、大小、校验总数、解包方式、防盗链及解密相关信息,以及防盗链或数据校验失败后的重新下载或丢弃的指示信息。
进一步,当调度服务器101确定终端103所请求的流媒体服务具体为上传流媒体数据的服务,则生成的策略文件中还可以包括:所述当选的,以及备选的流媒体服务器的如下至少一个数据上传相关信息:上传的数据拆分打包规则信息、上传的路由信息及数据负载分配策略信息、协同上传策略信息、参与协同的流媒体服务器的设备信息。
终端103用于根据所述策略文件与所述当选的流媒体服务器连接获取流媒体服务;以及在与该流媒体服务器连接异常时,与所述备选的流媒体服务器102之一连接,继续获取所述流媒体服务。
具体地,终端103向发送的流媒体服务请求,并接收返回的策略文件后,根据所述策略文件与所述当选的流媒体服务器连接获取流媒体服务;以及在与该流媒体服务器连接异常时,与所述备选的流媒体服务器102之一连接,继续获取所述流媒体服务。终端具体可以根据所述当选的,以及备选的流媒体服务器所支持的通讯协议、数据格式,与当选或备选的流媒体服务器连接。
进一步,当终端103所请求的流媒体服务具体为下载流媒体数据的服务,调度服务器101返回的策略文件中还可以包括:所述当选的,以及备选的流媒体服务器中定义的如下至少一个参数:数据分片信息、大小、校验总数、解包方式、防盗链及解密相关信息;相应地,终端103可以根据所述策略文件中记载的所述当选的、或备选的流媒体服务器定义的参数下载流媒体数据。如果策略文件中还包括:防盗链或数据校验失败后的重新下载或丢弃的指示信息;那么,终端103在下载流媒体数据的过程中,若检测到防盗链或数据校验失败的情况,则可以根据所述策略文件中的指示信息重新下载数据包,或选择丢弃该数据包继续下载下一个数据包;而不必向调度服务器发送请求或咨询。
进一步,当终端103所请求的流媒体服务具体为上传流媒体数据的服务,调度服务器101返回的策略文件中还可以包括:所述当选的,以及备选的流媒体服务器的如下至少一个数据上传相关信息:上传的数据拆分打包规则信息、上传的路由信息及数据负载分配策略信息、协同上传策略信息、参与协同的流媒体服务器的设备信息;;相应地,终端103可以根据所述策略文件中所述当选的、或备选的流媒体服务器的数据上传相关信息上传流媒体数据。
具体地,本发明实施例的系统提供流媒体服务的具体方法,流程如图2所示,包括如下步骤:
步骤S201:终端103向调度服务器101发送流媒体服务请求。
步骤S202:调度服务器101根据终端103发送的流媒体服务请求生成策略文件。
本步骤中,调度服务器101根据终端103发送的流媒体服务请求,确定终端103所请求的流媒体服务。调度服务器101根据终端103所请求的流媒体服务、终端的IP地址,各流媒体服务器102的IP地址、负载情况、服务状态、网络情况,CPU、内存等情况,按一定策略原则选择一个流媒体服务器,并进一步再备选至少一个也可以提供该流媒体服务的其它流媒体服务,以供终端在于当选的流媒体服务连接出现异常时,可以更换到其它流媒体服务。
进而,调度服务器101为该终端103生成一个策略文件,并在策略文件中记载调度服务器101当前选择的流媒体服务器(简称当选的流媒体服务器),以及至少一个备选的流媒体服务器的地址和路径信息。
更优地,策略文件中还可以包括更多的信息和动作指令,比如某连接断掉的处理策略,出错后的处理指令信息等。比如,策略文件中还可以包括:所述当选的,以及备选的流媒体服务器所支持的通讯协议、数据格式。
更优地,在调度服务器101确定终端103所请求的流媒体服务具体为下载流媒体数据的服务的情况下,调度服务器101生成的策略文件中还可以包括:所述当选的,以及备选的流媒体服务器中定义的如下至少一个参数:数据分片信息、大小、校验总数、解包方式、防盗链及解密相关信息,以及防盗链或数据校验失败后的重新下载或丢弃的指示信息;从而更好地指导终端从流媒体服务下载流媒体数据。
更优地,在调度服务器101确定终端103所请求的流媒体服务具体为上传流媒体数据的服务的情况下,调度服务器101生成的策略文件中还可以包括:所述当选的,以及备选的流媒体服务器的如下至少一个数据上传相关信息:上传的数据拆分打包规则信息、上传的路由信息及数据负载分配策略信息、协同上传策略信息、参与协同的流媒体服务器的设备信息。
具体地,调度服务器101可以一种策略描述语言在策略文件中记载信息。例如,采用与HLS的M3U8格式的描述语言相类似,但是包含的信息和指令更为丰富的一种策略描述语言,其用文本方式进行描述,由一系列标签组成;这种语言可以指定终端中的播放器如何去下载分片的流媒体数据,以及是否需要再次请求后续的媒体文件和请求的频率等动作指令信息。
例如,调度服务器101生成的一个策略文件中记载的信息如下:
#AEL-VERSION:0.1
#参数区
#AEL-分发开始
#数据源节点:http://119.188.122.6
#中继节点A::http://119.188.122.65
#中继节点B::http://119.188.122.66
#边缘节点A::http://119.188.122.67
#边缘节点B::http://119.188.122.68
#边缘节点C::http://119.188.122.69
#推送方式:订阅方式
#传输格式:标准流方式
#传输协议:HTTP
#RingBuffer大小:30
#P2P协议:pplite,rtmfp
#AEL-分发结束
其中,包括了当选、多个备选流媒体服务器(节点)的IP地址,以及流媒体服务器的传输格式、协议等相关信息。
显然,本领域技术人员可以根据本发明上述的描述,设计出其它各种格式的策略描述语言,以实现本发明实施例的策略文件用以为终端提供信息和指令的功能。
步骤S203:调度服务器101向终端103返回策略文件。
步骤S204:终端103解析策略文件。
步骤S205:终端103根据策略文件的解析结果获取流媒体服务。
本步骤中,终端103根据所述策略文件的解析结果,与所述当选的流媒体服务器连接获取流媒体服务;以及在与该流媒体服务器连接异常时,与所述备选的流媒体服务器之一连接,继续获取所述流媒体服务。更优地,终端可以根据策略文件中所述当选的或备选的流媒体服务器所支持的通讯协议、数据格式,与当选的、或备选的流媒体服务器连接。
更优地,若策略文件中还包括:所述当选的,以及备选的流媒体服务器中定义的如下至少一个参数:数据分片信息、大小、校验总数、解包方式、防盗链及解密相关信息;则终端103可以根据所述策略文件中记载的所述当选的、或备选的流媒体服务器定义的参数下载流媒体数据。从而免去终端为获取流媒体服务器定义的参数而与调度服务器进行交互的过程,进一步减小了终端获取流媒体服务的延时。
更优地,若策略文件中还包括:防盗链或数据校验失败后的重新下载或丢弃的指示信息;则终端103可以在下载流媒体数据的过程中,若检测到防盗链或数据校验失败的情况,则根据所述策略文件中的指示信息重新下载数据包,或选择丢弃该数据包继续下载下一个数据包。从而免去终端在检测到防盗链或数据校验失败的情况下与与调度服务器交互的过程,进一步减小了终端获取流媒体服务的延时。
更优地,若所述策略文件中还包括:所述当选的,以及备选的流媒体服务器的如下至少一个数据上传相关信息:上传的数据拆分打包规则信息、上传的路由信息及数据负载分配策略信息、协同上传策略信息、参与协同的流媒体服务器的设备信息;则终端103可以根据所述策略文件中所述当选的、或备选的流媒体服务器的数据上传相关信息上传流媒体数据。从而免去终端为获取流媒体服务器的数据上传相关信息而与调度服务器进行交互的过程,进一步减小了终端获取流媒体服务的延时。
本发明实施例的技术方案中,由于终端向调度服务器发送流媒体服务器请求后,调度服务器向终端返回的策略文件包含当选的,以及至少一个备选的流媒体服务器的地址和路径信息,使得终端可以根据策略文件从当选的流媒体服务器获取流媒体服务,还可以在与该流媒体服务器之间数据传输错误,甚至连接断开等情况下,自动根据策略文件中备选的流媒体服务器的信息,与备选流媒体服务器进行连接,继续获取流媒体服务。在此过程中,终端不需要再次向调度服务器发送请求、等待调度服务器的决策及响应。终端在流媒体任务执行过程中一方面节省了与调度服务器之间交互的时间、调度服务器重新决策的时间;另一方面,当网络不稳定时众多的用户终端需要与调度服务器频繁交互,避免调度服务器负载过大。
如图3所示,本发明实施例的调度服务器的一种内部结构,包括如下模块:请求信息处理模块301、策略文件生成模块302、策略文件发送模块303。
请求信息处理模块301用于接收到终端发送的流媒体服务请求后,确定所述终端所请求的流媒体服务;
策略文件生成模块302用于根据请求信息处理模块301确定的所述终端所请求的流媒体服务,生成相应的策略文件,其中包括:当选的,以及至少一个备选的流媒体服务器的地址和路径信息,用以指示所述终端与所述当选或备选的流媒体服务器连接获取流媒体服务;进一步,所述策略文件还可以包括:所述当选的,以及备选的流媒体服务器所支持的通讯协议、数据格式。所述策略文件进一步还可以包括:所述当选的,以及备选的流媒体服务器中定义的如下至少一个参数:数据分片信息、大小、校验总数、解包方式、防盗链及解密相关信息,以及防盗链或数据校验失败后的重新下载或丢弃的指示信息。或者,所述策略文件进一步还可以包括:所述当选的,以及备选的流媒体服务器的如下至少一个数据上传相关信息:上传的数据拆分打包规则信息、上传的路由信息及数据负载分配策略信息、协同上传策略信息、参与协同的流媒体服务器的设备信息。
策略文件发送模块303用于将策略文件生成模块302生成的策略文件向所述终端返回。
如图4所示,本发明实施例的终端的一种内部结构,包括如下模块:请求发送模块401、服务获取模块402。
请求发送模块401用于向调度服务器103发送流媒体服务请求,并接收调度服务器103返回的策略文件。
服务获取模块402用于根据请求发送模块401接收的策略文件,与所述当选的流媒体服务器连接获取流媒体服务;以及在与该流媒体服务器连接异常时,与所述备选的流媒体服务器之一连接,继续获取所述流媒体服务。具体地,服务获取模块402解析所述策略文件,并根据解析结果与所述当选的流媒体服务器连接获取流媒体服务;以及在与该流媒体服务器连接异常时,与所述备选的流媒体服务器之一连接,继续获取所述流媒体服务。
进一步,若策略文件中还包括所述当选的或备选的流媒体服务器所支持的通讯协议、数据格式,则服务获取模块402具体可以根据当选的或备选的流媒体服务器所支持的通讯协议、数据格式,与当选的、或备选的流媒体服务器连接。
进一步,服务获取模块402还可以根据策略文件中所述当选的,以及备选的流媒体服务器中定义的如下至少一个参数:数据分片信息、大小、校验总数、解包方式、防盗链及解密相关信息,下载流媒体数据。
进一步,服务获取模块402还可以根据策略文件中防盗链或数据校验失败后的重新下载或丢弃的指示信息,在下载流媒体数据的过程中,若检测到防盗链或数据校验失败的情况,则根据所述策略文件中的指示信息重新下载数据包,或选择丢弃该数据包继续下载下一个数据包。
或者,服务获取模块402还可以根据策略文件中所述当选的,以及备选的流媒体服务器的如下至少一个数据上传相关信息:上传的数据拆分打包规则信息、上传的路由信息及数据负载分配策略信息、协同上传策略信息、参与协同的流媒体服务器的设备信息,向流媒体服务器上传流媒体数据。
本发明实施例的技术方案中,由于终端向调度服务器发送流媒体服务器请求后,调度服务器向终端返回的策略文件包含当选的,以及至少一个备选的流媒体服务器的地址和路径信息,使得终端可以根据策略文件从当选的流媒体服务器获取流媒体服务,还可以在与该流媒体服务器之间数据传输错误,甚至连接断开等情况下,自动根据策略文件中备选的流媒体服务器的信息,与备选流媒体服务器进行连接,继续获取流媒体服务。在此过程中,终端不需要再次向调度服务器发送请求、等待调度服务器的决策及响应。终端在流媒体任务执行过程中一方面节省了与调度服务器之间交互的时间、调度服务器重新决策的时间;另一方面,当网络不稳定时众多的用户终端需要与调度服务器频繁交互,避免调度服务器负载过大。
进一步,终端还可以根据所述策略文件中记载的所述当选的、或备选的流媒体服务器定义的参数下载流媒体数据。从而免去终端为获取流媒体服务器定义的参数而与调度服务器进行交互的过程,进一步减小了终端获取流媒体服务的延时。
进一步,终端可以在下载流媒体数据的过程中,若检测到防盗链或数据校验失败的情况,还可以根据所述策略文件中的指示信息重新下载数据包,或选择丢弃该数据包继续下载下一个数据包。从而免去终端在检测到防盗链或数据校验失败的情况下与与调度服务器交互的过程,进一步减小了终端获取流媒体服务的延时。
进一步,终端可以根据所述策略文件中所述当选的、或备选的流媒体服务器的数据上传相关信息上传流媒体数据。从而免去终端为获取流媒体服务器的数据上传相关信息而与调度服务器进行交互的过程,进一步减小了终端获取流媒体服务的延时。
本技术领域技术人员可以理解,本发明包括涉及用于执行本申请中所述操作中的一项或多项的设备。这些设备可以为所需的目的而专门设计和制造,或者也可以包括通用计算机中的已知设备。这些设备具有存储在其内的计算机程序,这些计算机程序选择性地激活或重构。这样的计算机程序可以被存储在设备(例如,计算机)可读介质中或者存储在适于存储电子指令并分别耦联到总线的任何类型的介质中,所述计算机可读介质包括但不限于任何类型的盘(包括软盘、硬盘、光盘、CD-ROM、和磁光盘)、ROM(Read-OnlyMemory,只读存储器)、RAM(Random Access Memory,随即存储器)、EPROM(Erasable Programmable Read-Only Memory,可擦写可编程只读存储器)、EEPROM(Electrically Erasable Programmable Read-Only Memory,电可擦可编程只读存储器)、闪存、磁性卡片或光线卡片。也就是,可读介质包括由设备(例如,计算机)以能够读的形式存储或传输信息的任何介质。
本技术领域技术人员可以理解,可以用计算机程序指令来实现这些结构图和/或框图和/或流图中的每个框以及这些结构图和/或框图和/或流图中的框的组合。本技术领域技术人员可以理解,可以将这些计算机程序指令提供给通用计算机、专业计算机或其他可编程数据处理方法的处理器来实现,从而通过计算机或其他可编程数据处理方法的处理器来执行本发明公开的结构图和/或框图和/或流图的框或多个框中指定的方案。
本技术领域技术人员可以理解,本发明中已经讨论过的各种操作、方法、流程中的步骤、措施、方案可以被交替、更改、组合或删除。进一步地,具有本发明中已经讨论过的各种操作、方法、流程中的其他步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。进一步地,现有技术中的具有与本发明中公开的各种操作、方法、流程中的步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本公开的范围(包括权利要求)被限于这些例子;在本发明的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本发明的不同方面的许多其它变化,为了简明它们没有在细节中提供。因此,凡在本发明的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (15)
1.一种提供流媒体服务的方法,其特征在于,包括:
接收到终端发送的流媒体服务请求后,确定所述终端所请求的流媒体服务;
根据所述终端所请求的流媒体服务,生成相应的策略文件,其中包括:当选的,以及至少一个备选的流媒体服务器的地址和路径信息,用以指示所述终端与所述当选或备选的流媒体服务器连接获取流媒体服务;
将所述策略文件向所述终端返回。
2.根据权利要求1所述的方法,其特征在于,所述策略文件中还包括:所述当选的,以及备选的流媒体服务器所支持的通讯协议、数据格式。
3.根据权利要求1或2所述的方法,其特征在于,所述终端所请求的流媒体服务具体为下载流媒体数据的服务,以及所述策略文件中还包括:
所述当选的,以及备选的流媒体服务器中定义的如下至少一个参数:数据分片信息、大小、校验总数、解包方式、防盗链及解密相关信息。
4.根据权利要求3所述的方法,其特征在于,所述策略文件中还包括:防盗链或数据校验失败后的重新下载或丢弃的指示信息。
5.根据权利要求1或2所述的方法,其特征在于,所述终端所请求的流媒体服务具体为上传流媒体数据的服务,以及所述策略文件中还包括:
所述当选的,以及备选的流媒体服务器的如下至少一个数据上传相关信息:
上传的数据拆分打包规则信息、上传的路由信息及数据负载分配策略信息、协同上传策略信息、参与协同的流媒体服务器的设备信息。
6.一种提供流媒体服务的方法,其特征在于,包括:
向调度服务器发送流媒体服务请求,并接收所述调度服务器返回的策略文件;其中,所述策略文件包括:当选的,以及至少一个备选的流媒体服务器的地址和路径信息;
根据所述策略文件,与所述当选的流媒体服务器连接获取流媒体服务;以及在与该流媒体服务器连接异常时,与所述备选的流媒体服务器之一连接,继续获取所述流媒体服务。
7.根据权利要求6所述的方法,其特征在于,所述策略文件中还包括:所述当选的,以及备选的流媒体服务器所支持的通讯协议、数据格式;以及
所述与所述当选的流媒体服务器连接具体为:
根据所述当选的流媒体服务器所支持的通讯协议、数据格式与该流媒体服务器连接。
8.根据权利要求6或7所述的方法,其特征在于,所述流媒体服务具体为下载流媒体数据的服务,以及所述策略文件中还包括:
所述当选的,以及备选的流媒体服务器中定义的如下至少一个参数:
数据分片信息、大小、校验总数、解包方式、防盗链及解密相关信息;以及
所述获取所述流媒体服务包括:
所述终端根据所述策略文件中记载的所述当选的、或备选的流媒体服务器定义的参数下载流媒体数据。
9.根据权利要求8所述的方法,其特征在于,所述策略文件中还包括:防盗链或数据校验失败后的重新下载或丢弃的指示信息;以及
所述获取所述流媒体服务还包括:
所述终端在下载流媒体数据的过程中,若检测到防盗链或数据校验失败的情况,则根据所述策略文件中的指示信息重新下载数据包,或选择丢弃该数据包继续下载下一个数据包。
10.根据权利要求6或7所述的方法,其特征在于,所述流媒体服务具体为上传流媒体数据的服务,以及所述策略文件中还包括:
所述当选的,以及备选的流媒体服务器的如下至少一个数据上传相关信息:
上传的数据拆分打包规则信息、上传的路由信息及数据负载分配策略信息、协同上传策略信息、参与协同的流媒体服务器的设备信息;以及
所述获取所述流媒体服务包括:
所述终端根据所述策略文件中所述当选的、或备选的流媒体服务器的数据上传相关信息上传流媒体数据。
11.一种调度服务器,其特征在于,包括:
请求信息处理模块,用于接收到终端发送的流媒体服务请求后,确定所述终端所请求的流媒体服务;
策略文件生成模块,用于根据所述终端所请求的流媒体服务,生成相应的策略文件,其中包括:当选的,以及至少一个备选的流媒体服务器的地址和路径信息,用以指示所述终端与所述当选或备选的流媒体服务器连接获取流媒体服务;
策略文件发送模块,用于将所述策略文件向所述终端返回。
12.根据权利要求11所述的服务器,其特征在于,所述策略文件还包括至少如下一种信息:
所述当选的,以及备选的流媒体服务器所支持的通讯协议、数据格式及相关参数;
所述当选的,以及备选的流媒体服务器中定义的数据分片信息、大小、校验总数、解包方式、防盗链及解密相关信息;
防盗链或数据校验失败后的重新下载或丢弃的指示信息;
所述当选的,以及备选的流媒体服务器的上传的数据拆分打包规则信息、上传的路由信息及数据负载分配策略信息、协同上传策略信息、参与协同的流媒体服务器的设备信息。
13.一种终端,其特征在于,包括:
请求发送模块,用于向调度服务器发送流媒体服务请求,并接收所述调度服务器返回的策略文件;其中,所述策略文件包括:当选的,以及至少一个备选的流媒体服务器的地址和路径信息;
服务获取模块,用于根据所述策略文件,与所述当选的流媒体服务器连接获取流媒体服务;以及在与该流媒体服务器连接异常时,与所述备选的流媒体服务器之一连接,继续获取所述流媒体服务。
14.根据权利要求13所述的终端,其特征在于,所述策略文件还包括至少如下一种信息:
所述当选的,以及备选的流媒体服务器所支持的通讯协议、数据格式及相关参数;
所述当选的,以及备选的流媒体服务器中定义的数据分片信息、大小、校验总数、解包方式、防盗链及解密相关信息;
防盗链或数据校验失败后的重新下载或丢弃的指示信息;
所述当选的,以及备选的流媒体服务器的上传的数据拆分打包规则信息、上传的路由信息及数据负载分配策略信息、协同上传策略信息、参与协同的流媒体服务器的设备信息。
15.一种提供流媒体服务的系统,包括多个流媒体服务器,其特征在于,还包括:权利要求11或12所述调度服务器和权利要求13或14所述终端。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610201045.4A CN105847264A (zh) | 2016-03-31 | 2016-03-31 | 一种提供流媒体服务的方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610201045.4A CN105847264A (zh) | 2016-03-31 | 2016-03-31 | 一种提供流媒体服务的方法和系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105847264A true CN105847264A (zh) | 2016-08-10 |
Family
ID=56597745
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610201045.4A Pending CN105847264A (zh) | 2016-03-31 | 2016-03-31 | 一种提供流媒体服务的方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105847264A (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107734360A (zh) * | 2017-09-15 | 2018-02-23 | 深圳英飞拓科技股份有限公司 | 流媒体服务器的控制方法及装置 |
CN108040261A (zh) * | 2017-12-22 | 2018-05-15 | 广州酷狗计算机科技有限公司 | 网络直播的管理方法、装置及存储介质 |
CN108322449A (zh) * | 2018-01-09 | 2018-07-24 | 武汉斗鱼网络科技有限公司 | 一种防止视频流被盗用的方法、存储介质、设备及系统 |
CN110392071A (zh) * | 2018-04-18 | 2019-10-29 | 网宿科技股份有限公司 | 流媒体资源的上传、下载方法、分发系统及流媒体服务器 |
CN110417886A (zh) * | 2019-07-29 | 2019-11-05 | 广州竞远安全技术股份有限公司 | 一种综合业务的负载均衡方法、装置及系统 |
CN111131272A (zh) * | 2019-12-27 | 2020-05-08 | 广州酷狗计算机科技有限公司 | 流服务器的调度方法、装置及系统、计算设备、存储介质 |
WO2021000379A1 (zh) * | 2019-07-02 | 2021-01-07 | 网宿科技股份有限公司 | 一种网络数据调度方法及边缘节点 |
CN112565832A (zh) * | 2021-01-05 | 2021-03-26 | 北京创世云科技股份有限公司 | 一种流媒体发布系统和方法 |
CN112788367A (zh) * | 2020-12-30 | 2021-05-11 | 杭州海康威视系统技术有限公司 | 流媒体调度方法、系统及调度组件 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002058394A2 (en) * | 2001-01-19 | 2002-07-25 | Streamworks Technologies, Inc. | System and method for managing media |
CN101068339A (zh) * | 2007-06-01 | 2007-11-07 | 华为技术有限公司 | 一种视频点播类业务的实现方法、服务器及客户端 |
CN105245939A (zh) * | 2015-08-07 | 2016-01-13 | 北京市空越技术有限公司 | 基于http代理的移动流媒体离线缓存系统及方法 |
-
2016
- 2016-03-31 CN CN201610201045.4A patent/CN105847264A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002058394A2 (en) * | 2001-01-19 | 2002-07-25 | Streamworks Technologies, Inc. | System and method for managing media |
CN101068339A (zh) * | 2007-06-01 | 2007-11-07 | 华为技术有限公司 | 一种视频点播类业务的实现方法、服务器及客户端 |
CN105245939A (zh) * | 2015-08-07 | 2016-01-13 | 北京市空越技术有限公司 | 基于http代理的移动流媒体离线缓存系统及方法 |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107734360B (zh) * | 2017-09-15 | 2020-04-21 | 深圳英飞拓科技股份有限公司 | 流媒体服务器的控制方法及装置 |
CN107734360A (zh) * | 2017-09-15 | 2018-02-23 | 深圳英飞拓科技股份有限公司 | 流媒体服务器的控制方法及装置 |
CN108040261A (zh) * | 2017-12-22 | 2018-05-15 | 广州酷狗计算机科技有限公司 | 网络直播的管理方法、装置及存储介质 |
CN108040261B (zh) * | 2017-12-22 | 2020-06-30 | 广州酷狗计算机科技有限公司 | 网络直播的管理方法、装置及存储介质 |
CN108322449A (zh) * | 2018-01-09 | 2018-07-24 | 武汉斗鱼网络科技有限公司 | 一种防止视频流被盗用的方法、存储介质、设备及系统 |
CN110392071B (zh) * | 2018-04-18 | 2021-06-22 | 网宿科技股份有限公司 | 流媒体资源的上传、下载方法、分发系统及流媒体服务器 |
CN110392071A (zh) * | 2018-04-18 | 2019-10-29 | 网宿科技股份有限公司 | 流媒体资源的上传、下载方法、分发系统及流媒体服务器 |
US11316910B2 (en) | 2018-04-18 | 2022-04-26 | Wangsu Science & Technology Co., Ltd. | Method for uploading and downloading streaming media resources, distribution system and streaming media server |
WO2021000379A1 (zh) * | 2019-07-02 | 2021-01-07 | 网宿科技股份有限公司 | 一种网络数据调度方法及边缘节点 |
CN110417886A (zh) * | 2019-07-29 | 2019-11-05 | 广州竞远安全技术股份有限公司 | 一种综合业务的负载均衡方法、装置及系统 |
CN111131272A (zh) * | 2019-12-27 | 2020-05-08 | 广州酷狗计算机科技有限公司 | 流服务器的调度方法、装置及系统、计算设备、存储介质 |
CN112788367A (zh) * | 2020-12-30 | 2021-05-11 | 杭州海康威视系统技术有限公司 | 流媒体调度方法、系统及调度组件 |
CN112788367B (zh) * | 2020-12-30 | 2023-03-24 | 杭州海康威视系统技术有限公司 | 流媒体调度方法、系统及调度组件 |
CN112565832B (zh) * | 2021-01-05 | 2021-06-15 | 北京创世云科技股份有限公司 | 一种流媒体发布系统和方法 |
CN112565832A (zh) * | 2021-01-05 | 2021-03-26 | 北京创世云科技股份有限公司 | 一种流媒体发布系统和方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105847264A (zh) | 一种提供流媒体服务的方法和系统 | |
CN103339901B (zh) | 内容导向网络环境中的终端和中间节点以及终端和中间节点的通信方法 | |
CN106031130B (zh) | 具有边缘代理的内容传送网络架构 | |
US8732239B2 (en) | System and method for providing multimedia wireless messages across a broad range and diversity of networks and user terminal display equipment | |
US9204180B2 (en) | Method, server and terminal for audio and video on demand | |
CN102238137B (zh) | 一种下载方法、系统和装置 | |
CN102158424B (zh) | 利用发布和订阅机制的消息传输系统 | |
US20050201290A1 (en) | Method and system for finding a friend in a social network | |
CN107707926A (zh) | 一种直播流传输方法、装置和系统 | |
CN107181804B (zh) | 资源的下载方法和装置 | |
CN104854838A (zh) | 用于向客户端设备分发视听内容的系统和方法 | |
CN104980427A (zh) | 用于内容中心网络中的简单的服务发现的系统和方法 | |
EP2454867A1 (en) | Providing content by using a social network | |
KR101783431B1 (ko) | 크라우드 펀딩 시스템을 통해 엔터테인먼트 관련 펀딩 정보 및 컨설팅 정보를 제공하는 방법 | |
CN113300955B (zh) | 内容分发网络中节点间路径确定方法、系统及设备 | |
CN108683668A (zh) | 内容分发网络中的资源校验方法、装置、存储介质及设备 | |
CN108200444B (zh) | 一种视频直播的方法、装置和系统 | |
CN109964467A (zh) | 用于辅助数据流传输的基于节点类型的控制 | |
CN104660547B (zh) | 一种实现远距离通信的服务平台 | |
CN110719221A (zh) | 即时通信方法、装置、设备及存储介质 | |
CN105376292A (zh) | 基于名称的转发中的显式策略反馈 | |
CN108055577A (zh) | 一种直播交互方法、系统、装置及电子设备 | |
Jahromi et al. | NFV and SDN-based cost-efficient and agile value-added video services provisioning in content delivery networks | |
CN106775952A (zh) | 一种安卓应用的进程管理方法和装置 | |
CN106792261B (zh) | 用于流媒体转发的方法及装置、路由方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20160810 |