一种流媒体播放中客户端选择cdn服务节点的方法_2

文档序号:9691015阅读:来源:国知局
切换CDN服务节点,其中存在判断错误的情况。因为即将播放的数据情况是有限的,无法准确的反映整个CDN服务节点使用生命周期中CDN服务节点和客户端之间的链路情况,所以需要增加一种方式来判断CDN服务节点使用生命周期内,客户端和CDN服务节点之间链路质量的大概情况。
[0039]所述⑶N服务节点的生命周期中以500ms为一个样本点,1000个样本点为生命周期最大值。
[0040]失效原则:当客户端和CDN之间的链路质量不稳定时,这时CDN切换抑制不应该发生作用,应该进行尝试切换CDN。
[0041]抑制失效工作流程:统计多VP当前使用的CDN服务节点正确收到数据可播放时长(收到正确包的数量)与丢失数据可播时长(丢失包数量)。容忍丢失可播时长率〉当前丢失可播时长/(当前正确收到数据总的可播放时长+当前丢失数据总的可播放时长)时,CDN月艮务节点切换抑制机制被使能,否则去使能。当CDN抑制流程标记打开时,CDN切换抑制才有效。
[0042]根据本发明较佳实施例,该方法还包括将生命周期最长的CDN服务节点设置为最好节点,每次进行CDN服务节点切换时都判断其是否为最好节点,若当前使用节点即为最好节点,则不对客户端所连接的CDN服务节点进行切换。初始化时,最好节点被设置成NULL。当出现一次主动切换时,必然会有某个CDN服务节点被选出来作为最好节点。当出现某个CDN服务节点主动关闭和客户端之间的连接,那么将不会进行“最好节点”的选择,因为失去比较最好节点的意义了。
[0043]多VP中会有两张⑶N列表,一张是当前可切换⑶N列表,另一张是QueryVP返回的⑶N列表;在多VP运行之初,两张表内容一模一样。
[0044]所述对客户端所连接的CDN服务节点进行切换是通过当前可切换CDN列表进行切换操作,切换时从当前可切换CDN列表中摘出列表中第一个CDN服务节点,并打开该CDN服务节点。当要打开一个新的CDN服务节点时,会检查当前可用列表是否为空,如果为空,那么就停止多VP自身的工作,不对CDN服务节点进行切换、打开和关闭(无论现在是否有CDN正在使用,如果当前没有VP正在使用的话,连接调度会来打开一个CDN服务节点);如果不为空,则从当前可切换CDN列表中摘出列表中第一个CDN服务节点,并打开该CDN服务节点。
[0045]当主动发现某个CDN服务节点质量不佳需要淘汰时,那么可能会遇到如下几种情况:
[0046]首先会看一下可可切换⑶N列表是否为空,如果为空;那么再进行“最好节点”的比较,这个CDN服务节点是否和之前比较出来最好的那个CDN服务节点是否为同一个,如果是,那多VP停止工作,并继续使用该CDN服务节点不进行任何除此之外的任何其他操作。如果当前可用列表不为空时,那么会继续做“最好节点”的比较。之后从可用列表中摘出第一个CDN服务节点,再打开该CDN服务节点。
[0047]在切换流程中,程序一般反复执行以上流程,直到“最好节点”也已经被使用过,并且该节点的播放质量不佳时,切换流程就到此为止,并且多VP将会停止和切换相关的功能。
[0048]由于一般切换流程中存在一个弊端,也就是当时用到“最好节点”时,如果由于意外的情况,该CDN服务节点主动关闭了和客户端之间的连接,那么客户端将在短暂的时间内无任何CDN服务节点使用,并且该意外情况也有可能是临时现象,或个别现象。因此需要使用CDN轮流机制来给CDN “第二次”机会。轮流机制同时为了避免在切换CDN时,造成对某个或某些⑶N的重复使用,导致无法公平的评价客户端链路情况。
[0049]所述对客户端所连接的CDN服务节点进行切换采用CDN轮流机制,轮流次数设定为N次。当CDN切换轮流达到N次时,CDN将不进行任何轮流。对于需要淘汰CDN时,将不会做任何事情(即不关闭该CDN,也不会切换一个新的CDN)。当轮流次数达到最大值时,对于由于CDN方主动关闭,那么多VP什么都不做,这时整个下载调度将没有连接任何VP,直到下一轮连接调度周期来时,才有可能会打开一个CDN。
[0050]多VP的开关是一个内部维护的状态,主要用于控制样本点的采集与否,通过样本点的统计情况来影响多VP是否对VP进行切换。当多VP被关闭时,样本点将不会收集。否则会被收集并进行统计分析。当多VP位于切换中,多VP的开关将会关闭。切换中的状态解释:当需要切换VP时,走冗余切换流程,当冗余切换中旧的VP未关闭之前,多VP的就属于切换中。如果当前有且仅有一个VP正在使用,则不属于切换中。
[0051 ] VP被分为两类,一类是VPP串中携带的CDN域名,这个被称作URL_VP。另一类是Query VP返回的⑶N域名/IP。当Query VP返回的⑶N列表为空时,整个下载调度,会使用VPP串中的⑶附也址;当QueryVP返回的⑶N不为空时,VPP串中的⑶附也址对整个下载调度不可见。
[0052]只有QueryVP返回的⑶N列表对多VP来说才是可见的,当QueryVP返回的列表为空时,多VP无法得知还有VPP串中的CDN可是进行使用。因此连接调度会在调度周期到来时,进行判断QueryVP返回是否为空列表;如果是,那么连接调度负责打开该VP(URL_VP),此时多VP功能处于关闭,且无论与该VP之间链路质量如何,都不会进行切换。
[0053]根据本发明较佳实施例,所述对客户端所连接的CDN服务节点进行切换采用冗余连接的方式进行,即在发现需要进行切换时,对于旧的CDN服务节点事先不进行任何处理和操作,另行开启一条与待使用CDN服务节点的连接,当该CDN服务节点与客户端之间握手成功后,且收到数据时,旧的CDN服务节点再被关闭。
[0054]本发明提出的一种流媒体播放中客户端选择CDN服务节点的方法,根据当前播放状态判断是否需要对客户端所连接的CDN服务节点进行切换或对切换进行抑制,在解决客户端播放流畅性问题的同时避免对客户端所连接的CDN服务节点切换操作过于频繁,保证流媒体播放的流畅性,提高用户体验。
[0055]虽然本发明已以较佳实施例揭露如上,然其并非用以限定本发明。本发明所属技术领域中具有通常知识者,在不脱离本发明的精神和范围内,当可作各种的更动与润饰。因此,本发明的保护范围当视权利要求书所界定者为准。
【主权项】
1.一种流媒体播放中客户端选择CDN服务节点的方法,其特征在于,包括下列步骤: 当连续设定时间内无数据可播时,对客户端所连接的CDN服务节点进行切换; 当在设定窗口期内有设定比例时间无法播放时,对客户端所连接的CDN服务节点进行切换; 当客户端缓存数据有设定时间可以播放时,对CDN服务节点即将切换的行为进行抑制; 当客户端所连接的CDN服务节点到目前为止的生命周期内有50 %以上的时间可以播放时,对CDN服务节点即将切换的行为进行抑制。2.根据权利要求1所述的客户端选择CDN服务节点的方法,其特征在于,所述无数据可播的连续设定时间为I?5s,此后对客户端所连接的CDN服务节点进行切换。3.根据权利要求1所述的客户端选择CDN服务节点的方法,其特征在于,所述设定窗口期为在1?20s内,判断在该时间范围内有多少时间无法播放。4.根据权利要求1所述的客户端选择CDN服务节点的方法,其特征在于,所述窗口期的设定比例时间为30 %?50 %,当出现以上比例时间无法播放时,对客户端所连接的CDN服务节点进行切换。5.根据权利要求1所述的客户端选择CDN服务节点的方法,其特征在于,所述客户端缓存数据可以播放的设定时间为大于等于5秒时,对CDN服务节点即将切换的行为进行抑制。6.根据权利要求1所述的客户端选择CDN服务节点的方法,其特征在于,所述CDN服务节点的生命周期中以500ms为一个样本点,1000个样本点为生命周期最大值。7.根据权利要求1所述的客户端选择CDN服务节点的方法,其特征在于,该方法还包括将生命周期最长的CDN服务节点设置为最好节点,每次进行CDN服务节点切换时都判断其是否为最好节点,若当前使用节点即为最好节点,则不对客户端所连接的CDN服务节点进行切换。8.根据权利要求1所述的客户端选择CDN服务节点的方法,其特征在于,所述对客户端所连接的CDN服务节点进行切换是通过当前可切换CDN列表进行切换操作,切换时从当前可切换CDN列表中摘出列表中第一个CDN服务节点,并打开该CDN服务节点。9.根据权利要求1所述的客户端选择CDN服务节点的方法,其特征在于,所述对客户端所连接的CDN服务节点进行切换采用CDN轮流机制,轮流次数设定为N次。10.根据权利要求1所述的客户端选择CDN服务节点的方法,其特征在于,所述对客户端所连接的CDN服务节点进行切换采用冗余连接的方式进行,即在发现需要进行切换时,对于旧的CDN服务节点事先不进行任何处理和操作,另行开启一条与待使用CDN服务节点的连接,当该CDN服务节点与客户端之间握手成功后,且收到数据时,旧的CDN服务节点再被关闭。
【专利摘要】本发明提出一种流媒体播放中客户端选择CDN服务节点的方法,包括下列步骤:当连续设定时间内无数据可播时,对客户端所连接的CDN服务节点进行切换;当在设定窗口期内有设定比例时间无法播放时,对客户端所连接的CDN服务节点进行切换;当客户端缓存数据有设定时间可以播放时,对CDN服务节点即将切换的行为进行抑制;当客户端所连接的CDN服务节点到目前为止的生命周期内有50%以上的时间可以播放时,对CDN服务节点即将切换的行为进行抑制。本发明提出的应用于流媒体播放中客户端选择CDN服务节点的方法,根据当前播放状态对客户端所连接的CDN服务节点进行切换或对切换进行抑制,避免CDN服务节点切换过于频繁,保证流媒体播放的流畅性,提高用户体验。
【IPC分类】H04L29/06, H04L29/08
【公开号】CN105450675
【申请号】CN201610049049
【发明人】虞陆平, 聂大鹏, 台跃华, 林肖琼, 熊涛, 祝亮
【申请人】杭州施强网络科技有限公司
【公开日】2016年3月30日
【申请日】2016年1月25日
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1