法律状态公告日
法律状态信息
法律状态
2013-07-31
未缴年费专利权终止 IPC(主分类):H04N7/173 授权公告日:20091104 终止日期:20120609 申请日:20060609
专利权的终止
2009-11-04
授权
授权
2007-08-15
实质审查的生效
实质审查的生效
2007-06-20
公开
公开
技术领域
本发明涉及在互联网实现实时流媒体传输的方法,尤其涉及一种用动态P2P广播节点服务器取代固定P2P广播节点服务器而实现P2P直播的方法。
背景技术
当前,用户通过互联网接收直播媒体节目,存在着极大的局限性。原因是在网络中传输的直播流媒体节目,是由原始直播媒体源经过直播流媒体服务器转换成可在网络上传输的流媒体格式,但是这种流媒体服务器的负载极其有限,不能满足客户端的需求。
为解决这一问题,随着后来P2P原理(即客户端可以直接连接到其他客户端点对点的资源共享,已有技术应用包括BT、电驴,也包括后来发展的P2P直播应用)的发展,而在P2P直播中,媒体或者网站在设立流媒体服务器时,同时需要专门设立P2P服务器来实现P2P直播,即用于转换和发送带P2P协议的流媒体格式的广播节点服务器,如图1所示,在网络中,直播媒体源从流媒体服务器传输至P2P服务器,因为P2P服务器上安装有P2P转换模块,其主要功能是在直播媒体源经过流媒体服务器转换成流媒体格式后,再通过P2P服务器转换成带P2P协议的流媒体格式,使得客户端从该P2P服务器获得的直播节目信息能够以P2P协议形式在网络上传输,图1中带箭头实线1为直播流媒体节目的传输方向。
但是,这种专用P2P服务器,其容量及性能仍然是有限的。随着在线用户大量增加时,必然将超出其性能负荷,而导致传输障碍。而且网站对专用P2P服务器地投资压力也将越来越大。
发明内容
本发明针对现有技术中存在的问题,提供一种利用网络中的客户端,设定其为动态P2P广播节点服务器,来取代固定P2P广播节点服务器而实现P2P直播的方法。
为了解决上述技术问题,本发明通过下述技术方案得以解决:
一种运用动态广播节点技术实现P2P直播的方法,包括以下步骤:
A.网站控制服务器检索并登记网络中的直播流媒体节目信息;
B.网站控制服务器控制处理客户端的播放请求,并在请求的客户端中选择设定临时广播节点服务器,并将带P2P协议转换模块的插件自动安装在该设定的临时广播节点服务器上,同时将该设定的临时广播节点服务器连接到步骤A中包含有其所请求的直播流媒体节目信息的流媒体服务器上,网站控制服务器控制后续请求播放相同直播节目的客户端连接到该设定的临时广播节点服务器上;
C.临时广播节点服务器以P2P协议功能向后续连接其上的客户端传输请求的直播流媒体节目。
作为优选,上述步骤B具体是通过以下步骤实现:
a.当控制服务器接收到客户端请求播放直播流媒体节目信息时,记录当前请求客户端性能信息,再判断当前是否有设定的临时广播节点服务器:
若否,则设定该请求的客户端为临时广播节点服务器,并将带P2P协议转换模块的插件自动安装在该设定的临时广播节点服务器上,同时将该设定的临时广播节点服务器连接到步骤A中包含有其所请求的直播流媒体节目信息的流媒体服务器上;
若是,则转到步骤b;
b.判断当前备用临时广播节点服务器是否满足预定的数量;
若否,则分析当前请求客户端的性能指标,再转到步骤c;
若是,再转到步骤d;
c.判断当前请求客户端与控制服务器中已经登记性能信息的客户端,包括与控制服务器设定的临时广播节点服务器性能要求相比较是否较优:
若是,则设定当前请求客户端为备用临时广播节点服务器,并将带P2P协议转换模块的插件自动安装在该设定的备用临时广播节点服务器上,同时将该设定的备用临时广播节点服务器连接到步骤A中包含有其所请求的直播流媒体节目信息的流媒体服务器上;
若否,则转到步骤e;
d.判断当前请求客户端的性能指标是否比已有相同直播节目的备用临时广播节点服务器较优:
若是,则用该客户端替换性能较劣的备用临时广播节点服务器,被替换掉的备用临时广播节点服务器转为当前请求客户端,再转到步骤e;
若否,则直接转到步骤e;
e.判断当前播放与请求的直播内容相同的临时广播节点服务器在预设的承载负荷下,是否都已满负荷;
若否,则为该请求客户端选择一个临时广播节点服务器连接,再转到步骤f;
若是,则转到步骤g;
f.判断当前请求客户端是否是临时广播节点服务器一级子级:
若是,保留该客户端的登记信息;
若否,摒弃该客户端的登记信息;
g.判断是否能为当前请求客户端选择到一个直播相同节目的备用临时广播节点服务器:
若是,将请求客户端连接到该备用临时广播节点服务器,并保留该请求客户端的登记信息;
若否,则设定当前请求客户端为备用临时广播节点服务器,并将带P2P协议转换模块的插件自动安装在该设定的备用临时广播节点服务器上,同时将该设定的备用临时广播节点服务器连接到步骤A中包含有其所请求的直播流媒体节目信息的流媒体服务器上;
h.当控制服务器收到网络中正在直播流媒体节目的客户端的中断信息,则判断该客户端是否为由控制服务设定的广播节点服务器:
若是,则转到步骤i;
若否,则中断的客户端为临时广播节点服务器中的一级子级客户端,再转到步骤j;
i.判断该中断的客户端是否为备用广播节点服务器:
若是,则补充减少的备用广播节点服务器数量;
若否,则选择一个备用临时广播节点服务替代中断的临时广播节点服务器,并补充减少的备用广播节点服务器数量;
j.判断该临时广播节点服务器是否已经无一级子级客户端:
若是,则该临时广播节点服务器为处于空置状态的临时广播节点服务器,再转到步骤k;
若否,则该临时广播节点服务器的子网络中除一级子级外的子级客户端,就近直接连接到该临时广播节点服务器,替代中断的一级子级客户端,控制服务器登记新增一级子级客户端的性能信息;
k.判断当前备用临时服务器是否满足预定数量:
若是,则取消处于空置状态的临时广播节点服务器的设定,并为其选择一个直播相同流媒体节目的临时广播节点服务器连接。
若否,则将处于空置状态的临时广播节点服务器作为备用临时广播节点服务器。
按本发明技术的方案的一种运用动态广播节点技术实现P2P直播的方法,利用网络中的客户端设定为临时广播节点服务器,即采用动态广播节点服务器方式代替固定、专用广播节点服务器,其主要优点如下:
1)随着在线用户的增加,但不增加媒体源流媒体服务器输出容量的压力,相反地能使网络的传输更加通畅。
2)免去了用于直播媒体的广播节点服务器(P2P服务器)的投入,而是直接利用互联网上在线客户端,极大地节约了投入成本。
附图说明
图1为现有技术中P2P直播传输过程的示意图。
图2为本发明实施例中第一个临时广播节点服务器的设定及其连接子网络的过程示意图。
图3为本发明实施例中设定备用临时广播节点服务器的过程示意图。
图4为本发明实施例中临时广播节点服务器中断时,其下子网络转移的过程示意图。
图5为本发明实施例中控制服务器处理客户端请求时的主要程序流程图。
图6为本发明实施例中控制服务器处理客户端中断时的主要程序流程图。
具体实施方式
下面结合附图与具体实施方式对本发明作进一步详细描述:
图2、图3和图4中:
直线2表示网络连接;
带箭头双点划线21表示直播流媒体服务器的流媒体节目信息方向;
带箭头单点划线22表示客户端性能信息登记方向。
点线框28表示临时广播节点服务器(图中临服器)的一级子级客户端,当然一级子级客户端不仅仅只有1个。
图2中带箭头点线23表示为客户端转换为临时广播节点服务器(图中临服器)的过程。带箭头虚线24表示为临服器连接子网络的过程;
图3中带箭头点线25表示为客户端转换为备用临时广播节点服务器(图中备服器);
图4中带箭头虚线26表示备服器替换为临服器。虚线框31表示临服器的子网络,图中为示意其呈树状,实际中的子网络31中客户端个数是不确定的,点线27表示子网络31转移,即临服器3中断时,其下子网络31转移到备服器4上,而备服器4也替换为临服器。
图中R表示存储器容量,C表示CPU性能,D表示客户端网络宽带的带宽。
本发明是将现有技术中,在网络上用于实现P2P直播而专门设立安装有P2P协议转换功能模块的多台专用P2P服务器,通过网站设立的控制服务器,在网络的客户端中控制选择请求的客户端作为服务器来取代,即作为一种动态的服务器,本实施例中称为临时广播节点服务器,而本发明中涉及的处于空置状态的临时广播节点服务器其实际仍为临时广播节点服务器,仅是处于的状态不同。而临时广播节点服务器同专门设立的P2P服务器有相同的功能,即由该服务器实现P2P直播,其具体实现的步骤:
一种运用动态广播节点技术实现P2P直播的方法,包括以下步骤:
A.网站控制服务器检索并登记网络中的直播流媒体节目信息;
B.网站控制服务器控制处理的步骤如下:
a.当控制服务器接收到客户端请求播放直播流媒体节目信息时,记录当前请求客户端性能信息,再判断当前是否有设定的临时广播节点服务器:
若否,则设定该请求的客户端为临时广播节点服务器,并将带P2P协议转换模块的插件自动安装在该设定的临时广播节点服务器上,同时将该设定的临时广播节点服务器连接到步骤A中包含有其所请求的直播流媒体节目信息的流媒体服务器上;
若是,则转到步骤b;
b.判断当前备用临时广播节点服务器是否满足预定的数量;
若否,则分析当前请求客户端的性能指标,再转到步骤c;
若是,再转到步骤d;
c.判断当前请求客户端与控制服务器中已经登记性能信息的客户端,包括与控制服务器设定的临时广播节点服务器性能要求相比较是否较优:
若是,则设定当前请求客户端为备用临时广播节点服务器,并将带P2P协议转换模块的插件自动安装在该设定的备用临时广播节点服务器上,同时将该设定的备用临时广播节点服务器连接到步骤A中包含有其所请求的直播流媒体节目信息的流媒体服务器上;
若否,则转到步骤e;
d.判断当前请求客户端的性能指标是否比已有相同直播节目的备用临时广播节点服务器较优:
若是,则用该客户端替换性能较劣的备用临时广播节点服务器,被替换掉的备用临时广播节点服务器转为当前请求客户端,再转到步骤e;
若否,则直接转到步骤e;
e.判断当前播放与请求直播内容相同的临时广播节点服务器在预设的承载负荷下,是否都已满负荷;
若否,则为该请求客户端选择一个临时广播节点服务器连接,再转到步骤f;
若是,则转到步骤g;
f.判断当前请求客户端是否是临时广播节点服务器一级子级:
若是,保留该客户端的登记信息;
若否,摒弃该客户端的登记信息;
g.判断是否能为当前请求客户端选择到一个直播相同节目的备用临时广播节点服务器:
若是,将请求客户端连接到该备用临时广播节点服务器,并保留该请求客户端的登记信息;
若否,则设定当前请求客户端为备用临时广播节点服务器,并将带P2P协议转换模块的插件自动安装在该设定的备用临时广播节点服务器上,同时将该设定的备用临时广播节点服务器连接到步骤A中包含有其所请求的直播流媒体节目信息的流媒体服务器上。
h.当控制服务器收到网络中正在直播流媒体节目的客户端的中断信息,则判断该客户端是否为由控制服务设定的广播节点服务器:
若是,则转到步骤i;
若否,则中断的客户端为临时广播节点服务器中的一级子级客户端,再转到步骤j;
i.判断该中断的客户端是否为备用广播节点服务器:
若是,则补充减少的备用广播节点服务器数量;
若否,则选择一个备用临时广播节点服务替代中断的临时广播节点服务器,并补充减少的备用广播节点服务器数量;
j.判断该临时广播节点服务器是否已经无一级子级客户端:
若是,则该临时广播节点服务器为处于空置状态临时广播节点服务器,再转到步骤k;
若否,则该临时广播节点服务器的子网络中除一级子级外的子级客户端,就近直接连接到该临时广播节点服务器,替代中断的一级子级客户端,控制服务器登记新增一级子级客户端的性能信息;
k.判断当前备用临时服务器是否满足预定数量:
若是,则取消处于空置状态的临时广播节点服务器的设定,并为其选择一个直播相同流媒体节目的临时广播节点服务器连接;
若否,则将处于空置状态的临时广播节点服务器作为备用临时广播节点服务器。
C.临时广播节点服务器以P2P协议功能向后续连接其上的客户端传输请求的直播流媒体节目。
在步骤A中,网站控制服务器可以检索并选择较为稳定的直播流媒体服务器,必要时设立若干接入直播媒体源的相对稳定流媒体服务器,免去用户的盲目选择。当然流媒体服务器是多个的,而直播的节目也是多个的,均由网站控制服务器来选择,或由网站单独设立。
设定第一个临时广播节点服务器时,如图2所示,在步骤B中,客户端通过互联网登陆网站,向控制服务器第一个发送播放直播节目的请求,控制服务器接收到客户端发送的请求信息,同时登记该请求客户端的性能指标,其指标可以是RAM容量、CPU性能、客户端网络宽带的带宽,即如图5所示,R、C、D。
控制服务器检测到当前无临时广播服务器时,就无选择地将该当前请求的客户端设定为临时广播节点服务器,并将带P2P协议转换模块的插件自动安装在该请求的客户端上,同时将该客户端连接到步骤A中包含有其所请求的直播流媒体节目信息的流媒体服务器上,接收请求播放的直播流媒体节目,使得,该请求的客户端可以在本机上播放请求的直播流媒体节目,而且其又能以P2P服务器功能向后续用户传送带P2P协议的直播流媒体节目。
后续连接并点击播放相同直播节目的客户端,除要被设定为备用临时广播节点服务器外,都被连接到第一个设定临时广播节点服务器下以P2P传输形式子网络的中,而控制服务器判断该后续请求的客户端是否是临时广播节点服务器的一级子级客户端28,若是则保留该客户端登记信息,若否则摒弃客户端登记信息。临时广播节点服务器按预先设定的承载负荷要求,在其子网络31容量变化量达到一定程度时,会向控制服务器反馈状态信息,比如刷新其负荷信息等,而控制服务器检测接收到该信息而判断临时服是否处于超出承载负荷。上述保留一级子级客户端的登记信息,主要是为了控制服务器能够随时检测到临时广播节点服务器的异常状态信息,特别是临时广播节点服务器的非正常中断信息,以便控制服务器的实时处理。
为防止临时广播节点服务器因连接中断而导致其子网络下其他用户连接的中断,控制服务器需要设定若干个空余的备用临时广播节点服务器。备用临时广播节点服务器,其设定原则和收看直播节目的方式与临时广播节点服务器相同,只是在临时广播节点服务器未出现中断等情况时,备用广播节点服务器不连接子级客户端。
备用临时广播节点服务器的数量,一般视网络容量而定,而在设定临时广播节点服务器的同时,紧接着设定备用临时广播节点服务器,一般地备用临时广播节点服务器地数量达到20台即可满足网络需求,避免大面积连接中断风暴的出现。当备用临时广播节点服务器因退出(中断)或转入临时广播节点服务器等原因而减少时,则补足备用临时服务器的数量。即控制服务器判断当前备用临时广播节点服务器是否满足预定(一般为20台)的数量,即按步骤B中步骤b所述。
临时广播节点服务器的中断,一般有两种情况,一种是正常中断,一种是非正常中断。
正常中断时,控制服务器根据临时广播节点服务器的反馈的状态信息,在检测接收到临时广播节点服务器的中断信息时,控制服务器将该临时广播节点服务器下子网络传输转移到播放相同直播节目的就近的备用临时广播节点服务器上,即由备用临时广播节点服务器替代中断的临时广播节点服务器。
非正常中断时,控制服务器根据临时广播节点服务器的一级子级的即时反馈信息,检测接收到临时广播节点服务器的中断信息时,控制服务器将临时广播节点服务器下子网络传输转移到播放相同直播节目的就近的备用临时广播节点服务器上。
当网络中某临时广播节点服务器的子网络中连接的子级客户端退出,至临时服务器不再有客户端与其连接时,即该临时广播节点服务器已经处于空置状态时,若当前备用临时广播节点服务器的数量未满足要求,则保留该临时广播节点服务器,作为备用临时广播节点服务器;若当前备用临时广播节点服务器的数量已经满足要求,则取消该临时广播节点服务器的设定,转为一般请求客户端,并为其选择一个播放相同直播节目的临时广播节点服务器或备用临时广播节点服务器连接。
本发明采用动态广播节点服务器方式代替固定、专用广播节点服务器,充分利用网络资源,减少硬件投资,同时将动态广播节点技术应用于P2P直播上,更好地利用了P2P原理的资源共享性。
机译: 通过连续比较器动态测试和连接实现至少两个感测单元的一种物理或一种技术参数的实现方法
机译: 这是一种使用有线和无线通信的控制设备,它通过实现运动员,裁判员,球类和运动员的位置数据广播发送和接收方法,展示了如何使用非音频频率接收和查看通过广播终端广播的位置广播。马匹。一种同时实现无限终端游戏和终端远程管理操作的方法。
机译: 一种提高p2p覆盖网络服务质量的方法,装置和p2p节点