一种基于HLS的P2P点播方法及系统与流程

文档序号:12493178阅读:1015来源:国知局

本发明涉及互联网多媒体领域,具体涉及一种基于HLS的P2P点播方法和一种基于HLS的P2P点播系统。



背景技术:

随着HLS(HTTP LVIE STREAM,Apple公司的动态码率自适应技术)的流行,越来越多的流媒体系统开始使用这种技术,同时P2P(Peer-to-peer networking,对等网络)作为一种普及的组网技术,为了提高用户对于流媒体使用的体验,P2P系统也开始支持HLS格式的流媒体,但P2P系统一般都是以用户的终端设备,例如智能机顶盒、智能网关等作为P2P对等网络中一个节点的存储设备,该类存储设备普遍存在存储容量小,性能不足等问题,不符合现如今大数据便捷交互的需求。



技术实现要素:

针对现有技术中存在的缺陷,本发明的目的在于提供一种基于HLS的P2P点播方法和一种基于HLS的P2P点播系统,有效加快用户观看流媒体资源的速度。

为达到以上目的,本发明采取的技术方案是:包括:

步骤S1:拦截用户首次点播流媒体资源时向源站发出的HLS请求,调度服务器将流媒体资源的URL返回给用户,同时调度服务器基于HLS请求访问源站,将流媒体资源的完整HLS内容缓存至缓存服务器;

步骤S2:调度服务器选取多个存储节点,将缓存服务器中流媒体资源的完整HLS内容的TS分片分发至多个所述存储节点存储,并生成分发结果,所述分发结果为流媒体资源对应的完整HLS内容的各个TS分片与存储节点间的存储关系;

步骤S3:当用户向源站再次点播同一流媒体资源时,调度服务器基于分发结果,将该流媒体资源位于各个存储节点上的TS分片返回给用户。

在上述技术方案的基础上,所述用户通过流媒体客户端向源站发出HLS请求,且所述流媒体客户端中安装有拦截程序。

在上述技术方案的基础上,所述流媒体客户端为智能机顶盒或智能网关。

在上述技术方案的基础上,步骤S1具体为:

S1.1:用户首次点播某一流媒体资源并向源站发出HLS请求;

S1.2:拦截程序拦截HLS请求,并将该HLS请求发送至调度服务器;

S1.3:调度服务器将流媒体资源的URL返回给流媒体客户端,同时,调度服务器基于HLS请求访问源站,将流媒体资源对应的完整HLS内容缓存至缓存服务器。

在上述技术方案的基础上,HLS内容的TS分片为多个,且每个存储节点中存储一个或多个TS分片。

本发明还公开了一种基于HLS的P2P点播系统,包括:

流媒体客户端,其用于用户点播流媒体资源并向源站发出HLS请求,所述流媒体客户端还用于播放流媒体资源;

P2P插件,其用于拦截用户向源站发出的HLS请求;

缓存服务器和存储节点;

调度服务器,其用于根据HLS请求访问源站并将流媒体资源的URL返回给所述流媒体客户端,所述调度服务器还用于将流媒体资源对应的完整HLS内容缓存至缓存服务器,并将HLS内容的TS分片分发至存储节点存储,生成分发结果,以及将各个存储节点上的TS分片返回给用户,所述分发结果为流媒体资源对应的完整HLS内容的各个TS分片与存储节点间的存储关系。

在上述技术方案的基础上,所述流媒体客户端为智能机顶盒或智能网关。

在上述技术方案的基础上,所述流媒体资源对应的HLS内容的TS分片为多个,且每个存储节点中存储一个或多个TS分片。

与现有技术相比,本发明一种基于HLS的P2P点播方法优点在于:

(1)通过在智能机顶盒或智能网关中安装P2P插件,即拦截程序,实现HLS请求的劫持,可避免用户的流媒体客户端对URL改动,在用户无感知的情况下实现P2P的调度。

(2)当用户第一次点播某一流媒体资源时,调度服务器会将流媒体资源的URL返回给用户,供用户对流媒体资源的观看,同时对源站流媒体资源对应的HLS内容进行缓存和TS分片的分发,不影响用户对流媒体资源的观看。

(3)HLS分片储存在不同的存储节点上,有效实现存储节点的负载均衡,充分利用各个存储节点的存储能力,当该用户或其他用户再次点播该流媒体资源时,则将各个存储节点上的TS分片返回给用户,极大地加快用户观看流媒体资源的速度。

本发明的一种基于HLS的P2P点播系统的优点在于:在不影响用户使用的情况下对流媒体资源的HLS内容进行缓存和分发存储,从而当用户再次点播该同一流媒体资源时,流媒体资源对应的HLS内容的TS分片直接从多个缓存服务器中返回给用户,提高用户观看流媒体资源的速度。

附图说明

图1为本发明一种基于HLS的P2P点播方法的流程图。

具体实施方式

以下结合附图对本发明作进一步详细说明。

参见图1所示,本发明提供一种基于HLS的P2P点播方法,包括:

步骤S1:拦截用户首次点播某一流媒体资源时向源站发出的HLS请求,调度服务器将流媒体资源的URL返回给用户,同时调度服务器基于HLS请求访问源站,将流媒体资源对应的完整HLS内容缓存至缓存服务器。用户通过流媒体客户端向源站发出HLS请求,且流媒体客户端中安装有拦截程序,流媒体客户端为智能机顶盒或智能网关,即智能机顶盒或智能网关中安装有拦截程序。具体的:

S1.1:用户通过流媒体客户端首次点播某一流媒体资源,然后流媒体客户端向源站发出HLS请求。本实施例中,用户点播的流媒体资源的URL(Uniform Resource Locator,统一资源定位符)为http://srcip:srcport/01.m3u8

S1.2:流媒体客户端中拦截程序拦截HLS请求,并将该HLS请求发送至调度服务器。该步骤具体的为:拦截程序拦截HLS请求,对于http://srcip:srcport/01.m3u8,拦截程序将此URL劫持,并对流媒体客户端使用HTTP302进行回复,回复的指令为:Location:http://trackerIP:trackerPort?fvpxx=http://srcip:srcport/01.m3u8,流媒体客户端使用此指令再次发起请求,拦截程序根据指令中的trackerIP和trackerPort,将此指令重定向给给调度服务器,trackerIP和trackerPort为指令中的定位符。HTTP302为一种常见的状态码。

S1.3:调度服务器将流媒体资源的URL用HTTP302返回给流媒体客户端,使流媒体客户端对流媒体资源进行播放,同时,调度服务器基于HLS请求访问源站,将流媒体资源对应的完整HLS内容缓存至缓存服务器。

步骤S2:调度服务器选取多个存储节点,将缓存服务器中流媒体资源的完整HLS内容的TS分片分发至存储节点存储,并生成分发结果,TS分片为组成HLS内容的单元部分,HLS内容的TS分片为多个,且每个存储节点中存储一个或多个TS分片,分发结果为流媒体资源对应的完整HLS内容的各个TS分片与存储节点间的存储关系。

每个存储节点上都以文件形式存储了流媒体资源的TS分片,一个存储节点可以存储同一个流媒体资源的HLS内容的一个或多个TS分片,例如,存储节点1上存储了HLS内容的TS分片1和TS分片2,存储节点2上存储了HLS内容的TS分片3,根据HLS内容的TS分片分布于各个存储节点的情况,生成分发结果。存储节点的选择会基于存储节点当前的剩余存储容量,优先选择剩余存储容量较大的存储节点。

步骤S3:当用户向源站再次点播同一流媒体资源,调度服务器基于分发结果,将该流媒体资源位于各个存储节点上的TS分片返回给用户,即将流媒体资源的HLS内容的TS分片全返回给用户的流媒体客户端,以供用户播放,即客户端通过P2P协议实现了P2P出流。

通过在智能机顶盒或智能网关中安装P2P插件,即拦截程序,实现HLS请求的劫持,可避免用户的流媒体客户端对URL改动,在用户无感知的情况下实现P2P的调度。当用户第一次点播某一流媒体资源时,调度服务器会将流媒体资源的URL返回给用户,供用户对流媒体资源的观看,同时对源站流媒体资源对应的HLS内容进行缓存和TS分片的分发,不影响用户对流媒体资源的观看。HLS分片储存在不同的存储节点上,有效实现存储节点的负载均衡,充分利用各个存储节点的存储能力,当该用户或其他用户再次点播该流媒体资源时,则将各个存储节点上的TS分片返回给用户,极大地加快用户观看流媒体资源的速度。

本发明还公开一种基于上述方法的基于HLS的P2P点播系统,包括流媒体客户端、P2P插件、缓存服务器、存储节点和调度服务器,流媒体客户端用于用户点播流媒体资源并向源站发出HLS请求,流媒体客户端还用于播放流媒体资源,流媒体客户端一般为智能机顶盒或智能网关;P2P插件中安装有拦截程序,P2P插件用于拦截用户向源站发出的HLS请求;调度服务器用于根据HLS请求访问源站并将流媒体资源的URL返回给流媒体客户端,调度服务器还用于将流媒体资源对应的完整HLS内容缓存至缓存服务器,并将HLS内容的TS分片分发至存储节点存储,生成分发结果,以及将各个存储节点上的TS分片返回给用户,即当用户再次点播已经缓存过HLS内容的流媒体资源时,调度服务器基于分发结果,将流媒体资源在各个存储节点上的TS分片返回给用户,供用户播放观看。

流媒体资源对应的HLS内容的TS分片为多个,且每个存储节点中存储一个或多个TS分片,分发结果为流媒体资源对应的HLS内容的各个TS分片与存储节点间的存储关系。

该系统在不影响用户使用的情况下对流媒体资源的HLS内容进行缓存和分发存储,从而当用户再次点播该同一流媒体资源时,流媒体资源对应的HLS内容的TS分片直接从多个缓存服务器中返回给用户,提高用户观看流媒体资源的速度。

本发明不局限于上述实施方式,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围之内。本说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1