一种基于tr069协议的大规模交互电视终端管理方法及系统的制作方法

文档序号:7996376阅读:253来源:国知局
一种基于tr069协议的大规模交互电视终端管理方法及系统的制作方法
【专利摘要】本发明涉及一种基于TR069协议的大规模交互电视终端管理系统,包括管理服务器、ACS服务器集群;其中,所述管理服务器为所述大规模交互电视终端管理系统的入口,所述ACS服务器集群经由该管理服务器与外部的交互电视终端连接;所述管理服务器用于对所述ACS服务器集群中的ACS服务器的规模进行协调管理,为所述交互电视终端分配ACS服务器;所述ACS服务器群用于对所述交互电视终端进行包括配置、诊断、升级在内的管理。本发明使得ACS服务器可以大规模的部署,具有高可靠性、高容错性且可按需扩展等特点。
【专利说明】一种基于TR069协议的大规模交互电视终端管理方法及系统
【技术领域】
[0001]本发明涉及数字电视领域,特别涉及一种基于TR069协议的大规模交互电视终端
管理方法及系统。
【背景技术】
[0002]我国广播电视网络经过多年的建设和发展,已经拥有全球最大的用户群和较为完整的各级网络,被引入网络中的交互电视终端设备的数量在不断增加。在目前的网络终端管理中,通常米用SNMP(Simple Network Management Protocol,简单网络管理协议),但随着交互电视终端设备数量的增加,SNMP中所采用的Polling (轮循)机制会导致整个系统的效率降低,且无法保证数据的实时采集,而Trap (陷阱)机制则会浪费大量的带宽资源。因此SNMP协议已经不适合大型的网络终端管理。此外,在终端设备安装后需要进行业务配置或进行故障维护时,现有的做法是维护人员上门调试及维护,这种一对一的方式耗费了大量的人力物力。
[0003]TR069协议的全称为“CPE广域网管理协议”。它提供了对下一代网络中家庭网络设备进行管理配置的通用框架和协议,用于从网络侧对家庭网络中的网关、路由器、机顶盒等设备进行远程集中管理。TR069的出现能够解决上文中所提到的效率低、浪费带宽资源、无法保证数据的实时采集以及耗费大量人力物力实现终端设备的调试与维护等问题。在TR069协议所定义的框架中,主要包括两类逻辑设备:受管理的用户终端设备(CustomerPremise Equipment,CPE)和自动配置服务器(Auto-Configuration Server,ACS)。受管理的用户终端设备是指在家庭网络环境下,需要从网络侧进行配置和管理的设备,一般都是与运营商业务直接相关的设备,比如家庭网关、机顶盒、IP电话终端等。而所有与用户设备相关的配置、诊断、升级等工作均由统一的自动配置服务器ACS来完成。在TR069协议中,ACS可以对CPE进行安全的自动化配置管理,协议允许ACS和CPE任意一个发起连接请求,不需要维护长期的连接,没有会话请求时就可以断开连接,使得系统所需带宽减少。
[0004]我国广播电视网络中的用户数量非常庞大,管理这些交互电视终端需要大量ACS服务器协同运作。此时高效、灵活的组织这些服务器来对大规模的交互电视终端进行管理成为必须要考虑的问题,这就需要使用集群技术对整个系统进行管理。集群管理系统可以将多台ACS服务器组织起来,在网络中表现为单一的系统,该系统可以在服务器出现故障时整个系统仍可以继续工作,为用户提供高可靠性的服务;在集群中进行扩展时,不再需要购买更高性能的服务器,只需根据实际需求,在集群中加入新的服务器即可。在现有技术中尚缺乏具有上述功能的集群管理系统。

【发明内容】

