CN106789956B - 一种基于hls的p2p点播方法及*** - Google Patents

一种基于hls的p2p点播方法及*** Download PDF

Info

Publication number
CN106789956B
CN106789956B CN201611087016.6A CN201611087016A CN106789956B CN 106789956 B CN106789956 B CN 106789956B CN 201611087016 A CN201611087016 A CN 201611087016A CN 106789956 B CN106789956 B CN 106789956B
Authority
CN
China
Prior art keywords
hls
streaming media
media resource
user
fragment
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.)
Active
Application number
CN201611087016.6A
Other languages
English (en)
Other versions
CN106789956A (zh
Inventor
杭义进
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
WUHAN FONSVIEW TECHNOLOGY Co Ltd
Original Assignee
WUHAN FONSVIEW TECHNOLOGY Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by WUHAN FONSVIEW TECHNOLOGY Co Ltd filed Critical WUHAN FONSVIEW TECHNOLOGY Co Ltd
Priority to CN201611087016.6A priority Critical patent/CN106789956B/zh
Publication of CN106789956A publication Critical patent/CN106789956A/zh
Application granted granted Critical
Publication of CN106789956B publication Critical patent/CN106789956B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1074Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
    • H04L67/1078Resource delivery mechanisms
    • H04L67/108Resource delivery mechanisms characterised by resources being split in blocks or fragments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本发明涉及互联网多媒体领域,公开了一种基于HLS的P2P点播方法,包括:步骤S1:拦截用户首次点播流媒体资源时向源站发出的HLS请求,调度服务器将流媒体资源的URL返回给用户,同时调度服务器基于HLS请求访问源站,将流媒体资源的完整HLS内容缓存至缓存服务器;步骤S2:调度服务器选取多个存储节点,将缓存服务器中流媒体资源的完整HLS内容的TS分片分发至多个所述存储节点存储,并生成分发结果;步骤S3:当用户向源站再次点播同一流媒体资源时,调度服务器基于分发结果,将该流媒体资源位于各个存储节点上的TS分片返回给用户。本发明还公开了一种基于HLS的P2P点播***。本发明能够有效加快用户观看流媒体资源的速度。

Description

一种基于HLS的P2P点播方法及***
技术领域
本发明涉及互联网多媒体领域,具体涉及一种基于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分片直接从多个缓存服务器中返回给用户,提高用户观看流媒体资源的速度。
本发明不局限于上述实施方式,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围之内。本说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。

Claims (8)

1.一种基于HLS的P2P点播方法,其特征在于,包括:
步骤S1:拦截用户首次点播流媒体资源时向源站发出的HLS(HTTP LVIE STREAM,Apple公司的动态码率自适应技术)请求,调度服务器将流媒体资源的URL返回给用户,同时调度服务器基于HLS请求访问源站,将流媒体资源的完整HLS内容缓存至缓存服务器;
步骤S2:调度服务器选取多个存储节点,将缓存服务器中流媒体资源的完整HLS内容的TS分片分发至多个所述存储节点存储,并生成分发结果,所述分发结果为流媒体资源对应的完整HLS内容的各个TS分片与存储节点间的存储关系,所述TS分片为媒体文件;
步骤S3:当用户向源站再次点播同一流媒体资源时,调度服务器基于分发结果,将该流媒体资源位于各个存储节点上的TS分片返回给用户。
2.如权利要求1所述的一种基于HLS的P2P点播方法,其特征在于:所述用户通过流媒体客户端向源站发出HLS请求,且所述流媒体客户端中安装有拦截程序。
3.如权利要求2所述的一种基于HLS的P2P点播方法,其特征在于:所述流媒体客户端为智能机顶盒或智能网关。
4.如权利要求2所述的一种基于HLS的P2P点播方法,其特征在于,步骤S1具体为:
S1.1:用户首次点播某一流媒体资源并向源站发出HLS请求;
S1.2:拦截程序拦截HLS请求,并将该HLS请求发送至调度服务器;
S1.3:调度服务器将流媒体资源的URL返回给流媒体客户端,同时,调度服务器基于HLS请求访问源站,将流媒体资源对应的完整HLS内容缓存至缓存服务器。
5.如权利要求1所述的一种基于HLS的P2P点播方法,其特征在于:HLS内容的TS分片为多个,且每个存储节点中存储一个或多个TS分片。
6.一种基于HLS的P2P点播***,其特征在于,包括:
流媒体客户端,其用于用户点播流媒体资源并向源站发出HLS请求,所述流媒体客户端还用于播放流媒体资源;
P2P插件,其用于拦截用户向源站发出的HLS请求;
缓存服务器和存储节点;
调度服务器,其用于当用户首次点播流媒体资源时,拦截用户向源站发出的HLS请求,同时根据HLS请求访问源站并将流媒体资源的URL返回给所述流媒体客户端,所述调度服务器还用于将流媒体资源对应的完整HLS内容缓存至缓存服务器,并将HLS内容的TS分片分发至存储节点存储,生成分发结果,以及当用户向源站再次点播同一流媒体资源时,基于分发结果,将各个存储节点上的TS分片返回给用户,所述分发结果为流媒体资源对应的完整HLS内容的各个TS分片与存储节点间的存储关系。
7.如权利要求6所述的一种基于HLS的P2P点播***,其特征在于:所述流媒体客户端为智能机顶盒或智能网关。
8.如权利要求6所述的一种基于HLS的P2P点播***,其特征在于:所述流媒体资源对应的HLS内容的TS分片为多个,且每个存储节点中存储一个或多个TS分片。
CN201611087016.6A 2016-12-01 2016-12-01 一种基于hls的p2p点播方法及*** Active CN106789956B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611087016.6A CN106789956B (zh) 2016-12-01 2016-12-01 一种基于hls的p2p点播方法及***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611087016.6A CN106789956B (zh) 2016-12-01 2016-12-01 一种基于hls的p2p点播方法及***

Publications (2)

Publication Number Publication Date
CN106789956A CN106789956A (zh) 2017-05-31
CN106789956B true CN106789956B (zh) 2019-10-25

Family

ID=58913944

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611087016.6A Active CN106789956B (zh) 2016-12-01 2016-12-01 一种基于hls的p2p点播方法及***

Country Status (1)

Country Link
CN (1) CN106789956B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109525867B (zh) * 2017-09-18 2022-06-03 中兴通讯股份有限公司 负载均衡方法、装置及移动终端
CN108270845A (zh) * 2017-12-13 2018-07-10 武汉市烽视威科技有限公司 一种基于rtsp的p2p点播***及方法
CN109005430B (zh) * 2018-09-17 2021-05-18 深圳市网心科技有限公司 一种音/视频内容的点播方法、***、装置及存储介质
EP4085644A1 (en) * 2019-12-30 2022-11-09 Nagravision Sàrl Techniques for providing a content stream based on a delivered stream of content
CN113259688B (zh) * 2021-05-12 2023-04-18 湖南快乐阳光互动娱乐传媒有限公司 一种视频资源的存储分配方法和装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101667235A (zh) * 2008-09-02 2010-03-10 北京瑞星国际软件有限公司 一种用于保护用户隐私的方法和装置
CN101938505A (zh) * 2009-07-01 2011-01-05 华为技术有限公司 一种P2P流媒体数据分发的方法、***和proxy节点
CN103118277A (zh) * 2013-02-22 2013-05-22 北京暴风科技股份有限公司 一种视频加速方法
CN103956175A (zh) * 2014-04-18 2014-07-30 华为技术有限公司 一种多媒体文件的播放方法及播放设备
CN104168516A (zh) * 2014-09-01 2014-11-26 上海下一代广播电视网应用实验室有限公司 一种在流媒体直播平台上实现电视回看***和方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101667235A (zh) * 2008-09-02 2010-03-10 北京瑞星国际软件有限公司 一种用于保护用户隐私的方法和装置
CN101938505A (zh) * 2009-07-01 2011-01-05 华为技术有限公司 一种P2P流媒体数据分发的方法、***和proxy节点
CN103118277A (zh) * 2013-02-22 2013-05-22 北京暴风科技股份有限公司 一种视频加速方法
CN103956175A (zh) * 2014-04-18 2014-07-30 华为技术有限公司 一种多媒体文件的播放方法及播放设备
CN104168516A (zh) * 2014-09-01 2014-11-26 上海下一代广播电视网应用实验室有限公司 一种在流媒体直播平台上实现电视回看***和方法

Also Published As

Publication number Publication date
CN106789956A (zh) 2017-05-31

Similar Documents

Publication Publication Date Title
CN106789956B (zh) 一种基于hls的p2p点播方法及***
Din et al. Caching in information-centric networking: Strategies, challenges, and future research directions
EP3595268B1 (en) Streaming media resource distribution method, system, edge node and central dispatching system
CN106031130B (zh) 具有边缘代理的内容传送网络架构
Zhang et al. Unreeling Xunlei Kankan: Understanding hybrid CDN-P2P video-on-demand streaming
CN102404378B (zh) 一种流媒体分发传输网络***
US9838459B2 (en) Enhancing dash-like content streaming for content-centric networks
CN105450780B (zh) 一种cdn***及其回源方法
US20140165119A1 (en) Offline download method, multimedia file download method and system thereof
CN103108008B (zh) 一种下载文件的方法及文件下载***
US20230388361A1 (en) Network address resolution
CN104301741B (zh) 一种数据直播***和方法
US20140074961A1 (en) Efficiently Delivering Time-Shifted Media Content via Content Delivery Networks (CDNs)
CN110430274A (zh) 一种基于云存储的文件下载方法及***
CN105592163B (zh) 一种通信方法及***
CN106375471B (zh) 一种边缘节点确定方法及装置
CN105978936A (zh) Cdn服务器及其缓存数据的方法
CN102761572A (zh) 动态调整数据流量的方法及***
CN108600836A (zh) 一种视频处理方法及装置
US20140282788A1 (en) System for controlling video distribution in response to a request on reduced video data traffic and a method therefor
Das et al. Popularity-based caching for IPTV services over P2P networks
CN107920042A (zh) 一种直播间页面的优化传输方法和服务器
WO2016180284A1 (zh) 服务节点分配方法、装置、cdn管理服务器及***
CN105681266A (zh) 一种多媒体电话MMTel的通讯集群方法及装置
CN110290196A (zh) 一种内容分发方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant