CN101945254B - 一种基于虚拟直播源的分布式流媒体点播方法 - Google Patents
一种基于虚拟直播源的分布式流媒体点播方法 Download PDFInfo
- Publication number
- CN101945254B CN101945254B CN201010282767XA CN201010282767A CN101945254B CN 101945254 B CN101945254 B CN 101945254B CN 201010282767X A CN201010282767X A CN 201010282767XA CN 201010282767 A CN201010282767 A CN 201010282767A CN 101945254 B CN101945254 B CN 101945254B
- Authority
- CN
- China
- Prior art keywords
- node
- virtual
- channel
- live
- broadcast
- 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
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及一种基于虚拟直播源的分布式流媒体点播方法,该点播方法通过将每个点播频道按照固定时间TL将点播频道的播放节目划分为多个片段,每个片段称为桶,每个桶作为一个虚拟直播频道;所述的点播频道采用动态时间坐标系的方法映射到点播***中的多个虚拟直播频道,使直播、点播***进行无缝融合,有效地通过直播***实现点播的目的。本发明的优点在于,该方法显著降低了传统方法中的***复杂性和维护开销,也易于后续数据调度算法的优化。另外,该方法可以使直播、点播***进行无缝融合,增加任一个***内节点的候选合作节点集合,扩大了每一个***的带宽、存储空间等资源总量,为后续提高网络中节点带宽的利用率算法的应用打下了基础。
Description
技术领域
本发明涉及信息技术领域中的分布式的流媒体应用,特别涉及一种基于虚拟直播源的分布式流媒体点播方法。
背景技术
随着互联网的发展和用户规模的增多,流媒体相关应用得到了越来越多的关注。在大多数传统的流媒体方法中,用户所访问的内容需从服务器直接获取,这样的方法无法保证用户并发数增大的情况下的服务质量,同时,增加了运营成本。因此,在网络环境下,基于P2P的流媒体***方法应运而生。其基本思想是:在保障视频流的服务质量的前提下,充分利用网络中的节点带宽、存储等资源,以缓解数据源服务器的负载,提高***的可扩展性。由于流媒体视频直播和点播是流媒体***方法中最主要的两个部分,而各自对技术的需求也有所不同,因此,大多数的实现方法都是两种业务各成***。
在基于P2P的直播***中,节点加入一个频道后,在每一个数据调度周期内,节点都尽量从观看同一个频道的节点中获取数据。如果在一定时间内,没有合适的节点提供所需数据,则向服务器请求;同样,基于P2P的点播***也尽量从其他节点获取数据。但不同的是,由于点播***可以有快进、快退、暂停等操作,播放点的动态范围很大,而***中每个节点缓存的数据有限,因此,只能从观看相邻播放点的节点中获取数据。尽管目的有所不同,但从另一个角度看,如果将视频文件以很小的间隔切分,每个片段可看作一个直播频道,因次,一个点播频道可以看成为多个直播频道的组合。
发明内容
本发明的目的在于,为了解决上述问题,提出了一种基于虚拟直播源的分布式流媒体点播方法。
为达到上述目的,本发明提出了一种基于虚拟直播源的分布式流媒体点播方法。
所述的基于虚拟直播源的分布式流媒体点播方法,该方法的具体工作步骤如下:
步骤1):该点播方法通过将每个点播频道按照固定时间TL将点播频道的播放节目划分为多个片段,每个片段称为桶,每个桶作为一个虚拟直播频道;所述的点播频道采用动态时间坐标系的方法映射到点播***中的多个虚拟直播频道,使直播、点播***进行无缝融合,有效地通过直播***实现点播的目的;
步骤2):当某节点P访问此流媒体点播***的某个点播频道时,计算出访问节点P所需播放点的桶号,即访问节点P的桶号;若发生VCR操作,则转至步骤2.1);若没有发生VCR操作,则转至步骤2.2);
步骤2.1):判断是否发生跳桶,若出现跳桶,计算出新的桶号,转至步骤2.2);
步骤2.2):为节点P生成节点IDp;即:
IDp=点播频道ID+虚拟直播频道ID+hash;其中,虚拟直播频道ID即是桶ID,hash即是哈希函数,目的是为了通过节点IP地址和端口号生成一个唯一的标识序列,转至步骤2.3);
步骤2.3):根据DHT路由协议将节点P加入流媒体点播***,所述的DHT路由协议包括:Pastry、Tapastry或Chord;
步骤2.4):根据直播***的节点维护策略,通过节点P的IDp进行区分,判断其所处的虚拟直播频道,并用DHT对该节点P路由表中所需填充的直播频道内的信息进行组织、选择和维护;
步骤3):当节点P退出流媒体点播***后,会向邻居节点发送离开消息,收到消息的邻居节点会将该节点P从邻居表中删除,同时DHT会对退出后的网络结构进行更新和维护。
在同一个虚拟直播频道内,所有访问节点通过任一一种基于P2P的直播***的节点组织方法进行组织、维护和数据调度。
所述的步骤2.1)为:
2.1.1)如果VCR操作之后,播放点的桶号与当前桶号一致,则不发生跳桶,节点仍通过桶内直播***的数据调度算法获取所需数据;
2.1.2)如果VCR操作之后,播放点的桶号与当前桶号不一致,则发生跳桶,节点需更新桶ID,通过DHT获得新桶内的节点并进行数据交互。
所述的动态时间坐标系为:
假设点播频道中有一个节点从某时间点开始循环播放本频道节目,则这一假设节点当前正播放的位置称为本频道的虚拟播放点;动态时间坐标系的原点和本频道的虚拟播放点相等;
设C为***中所有点播频道的有限集,设***中的各频道Cj∈C的虚拟节点从绝对时间TSj开始不断循环播放本频道的节目,本频道整个节目的播放时间是Tj,则对于Cj,计算出当前时间虚拟播放点循环播放的遍数Nj以及其播放位置TPcurr,TPcurr即为Cj的动态时间坐标系原点Oj:
Nj=floor((Tcurr-TSj)/Tj)
Oj=TPcurr=(Tcurr-TSj)%Tj。
所述的采用了动态之间坐标系的方法确认用户所需播放点所在的桶号的步骤为:
当用户访问某个节目Cj中任意播放点TPjx时,设当前时间是Tcurr,则TPjx所属的桶为:
Bjx=floor(Djx/TL)
其中,TPjx是从影片开始到Pjx的时长。
本发明的优点在于,该方法可以有效的通过直播***实现点播功能,解决点播中播放点动态范围过大的问题,有效地通过直播***实现点播的目的,显著降低了传统方法中的***复杂性和维护开销,也易于后续数据调度算法的优化。另外,该方法可以使直播、点播***进行无缝融合,增加任一个***内节点的候选合作节点集合,扩大了每一个***的带宽、存储空间等资源总量,为后续提高网络中节点带宽的利用率算法的应用打下了基础。
附图说明
图1本发明的基于虚拟直播源的分布式流媒体点播方法的结构示意图。
具体实施方式
下面结合附图和实施例对本发明提出的一种基于虚拟直播源的分布式流媒体点播方法进行进一步说明。
步骤1):在本实施例中,该点播方法通过将每个点播频道按照固定时间为2小时,假设一个基于虚拟直播源的流媒体***包含3个点播频道0、1和2,将点播频道的播放节目划分为多个片段,每个片段称为桶,将点播节目切分为时长为2分钟的桶,每个桶作为一个虚拟直播频道,这里,则可将该***转化为180个虚拟直播频道的流媒体***;所述的点播频道采用动态时间坐标系的方法映射到点播***中的多个虚拟直播频道,使直播、点播***进行无缝融合,有效地通过直播***实现点播的目的;
步骤2):当节点P访问此流媒体点播***的点播频道2时,计算出访问节点P所需播放点的桶号,即访问节点P的桶号;这里,桶号为0000001;若发生VCR操作,则转至步骤2.1);若没有发生VCR操作,则转至步骤2.2);
步骤2.1):判断是否发生跳桶,若出现跳桶,计算出新的桶号,当节点p访问点播频道2的过程中出现VCR操作时,假设从第5分钟跳转到20分钟的内容,则新的虚拟直播频道的桶号为0000010,存在跳桶,因此需要重新计算节点ID,根据DHT路由协议,更新节点p的路由表,并进行数据调度。转至步骤2.2);
步骤2.2):为节点P生成节点IDp;即:
IDp=点播频道ID+虚拟直播频道ID+hash;其中,虚拟直播频道ID即是桶ID,hash即是哈希函数,目的是为了通过节点IP地址和端口号生成一个唯一的标识序列,在本实施例中,为p生成ID,IDp=点播频道ID+虚拟直播频道ID+hash
=2+0000001+24568762
=20000001 24568762
转至步骤2.3);
步骤2.3):根据DHT路由协议将节点P加入流媒体点播***,所述的DHT路由协议包括:Pastry、Tapastry或Chord;在本实施例中,每个虚拟直播频道通过peercast中的单树形式进行节点组织和分发,***中所有的节点都通过Pastry来组织和管理。
步骤2.4):根据直播***的节点维护策略,通过节点P的IDp进行区分,判断其所处的虚拟直播频道,并用DHT对该节点P路由表中所需填充的直播频道内的信息进行组织、选择和维护;
步骤3):当节点P退出流媒体点播***后,会向邻居节点发送离开消息,收到消息的邻居节点会将该节点P从邻居表中删除,同时DHT会对退出后的网络结构进行更新和维护。
最后所应说明的是,以上实施例仅用以说明本发明的技术方案而非限制。尽管参照实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,对本发明的技术方案进行修改或者等同替换,都不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。
Claims (4)
1.一种基于虚拟直播源的分布式流媒体点播方法,该方法的具体工作步骤如下:
步骤1):该点播方法通过将每个点播频道按照固定时间TL将点播频道的播放节目划分为多个片段,每个片段称为桶,每个桶作为一个虚拟直播频道;所述的点播频道采用动态时间坐标系的方法映射到点播***中的多个虚拟直播频道,使直播、点播***进行无缝融合,有效地通过直播***实现点播的目的;
步骤2):当某节点P访问此流媒体点播***的某个点播频道时,计算出访问节点P所需播放点的桶号,即访问节点P的桶号;若发生VCR操作,则转至步骤2.1);若没有发生VCR操作,则转至步骤2.2);
步骤2.1):判断是否发生跳桶,若出现跳桶,计算出新的桶号,转至步骤2.2);
步骤2.2):为节点P生成节点IDp;即:
IDp=点播频道ID+虚拟直播频道ID+hash;其中,虚拟直播频道ID即是桶号,hash即是哈希函数,目的是为了通过节点IP地址和端口号生成一个唯一的标识序列,转至步骤2.3);
步骤2.3):根据DHT路由协议将节点P加入流媒体点播***,所述的DHT路由协议包括:Pastry、Tapastry或Chord;
步骤2.4):根据直播***的节点维护策略,通过节点P的IDp进行区分,判断其所处的虚拟直播频道,并用DHT对该节点P路由表中所需填充的直播频道内的信息进行组织、选择和维护;
步骤3):当节点P退出流媒体点播***后,会向邻居节点发送离开消息,收到消息的邻居节点会将该节点P从邻居表中删除,同时DHT会对退出后的网络结构进行更新和维护;
其中,所述的动态时间坐标系为:
假设点播频道中有一个节点从某时间点开始循环播放本频道节目,则这一假设节点当前正播放的位置称为本频道的虚拟播放点;动态时间坐标系的原点和本频道的虚拟播放点相等;
设C为***中所有点播频道的有限集,设***中的各频道Cj∈C的虚拟节点从绝对时间TSj开始不断循环播放本频道的节目,本频道整个节目的播放时间是Tj,则对于Cj,计算出当前时间虚拟播放点循环播放的遍数Nj以及其播放位置TPcurr,TPcurr即为Cj的动态时间坐标系原点Oj:
Nj=floor((Tcurr-TSj)/Tj)
Oj=TPcurr=(Tcurr-TSj)%Tj。
2.根据权利要求1所述的一种基于虚拟直播源的分布式流媒体点播方法,其特征在于,在同一个虚拟直播频道内,所有访问节点通过任一一种基于P2P的直播***的节点组织方法进行组织、维护和数据调度。
3.根据权利要求1所述的一种基于虚拟直播源的分布式流媒体点播方法,其特征在于,所述的步骤2.1)为:
2.1.1)如果VCR操作之后,播放点的桶号与当前桶号一致,则不发生跳桶,节点仍通过桶内直播***的数据调度算法获取所需数据;
2.1.2)如果VCR操作之后,播放点的桶号与当前桶号不一致,则发生跳桶,节点需更新桶号,通过DHT获得新桶内的节点并进行数据交互。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010282767XA CN101945254B (zh) | 2010-09-15 | 2010-09-15 | 一种基于虚拟直播源的分布式流媒体点播方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010282767XA CN101945254B (zh) | 2010-09-15 | 2010-09-15 | 一种基于虚拟直播源的分布式流媒体点播方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101945254A CN101945254A (zh) | 2011-01-12 |
CN101945254B true CN101945254B (zh) | 2012-05-30 |
Family
ID=43436987
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010282767XA Active CN101945254B (zh) | 2010-09-15 | 2010-09-15 | 一种基于虚拟直播源的分布式流媒体点播方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101945254B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110933447B (zh) * | 2020-02-18 | 2020-12-01 | 浙江清鹤科技有限公司 | 基于小前端环的分布式视频服务架构 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101102465A (zh) * | 2006-07-03 | 2008-01-09 | 长江计算机(集团)公司 | 一种应用于数字电视播放的时移*** |
CN101132393B (zh) * | 2006-08-25 | 2010-11-17 | 郑州威科姆科技股份有限公司 | 流媒体服务动态负载方法 |
CN101005606B (zh) * | 2006-12-31 | 2012-07-04 | 华为技术有限公司 | 一种减少媒体播放延时的方法和装置 |
CN101557339B (zh) * | 2008-04-09 | 2012-04-04 | 华为技术有限公司 | 一种数据传输方法、数据处理节点以及数据传输*** |
CN101631034A (zh) * | 2008-07-15 | 2010-01-20 | 华为技术有限公司 | 对等网络中节点管理和接入方法、装置及*** |
-
2010
- 2010-09-15 CN CN201010282767XA patent/CN101945254B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN101945254A (zh) | 2011-01-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101237429B (zh) | 基于内容分发网络的流媒体直播***、方法及装置 | |
CN100477641C (zh) | 一种流媒体点播***的数据调度方法 | |
CN1645858A (zh) | 分布式对等流媒体的服务***及其点播节目的实现方法 | |
RU2012122493A (ru) | Способ общесетевого хранения и распределения данных и система для телевидения в сетях передачи данных по протоколу ip | |
CN102055808A (zh) | 一种降低p2p直播***中播放延迟的方法与*** | |
CN104469398B (zh) | 一种网络视频画面处理方法及装置 | |
JP2008277961A (ja) | オンデマンドデータ配信システム | |
CN101394423A (zh) | 一种媒体定位、搜索方法和*** | |
CN103124292B (zh) | 一种p2p流媒体***中的数据调度方法及其装置 | |
CN104506537A (zh) | P2p***节点选择方法 | |
Han et al. | Hulu in the neighborhood | |
CN1874489A (zh) | 一种对等网络视频点播***中多频道重叠网络组织方法 | |
CN104602035A (zh) | 流媒体点播方法和流媒体点播*** | |
CN1885812A (zh) | 一种流媒体点播***中时间相关的对等网络组织方法 | |
CN101945254B (zh) | 一种基于虚拟直播源的分布式流媒体点播方法 | |
CN101753623B (zh) | 一种适用于全ip宽带移动网的p2p***及内容共享方法 | |
CN102291620A (zh) | 内容发布、内容获取的方法、内容发布装置及内容传播*** | |
US9553924B1 (en) | Load sharing among loosely coupled or independent video servers | |
CN104935878A (zh) | 大规模网络视频监控热点信息分发***及其分发方法 | |
CN100596191C (zh) | 以电视机为服务器的流媒体点播***与方法 | |
CN103956177B (zh) | 基于物联网的板级可扩充点播*** | |
CN104507066A (zh) | P2p***节点发现方法 | |
CN104105009A (zh) | 一种数字多媒体播控优化方法 | |
CN102143239B (zh) | 实现在不同网络间进行通信的方法及装置 | |
CN103096146A (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 | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20210802 Address after: Room 1601, 16th floor, East Tower, Ximei building, No. 6, Changchun Road, high tech Industrial Development Zone, Zhengzhou, Henan 450001 Patentee after: Zhengzhou xinrand Network Technology Co.,Ltd. Address before: 100190, No. 21 West Fourth Ring Road, Beijing, Haidian District Patentee before: INSTITUTE OF ACOUSTICS, CHINESE ACADEMY OF SCIENCES |