一种基于请求转发的P2P流媒体播放方法及系统技术方案

技术编号:15399976 阅读:119 留言:0更新日期:2017-05-23 23:10
本发明专利技术涉及一种基于请求转发的P2P流媒体播放方法及系统,所述方法包含:P2P网络中的数据请求节点向数据提供节点请求数据,当数据提供节点判断得知由于上行带宽不足不能发送数据请求节点所请求的全部数据片时,进入下一步骤;数据提供节点将启动请求转发策略为数据请求节点提供所需的流媒体数据;其中,所述请求转发策略为:在单一频道内使用,具体由与数据提供节点位于单一频道内的拥有足够上行带宽的节点向数据请求节点提供数据;或当数据提供节点处于冷播频道中时,该请求转发策略还能够在频道间使用,由某个热播频道中的节点向数据请求节点提供数据。本发明专利技术提供的节点能够更快的获取数据,有效提高节点的上行带宽利用率,并提高系统的鲁棒性。

Method and system for playing P2P stream media based on request forwarding

The invention relates to a request based on the P2P streaming media playing method and system, the method includes: P2P data in the network node requests the requesting node to provide data to the data, when the data providing node judges the uplink bandwidth due to lack of data requested by the requesting node cannot send all the data for the next step; data provide node will start the request forwarding strategy to provide the necessary data for the streaming media data request node; among them, the request forwarding strategy: use in a single channel, specifically by the node node and data in single channel in enough uplink bandwidth to the requesting node data to provide data; or when the data node is provided cold channels when the request forwarding strategy can also be used in the channel, requested by the nodes of a hit to the data channel Nodes provide data. The nodes provided by the invention can obtain data more quickly, effectively improve the utilization ratio of uplink bandwidth of the nodes, and improve the robustness of the system.

