基于高斯过程的分层网管下的多SBI分配优化系统及方法
技术领域
本发明涉及通信及计算机领域,尤其涉及一种基于高斯过程的分层网管下的多SBI分配优化系统及方法。
背景技术
在管理大量网元组成的网络系统中,其网络管理系统中都会采取分层管理的方式,即NMS(Network Management System)下管理多个EMS(network Element ManagementSystem),一般都会根据网络管理需求将设备分配给不同的上层EMS系统管理,一个EMS会存在若干个SBI(Southbound interface),SBI负责管理与网元之间的连接和监控网元。这种情况下,将网元分配给哪个SBI来处理,将是一个比较复杂的问题,因为不同的网元管理复杂度不一样,并且不同时段的数据处理规模也不一样;另外,网络也会面临扩容、改造等问题;并且,SBI服务也可能突发故障,那么必须合理的切换到备用SBI上;从而导致在处理上面临着如何适时,适当的将网元分配给适合的SBI的问题。
分层网络管理系统是由NMS下管理多个EMS,EMS下管理多个SBI,SBI下管理大量不同类型网元的复合系统。其中,如何将网元分配给SBI监控,将会面临如下问题。第一,不同网元在不同时间段监控的数据规模是不同的。第二,在网络扩容改造的场景下,其网元在网络中的作用可能发生变化,那么在完成改造后其在不同时间段监控的数据规模也将发生变化。第三,SBI服务也可能突发故障,那么必须合理的切换到备用SBI上,这就需要将原故障下的SBI监控的所有网元合理的分配到其它正常的SBI服务中,同时还要保障其切换的速度,因此要求分配算法的执行效率。综上所述,在分配网元给SBI监控的时候需要综合考虑监控网元的数据规模和各个时间段的均衡,并且当发生SBI服务故障的时候能够快速重新分配。
与本发明相关的现有技术的第一种方法所采用的实现方式是在系统内由人工设置网元到SBI的管理关系,并指定其备用SBI。
如果采用上述第一种处理方式就会存在以下问题。首先,此方式下对用户的专业性提出了要求,要求用户了解更多的网络细节,增加了用户的难度。其次,在发生大规模网络扩容升级的场景下,用户将面临大规模的手工调整,由于手工调整比较缓慢,这样会使网络在调整过程中出现不稳定的情况。最后,人工干预过多需要依赖个人经验及偏好,在网络规模不大的情况下这样做非常直观,但是随着网络规模不断增加,对维护人员的要求就越高,最终系统难于维护。
与本发明相关的现有技术第二种方法是由系统自动平均分配,即EMS下有N个SBI,总共有M个网元,则每个SBI分配M/N个,若某个SBI出现故障,则M/(N-1)个,以此类推。
如果采用上述第二种处理方式就会存在以下问题。首先,由于没有考虑其网元个体情况以及不同时段的数据规模,简单的平均分配可能在极端情况出现网管操作超时现象。其次,在网络扩容改造的情况下,虽然SBI管理的网元数量上平均了,但是其监控数据量并不平均,可能导致网管不稳定。最后,采用这种方式虽然效率较高,但是由于没有考虑SBI的服务能力和网元的情况,可能出现网管系统不稳定,浪费服务资源等问题。
发明内容
本发明要解决的技术问题是:提供一种基于高斯过程的分层网管下的多SBI分配优化系统及方法,解决分层网管系统中现有技术无法很合理的分配网元被SBI监管的问题。
本发明为解决上述技术问题所采取的技术方案为:一种基于高斯过程的分层网管下的多SBI分配优化系统,其特征在于:它包括初始化模块、采集模块和分配模块;其中,
初始化模块用于在最初时,采取平均分配的方式,将网元平均分配给SBI处理;
采集模块包括数据收集模块、数据归一化模块、高斯回归数据补齐模块和定时任务模块;所述的数据收集模块用于收集采样周期内的网元容量、告警数据、性能数据、操作数据和操作时间数据;数据归一化模块用于将收集到的数据按网元容量进行分类,将一整天平均划分为若干个时间窗口,对每类网元的告警数据、性能数据、操作数据的数量按时间窗口分别进行统计量化,归一化到[0,1]范围内;高斯回归数据补齐模块用于将归一化后的数据进行分析,利用历史数据通过高斯过程回归法预测空白时间窗口中的数据,对归一化后的数据进行修正;空白时间窗口为包含有数据为0的时间窗口;定时任务模块用于按照用户的需求预置所述的采样周期,周期性的触发数据收集模块;
分配模块包括优化组合模块和SBI分配模块;SBI分配模块用于不断获得新的网元,并将获得的网元发送给优化组合模块,将新网元分配给计算得到的最优分配SBI;所述的优化组合模块用于将高斯回归数据补齐模块得到的修正后的数据,按时间窗口的次序合并到一个向量中,当获得新的网元时,根据新网元的网元容量,在采集模块查找对应分类,从而获得新的网元的各时间窗口的告警数据、性能数据、操作数据修正后的数据,将新的网元的数据按时间窗口的次序合并到一个向量中,将新的网元的向量分别与每个SBI上已有的所有向量求和,得到新的向量,计算新的向量的方差,将方差最小的新的向量对应的SBI作为最优分配SBI。
一种利用上述基于高斯过程的分层网管下的多SBI分配优化系统实现的多SBI分配优化方法,其特征在于:它包括以下步骤:
S1、在最初时,采取平均分配的方式,将网元平均分配给SBI处理;
S2、收集采样周期内的网元容量、告警数据、性能数据、操作数据和操作时间数据;
S3、将收集到的数据按网元容量进行分类,将一整天平均划分为若干个时间窗口,对每类网元的告警数据、性能数据、操作数据的数量按时间窗口分别进行统计量化,归一化到[0,1]范围内;
S4、将归一化后的数据进行分析,利用历史数据通过高斯过程回归法预测空白时间窗口中的数据,对归一化后的数据进行修正;空白时间窗口为包含有数据为0的时间窗口;
S5、将高斯回归数据补齐模块得到的修正后的数据,按时间窗口的次序合并到一个向量中,当获得新的网元时,根据新网元的网元容量,在采集模块查找对应分类,从而获得新的网元的各时间窗口的告警数据、性能数据、操作数据修正后的数据,将新的网元的数据按时间窗口的次序合并到一个向量中,将新的网元的向量分别与每个SBI上已有的所有向量求和,得到新的向量,计算新的向量的方差,将方差最小(注:说明各个时间段内的数据及操作分配约均匀)的新的向量对应的SBI作为最优分配SBI;
S6、不断获得新的网元,将新网元分配给S5计算得到的最优分配SBI;
S7、按照用户的需求预置所述的采样周期,周期性的执行S2-S6。
按上述方法,所述的S3具体为:将收集到的数据按网元容量进行分类,将一整天平均划分为若干个时间窗口,统计每个时间窗口内每类网元的告警数据总量、性能数据总量和操作数据总量,分别除以对应时间窗口内所有的告警数据总量、性能数据总量和操作数据总量,从而得到每个时间窗口内每类网元的告警量比、性能量比和操作量比,告警量比、性能量比和操作量比均在[0,1]范围内。
按上述方法,所述的S4具体为:定义f(x)为以时间窗口x为自变量,映射的对应时间窗口一类网元的告警数据总量均值、性能数据总量均值、操作数据总量均值的和;利用历史数据对f(x)进行统计计算;
当存在一类网元有空白时间窗口时,以f(x)为基础,通过高斯过程回归法预测空白时间窗口内该类网元的告警量比、性能量比和操作量比的和,告警量比、性能量比和操作量比的占比通过历史数据的占比均值估计。
按上述方法,所述的S5的向量的格式为<t1告警,t1性能,t1操作,t2告警,t2性能,t2操作,……,tn告警,tn性能,tn操作>,其中t1告警为t1时间窗口的告警量比,t1性能为t1时间窗口的性能量比,t1操作为t1时间窗口的操作量比,……,共有n个时间窗口;
其中ti表示向量中第i个元素,m为元素的个数总数,且m=3n,μ表示向量的均值。
本发明的有益效果为:采用本发明系统及方法,当有新的网元加入进来以后通过其配置的网元容量,对应到一个分类中,再根据时间窗口内告警数据、性能数据、操作数据的规模将其合理分配到一个SBI中管理;当发生网络扩容升级的时候,会先按照原先的分类进行处理,然后当定期收集数据后通过重新处理上述映射,再由系统重新调整分配;如果某个SBI服务出现故障,只用根据分类再分配一次即可;通过本发明能够实现分层网管下的多SBI分配优化,解决分层网管系统中现有技术无法很合理的分配网元被SBI监管的问题。
附图说明
图1为本发明一实施例的方法流程图。
图2为本发明一实施例的系统框图。
具体实施方式
下面结合具体实例和附图对本发明做进一步说明。
本发明提供一种基于高斯过程的分层网管下的多SBI分配优化系统,如图2所示,它包括初始化模块、采集模块和分配模块;其中,
初始化模块用于在最初时,采取平均分配的方式,将网元平均分配给SBI处理;
采集模块包括数据收集模块、数据归一化模块、高斯回归数据补齐模块和定时任务模块;所述的数据收集模块用于收集采样周期内的网元容量、告警数据、性能数据、操作数据和操作时间数据;数据归一化模块用于将收集到的数据按网元容量进行分类,将一整天平均划分为若干个时间窗口,对每类网元的告警数据、性能数据、操作数据的数量按时间窗口分别进行统计量化,归一化到[0,1]范围内;高斯回归数据补齐模块用于将归一化后的数据进行分析,利用历史数据通过高斯过程回归法预测空白时间窗口中的数据,对归一化后的数据进行修正;空白时间窗口为包含有数据为0的时间窗口;定时任务模块用于按照用户的需求预置所述的采样周期,周期性的触发数据收集模块;
分配模块包括优化组合模块和SBI分配模块;SBI分配模块用于不断获得新的网元,并将获得的网元发送给优化组合模块,将新网元分配给计算得到的最优分配SBI;所述的优化组合模块用于将高斯回归数据补齐模块得到的修正后的数据,按时间窗口的次序合并到一个向量中,当获得新的网元时,根据新网元的网元容量,在采集模块查找对应分类,从而获得新的网元的各时间窗口的告警数据、性能数据、操作数据修正后的数据,将新的网元的数据按时间窗口的次序合并到一个向量中,将新的网元的向量分别与每个SBI上已有的所有向量求和,得到新的向量,计算新的向量的方差,将方差最小的新的向量对应的SBI作为最优分配SBI。
一种利用上述基于高斯过程的分层网管下的多SBI分配优化系统实现的多SBI分配优化方法,如图1所示,包括以下步骤:
S1、在最初时,采取平均分配的方式,将网元平均分配给SBI处理;
S2、收集采样周期内的网元容量、告警数据、性能数据、操作数据和操作时间数据;
S3、将收集到的数据按网元容量进行分类,将一整天平均划分为若干个时间窗口,对每类网元的告警数据、性能数据、操作数据的数量按时间窗口分别进行统计量化,归一化到[0,1]范围内;
S4、将归一化后的数据进行分析,利用历史数据通过高斯过程回归法预测空白时间窗口中的数据,对归一化后的数据进行修正;空白时间窗口为包含有数据为0的时间窗口;
S5、将高斯回归数据补齐模块得到的修正后的数据,按时间窗口的次序合并到一个向量中,当获得新的网元时,根据新网元的网元容量,在采集模块查找对应分类,从而获得新的网元的各时间窗口的告警数据、性能数据、操作数据修正后的数据,将新的网元的数据按时间窗口的次序合并到一个向量中,将新的网元的向量分别与每个SBI上已有的所有向量求和,得到新的向量,计算新的向量的方差,将方差最小的新的向量对应的SBI作为最优分配SBI(因为方差小说明各个时间段分配均匀);
S6、不断获得新的网元,将新网元分配给S5计算得到的最优分配SBI;
S7、按照用户的需求预置所述的采样周期,周期性的执行S2-S6。
优选的,所述的S3具体为:将收集到的数据按网元容量进行分类,将一整天平均划分为若干个时间窗口(例如每个时间窗口为15分钟或1小时等),统计每个时间窗口内每类网元的告警数据总量、性能数据总量和操作数据总量,分别除以对应时间窗口内所有的告警数据总量、性能数据总量和操作数据总量,从而得到每个时间窗口内每类网元的告警量比、性能量比和操作量比,告警量比、性能量比和操作量比均在[0,1]范围内。归一化的目的在于,让不同量纲的数据可以统一处理。
优选的,所述的S4具体为:定义f(x)为以时间窗口x为自变量,映射的对应时间窗口一类网元的告警数据总量均值、性能数据总量均值、操作数据总量均值的和;利用历史数据对f(x)进行统计计算;当存在一类网元有空白时间窗口时,以f(x)为基础,通过高斯过程回归法预测空白时间窗口内该类网元的告警量比、性能量比和操作量比的和,告警量比、性能量比和操作量比的占比通过历史数据的占比均值估计。
由于按时间窗口划分,可以将数据划分到一天24小时内的若干个窗口里,也就可以把时间窗口作为自变量去映射该时间窗口一类网元的告警数据总量均值、性能数据总量均值、操作数据总量均值的和。这个映射f(x)表达了一天内不同时间窗口x的统计均值分布情况。由于存在采样周期,所以很有可能出现某几个时间窗口内没有数据。由于告警、性能、操作事件服从正态分布,因此f(x)满足高斯过程,则可以通过高斯回归来估计。即f(x)~N(m(x),k(x,x’)),其中m是均值函数,k是核函数,可选用高斯核。
数据补齐之后,f(x)的曲线更为平滑。由于预测的f(x)是该时间窗口的告警数据总量均值、性能数据总量均值、操作数据总量均值的和,上述各均值的占比可以通过现有样本时间窗口的占比均值进行估计。
优选的,所述的S5的向量的格式为<t1告警,t1性能,t1操作,t2告警,t2性能,t2操作,……,tn告警,tn性能,tn操作>,其中t1告警为t1时间窗口的告警量比,t1性能为t1时间窗口的性能量比,t1操作为t1时间窗口的操作量比,……,共有n个时间窗口;
其中ti表示向量中第i个元素,m为元素的个数总数,且m=3n,μ表示向量的均值。
SBI分配将不断获得网元,并反复将网元容量通过S5所述方法进行组合,获得的最优就分配给一个SBI,直到所有网元都完成分配。另外,如果当出现一个SBI服务突发故障,也会重新分配。由于重新分配所需的计算量主要在S5,而监控数据由于压缩到一个向量范围,以计算向量和并求方差对比,算法效率可以满足应用需求。
通过本发明可以在考虑监管网元数据规模和其不同时段监管特点的情况下合理分配SBI,并且在SBI服务发生故障的时候能够及时且合理的重新分配给其它SBI。本发明首先采用平均分配的方式,平均分配SBI监控网元,并收集一段时间的监控数据,包括:网元容量、告警数据、性能数据、操作数据和操作时间;并对上述数据进行量化,并归一化处理。其中,可能存在一些网元容量在一些时间窗口内没有数据(告警数据、性能数据、操作数据)的情况,那么可以通过高斯过程回归推测并补齐数据。这样可以得到一个网元容量中时间窗口到<告警数据、性能数据、操作数据>向量的映射。那么当有新的网元加入进来以后通过其配置的网元容量,对应到一个分类中,再根据操作时间窗口内告警数据、性能数据、操作数据的规模将其合理分配到一个SBI中管理。当发生网络扩容升级的时候,会先按照原先的分类进行处理,然后当定期收集数据后通过重新处理上述映射,再由系统重新调整分配。相应的如果某个SBI服务出现故障,只用根据分类再分配一次即可。通过本发明能够实现分层网管下的多SBI分配优化。
通过本发明,能够很好的满足下述三种场的前提下,优化分配网元被SBI管理。第一,不同网元在不同时间段监控的数据规模是不同的。第二,在网络扩容改造的场景下,其网元在网络中的作用可能发生变化,那么在完成改造后其在不同时间段监控的数据规模也将发生变化。第三,SBI服务也可能突发故障,那么必须合理的切换到备用SBI上,这就需要将原故障下的SBI监控的所有网元合理的分配到其它正常的SBI服务中,同时还要保障其切换的速度,因此要求分配算法的执行效率。
综上所述,本发明可以在充分考虑不同时段不同网元监控数据规模不同的前提下,来优化分配网元被SBI监控。同时,由于分析采样数据会定期进行,因此在网络扩容改造一定周期后将会适应新的变化。最后,当任意SBI服务突发故障,系统也能够在满足效率的前提下,完成重新优化分配。
以上实施例仅用于说明本发明的设计思想和特点,其目的在于使本领域内的技术人员能够了解本发明的内容并据以实施,本发明的保护范围不限于上述实施例。所以,凡依据本发明所揭示的原理、设计思路所作的等同变化或修饰,均在本发明的保护范围之内。