[0005]本发明的目的在于克服现有技术中的缺乏对大规模交互电视终端进行集群管理的系统,从而提供一种大规模交互电视终端管理系统。[0006]为了实现上述目的,本发明提供了一种基于TR069协议的大规模交互电视终端管理系统,包括管理服务器、ACS服务器集群;其中,所述管理服务器为所述大规模交互电视终端管理系统的入口,所述ACS服务器集群经由该管理服务器与外部的交互电视终端连接;所述管理服务器用于对所述ACS服务器集群中的ACS服务器的规模进行协调管理,为所述交互电视终端分配ACS服务器;所述ACS服务器群用于对所述交互电视终端进行包括配置、诊断、升级在内的管理。
[0007]上述技术方案中,所述管理服务器用于对所述ACS服务器集群中的ACS服务器的规模进行协调管理包括:了解所述ACS服务器集群中各个ACS服务器之间的关系,对每个ACS服务器采集到的负载参数进行信息汇总并完成负载均衡基本数据的计算;所述管理服务器为所述交互电视终端分配ACS服务器包括:在收到所述交互电视终端发送的请求之后,根据当前计算的负载均衡基本数据实现负载均衡计算,根据计算结果选取合适的ACS服务器,由所选取的ACS服务器对该终端此次存活时的请求进行响应。
[0008]上述技术方案中,所述管理服务器采用双机热备的主-备方式。
[0009]上述技术方案中,所述ACS服务器集群包括多个ACS服务器,各个ACS服务器之间成环状拓扑结构,该环形拓扑结构将所有的ACS服务器连成首尾相接的环;每台ACS服务器都有一个监测和被监测的对象,分别定义为该服务器Si的前趋节点Si+1和后继节点Sp1,每台ACS服务器节点维护一个双向循环链表,每个节点中包含一个指向其前趋节点的prior指针和一个指向其后继节点的next指针,由所述前趋节点Si+1监测服务器Si的存活状况。
[0010]上述技术方案中,在所述ACS服务器集群中,每台ACS服务器都有一台备份服务器,所述备用服务器为一 ACS服务器的后继结点或前趋结点。
[0011]本发明还提供了一种基于所述的大规模交互电视终端管理系统实现的ACS服务器动态添加方法,包括:
[0012]步骤11)、发现新接入的交互电视终端,通过负载均衡计算对当前ACS服务器集群中的各个ACS服务器进行分组,得到忙组、空闲组和中等组,若所述忙组中的成员数量已经达到总成员数量的一阈值,则所述ACS服务器集群需要增加新的成员,执行下一步;其中,所述ACS服务器集群当前具有n台ACS服务器;
[0013]步骤12)、管理服务器从候选设备中选出一台Ai,将其插入空闲组中,此时Ai在集群中变为sn+1,并把它作为服务器S1的备份服务器,Sn+1的next指针指向S1,同时S1的prior指针指向Sn+1 ;然后将S1的数据拷贝到Sn+1中,由Sn+1来监测Sn的状态,S1监测Sn+1的状态;
[0014]步骤13)、将S1原来的备份服务器Sn内的备份数据清除,Sn开始备份向Sn+1发起连接的终端的数据,其他服务器不做改变;
[0015]步骤14)、所述管理服务器对拓扑更新的信息进行保存,并将Sn+1的地址分配给新开机的终端;
[0016]步骤15)、一个周期后,所述管理服务器再重新进行判断,如果新加入的服务器依然不能满足终端需求,重复步骤12) —步骤14),重新加入新的成员,否则,结束ACS服务器加入的操作。
[0017]上述技术方案中,在所述的步骤11)中,所述的负载均衡计算包括:
[0018]步骤a)、设定ACS服务器综合值的阈值Lmax、CPU使用率的阈值Cmax、内存占用率的阈值Mniax的大小;[0019]步骤b)、每台ACS服务器每隔一个周期T采集一次服务器当前的CPU使用率、内存占用率、服务器负载量,并上报给所述管理服务器;
[0020]步骤C)、所述管理服务器收到各ACS服务器的负载参数后,根据公式计算出各服务器的综合值Li:
[0021]Li = WiX Qi1 X C^k2 XM^k3X Ri),(I ≤ i ≤η)
[0022]其中,Wi = Ι/Λ,I为参考服务器的性能值,Ji为服务器Si的性能值A为服务器Si的CPU使用率,Mi为服务器Si的内存占用率,Ri为服务器Si的服务器负载丸为CPU使用率的加权值,k2为内存占用率的加权值,k3为服务器负载的加权值;
[0023]步骤d)、所述管理服务器将各ACS服务器的综合值与所述阈值Lmax进行比较,小于该阈值就执行步骤e),否则执行步骤f);
[0024]步骤e)、所述管理服务器判断各ACS服务器的CPU使用率与内存占用率是否大于设定的阈值Cmax,如果其中一个ACS服务器的参数大于或等于该阈值,就执行步骤f),否则执行步骤g);
[0025]步骤f)、设定该ACS服务器的综合负载率Ki = 1,执行步骤h);
[0026]步骤g)、计算各ACS服务器的综合负载率Ki,并按照分组的规则将各ACS服务器添加到相应的组内,其中Ki = I的服务器在此周期内不能再为其分配其他的终端;其中,
[0027]综合负载率Ki的计算公式如下:
[0028]Ki = LiA (I < i < η);
[0029]L为集群中所有服务器的综合值的总和:
[0030]L=E Li, (I ^ i ^ η);
[0031 ] 所述分组的规则包括:设定Ki值大于等于Kmax的这组为忙组,Ki值小于等于Kmin的这组为空闲组,Ki值介于Kmax和Kmin之间的这组为中等组;所述Kmax和Kmin的取值通过下列方法确定:结合实际系统中ACS服务器的硬件配置,通过多次设定Kmax和Kmin这两个值进行测试,最终保证整个系统能在最短时间内对开机终端进彳丁响应;
[0032]步骤h)、选出综合负载率Ki小于或等于Kmin的空闲组服务器,使用轮循法从该组内选取要为当前开机终端进行响应的服务器Si。
[0033]本发明又提供了一种基于所述的大规模交互电视终端管理系统实现的ACS服务器动态删除方法,包括:
[0034]步骤21 )、当某一 ACS服务器Si发生故障或过于空闲时,所述管理服务器通知服务器Si的前趋节点Si+1和后继节点Sp1 =Si即将退出该集群;
[0035]步骤22)、Si+1和Sp1收到消息后,由Sp1来做Si+1的备份服务器,Si+1的next指针指向Si+ Si^1的prior指针指向Si+1,原来S^1中保存的Si所管理的终端数据仍然保存,同时由Si+1来监测Sp1的状态;
[0036]步骤23)、所述管理服务器对拓扑更新的信息进行保存,并将Sp1的地址分配给原来由Si所管理的终端,此时这些终端进行重启,重新连接Sp1的地址来接受管理。
[0037]本发明的优点在于:
[0038]1、本发明可以解决无法对交互电视进行自动管理且需要上门服务的问题,节约了运营商的成本,保证了工作效率;
[0039]2、本发明使得ACS服务器可以大规模的部署,具有高可靠性、高容错性且可按需扩展等特点。
【专利附图】

