本发明涉及通信领域,具体而言,涉及一种播放控制方法和装置。
背景技术:
随着交互式网络电视(IPTV)点播节目与营销活动的逐渐增多,越来越多的人开始使用IPTV业务,根据工信部公布的数据,截至到2015年2月,全国IPTV用户总量已经达到3562万户,并且处于持续增长的发展态势之中。
随着IPTV用户持续增长,光线路终端(Optical Line Terminal,简称为OLT)的端口流量过载对IPTV用户的观看体验的影响日趋严重
针对相关技术中OLT的上联端口拥塞导致IPTV业务质量下降的问题,目前尚未提出有效的解决方案。
技术实现要素:
本发明提供了一种播放控制方法和装置,以至少解决相关技术中OLT的上联端口拥塞导致IPTV业务质量下降的问题。
根据本发明的一个方面,提供了一种播放控制方法,包括:接收携带有用户标识的播放请求;检测所述用户标识所属的光线路终端的端口流量是否超过预定阈值;在检测出所述光线路终端的端口流量超过预定阈值的情况下,拒绝所述播放请求。
优选地,检测所述用户标识所属的光线路终端的端口流量是否超过预定阈值包括:向服务器发送查询请求,其中,所述查询请求用于查询所述光线路终端的端口流量是否超过所述预定阈值;接收所述服务器发送的查询响应;若所述查询响应指示所述光线路终端的端口流量超过所述预定阈值,则检测出所述光线路终端的端口流量超过所述预定阈值。
优选地,检测所述用户标识所属的光线路终端的端口流量超过所述预定阈值包括:向服务器发送查询请求,其中,所述查询请求用于查询是否拒绝所述播放请求;接收所述服务器发送的查询响应;若所述查询响应指示拒绝所述播放请求,则检测出所述光线路终端的端口流量超过所述预定阈值。
优选地,在检测所述用户标识所属的所述光线路终端的端口流量是否超过所述预定阈值之后,所述方法还包括:在检测到所述光线路终端的端口流量未超过所述预定阈值的情况下,获取并播放所述播放请求所请求的播放内容;或者在预设时间内未检测到所 述光线路终端的端口流量是否超过所述预定阈值的信息的情况下,获取并播放所述播放请求所请求的所述播放内容。
优选地,检测所述用户标识所属的所述光线路终端的端口流量是否超过所述预定阈值还包括:判断所述播放请求所请求的播放内容是直播内容还是点播内容;其中,在判断到所述播放内容为点播内容的情况下,检测所述用户标识所属的光线路终端的端口流量是否超过预定阈值。
根据本发明的另一个方面,还提供了一种播放控制方法,包括:接收机顶盒的用户标识;查询预先保存的所述用户标识所属的光线路终端的端口流量是否超过预定阈值;根据查询结果,发送查询响应至所述机顶盒,其中,在所述光线路终端的端口流量超过所述预定阈值的情况下,所述查询响应用于指示所述机顶盒拒绝携带有所述用户标识的播放请求。
优选地,在接收所述机顶盒的所述用户标识之前,所述方法还包括:获取并保存所述光线路终端的端口流量是否超过所述预定阈值的信息。
优选地,根据所述查询结果,发送所述查询响应至所述机顶盒包括:在未查询到所述光线路终端的端口流量是否超过预定阈值的信息的情况下,发送所述查询响应,其中,所述查询响应用于指示所述机顶盒接受携带有所述用户标识的播放请求。
优选地,根据所述查询结果,发送所述查询响应至所述机顶盒包括:判断当前系统对播放请求的并发处理能力是否达到上限;在判断结果为对播放请求的并发处理能力达到上限的情况下,发送所述查询响应,其中,所述查询响应用于指示所述机顶盒接受携带有所述用户标识的播放请求。
优选地,在获取并保存所述光线路终端的端口流量是否超过所述预定阈值的信息之后,所述方法还包括:根据预设策略,老化已保存的所述光线路终端的端口流量是否超过所述预定阈值的信息。
根据本发明的另一个方面,还提供了一种播放控制装置,包括:接收模块,用于接收携带有用户标识的播放请求;检测模块,用于检测所述用户标识所属的光线路终端的端口流量是否超过预定阈值;拒绝模块,用于在检测出所述光线路终端的端口流量超过预定阈值的情况下,拒绝所述播放请求。
根据本发明的另一个方面,还提供了一种播放控制装置,包括:接收模块,用于接收机顶盒的用户标识;查询模块,用于查询预先保存的所述用户标识所属的光线路终端的端口流量是否超过预定阈值;发送模块,用于根据查询结果,发送查询响应至所述机顶盒,其中,在所述光线路终端的端口流量超过所述预定阈值的情况下,所述查询响应用于指示所述机顶盒拒绝携带有所述用户标识的播放请求。
通过本发明,采用接收携带有用户标识的播放请求;检测用户标识所属的光线路终 端的端口流量是否超过预定阈值;在检测出光线路终端的端口流量超过预定阈值的情况下,拒绝播放请求的方式,解决了相关技术中OLT的上联端口拥塞导致IPTV业务质量下降的问题,提高了IPTV业务的质量。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的播放控制方法的流程图一;
图2是根据本发明实施例的播放控制方法的流程图二;
图3是根据本发明实施例的播放控制装置的结构示意图一;
图4是根据本发明实施例的播放控制装置的结构示意图二;
图5是根据本发明优选实施例的业务流量控制系统的架构框图;
图6是根据本发明优选实施例的播放控制方法的流程图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
在本实施例中提供了一种播放控制方法,图1是根据本发明实施例的播放控制方法的流程图一,如图1所示,该流程包括如下步骤:
步骤S102,接收携带有用户标识的播放请求;
步骤S104,检测用户标识所属的光线路终端的端口流量是否超过预定阈值;
步骤S106,在检测出光线路终端的端口流量超过预定阈值的情况下,拒绝播放请求。
通过上述步骤,根据用户标识所属的光线路终端的端口流量是否超过预定阈值的判断结果,对携带有该用户标识的播放请求进行处理,从而可以使得在光线路终端的端口流量过载的情况下,限制预定用户的播放请求,从而解决了相关技术中OLT的上联端口拥塞导致IPTV业务质量下降的问题,整体上可以提高IPTV业务的服务质量。
优选地,上述步骤可以通过机顶盒等用户端设备实现,然而,通过局端设备实现上 述方法也是可以被构想的。在本实施例中,将以机顶盒为例进行描述和说明。
在上述步骤中,用户标识是用于标识用户身份的标识,例如,可以是运营商提供给给用户的用户账号,用户通过该用户账号登入IPTV播放系统获取IPTV的服务。光线路终端是用于连通机顶盒等家用设备与光纤干线的设备,一般而言,光线路终端下挂接了数个机顶盒,为多个机顶盒用户提供数据传输业务。机顶盒通过预先分配的端口与光线路终端连接。
在步骤S104中,对光线路终端的端口流量的检测可以由机顶盒来执行,优选地,可以通过接入适配平台实现对端口流量的检测。在端口流量超过预定阈值的情况下,可以生成告警信息并进行保存,这样,在机顶盒接收到播放请求之后,可以在对播放请求进行鉴权之前或者鉴权之后,进而查询用户标识对应的端口的流量是否过载,从而进行对应的处理。
优选地,在对端口流量进行检测之后,检测结果或者根据检测结果生成的告警信息可以保存在一个用于流量控制的服务器中。则在步骤S104中,机顶盒可以向服务器发送查询请求,其中,查询请求用于查询光线路终端的端口流量是否超过预定阈值;服务器根据查询请求进行查询并响应;机顶盒接收服务器发送的查询响应;若查询响应指示光线路终端的端口流量超过预定阈值,则检测出光线路终端的端口流量超过预定阈值。在上述方式中,服务器在查询响应中可以携带端口流量是否超过预定阈值的信息,从而使得机顶盒根据该信息判断是否拒绝播放请求。
优选地,机顶盒也可以向服务器发送查询请求,其中,查询请求用于查询是否拒绝播放请求;服务器根据查询请求进行查询并响应;机顶盒接收服务器发送的查询响应;若查询响应指示拒绝播放请求,则检测出光线路终端的端口流量超过预定阈值。在上述方式中,服务器在查询请求中可以直接携带拒绝播放请求的指示信息,机顶盒只需要根据该指示信息作出是否拒绝播放请求的操作。
优选地,在步骤S104之后,在检测到光线路终端的端口流量未超过预定阈值的情况下,可以根据传统流程获取并播放播放请求所请求的播放内容。此外,如果在预设时间内未检测到光线路终端的端口流量是否超过预定阈值的信息的情况下,可以按照光线路终端的端口流量未超过预定阈值的情况进行处理,此时,机顶盒可以直接获取并播放播放请求所请求的播放内容。
优选地,对于点播内容,由于播放内容为已经录制好的,用户对点播内容的实时性观看要求并不高,因此,在本发明实施例中优先考虑对点播内容进行播放控制。然而,对于直播内容而言,用户往往对直播内容的实时性观看要求高,因此,在本发明的一些实施例中可以考虑对直播内容不进行播放控制,以提升用户的观看体验。例如,在步骤S104中,机顶盒还判断播放请求所请求的播放内容是直播内容还是点播内容;其中,在判断到播放内容为点播内容的情况下,检测用户标识所属的光线路终端的端口流量是 否超过预定阈值。
在本实施例中还提供了一种播放控制方法,图2是根据本发明实施例的播放控制方法的流程图二,如图2所示,该流程包括如下步骤:
步骤S202,接收机顶盒的用户标识;
步骤S204,查询预先保存的用户标识所属的光线路终端的端口流量是否超过预定阈值;
步骤S206,根据查询结果,发送查询响应至机顶盒,其中,在光线路终端的端口流量超过预定阈值的情况下,查询响应用于指示机顶盒拒绝携带有用户标识的播放请求。
优选地,上述方法可以应用在用于流量控制的服务器上,该服务器通过周期性或者不定时的方式获取光线路终端的端口流量信息,或者针对光线路终端的端口流量的告警信息,并对这些信息进行保存。服务器根据机顶盒的请求,查询特定用户标识对应的光线路终端的端口流量信息,从而使得机顶盒可以根据对应的光线路终端的端口流量信息对播放请求进行处理。
优选地,在步骤S202之前,服务器可以获取并保存光线路终端的端口流量是否超过预定阈值的信息。这些信息可以通过接入适配平台检测;优选地,接入适配平台只对端口流量超过预定阈值的端口进行告警,并经由告警服务器发送给上述服务器保存。对于端口流量未超过预定阈值的端口可以不进行任何处理,也可以不上告该端口的流量信息,从而节约了信息的反馈量。此外,在光线路终端的端口流量降低,低于预定阈值之后,接入适配平台可以向告警服务器上报取消告警信息,进而通过告警服务器发送给上述服务器;服务器根据取消告警信息,更新保存的光线路终端的端口流量是否超过预定阈值的信息。
优选地,在步骤S206中,在服务器未查询到光线路终端的端口流量是否超过预定阈值的信息的情况下,服务器可以发送查询响应至机顶盒,其中,查询响应用于指示机顶盒接受携带有用户标识的播放请求。由于可以对端口流量未超过预定阈值的信息不进行上报或者告警,因此,在服务器查询不到线路终端的端口流量是否超过预定阈值的信息则可以认为该端口的端口流量并未超过预定阈值,因此,可以指示机顶盒接受携带有该用户标识的播放请求。
优选地,在步骤S206中,服务器还可以判断当前系统对播放请求的并发处理能力是否达到上限;在判断结果为对播放请求的并发处理能力达到上限的情况下,服务器可以发送查询响应至机顶盒,其中,查询响应用于指示机顶盒接受携带有用户标识的播放请求。即,通过上述策略可以使得服务器在并发处理能力不足的情况下,直接指示机顶盒接受携带有用户标识的播放请求,避免了由于服务器繁忙导致的正常的播放请求被拒绝的问题。
优选地,在本发明实施例中,服务器还可以根据预设策略,老化已保存的光线路终端的端口流量是否超过预定阈值的信息。通过该方式,可以刷新端口流量的告警状态,避免某些光线路终端下挂的机顶盒的播放请求长期被拒绝的问题。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
在本实施例中还提供了一种播放控制装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图3是根据本发明实施例的播放控制装置的结构框图一,如图3所示,该装置包括:接收模块32、检测模块34和拒绝模块36,其中,接收模块32,用于接收携带有用户标识的播放请求;检测模块34,耦合至接收模块32,用于检测用户标识所属的光线路终端的端口流量是否超过预定阈值;拒绝模块36,耦合至检测模块34,用于在检测出光线路终端的端口流量超过预定阈值的情况下,拒绝播放请求。
优选地,检测模块34包括:发送单元,用于向服务器发送查询请求,其中,查询请求用于查询光线路终端的端口流量是否超过预定阈值;接收单元,用于接收服务器发送的查询响应;处理单元,用于若查询响应指示光线路终端的端口流量超过预定阈值,则检测出光线路终端的端口流量超过预定阈值。
优选地,处理单元,还用于若查询响应指示拒绝播放请求,则检测出光线路终端的端口流量超过预定阈值。
优选地,装置还包括:处理模块,耦合至检测模块34,用于在检测到光线路终端的端口流量未超过预定阈值的情况下,获取并播放播放请求所请求的播放内容;或者在预设时间内未检测到光线路终端的端口流量是否超过预定阈值的信息的情况下,获取并播放播放请求所请求的播放内容。
优选地,检测模块34还用于:判断播放请求所请求的播放内容是直播内容还是点播内容;其中,在判断到播放内容为点播内容的情况下,检测用户标识所属的光线路终端的端口流量是否超过预定阈值。
在本实施例中还提供了一种播放控制装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。
图4是根据本发明实施例的播放控制装置的结构框图二,如图4所示,该装置包括:接收模块42、查询模块44和发送模块46,其中,接收模块42,用于接收机顶盒的用户标识;查询模块44,耦合至接收模块42,用于查询预先保存的用户标识所属的光线路终端的端口流量是否超过预定阈值;发送模块46,耦合至查询模块44,用于根据查询结果,发送查询响应至机顶盒,其中,在光线路终端的端口流量超过预定阈值的情况下,查询响应用于指示机顶盒拒绝携带有用户标识的播放请求。
优选地,装置还包括:获取模块,耦合至查询模块44,用于获取并保存所述光线路终端的端口流量是否超过所述预定阈值的信息。
优选地,发送模块46还用于在未查询到所述光线路终端的端口流量是否超过预定阈值的信息的情况下,发送所述查询响应,其中,所述查询响应用于指示所述机顶盒接受携带有所述用户标识的播放请求。
优选地,发送模块46还用于判断当前系统对播放请求的并发处理能力是否达到上限;在判断结果为对播放请求的并发处理能力达到上限的情况下,发送所述查询响应,其中,所述查询响应用于指示所述机顶盒接受携带有所述用户标识的播放请求。
优选地,所述装置还包括:老化模块,耦合至获取模块,用于根据预设策略,老化已保存的所述光线路终端的端口流量是否超过所述预定阈值的信息。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述模块分别位于多个处理器中。
本发明的实施例还提供了一种软件,该软件用于执行上述实施例及优选实施方式中描述的技术方案。
本发明的实施例还提供了一种存储介质。在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的程序代码:
S1,接收携带有用户标识的播放请求;
S2,检测用户标识所属的光线路终端的端口流量是否超过预定阈值;
S3,在检测出光线路终端的端口流量超过预定阈值的情况下,拒绝播放请求。
本发明的实施例还提供了一种存储介质。在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的程序代码:
S1,接收机顶盒的用户标识;
S2,查询预先保存的用户标识所属的光线路终端的端口流量是否超过预定阈值;
S3,根据查询结果,发送查询响应至机顶盒,其中,在光线路终端的端口流量超过 预定阈值的情况下,查询响应用于指示机顶盒拒绝携带有用户标识的播放请求。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。
为了使本发明实施例的描述更加清楚,下面结合优选实施例进行描述和说明。
本发明优选实施例提供了一种IPTV点播流量控制系统,该系统以IPTV用户关联资源为基础,通过采集系统网络设备的流量进行监测;当流量过载到达告警阈值时,将发送预警信息到点播流控系统,流控系统将告警信息保存到本地;电子节目菜单(Electronic Program Guide,简称为EPG)节点在收到用户播放请求时,到流控系统检测IPTV用户告警状态,对已告警的用户进行点播限制控制,从而实现对光线路终端接入设备的动态流量控制;当前状态未告警的用户按照正常业务流程进行访问。
在本发明优选实施例中采用下列的技术方案:
通过采集系统网络设备的流量进行监测,根据网络实时负载情况实现主动预警,流控系统保存用户设备的告警状态到目录项高速缓存(Dcache)中,EPG用户播放前到流控系统检测用户告警状态,对告警设备的用户进行点播限制控制,实现对OLT接入设备的动态流量控制。
下面结合附图对本发明优选实施例的技术方案进行描述和说明。
图5是根据本发明优选实施例的业务流量控制系统的架构框图,如图5所示,该系统包括:接入适配平台、综合告警系统、IPTV点播流控系统和IPTV业务系统;其中:
接入适配平台:主要通过采集流量数据实时监测接入设备端口的流量情况。
综合告警系统:每天定时同步最新的OLT设备用户数据给IPTV点播流控系统;以及接收到适配平台发来的端口流量告警时,向IPTV点播流控系统提供预警设备信息。
IPTV点播流控系统:接收综合告警系统发来的告警信息,实时更新本地Dcache中各个OLT设备的告警状态。流控系统一般可以采用3台服务器集群模式,Dcache采用322模式部署,接入网关(IAG)可以采用双机模式,以保证数据的安全和系统的健壮性。
IPTV业务系统:包括IPTV的EPG子系统,负责完成用户的各种播控请求,播放前向流控系统发起检测用户归属设备的告警状态检测请求。
图6是根据本发明优选实施例的播放控制方法的流程图,如图6所示,该流程包括 如下几个部分的流程处理:
第一部分:OLT设备用户数据同步
综合告警系统定时(例如,每天)将最新的OLT设备用户数据文件上传至文件传输协议(FTP)服务器的约定目录,同步数据格式为“分公司|&|OLT设备IP|&|usercode|&|olt设备名称”,该文件记录了各OLT设备与OLT下挂的IPTV账号的对应关系。OLT设备IP为各地市私网IP,不同地市的OLT设备IP可能会有重复,因此,流控系统可以通过“OLT设备IP+分公司”信息来唯一确定一个OLT设备。
点播流控系统每天定时(例如,凌晨2:30)执行定时任务脚本,该任务脚本用于完成以下操作:
操作1,清除Dcache空间
点播流控系统定时清空一次Dcache空间来重置告警状态,这样做的目的是防止因网络丢包或其他原因流控系统未收到综合告警系统发来的取消告警请求,导致某些OLT设备一直处于告警状态。
操作2,备份前一天的全量文件
将前一天的全量数据文件进行备份,点播流控系统本地始终保存两份全量文件(第一天除外)当天的最新全量文件和前一天的全量文件。如果当天没有获取到最新的全量文件,则使用前一天的全量数据文件导入到本地Dcache中。
操作3,同步获取FTP上当天最新的全量文件
到FTP服务器约定目录获取最新的全量同步数据文件,保存到本地并重命名为本地的预定名称。
操作4,导入全量文件到Dcache空间
将获取到的本地全量同步数据文件导入到Dcache中,其中键值(key)为用户码(usercode,相当于上述用户标识),值(value)为“分公司+olt ip”。如果当天没有最新的全量数据文件或者FTP获取失败,会拷贝本地服务器的上一次的全量文件作为最新的全量文件,再导入到dcache中。
第二部分:告警和取消告警
综合告警系统在OLT设备端口流量达到告警阀值时,主动向流控系统发起告警请求,流控系统解析消息,向dcache中插入一条记录,其中key为“分公司+olt ip”,value为0(表示告警未清除);
如果OLT设备端口流量下降到阀值以下,综合告警系统会向流控系统发起取消告警请求,流控系统更新dcache中对应的OLT设备的告警标识,其中key为“分公司+olt ip”,value为1(表示告警已清除)。
第三部分:告警检测
用户通过机顶盒发起播放请求,EPG通过后台进行业务鉴权,业务鉴权成功后,机顶盒的模版向流控系统发起OLT告警检测请求,流控系统解析消息后,根据usercode去dcache中查询对应olt设备(分公司+olt ip),再根据“分公司+olt ip”为key,去dcache中告警列表中查询设备告警状态,返回告警标识给模板。
如果标识为告警中,模版可以直接展示友好提示“请求播放受限,请稍后再试”。
如果标识为正常状态,模版直接向EPG获取播放统一资源定位符(URL),机顶盒拿到URL后,向用户归属内容分发网络(CDN)节点请求进行正常播放。
第四部分:异常处理
FTP上的OLT设备用户数据文件由综合告警系统负责定时老化。
告警/恢复告警接口中,由综合告警系统做超时保护。
流控系统接收到告警/恢复告警请求,当OLT设备信息在dcache中不存在时,直接返回处理成功响应。
告警检测接口中,在流控系统宕机或网络异常情况下,由模版进行超时保护。如果流控系统在配置时间内没有返回响应,模版认为检测通过(设备未告警),直接获取播放URL进行播放。
流控系统对服务请求流量进行控制,当请求操作超过流控系统最大并发处理能力时,对新的请求直接返回成功,不再做OLT检测判断,以保证不影响用户正常业务。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。