【技术实现步骤摘要】
一种基于请求转发的P2P流媒体播放方法及系统
本专利技术涉及计算机网络
,更具体地,本专利技术涉及一种基于请求转发的P2P流媒体播放方法及系统。
技术介绍
近年来,随着宽带通信和多媒体技术的迅猛发展,在线直播,视频点播,文件下载等各种互联网应用也应运而生,对传统的客户端/服务器(C/S)模式的服务系统提出了新的挑战,随着用户规模的增大,传统的客户端/服务器(C/S)模式的服务系统需要消耗更多的软硬件资源,已经不能满足大规模用户的需求,因此基于P2P的服务系统迅速发展并逐渐成为相对成熟的应用。P2P流媒体系统的拓扑分为树状结构和网状结构两种。树状结构又分为单树和多树结构。在单树结构中,节点从单一的父节点获取码流,并向子节点推送整个码流,这使得节点上行带宽资源的大量浪费。多树结构解决了单树结构中的资源利用率的问题,它将整个码流分割成多个子流,每个节点只负责其中的一个或者多个子流。多树结构中,节点的上行带宽得到了有效的利用。然而在多树系统中,节点的动态性会严重影响了系统的性能。网状结构有效的解决了多树系统节点动态性的问题。在网状结构中,节点不再主动推送数据,而是根据自身的需要主动获取数据。推拉结合算法既保证了节点能够迅速的获取数据,也保证了系统有较强的抗扰动性。但现有的流媒体系统中,节点的频道间切换与频道间的负载不均等动态性行为使得系统中的资源得不到有效的利用,降低了系统的可扩展性。当节点切换到其它频道后,节点切换频道前请求到的数据既不能用来播放,也不能为其它节点服务,而跳转后则需要较长的时间来选取邻居节点,并获取数据为邻居节点服务,在此过程中节点的资源无论是带宽还是数据都会被浪费。在热播频道中,由于系统中的资源较多,对节点扰动的容错率较高,节点的资源会被浪费,而冷播系统中的节点却不能提供足够的资源为邻居节点服务,当出现扰动时,系统的鲁棒性较差,严重影响着系统的性能。
技术实现思路
本专利技术的目的在于,为克服现有技术的P2P流媒体系统在存在扰动时节点资源得不到有效利用以及频道间负载不均的问题,从服务调度的角度,提供一种基于请求转发的P2P流媒体播放方法及系统。为实现上述目的,本专利技术提供了一种基于请求转发的P2P流媒体播放方法,所述方法包含:步骤101)P2P网络中的数据请求节点向数据提供节点请求数据,当数据提供节点判断得知由于上行带宽不足不能发送数据请求节点所请求的全部数据片时,进入下一步骤;步骤102)数据提供节点将启动请求转发策略,由请求转发策略选中的节点为数据请求节点提供所需的流媒体数据;其中,所述请求转发策略为:在单一频道内使用,具体由与数据提供节点位于同一频道内的拥有足够剩余上行带宽的节点向数据请求节点发送数据;或当数据提供节点处于冷播频道中时,该请求转发策略还能够在频道间使用,由某个热播频道中的节点向数据请求节点提供数据;所述数据请求节点为数据提供节点的邻居节点,并向数据提供节点请求数据。上述步骤101)具体为:数据提供节点判断自身上行带宽是否能够满足数据请求节点的全部数据请求,当数据提供节点能够为每一个数据请求节点的数据请求发送数据时,由其直接向各个数据请求节点提供流媒体数据;当判断得知数据提供节点由于上行带宽不足不能发送数据请求节点所请求的全部数据片时,数据提供节点将启动请求转发策略为数据请求节点提供所需的流媒体数据。上述请求转发策略在单一频道内使用时,进一步包含如下步骤:步骤102-1)数据提供节点的所有邻居节点估算并汇报自身剩余上行带宽信息;步骤102-2)数据提供节点检测到不能为数据请求节点的每个数据请求提供数据时,选取适当节点作为请求转发节点;步骤102-3)数据提供节点在适当时机向请求转发节点转发适当数据片的数据请求,并发送处理数据请求所需的数据和其它信息;步骤102-4)请求转发节点收到消息后,向需要数据的节点发送相应数据;其中,所述请求转发节点应有足够的上行带宽为其它节点提供数据,具体包含以下三类节点:1)向数据提供节点请求了要转发数据片的数据提供节点的邻居节点;2)数据提供节点的拥有要转发数据片的邻居节点;3)数据请求节点切换到其它频道,且缓存中拥有此数据片的邻居节点;上述请求转发策略在频道间使用时,进一步包含如下步骤:步骤201)热播频道中有充足剩余上行带宽的节点向服务器汇报剩余上行带宽信息;步骤202)当冷播频道中的数据提供节点需要热播频道中的节点转发数据时,节点向服务器请求转发数据所需的节点;步骤203)服务器收到消息后,选取适当节点发送给数据提供节点作为请求转发节点;步骤203)数据提供节点收到消息后,将转发消息及相应的数据发送给请求转发节点;步骤204)请求转发节点收到数据与消息后,将数据发送给数据请求节点;其中,所述服务器选取的适当节点为热播频道中向服务器汇报剩余带宽信息的节点。请求转发策略中转发数据片和转发时机的选择进一步包含如下步骤:步骤201)将整个转发周期依据节点剩余能力切分成转发时隙;步骤202)在每一个转发时隙内,数据提供节点计算请求转发节点转发每一数据请求所产生的效用;步骤203)依据转发的总效用最大,计算每个邻居节点适宜转发的数据片,并确定转发数据片的时间;其中,所述转发周期为数据提供节点两次收到剩余上行带宽信息之间的时间。基于上述方法本专利技术还提供了一种基于请求转发的P2P流媒体播放系统中的节点,所述节点包含:第一估算模块,用于估算数据提供节点的自身剩余上行带宽;统计模块,用于统计数据请求节点的每个数据请求所需的带宽信息;判断决策模块,用于依据第一估算模块和统计模块的结果判断P2P网络中的数据提供节点的上行带宽是否能够用于向数据请求节点发送所请求的全部数据片,当上行带宽不足时及时启动请求转发子系统为数据请求节点发送数据;请求转发模块,用于选择由与数据提供节点位于单一频道内的拥有足够上行带宽的节点向数据请求节点提供数据;或选择由与数据提供节点处于不同频道的某个热播频道中的节点向数据请求节点提供数据。周期性启动判断决策模块。上述请求转发模块进一步包含:请求转发节点选取子模块,用于当数据提供节点检测到不能为数据请求节点的每个数据请求提供数据时自行从邻居节点中选取或向服务器请求适当节点作为请求转发节点;转发子模块,用于数据提供节点在适当时机向请求转发节点转发适当数据片的数据请求,并发送处理数据请求所需的数据和其它信息;数据发送子模块,用于请求转发节点转发模块发送的消息后,向需要数据的节点发送相应数据;其中,所述请求转发节点应有足够的上行带宽为其它节点提供数据,具体包含以下四类节点:1)向数据提供节点请求了要转发数据片的数据提供节点的邻居节点;2)数据提供节点的拥有要转发数据片的邻居节点;3)数据请求节点切换到其它频道,且缓存中拥有此数据片的邻居节点;4)热播频道中的节点。上述服务器节点的请求转发模块进一步包含:接收储存热播频道中节点消息的模块,用于储存热播频道中节点的剩余上行带宽消息;选取热播频道中节点模块,服务器依据一定的规则,选取热播频道中的汇报数据信息的节点,向数据提供节点发送。上述请求转发模块还包含用于确定请求转发策略中转发数据片和转发时机的子模块,该子模块进一步包含:切分单元,用于将整个转发周期依据节点剩余能力切分成转发时隙;效用计算单元,本文档来自技高网
...
一种基于请求转发的P2P流媒体播放方法及系统

【技术保护点】
一种基于请求转发的P2P流媒体播放方法,所述方法包含:步骤101)P2P网络中的数据请求节点向数据提供节点请求数据,当数据提供节点判断得知由于上行带宽不足不能发送数据请求节点所请求的全部数据片时,进入下一步骤;步骤102)数据提供节点将启动请求转发策略,该请求转发策略选择新节点为数据请求节点提供所需的流媒体数据;其中,所述请求转发策略包含:在单一频道内使用,具体为数据提供节点选择与其位于同一频道内的拥有足够剩余上行带宽的节点向数据请求节点发送数据;或当数据提供节点处于冷播频道中时,该请求转发策略还能够在频道间使用,具体由某个热播频道中的节点向数据请求节点提供数据;所述数据请求节点为数据提供节点的邻居节点,并向数据提供节点请求数据;所述请求转发策略在频道间使用时,进一步包含如下步骤:步骤201)热播频道中有充足剩余上行带宽的节点向服务器汇报剩余上行带宽信息;步骤202)当冷播频道中的数据提供节点需要热播频道中的节点转发数据请求时,冷播频道中的数据提供节点向服务器请求转发数据所需的节点;步骤203)服务器收到消息后,选取适当节点发送给数据提供节点作为请求转发节点;步骤203)数据提供节点收到消息后,将转发消息及相应的数据发送给请求转发节点;步骤204)请求转发节点收到数据与消息后,将数据发送给数据请求节点;其中,所述服务器选取的适当节点为热播频道中向服务器汇报剩余带宽信息的节点。...

【技术特征摘要】
1.一种基于请求转发的P2P流媒体播放方法,所述方法包含:步骤101)P2P网络中的数据请求节点向数据提供节点请求数据,当数据提供节点判断得知由于上行带宽不足不能发送数据请求节点所请求的全部数据片时,进入下一步骤;步骤102)数据提供节点将启动请求转发策略,该请求转发策略选择新节点为数据请求节点提供所需的流媒体数据;其中,所述请求转发策略包含:在单一频道内使用,具体为数据提供节点选择与其位于同一频道内的拥有足够剩余上行带宽的节点向数据请求节点发送数据;或当数据提供节点处于冷播频道中时,该请求转发策略还能够在频道间使用,具体由某个热播频道中的节点向数据请求节点提供数据;所述数据请求节点为数据提供节点的邻居节点,并向数据提供节点请求数据;所述请求转发策略在频道间使用时,进一步包含如下步骤:步骤201)热播频道中有充足剩余上行带宽的节点向服务器汇报剩余上行带宽信息;步骤202)当冷播频道中的数据提供节点需要热播频道中的节点转发数据请求时,冷播频道中的数据提供节点向服务器请求转发数据所需的节点;步骤203)服务器收到消息后,选取适当节点发送给数据提供节点作为请求转发节点;步骤203)数据提供节点收到消息后,将转发消息及相应的数据发送给请求转发节点;步骤204)请求转发节点收到数据与消息后,将数据发送给数据请求节点;其中,所述服务器选取的适当节点为热播频道中向服务器汇报剩余带宽信息的节点。2.根据权利要求1所述的基于请求转发的P2P流媒体播放方法,其特征在于,所述步骤101)具体为:数据提供节点判断自身上行带宽是否能够发送数据请求节点所请求的全部数据片,当数据提供节点能够为每一个数据请求节点的数据请求发送数据时,由其直接向各个数据请求节点提供流媒体数据;当数据提供节点判断得知由于上行带宽不足不能发送数据请求节点所请求的全部数据片时,数据提供节点将启动请求转发策略为数据请求节点提供所需的流媒体数据。3.根据权利要求1所述的基于请求转发的P2P流媒体播放方法,其特征在于,所述请求转发策略在单一频道内使用时,进一步包含如下步骤:步骤102-1)数据提供节点的所有邻居节点估算并汇报自身剩余上行带宽信息;步骤102-2)数据提供节点检测到不能为数据请求节点的每个数据请求提供数据时,选取适当节点作为请求转发节点;步骤102-3)数据提供节点在适当时机向请求转发节点转发适当数据片的数据请求,并发送处理数据请求所需的数据和其它信息;步骤102-4)请求转发节点收到消息后,向需要数据的节点发送相应数据;其中,所述请求转发节点应有足够的上行带宽为其它节点提供数据,具体包含以下三类节点:1)向数据提供节点请求了要转发数据片的数据提供节点的邻居节点;2)数据提供节点拥有的要转发数据片的邻居节点;3)数据请求节点切换到其它频道,且缓存中拥有此数据片的邻居节点。4.根据权利要求1或3所述的基于请求转发的P2P流媒体播放方法,其特征在于,请求转发策略...

【专利技术属性】
技术研发人员:尤佳莉李晓林王劲林郑鹏飞宋军吕阳薛娇
申请(专利权)人:中国科学院声学研究所
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1