【附图说明】
[0040]图1是本发明的大规模交互电视终端管理系统的整体结构图;
[0041]图2是终端注册认证的流程图;
[0042]图3是ACS服务器主动获取终端参数的流程图;
[0043]图4是在参数发生变化后终端主动向ACS服务器上报的流程图;
[0044]图5是ACS服务器对终端的参数配置的流程图;
[0045]图6是终端进行软件升级的流程图;
[0046]图7是ACS服务器对终端进行故障诊断的流程图。
【具体实施方式】
[0047]现结合附图对本发明作进一步的描述。
[0048]图1为本发明的大规模交互电视终端管理系统的整体结构图,如图1所示,该系统包括管理服务器、ACS服务器集群;其中,所述管理服务器为本发明的大规模交互电视终端管理系统的入口,所述ACS服务器集群经由该管理服务器与外部的用户终端设备CPE连接;所述管理服务器用于对系统中的ACS服务器的规模进行协调管理,为交互电视终端分配最适合的ACS服务器;所述ACS服务器群用于对交互电视终端进行包括配置、诊断、升级在内的管理。
[0049]下面对该系统中的各个部分做进一步的描述。
[0050]管理服务器用于对整个系统内的ACS服务器进行管理,包括:了解所述ACS服务器集群中各个ACS服务器之间的关系,如每个ACS服务器的前趋节点和后继节点分别是哪台服务器;对每个ACS服务器采集到的负载参数进行信息汇总,并完成负载均衡基本数据的计算;在收到交互电视终端发送的请求之后,根据当前计算的负载均衡基本数据实现负载均衡计算,根据计算结果选取合适的ACS服务器,由所选取的ACS服务器对该终端此次存活时的请求进行响应。
[0051]作为一种优选实现方式,本实施例中,所述管理服务器采用双机热备的主-备方式,即采用一台已经配置好的主管理服务器对ACS服务器集群进行管理,另一台服务器处于备份状态,两台服务器通过私用网络传递心跳信息,每台服务器都可以监控另一台服务器的状态。当主管理服务器发生故障时,心跳信息会发生变化,该变化通过私用网络被发现后进行双机切换,此时由备份管理服务器接管主管理服务器的工作并进行报警,提醒管理人员对故障进行维护。维护后,可以根据需求自动或手动切换,重新由原来的主管理服务器进行管理;也可以不切换,将维修好的主管理服务器作为备份机。所述管理服务器与用户终端设备CPE之间采用虚拟IP地址映射技术实现相互之间的关联。所述虚拟IP地址映射技术的使用,使得前述的主-备双机切换在终端看来没有变化,无论怎样切换,终端始终通过虚拟地址与管理服务器进行通信。这种方式可以及时有效地了解服务器的真实状态,并保障数据和服务的连续性。在其他实施例中,所述管理服务器也可以只有一台,显而易见,此类方式较本实施例中的管理服务器在稳定性、鲁棒性上有明显降低。
[0052]所述ACS服务器集群包括多个ACS服务器,每一 ACS服务器采集各自的CPU使用率、内存占用率、服务器负载量等参数并保存。所述ACS服务器集群中的各个ACS服务器之间成环状拓扑结构,该环形拓扑结构将所有的ACS服务器连成首尾相接的环。每台ACS服务器都有一个监测和被监测的对象,分别定义为该服务器Si的前趋节点Si+1和后继节点Sp1,每台ACS服务器节点维护一个双向循环链表,每个节点中包含一个指向其前趋节点的prior指针和一个指向其后继节点的next指针。由前趋节点Si+1发出消息来监测该服务器&的存活状况,若在一定时间间隔内未收到响应,则认为被监测者Si已经出现故障;同理,由该服务器Si来监测其后继节点Sp1的存活状况。据此,每台ACS服务器还保存有以下信息:本服务器Si的前趋节点Si+1、后继节点Sp1以及Si+1的前趋节点Si+2、Si^1的后继节点S1-2 ο
[0053]在该ACS服务器集群中,每台ACS服务器都有一台备份服务器,在本实施例中,一台ACS服务器Si的备份服务器是其后继结点Sm。备份的数据包括Si的前趋节点Si+1、后继节点Si+以及Si+1的前趋节点Si+2、Si^1的后继节点Sp2的信息,及当前与服务器Si进行通信的各交互电视终端上报的信息。当ACS服务器Si出现故障退出集群时,Si^1通过备份的这些信息,可以快速地接管Si的工作,不会出现终端持续等待的现象。在其他实施例中,也可以将一台ACS服务器的前趋结点作为它的备份服务器。
[0054]以上是对本发明的大规模交互电视终端管理系统的描述。下面对该系统的工作流程做进一步的说明。
[0055]1、ACS服务器的加入
[0056]本发明的系统在应用中存在以下情况:某个新开发的小区用户注册并开通了一批新的交互电视终端,在短时间内会出现终端开机数量较多的情况,按照负载均衡算法对当前ACS服务器集群中的各个ACS服务器进行分组(参见下文中负载均衡算法部分),当“忙组”(负载均衡算法将ACS服 务器集群中的ACS服务器分为忙组、空闲组和中等组)中的成员数量已经达到总成员数量的n/m时(该阈值根据当前系统中的ACS服务器的数量来设定),系统中的ACS服务器无法及时对终端的请求进行响应,会导致终端等待时间过长,此时需要在ACS服务器集群中增加新成员。
[0057]ACS服务器加入过程如下:(假设集群管理系统中有η台服务器,服务器集合为S=(Si, i = 1,2,3,…)
[0058]步骤11)、管理服务器判断是否有需要增加新成员的情况发生,如果有就执行下一
I K
少;
[0059]步骤12)、管理服务器从候选设备中选出一台Ai,将其插入空闲组中,此时Ai在集群中变为sn+1,并把它作为服务器S1的备份服务器,Sn+1的next指针指向S1,同时S1的prior指针指向Sn+1 ;然后将S1的数据拷贝到Sn+1中,由Sn+1来监测Sn的状态,S1监测Sn+1的状态;
[0060]步骤13)、将S1原来的备份服务器Sn内的备份数据清除,Sn开始备份向Sn+1发起连接的终端的数据,其他服务器不做改变;
[0061]步骤14)、管理服务器对拓扑更新的信息进行保存,并将Sn+1的地址分配给新开机的终端;
[0062]步骤15)、一个周期后,管理服务器再重新进行判断,如果新加入的服务器依然不能满足终端需求,重复步骤12)—步骤14),重新加入新的成员,否则,结束ACS服务器加入的操作。[0063]为了便于理解,下面结合实例对上述过程进行说明。
[0064]假定系统初始状态仅有两台ACS服务器S1和S2,此时这两台服务器互为备份且互相监测对方的状态。当终端数量增加,这两台ACS服务器的负载都处于饱和状态,根据负载均衡算法,此时这两台服务器的Ki=I (见负载均衡算法部分),管理服务器无法再为开机的终端分配这两台ACS的地址,两台ACS服务器已经不能满足管理需求了。管理服务器会从候选设备中轮循选出一台ACS服务器加入系统,该ACS服务器在系统中的编号为S3。然后指定S3的prior指针指向S1, S3的next指针指向S2, S2的prior指针指向S3, S1的next指针指向S3,并在这三个节点及管理服务器中更新这些信息。同时由S3成为S1的备份服务器,而S2中对S1的 备份此时被清除,并开始备份S3中的数据,仍然由S1备份S2的数据。接着,管理服务器将S3的地址分配给没有接收到响应的终端,由S3给这些终端提供管理服务。一个周期之后,管理服务器重新进行判断,如果还有大量终端没分配到地址,就再添加一个新成员到集群中,该服务器在集群中的编号为s4。接着指定S4的prior指针指向S1, S4的next指针指向S3, S3的prior指针指向S4, S1的next指针指向S4,并在这三个节点及管理服务器中更新这些信息。同时由S4成为S1的备份服务器,S3中对S1的备份此时被清除,并开始备份S4中的数据,仍然由S1备份S2的数据、S2备份S3的数据。管理服务器将S4的地址分配给没有分配地址的终端,由S4给这些终端提供管理服务。一个周期之后,管理服务器重新进行判断,如果还有终端没分配到地址,就再添加一个新成员到集群中,依此类推;如果所有终端都分配到了地址,就不再加入新成员,当下一个开机终端进行请求时,管理服务器就运行负载均衡算法,从这些服务器中选取空闲的服务器,将地址分配给终端,由该服务器来响应终端的请求。
[0065]2、ACS服务器的退出
[0066]ACS服务器集群中成员的退出有以下两种情况,第一种情况是由于设备故障、操作系统故障、软件故障等导致服务器出现宕机的情况。如果不对故障进行处理,该服务器管理的交互电视终端的请求就无法得到响应,对这些终端的管理也就失去了意义。假设服务器Si发生故障,si+1向其发出的查询其存活状况的消息,在若干个(如三个)连续周期内无法收到其响应,此时si+1就可以判断出Si已经发生了故障,并向管理服务器上报该情况,由维护人员对其进行维修,维修后作为候选设备在集群负载量大的时候加入集群。
[0067]另一种情况是某台服务器Si在连续若干个(如三个)周期内,其服务器综合值Li 一直都小于某一阈值(如8%),说明集群中服务器数量足够让所有终端处于管理状态,此时由管理服务器要求该服务器退出集群,作为候选设备在集群负载量大的时候加入集群。
[0068]ACS服务器退出过程如下:
[0069]步骤21)、管理服务器通知服务器Si的前趋节点Si+1和后继节点Sp1 =Si即将退出该集群;
[0070]步骤22)、Si+1和Sg收到消息后,由Sp1来做Si+1的备份服务器,Si+1的next指针指向Si+ Si^1的prior指针指向Si+1,原来S^1中保存的Si所管理的终端数据仍然保存,同时由Si+1来监测Sg的状态;
[0071]步骤23)、管理服务器对拓扑更新的信息进行保存,并将Sg的地址分配给原来由Si所管理的终端,此时这些终端进行重启,重新连接Sp1的地址来接受管理。
[0072]3、负载均衡算法[0073]本发明中的负载均衡算法是基于综合负载率的,采用动态与静态负载均衡相结合的方法,即轮循算法与加权最小连接数算法相结合的方法。
[0074]假设集群管理系统中有η台服务器,服务器集合为S= (Si, i = 1,2,3,…,η台服务器具有不同的配置,导致处理能力的不同。在进行负载均衡计算时,首先根据集群中每台服务器的硬件配置估计其性能,选择集群中的一台合适的服务器节点作为参考节点,假设它的性能为I,其权值设为1,则计算其余服务器节点的性能J与权值W。例如,某台服务器Si的性能为Ji,则该服务器的权值就为Wi = I/Ji。可知服务器Si的CPU使用率Ci,内存占用率Mi,服务器负载Ri ;设定ki为CPU使用率的加权值,k2为内存占用率的加权值,k3为服务器负载的加权值,则服务器Si的综合值的计算公式为:
[0075]Li = WiX Qi1 X C^k2 XM^k3X Ri) (I ≤ i ≤ η)
[0076]集群中所有服务器的综合值的总和为:
[0077]L = E Li, (I ^ i ^ η)
[0078]服务器Si的综合负载率为:
[0079]Ki = LiA (I ^ i ^ η)
[0080]根据各个服务器节点的Ki值将服务器划分成三组,设定Ki值大于等于Kmax的这组为忙组,Ki值小于等于Kmin的这组为空闲组,Ki值介于Kmax和Kmin之间的这组为中等组;其中Kmax和Kmin的取值可通过下列方法确定:结合实际系统中ACS服务器的硬件配置,通过多次设定Kmax和Kmin这两个值进行测试,最终保证整个系统能在最短时间内对开机终端进行响应。
[0081]完成对服务器的分组后,在一定时间内开机的交互电视终端,优先分配给空闲的这组,组内的各个成员通过轮循法选出合适的服务器来响应。该方法可以避免频繁采集服务器负载参数,也可以避免一定时间内开机的终端过多时导致的负载不均衡的情况。
[0082]负载均衡算法的具体实现步骤如下:
[0083]步骤31)、设定ACS服务器综合值的阈值为Lmax,CPU使用率的阈值为Cmax,内存占用率的阈值为Mniax ;
[0084]步骤32)、每台ACS服务器每隔一个周期T采集一次服务器当前的CPU使用率、内存占用率、服务器负载量,上报给管理服务器;
[0085]步骤33)、管理服务器收到各ACS服务器的负载参数后,根据公式计算出各服务器的综合值Li ;
[0086]步骤34)、管理服务器将各服务器的综合值与其阈值Lmax进行比较,小于该阈值就执行步骤35),否则执行步骤36);
[0087]步骤35)、管理服务器判断各ACS服务器的CPU使用率与内存占用率是否大于设定的阈值Cmax,如果其中一个ACS服务器的参数大于或等于该阈值,就执行步骤36),否则执行步骤37);
[0088]步骤36)、设定该ACS服务器的综合负载率Ki = 1,执行步骤38);
[0089]步骤37)、计算各ACS服务器的综合负载率Ki,并按照分组的规则将各ACS服务器添加到相应的组内,其中Ki = I的服务器在此周期内不能再为其分配其他的终端;
[0090]步骤38)、选出综合负载率Ki小于等于Kmin的空闲组服务器,使用轮循法从该组内选取要为当前开机终端进行响应的服务器Si。[0091]管理服务器会通过DHCP方式将所选取的为当前开机终端进行响应的服务器Si的地址下发给此次开机的交互电视终端,交互电视终端拿到该地址后,会向该地址的ACS服务器发起连接,在该终端此次开机到关机的整个过程中,都由该服务器对其进行管理。一个周期T之后,ACS服务器集群中的各ACS服务器重新采集负载参数,管理服务器通过计算后对各ACS服务器重新进行分组。
[0092]本发明的大规模交互电视终端管理系统能够对大规模的终端进行有序、高效的管理。下面对终端与该管理系统之间的交互过程进行说明。
[0093]1、CPE终端的接入流程
[0094]终端与ACS服务器进行通信,必须从系统的入口节点即管理服务器处获得ACS服务器的地址,将终端接入本发明的系统的流程如下:
[0095]步骤a)、在终端上设置DHCP的方式来请求管理它的ACS服务器的地址;
[0096]步骤b)、管理服务器作为DHCP服务器在终端开机时,通过各ACS服务器采集的信息,给各个ACS服务器进行分组,并使用轮循法从空闲组内选择一台ACS服务器Si ;
[0097]步骤C)、管理服务器将Si的地址作为DHCP option配置给终端;
[0098]步骤d)、终端接收到Si的地址后,在本次开机到关机的过程中,都与Si进行通信,由Si对该终端进行管理;
[0099]步骤e)、该终端下次开机要重新执行上述步骤,获得一个新的ACS地址。
[0100]2、ACS服务器对CPE终端的管理流程
[0101]CPE终端在得到ACS服务器的地址后与ACS服务器建立通信,ACS服务器对其进自动化管理。所述自动化管理包括以下流程:注册认证、参数监视、参数配置、软件升级及故障诊断,下面对这些管理流程分别加以说明。
[0102](I)注册认证
[0103]ACS服务器要对首次接入系统的CPE终端进行注册认证,CPE终端才能接受ACS的管理。CPE终端可以通过发送Inform报文自动连接ACS ;ACS也可以在任何时候自动向终端发起连接请求,通过终端的认证之后,可以与终端建立连接。图2是终端注册认证的流程图,参考该图,其注册认证的过程如下:
[0104]步骤I)、CPE终端向ACS发起连接,发送带BOOTSTRAP事件的Inform报文;
[0105]步骤2)、ACS对终端进行认证,根据终端提供的OU1-SerialNumber查找匹配的帐号和密码及终端用户相应的配置文件,返回InformResponse报文;
[0106]步骤3 )、终端向ACS发送一个空报文;
[0107]步骤4)、ACS向终端发送一个GetParameterValues报文,要求检查终端的帐号/密码;
[0108]步骤5)、终端返回一个携带有帐号的GetParameterValuesResponse报文;
[0109]步骤6)、ACS根据帐号及OU1-SerialNumber匹配,并根据一定算法自动生成双向的DIGEST认证帐号,并发送SetParameterValues报文,将新的帐号设置到终端上;
[0110]步骤7)、终端返回 SetParameterValuesResponse 报文;
[0111]步骤8)、根据帐号及 OU1-SerialNumber 的判断,ACS 发送 SetParameterValues 的报文,根据查找的结果设置终端新的帐号、密码以及相应的业务配置;
[0112]步骤9)、终端回应 SetParameterValuesResponse ;[0113]步骤10)、ACS发送一个Download的报文,要求终端下载初始化的配置文件;
[0114]步骤11)、终端回应 DownloadResponse ;
[0115]步骤12)、终端根据Download报文中提供的URL参数进行配置文件下载;
[0116]步骤13)、结束会话,终端重新发起携带TRANSFERCOMPLETE事件的Inform报文;
[0117]步骤14)、ACS 回应 InformResponse ;
[0118]步骤15)、终端发送TransferComplete的报文,报告下载的起始和结束时间,及成功或失败消息;
[0119]步骤16)、ACS 回应 TransferCompleteResponse 结束会话。
[0120](2)参数监视
[0121 ] TR069协议为CPE终端生成有效的监控信息提供支持,ACS可以通过这些信息来监控终端的状态和性能统计。终端也可以将自身状态的更新情况动态通知给ACS。ACS服务器对终端状态的监视主要是通过对状态参数的获取,可以在必要时由ACS主动去获取终端的参数,根据获取到的参数来判断终端目前的情况;或者由终端在参数发生变化的时候,主动向ACS进行上报。
[0122]附图3是ACS服务器主动获取终端参数的流程图。此时由ACS向终端发送ConnectRequest的GET请求让终端发起一个到ACS的连接,获取参数的过程如下:
[0123]步骤I)、CPE终端发起连接,发送携带有CONNECT 10NREQUEST的Inform报文;
[0124]步骤2)、ACS 返回 InformResponse 报文;
[0125]步骤3)、终端向ACS发送一个空报文;
[0126]步骤4)、ACS向终端发送GetParameterValues的报文,要求获得终端的特定参数;
[0127]步骤5)、终端回应GetParameterValuesResponse携带该参数的值,结束会话。
[0128]附图4是在参数发生变化后终端主动向ACS服务器上报的流程图。此时由终端向ACS发起连接,参数变化上报的过程如下:
[0129]步骤I)、终端发起连接,发送携带有CONNECT 10NREQUET的Inform报文;
[0130]步骤2)、ACS 返回 InfrmResponse 报文;
[0131]步骤3)、终端向ACS发送一个空报文;
[0132]步骤4)、ACS向终端发送SetParameterAttributes的报文,设定参数值改变需要上报的参数属性;
[0133]步骤5)、终端回应 SetParameterAttributesResponse ;
[0134]步骤6)、ACS回复空报文或结束Session ;
[0135]步骤7)、当参数值发生改变时,终端自动向ACS发送携带有VALUE CHANGE的Inform手艮文;
[0136]步骤8)、ACS 回应 InformResponse 结束会话。
[0137](3)参数配置
[0138]当CPE终端刚刚接入本发明的系统,或是在以后的任何时间,ACS服务器都可以自动下发一些配置参数给CPE终端,完成对终端的自动配置或重新配置。涉及到的配置参数包括规定的参数和用户自定义的参数。在进行参数配置时,ACS为终端新增一实例并配置相关参数,此时由ACS向终端发送Connect Request的GET请求让终端发起一个到ACS的连接。附图5是ACS服务器对终端的参数配置的流程图。参数配置的过程如下:
[0139]步骤I)、终端发起连接,发送携带有CONNECT 10NREQUST的Inform报文;
[0140]步骤2)、ACS 返回 InformResponse 报文;
[0141]步骤3 )、终端向ACS发送一个空报文;
[0142]步骤4)、ACS向终端发送AddObject的报文,为终端生成实例;
[0143]步骤5)、终端回应 AddObjectResponse ;
[0144]步骤6)、ACS向终端发送SetParameterValues报文,配置实例或其他参数;
[0145]步骤7)、终端回应 SetParameterValuesResponse 结束会话。
[0146](4)软件升级
[0147]管理员将配置文件等重要文件保存在ACS或其他文件服务器上,当ACS发现某个软件或固件的版本有更新时,将会通知CPE终端进行下载,终端会到指定的文件服务器去下载,下载后将结果反馈给ACS。在软件升级的过程中,由ACS向终端发送Connect Request的GET请求让终端发起一个到ACS的连接,附图6是终端进行软件升级的流程图。软件升级的过程如下:
[0148]步骤I)、终端发起连接,发送携带有CONNECT 10NREQUEST的Inform报文;
[0149]步骤2)、ACS 返回 InformResponse 报文;
[0150]步骤3 )、终端向ACS发送一个空报文;
[0151]步骤4)、ACS向终端发送Download报文;
[0152]步骤5)、终端响应DownloadResponse,若返回参数中的Status=O,则直接跳至步骤9);
[0153]步骤6)、终端到文件服务器下载软件;
[0154]步骤7)、若Status=I,且终端在下载并使新软件生效时无需重启,则进入以下流程:
[0155]步骤7-1)、终端发送TransferComplete报文,上报下载并应用成功、及升级的详细信息;
[0156]步骤7-2)、ACS 回应 TransferComplete 确认,跳至步骤 9);
[0157]步骤8)、若Status=I,且终端在下载并使新软件生效时需重启,则进入以下流程:
[0158]步骤8-1)、终端重启,并发送携带有BOOT和TRANSFERC0MPLET的Inform报文,上报下载并应用成功;
[0159]步骤8-2)、ACS 响应 InformResponse ;
[0160]步骤8-3)、终端发送TransferComplete报文,上报下载并应用成功及升级的详细
信息;
[0161]步骤8-4)、ACS 回应 TransferCompleteResponse 确认,跳至步骤 9);
[0162]步骤9)、结束会话。
[0163](5)故障诊断
[0164]TR069协议为终端生成有效的诊断信息提供支持,由ACS先对告警参数进行设置,当超过设定的阈值时由终端进行上报。此时由ACS向终端发送Connect Request的GET请求让终端发起一个到ACS的连接,附图7是ACS服务器对终端进行故障诊断的流程图,其故障诊断的过程如下:[0165]步骤I )、终端发送携带有CONNECT 10NREQUST的Inform报文;
[0166]步骤2)、ACS 返回 InformResponse 报文;
[0167]步骤3 )、终端向ACS发送一个空报文;
[0168]步骤4)、ACS向终端发送SetParameterValues报文,设置告警参数;
[0169]步骤5)、终端回应 SetParameterValuesResponse ;
[0170]步骤6)、结束会话;
[0171]步骤7)、当终端监控的参数在相应阈值范围之外时,发送携带有X CT-COM ALARM的Inform报文;
[0172]步骤8)、ACS 回应 InformResponse,结束会话。
[0173]最后所应说明的是,以上实施例仅用以说明本发明的技术方案而非限制。尽管参照实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,对本发明的技术方案进行修改或者等同替换,都不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。
【权利要求】
1.一种基于TR069协议的大规模交互电视终端管理系统,其特征在于,包括管理服务器、ACS服务器集群;其中,所述管理服务器为所述大规模交互电视终端管理系统的入口,所述ACS服务器集群经由该管理服务器与外部的交互电视终端连接;所述管理服务器用于对所述ACS服务器集群中的ACS服务器的规模进行协调管理,为所述交互电视终端分配ACS服务器;所述ACS服务器群用于对所述交互电视终端进行包括配置、诊断、升级在内的管理。
2.根据权利要求1所述的基于TR069协议的大规模交互电视终端管理系统,其特征在于,所述管理服务器用于对所述ACS服务器集群中的ACS服务器的规模进行协调管理包括:了解所述ACS服务器集群中各个ACS服务器之间的关系,对每个ACS服务器采集到的负载参数进行信息汇总并完成负载均衡基本数据的计算;所述管理服务器为所述交互电视终端分配ACS服务器包括:在收到所述交互电视终端发送的请求之后,根据当前计算的负载均衡基本数据实现负载均衡计算,根据计算结果选取合适的ACS服务器,由所选取的ACS服务器对该终端此次存活时的请求进行响应。
3.根据权利要求2所述的基于TR069协议的大规模交互电视终端管理系统,其特征在于,所述管理服务器采用双机热备的主-备方式。
4.根据权利要求1所述的基于TR069协议的大规模交互电视终端管理系统,其特征在于,所述ACS服务器集群包括多个ACS服务器,各个ACS服务器之间成环状拓扑结构,该环形拓扑结构将所有的ACS服务器连成首尾相接的环;每台ACS服务器都有一个监测和被监测的对象,分别定义为该服务器Si的前趋节点Si+1和后继节点Sg,每台ACS服务器节点维护一个双向循环链表,每个节点中包含一个指向其前趋节点的prior指针和一个指向其后继节点的next指针,由所述前趋节点Si+1监测服务器Si的存活状况。
5.根据权利要求4所述的基于 TR069协议的大规模交互电视终端管理系统,其特征在于,在所述ACS服务器集群中,每台ACS服务器都有一台备份服务器,所述备用服务器为一ACS服务器的后继结点或前趋结点。
6.一种基于权利要求1-5之一所述的大规模交互电视终端管理系统实现的ACS服务器动态添加方法,包括: 步骤11)、发现新接入的交互电视终端,通过负载均衡计算对当前ACS服务器集群中的各个ACS服务器进行分组,得到忙组、空闲组和中等组,若所述忙组中的成员数量已经达到总成员数量的一阈值,则所述ACS服务器集群需要增加新的成员,执行下一步;其中,所述ACS服务器集群当前具有n台ACS服务器; 步骤12)、管理服务器从候选设备中选出一台Ai,将其插入空闲组中,此时Ai在集群中变为Sn+1,并把它作为服务器S1的备份服务器,Sn+1的next指针指向S1,同时S1的prior指针指向Sn+1 ;然后将S1的数据拷贝到Sn+1中,由Sn+1来监测Sn的状态,S1监测Sn+1的状态; 步骤13)、将S1原来的备份服务器Sn内的备份数据清除,Sn开始备份向Sn+1发起连接的终端的数据,其他服务器不做改变; 步骤14)、所述管理服务器对拓扑更新的信息进行保存,并将Sn+1的地址分配给新开机的终端; 步骤15)、一个周期后,所述管理服务器再重新进行判断,如果新加入的服务器依然不能满足终端需求,重复步骤12)—步骤14),重新加入新的成员,否则,结束ACS服务器加入的操作。
7.根据权利要求6所述的ACS服务器动态添加方法,其特征在于,在所述的步骤11)中,所述的负载均衡计算包括: 步骤a)、设定ACS服务器综合值的阈值Lmax、CPU使用率的阈值Cmax、内存占用率的阈值Mmax的大小; 步骤b)、每台ACS服务器每隔一个周期T采集一次服务器当前的CPU使用率、内存占用率、服务器负载量,并上报给所述管理服务器; 步骤C)、所述管理服务器收到各ACS服务器的负载参数后,根据公式计算出各服务器的综合值Li:
Li = WiX (k1XCi+k2XMi+k3XRi),(1≤ i ≤ η) 其中,Wi = Ι/Λ,I为参考服务器的性能值,Ji为服务器Si的性能值A为服务器Si的CPU使用率,Mi为服务器Si的内存占用率,Ri为服务器Si的服务器负载屯为CPU使用率的加权值,k2为内存占用率的加权值,k3为服务器负载的加权值; 步骤d)、所述管理服务器将各ACS服务器的综合值与所述阈值Lmax进行比较,小于该阈值就执行步骤e),否则执行步骤f ); 步骤e)、所述管理服务器判断各ACS服务器的CPU使用率与内存占用率是否大于设定的阈值Cmax,如果其中一个ACS服务器的参数大于或等于该阈值,就执行步骤f),否则执行步骤g); 步骤f)、设定该ACS服务器的综合负载率Ki=I,执行步骤h); 步骤g)、计算各ACS服务器的综合负载率Ki,并按照分组的规则将各ACS服务器添加到相应的组内,其中Ki = I的服务器在此周期内不能再为其分配其他的终端;其中, 综合负载率Ki的计算公式如下:
Ki = Li/L, (I < i < η); L为集群中所有服务器的综合值的总和:
L=E Li, (I ^ i ^ η); 所述分组的规则包括:设定Ki值大于等于Kmax的这组为忙组,Ki值小于等于Kmin的这组为空闲组,Ki值介于Kmax和Kmin之间的这组为中等组;所述Kmax和Kmin的取值通过下列方法确定:结合实际系统中ACS服务器的硬件配置,通过多次设定Kmax和Kmin这两个值进行测试,最终保证整个系统能在最短时间内对开机终端进彳丁响应; 步骤h)、选出综合负载率Ki小于或等于Kmin的空闲组服务器,使用轮循法从该组内选取要为当前开机终端进行响应的服务器Si。
8.一种基于权利要求1-5之一所述的大规模交互电视终端管理系统实现的ACS服务器动态删除方法,包括: 步骤21 )、当某一 ACS服务器Si发生故障或过于空闲时,所述管理服务器通知服务器Si的前趋节点Si+1和后继节点Sp1 =Si即将退出该集群; 步骤22)、Si+1和Sp1收到消息后,由Sp1来做Si+1的备份服务器,Si+1的next指针指向Si+ Sh的prior指针指向Si+1,原来S^1中保存的Si所管理的终端数据仍然保存,同时由si+1来监测Sp1的状态; 步骤23)、所述管理服务器对拓扑更新的信息进行保存,并将Sg的地址分配给原来由Si所管理 的终端,此时这些终端进行重启,重新连接Sp1的地址来接受管理。
【文档编号】H04N21/25GK103974140SQ201310048732
【公开日】2014年8月6日 申请日期:2013年2月6日 优先权日:2013年2月6日
【发明者】李松斌, 赵嫚嫚, 戴琼兴, 邓浩江 申请人:中国科学院声学研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1