一种对引发收无光告警自动进行故障定位的装置及方法

文档序号:7760897阅读:326来源:国知局
专利名称:一种对引发收无光告警自动进行故障定位的装置及方法
技术领域
本发明涉及传输网范畴的故障定位,具体是指一种对引发收无光告警自动进行故 障定位的装置及方法。尤其指一种基于传输网管对引发收无光告警自动进行故障分析定位 的装置及方法。
背景技术
随着传输网建设规模的扩大,网络业务量的增加,网络运营维护的工作量和难度 进一步加大。如果设备上报给网管的收无光告警的数量很多,人工进行故障分析定位会耗费很 多时间,影响故障最终解决的效率;如果该告警关联的网络拓扑结构复杂,人工进行故障分 析定位容易出错。目前的技术,需要增加辅助判定的硬件到传输网络中,对于现网运行的设备,不实 用;对于光路盘失效、光物理口失效的故障分析未涉及,对于引发收无光告警的故障判定不 全面。总之,目前技术没有充分挖掘网管数据,综合分析各种条件,通过推理来定位引发收 无光告警的故障。

发明内容
针对现有技术中存在的缺陷,本发明提供一种对引发收无光告警自动进行故障定 位的装置及方法,在不增加传输网络中的硬件资源,不修改现有传输帧结构的内容的前提 下,充分挖掘网管数据,提出自动化的周期性的推理方法,综合分析引发收无光告警的各种 条件;通过数据挖掘及推理,分析随机引发收无光告警的故障原因,进行故障定位,定时自 动的完成对于引发收无光告警的故障分析定位,有利于提高提高运维人员分析收无光告警 的效率,对保证网络稳定运行有重要意义。为达到以上目的,本发明采取的技术方案是—种对引发收无光告警自动进行故障定位的装置,该装置为一种分析定位装置, 其特征在于,所述分析定位装置包括对外接口和内部模块,所述的对外接口包括启动分析的接口、结果返回的接口、读数据库的接口和读脚 本文件的接口;启动分析的接口是指调用者启动分析定位装置的接口,结果返回的接口是指调用 者接收分析定位结果的接口,分析定位装置的分析定位结果从此接口返回给调用者;读数据库的接口,完成分析定位管理器从数据库中获得配置数据、告警数据及性 能数据的功能;读脚本文件的接口,完成以下功能1、从脚本文件中获取分析定位管理器定时分 析周期T,周期T的单位为秒,缺省值为30秒;2、从脚本文件中获取收无光告警代码;3、从 脚本文件中获取网元、盘、端口通信失效的告警代码;4、从脚本文件中获取电压性能代码;分析定位管理器获取告警及性能数据,需要调用分析定位装置对外的数据库接
7Π ;分析定位管理器输出分析结果数据,需要调用分析定位装置对外的结果返回的接 Π ;当分析定位管理器接收到对外接口的启动分析的函数调用,完成脚本及配置数据 缓存之后,执行告警分析及性能分析;所述的内部模块包括三个子模块分析定位管理器子模块、执行分析定位的子模 块、支持分析定位的数据缓存子模块;所述分析定位管理器子模块为分析定位管理器;所述执行分析定位的子模块包括告警分析和性能分析两个子模块;所述支持分析定位的数据缓存子模块包括脚本数据缓存、配置数据缓存、告警数 据缓存、性能数据缓存和分析结果缓存五个子模块。在上述技术方案的基础上,所述从数据库中获得的配置数据,包含了三类配置数 据第一类配置数据是物理配置数据,物理配置数据包括了网管中局、架、框、槽和盘 数据;第二类配置数据是逻辑配置数据,逻辑配置数据包括了网管中的网元级管理系 统、网块、网元和端口 ;第三类配置数据是拓扑连接数据,拓扑连接数据至少包括了三个属性值拓扑连 接ID、源端口 ID和宿端口 ID ;所述从数据库中获得的告警数据,至少包括了五个属性值对象ID、告警序列号、 告警代码、告警开始时间及告警结束时间;所述的产生对象ID包括网元ID、盘ID以及端口 ID ;所述从数据库中获得的性能数据,至少包括了五个属性值对象ID、性能代码、性 能值大小、性能开始时间及性能结束时间;上述各ID的值均取正整数。在上述技术方案的基础上,所述的分析定位管理器,完成以下功能①、负责调用执行分析定位的子模块、对外输出分析定位结果;所述的执行分析定 位的子模块调用告警分析子模块及性能分析子模块;所述的分析定位管理器对象包括的数据成员定义了回调函数指针、分析定位装置 线程退出事件句柄。所述的回调函数定义了一种函数指针类型,该函数功能由调用者实现,作为一个 异步数据传送的通道,根据执行具体分析步骤的需要,从分析定位管理器获取告警或者性 能数据;执行告警分析子模块及性能分析子模块完毕之后,将分析结果回传给分析定位管 理器子模块;所述的分析定位装置线程,是一个周期性等待的线程,周期数据来自于脚本缓存 子模块的数据分析定位管理器定时分析周期T,当一个等待周期结束时,该线程调用执行 分析定位的子模块,具体执行告警分析子模块及性能分析子模块;②、管理分析定位处理周期、管理分析定位装置线程线程;③、直接调用读脚本文件接口 ;
8
④、直接调用读数据库的接口 ;⑤、调用配置数据缓存子模块;调用脚本数据缓存子模块;其中配置数据缓存子 模块通过分析定位管理器调用数据库接口得到的配置数据进行缓存处理;脚本数据缓存子 模块通过分析定位管理器调用读脚本文件的接口得到的脚本数据进行缓存处理。⑥、提供调用告警分析子模块的接口 ;提供了告警数据缓存、性能数据缓存、分析 结果缓存的回调接口 ;提供对外返回分析结果的接口。一种基于上述装置的对引发收无光告警自动进行故障定位的方法,包括告警分析 方法,和性能分析方法,所述这两种方法的执行步骤如下第一,收到分析定位管理器的启动告警分析子模块的函数调用;第二,调用告警数据缓存子模块;第三,告警数据缓存子模块调用脚本数据缓存子模块的收无光告警代码脚本数 据;第四,告警缓存子模块调用和分析管理器之间的回调函数接口,获得一批告警数 据,并通过收无光告警代码进行过滤,得到一组收无光告警;通过通信失效代码进行过滤,得到一组通信失效告警;然后,执行网元、盘及端口的告警分析;最后,如果网元、盘及端口的告警分析没有完成对一个收无光告警进行故障定位, 则性能数据缓存子模块调用和分析管理器之间的接口,获得一批性能数据,然后性能分析 子模块调用缓存的性能数据,执行网元断电性能分析;第五,将告警分析子模块执行的结果写入分析结果缓存中。将性能分析子模块执 行的结果写入分析结果缓存中。在上述技术方案的基础上,所述网元、盘及端口的告警分析及网元断电性能分析 的执行步骤如下第一,遍历收无光告警的缓存数据集合完毕了吗?否,去第二 ;是,去第十八;第二,获取一个收无光告警对象,记为告警1,遍历位置指向下一个元素;通过告 警1的对象ID,查找配置数据缓存的拓扑连接数据的源(或者宿)端口 ID有结果吗?是, 得到拓扑连接L,去第三;否,去第一;第三,获取拓扑连接L的宿(或者源)的端口 IDl ;第四,通过端口 IDl查询通信失效告警缓存数据集合成立吗?是,去第五;否,去 第七;第五,有一个通信失效告警对象,记为告警2,告警2的告警代码为发送失效吗? 是,去第六;否,去第七;第六,故障定位为IDl对应的光物理口发送失效,去第十七;第七,获取拓扑连接L的宿(或者源)的端口 IDl所在的盘ID2 ;第八,通过盘ID2查询通信失效告警缓存数据集合成立吗?是,去第九;否,去第第九,有一个通信失效告警对象,记为告警3,告警3的告警代码为盘失效吗?是, 去第十;否,去第十一;第十,故障定位为盘ID2失效,去第十七;
第十一,获取拓扑连接L的宿(或者源)的端口 IDl所在的网元ID3 ;第十二,通过网元ID3查询通信失效告警缓存数据集合成立吗?是,去第十三; 否,去第十六;第十三,从当前时间开始,依据时间值的减小,通过性能数据缓存调用和分析定位 管理器之间的回调接口,获得一批性能数据集合4个相邻的15分钟电源电压值V1,V2,V3 和V4,其中,Vl距离当前时间最近,而V4距离当前时间最远;第十四,在数值上Vl < V2 < V3 < V4成立吗?是,去第十五;否,去第十六;第十五,故障定位为判定为网元ID3有断电故障,去第十七;第十六,故障判定为由端口 ID查询出来的拓扑连接L对应的光纤断了 ;第十七,故障分析结果写入分析结果缓存,去第一;第十八,结束。在上述技术方案的基础上,该分析定位装置依赖集成维护系统,所述该分析定位 装置所依赖的集成维护系统在体系架构基本上分为2层集成维护系统的客户端,和集成 维护系统的服务端;分析定位装置在集成维护系统的服务端实现;具体的实现过程如下采用以太网通信,传输设备和主机1上的网元级管理系统进行配置业务、告警和 性能数据的交互;采用以太网通信,多个网元级管理系统和一个集成维护系统服务端建立通信连 接,且在具体实现中,采用RPC进行两层网管系统的通信;在主机2上的集成维护系统服务端进程的RPC客户端,收到网元级管理系统的RPC 的服务端送来的配置业务数据后,启动配置业务处理功能,采用集成维护系统体系中的对 象模型,对象ID编码范围,进行配置业务数据的映射处理,刷新集成维护系统服务端进程 中的树结构存储的对象集合,所述树结构存储的对象集合简称内存对象树,以及和数据库 表中的配置业务数据,达到内存对象树和数据库中没有脏数据的效果;在主机2上的集成维护系统的服务端进程中,建立RPC客户端和主机1上的网元 级管理系统的RPC服务端之间的持久态的事件通道,RPC客户端用于随时接收RPC服务端 上报的告警性能数据;在主机2上的集成维护系统的服务端进程中,创建分析定位装置对象,创建成功 后,调用脚本数据缓存子模块及配置数据缓存子模块;在主机2上的集成维护系统的服务端进程中和分析定位相关的三个线程,分别为 告警处理线程,性能处理线程和分析定位装置线程;前两个线程的功能在于无限期的分别等待告警数据处理完成事件到来,性能数据 处理完成事件的到来。任意一个事件到来后,从事件对应的队列中将数据读出来,写入数据 库;具体实现过程是集成维护系统的RPC客户端在收到网元级网管的RPC服务端的告警 或性能数据后,调用内存对象树的数据缓存,进行告警性能对像ID及序列号处理;处理完 毕后,分别写入告警队列及性能队列;一批告警数据处理完成,并且写告警队列完毕后,发 出告警数据处理完成事件,通知告警处理线程将告警队列中的告警数据读走,然后写数据 库;一批性能数据处理完成,并且写性能队列完毕后,发出性能数据处理完成事件,通知性 能处理线程将性能队列中的性能数据读走,然后写数据库;
分析定位装置线程在于周期性的执行告警分析子模块及性能分析子模块。在上述技术方案的基础上,所述分析定位装置线程在于周期性的进行告警分析及 性能分析,包括周期性分析流程3. 1,装载分析定位装置线程退出事件句柄hEvent ;装载计时器周期T ;3. 2,启动计时器,分析周期完毕了吗?是,去3. 3;否,去3. 4;3. 3,执行后边的“告警性能分析的流程”;去3. 2 ;3. 4,有线程退出事件到来吗 是,去3. 5;否,去3. 2;3. 5,结束;告警性能分析的流程4. 1,装载收无光告警集合oAlILosOptAmVec ;装载所有告警集合oAlIAlarmMMap ; 装载拓扑连接集合oAllTopoLinkMap ;装载端口和盘映射集合oPort2BoardMap ;装载盘和 网元映射集合oBoard2NeMap ;4. 2,遍历 oAllLosOptAmVec 完毕吗?否,去 4. 3 ;是,去 4. 18 ;4. 3,有告警对象Am ;遍历位置指向下一个元素;4. 4,由 Am. iObjectld 查找 oAlITopoLinkMap 有值吗?是,去 4. 5 ;否,去 4. 2 ;4. 5,有端口 IDl,拓扑连接 IDl ;4. 6,以端口 IDl、AMC0DE_TF、oAlIAlarmMMap为参数调用后边“通过告警类型和对 象ID查找告警的流程”为真吗?是,去4.7 ;否,去4.8 ;4. 7,以端口 IDl为主键,AMC0DE_TF为值,装入结果集合oAllResultMap中,去 4. 2 ;4.8,由端口101查找0 0汁28(^『(1]\&1 有值吗?是,去4. 9 ;否,去4. 2 ;4. 9,有盘 IDl;4. 10,以盘ID1、AMC0DE_FAIL、oAlIAlarmMMap为参数调用后边“通过告警类型和 对象ID查找告警的流程”为真吗?是,去4. 11 ;否,去4. 12 ;4. 11,以盘IDl为主键,AMC0DE_FAIL为值,装入结果集合oAlIResultMap中,去 4. 2 ;4. 12,由盘 IDl 查找 oBoard2NeMap 有值吗?是,去 4. 13 ;否,去 4. 2 ;4. 13,有网元 IDl;4. 14,以网元 IDl、AMC0DE_NEC0MFAIL、oAlIAlarmMMap 为参数调用后边“通过告警 类型和对象ID查找告警的流程”为真吗?是,去4. 15 ;否,去4. 17 ;4. 15,以网元IDl为参数调用后边“电源电压性能分析流程”为真吗?是,去4. 16 ; 否,去4. 17 ;4. 16,以网元 IDl 为主键,AMC0DE_P0WER0FF 为值,装入结果集合 oAlIResultMap 中,去4.2 ;4. 17,以拓扑连接IDl为主键,AMC0DE_FIBERBRE0KEN为值,装入结果集合 oAlIResultMap 中,去 4. 2 ;4. 18,结束;通过告警类型和对象ID查找告警的流程
5. 1,装载对象IDl ;装载告警类型1 ;装载所有告警集合OAllAlarmMMap ;5. 2,由 IDl 查找 OAllAlarmMMap 有值吗?是,去 5. 3 ;否,去 5. 8 ;5. 3,有一个pair ;遍历位置指向下一个元素;5. 4,遍历pair完毕吗?否,去5. 5 ;是,去5. 8 ;5. 5,有告警对象Aml ;遍历位置指向下一个元素;5. 6,Ami. iAlarmCode 等于告警类型 1 吗 是,去 5. 7 ;否,去 5. 4 ;5. 7,返回真,去 5.9 ;5. 8,返回假,去 5.9 ;5. 9,结束;电源电压性能分析流程6.1,装载网元 IDl;6. 2,通过数据库接口,查找网元IDl从当前时间开始向前的连续4个15分钟电源 电压的性能集合oPowerPmMap ;6. 3,oPowerPmMap 为空吗?否,去 6. 4 ;是,去 6. 11 ;6. 4,i = 1 ;6. 5,i <= 3 ?是,去 6. 6 ;否,去 6. 13 ;6. 6,由 i 查找 oPowerPmMap 有值吗?是,去 6. 7 ;否,去 6. 11 ;6. 7,有性能对象1;6. 8,由 i+Ι 查找 oPowerPmMap 有值吗?是,去 6. 9 ;否,去 6. 11 ;6. 9,有性能对象2;6. 10,对象 1. dValue >=对象 2. dValue ?是,去 6. 11 ;否,去 6. 12 ;6. 11,返回假,去 6. 14 ;6. 12,++i,去 6. 5 ;6. 13,返回真,去 6. 14 ;6. 14,结束。本发明所述的对引发收无光告警自动进行故障定位的装置及方法,具有以下优占.
^ \\\ ·第一、不增加传输网络中的硬件资源,不修改现有传输帧结构的内容,充分挖掘网 管数据,提出一种自动化的周期性的推理方法,分析随机引发收无光告警的故障的原因,达 到对引发收无光告警的故障定位。第二、减轻了人工查找分析故障的困难,避免了人工分析上述数据的可能的错误。第三、分析周期、分析相关的告警代码采用脚本文件进行灵活定制。


本发明有如下附图图1对引发收无光告警自动进行故障定位的装置的总体框图,图2网元、盘及端口的告警分析及网元断电性能分析的流程图,图3具体实施分析定位装置的软件产品的体系架构图,图4具体实施周期性分析的框架流程图,
图5具体实施分析定位装置的告警性能分析流程图,图6通过告警类型和对象ID查找告警的流程图,图7具体实施电源电压性能分析流程图。
具体实施例方式本发明所述的原理是一般性的对引发收无光告警自动进行故障定位的装置(以 下简称分析定位装置),经测试已在我公司的网管软件产品集成维护系统中得以实现。但不 限于该系统所描述的实现方法。本发明给出了一种对引发收无光告警自动进行故障定位的装置,该装置的总体框 图如图1所示,所述分析定位装置包括对外接口和内部模块,所述的对外接口包括启动分析的接口、结果返回的接口、读数据库的接口和读脚 本文件的接口;启动分析的接口是指调用者启动分析定位装置的接口,结果返回的接口是指调用 者接收分析定位结果的接口,分析定位装置的分析定位结果从此接口返回给调用者;读数据库的接口,完成分析定位管理器从数据库中获得配置数据、告警数据及性 能数据的功能;读脚本文件的接口,完成以下功能1、从脚本文件中获取分析定位管理器定时分 析周期T,周期T的单位为秒,缺省值为30秒;2、从脚本文件中获取收无光告警代码;3、从 脚本文件中获取网元、盘、端口通信失效的告警代码;4、从脚本文件中获取电压性能代码;分析定位管理器获取告警及性能数据,需要调用分析定位装置对外的数据库接 Π ;分析定位管理器输出分析结果数据,需要调用分析定位装置对外的结果返回的接 Π ;当分析定位管理器接收到对外接口的启动分析的函数调用,完成脚本及配置数据 缓存之后,执行告警分析及性能分析;所述的内部模块包括三个子模块分析定位管理器子模块、执行分析定位的子模 块、支持分析定位的数据缓存子模块;所述分析定位管理器子模块具体对应了图1中的分析定位管理器;即所述分析 定位管理器子模块为分析定位管理器;所述执行分析定位的子模块具体对应了图1中的告警分析和性能分析;即所述 执行分析定位的子模块包括告警分析和性能分析两个子模块;所述支持分析定位的数据缓存子模块具体对应了图1中5类数据缓存脚本数据 缓存、配置数据缓存、告警数据缓存、性能数据缓存和分析结果缓存;即所述支持分析定 位的数据缓存子模块包括脚本数据缓存、配置数据缓存、告警数据缓存、性能数据缓存和分 析结果缓存五个子模块。在上述技术方案的基础上,所述从数据库中获得的配置数据,包含了三类配置数 据第一类配置数据是物理配置数据,物理配置数据包括了网管中局、架、框、槽和盘 数据;
13
第二类配置数据是逻辑配置数据,逻辑配置数据包括了网管中的网元级管理系 统、网块、网元和端口 ;第三类配置数据是拓扑连接数据,拓扑连接数据至少包括了三个属性值拓扑连 接ID、源端口 ID和宿端口 ID ;所述从数据库中获得的告警数据,至少包括了五个属性值对象ID、告警序列号、 告警代码、告警开始时间及告警结束时间;所述的产生对象ID包括网元ID、盘ID以及端口 ID ;所述从数据库中获得的性能数据,至少包括了五个属性值对象ID、性能代码、性 能值大小、性能开始时间及性能结束时间;上述各ID的值均取正整数。在上述技术方案的基础上,所述的分析定位管理器(分析定位管理器子模块),完 成以下功能①、负责调用执行分析定位的子模块、对外输出分析定位结果;所述的执行分析定 位的子模块调用告警分析子模块及性能分析子模块;所述的分析定位管理器对象包括的数据成员定义了回调函数指针、分析定位装置 线程退出事件句柄。所述的回调函数定义了一种函数指针类型,该函数功能由调用者实现,作为一个 异步数据传送的通道,根据执行具体分析步骤的需要,从分析定位管理器获取告警或者性 能数据;执行告警分析子模块及性能分析子模块完毕之后,将分析结果回传给分析定位管 理器子模块;所述的分析定位装置线程,是一个周期性等待的线程,周期数据来自于脚本缓存 子模块的数据分析定位管理器定时分析周期T,当一个等待周期结束时,该线程调用执行 分析定位的子模块,具体执行告警分析子模块及性能分析子模块;②、管理分析定位处理周期、管理分析定位装置线程线程;③、直接调用读脚本文件接口 ;④、直接调用读数据库的接口 ;⑤、调用配置数据缓存子模块;调用脚本数据缓存子模块;其中配置数据缓存子 模块通过分析定位管理器调用数据库接口得到的配置数据进行缓存处理;脚本数据缓存子 模块通过分析定位管理器调用读脚本文件的接口得到的脚本数据进行缓存处理。⑥、提供调用告警分析子模块的接口 ;提供了告警数据缓存、性能数据缓存、分析 结果缓存的回调接口 ;提供对外返回分析结果的接口。在上述本发明给出的一种对引发收无光告警自动进行故障定位的装置的基础上, 本发明给出了对引发收无光告警自动进行故障定位的方法,包括告警分析方法,和性能分 析方法,所述这两种方法的执行步骤如下(参见图1)第一,收到分析定位管理器的启动告警分析子模块的函数调用,如图1中的“3)”;第二,启动告警数据缓存子模块,如图1中的“4)”;第三,告警数据缓存子模块调用收无光告警代码脚本,如图1中的“5)”;第四,告警缓存子模块调用和分析管理器之间的回调函数接口,获得一批告警数 据,如图1中的“6)”,并通过收无光告警代码进行过滤,得到一组收无光告警;
通过通信失效代码进行过滤,得到一组通信失效告警;然后,执行网元、盘及端口的告警分析;最后,如果网元、盘及端口的告警分析没有完成对一个收无光告警进行故障定位, 则性能数据缓存子模块调用和分析管理器之间的接口,获得一批性能数据,如图1中的 “ 12) ”,然后性能分析子模块调用缓存的性能数据,如图1中的“ 10”,执行网元断电性能分 析;第五,将告警分析子模块执行的结果写入分析结果缓存中,如图1中的“8) ”。将性 能分析子模块执行的结果写入分析结果缓存中,如图1中的“14)”。在上述技术方案的基础上,所述网元、盘及端口的告警分析及网元断电性能分析 的执行步骤如下(参见图2):第一,遍历收无光告警的缓存数据集合完毕了吗?否,去第二 ;是,去第十八;第二,获取一个收无光告警对象,记为告警1,遍历位置指向下一个元素;通过告 警1的对象ID,查找配置数据缓存的拓扑连接数据的源(或者宿)端口 ID有结果吗?是, 得到拓扑连接L,去第三;否,去第一;第三,获取拓扑连接L的宿(或者源)的端口 IDl;第四,通过端口 IDl查询通信失效告警缓存数据集合成立吗?是,去第五;否,去 第七;第五,有一个通信失效告警对象,记为告警2,告警2的告警代码为发送失效吗? 是,去第六;否,去第七;第六,故障定位为IDl对应的光物理口发送失效,去第十七;第七,获取拓扑连接L的宿(或者源)的端口 IDl所在的盘ID2;第八,通过盘ID2查询通信失效告警缓存数据集合成立吗?是,去第九;否,去第第九,有一个通信失效告警对象,记为告警3,告警3的告警代码为盘失效吗?是, 去第十;否,去第十一;第十,故障定位为盘ID2失效,去第十七;第十一,获取拓扑连接L的宿(或者源)的端口 IDl所在的网元ID3;第十二,通过网元ID3查询通信失效告警缓存数据集合成立吗?是,去第十三; 否,去第十六;第十三,从当前时间开始,依据时间值的减小,通过性能数据缓存调用和分析定位 管理器之间的回调接口,获得一批性能数据集合4个相邻的15分钟电源电压值V1,V2,V3 和V4,其中,Vl距离当前时间最近,而V4距离当前时间最远;第十四,在数值上Vl < V2 < V3 < V4成立吗?是,去第十五;否,去第十六;第十五,故障定位为判定为网元ID3有断电故障,去第十七;第十六,故障判定为由端口 ID查询出来的拓扑连接L对应的光纤断了 ;第十七,故障分析结果写入分析结果缓存,去第一;第十八,结束。在具体实施中,该分析定位装置所依赖的集成维护系统的体系结构如图3所示。 该分析定位装置所依赖的集成维护系统在体系架构基本上分为2层集成维护系统的客户端,和集成维护系统的服务端;分析定位装置在集成维护系统的服务端实现。具体的实现过程如下采用以太网通信,传输设备和主机1上的网元级管理系统进行配置业务、告警和 性能数据的交互,如图3的“(1)”;采用以太网通信,多个网元级管理系统和一个集成维护系统服务端建立通信连 接,且在具体实现中,采用RPC进行两层网管系统的通信,如图3的“(3),,;在主机2上的集成维护系统服务端进程的RPC客户端,收到网元级管理系统的RPC 的服务端送来的配置业务数据后,启动配置业务处理功能,采用集成维护系统体系中的对 象模型,对象ID编码范围,进行配置业务数据的映射处理,刷新集成维护系统服务端进程 中的树结构存储的对象集合,所述树结构存储的对象集合简称内存对象树,以及和数据库 表中的配置业务数据,达到内存对象树和数据库中没有脏数据的效果,如图3的“(4) ”和图 3 的“ (5),,;在主机2上的集成维护系统的服务端进程中,建立RPC客户端和主机1上的网元 级管理系统的RPC服务端之间的持久态的事件通道,RPC客户端用于随时接收RPC服务端 上报的告警性能数据;在主机2上的集成维护系统的服务端进程中,创建分析定位装置对象,创建成功 后,调用脚本数据缓存子模块及配置数据缓存子模块;在主机2上的集成维护系统的服务端进程中和分析定位相关的三个线程,分别为 告警处理线程,性能处理线程和分析定位装置线程;前两个线程的功能在于无限期的分别 等待告警数据处理完成事件到来,性能数据处理完成事件的到来。任意一个事件到来后,从 事件对应的队列中将数据读出来,写入数据库,如图3的“(8) ”;具体实现过程是集成维护 系统的RPC客户端在收到网元级网管的RPC服务端的告警或性能数据后,调用内存对象树 的数据缓存,进行告警性能对像ID及序列号处理,如图3的“(6) ”和图3的“(7) ”;处理完 毕后,分别写入告警队列及性能队列;一批告警数据处理完成,并且写告警队列完毕后,发 出告警数据处理完成事件,通知告警处理线程将告警队列中的告警数据读走,然后写数据 库;一批性能数据处理完成,并且写性能队列完毕后,发出性能数据处理完成事件,通知性 能处理线程将性能队列中的性能数据读走,然后写数据库;分析定位装置线程在于周期性的执行告警分析子模块及性能分析子模块;分析定 位装置线程具体实施,参见第一部分具体实施的数据结构定义,第二部分的具体实施的实 现流程。第一部分具体实施的数据结构定义1枚举值定义enum AMCODE{H告警代码的数值和具体网管相关,这里给出示例//端口发送失效告警代码枚举AMC0DE_TF = 1, H单盘失效告警代码枚举
AMC0DE_FAIL = 2,
网元通信中断告警代码枚举 AMCODE NEC0MFAIL = 3,
光纤断,实际设备没有该告警代码,仅仅用来判定故障。 AMCODE FIBERBRE0KEN = 4
网元断电告警代码枚举AMC0DE_P0WER0FF = 5};2、数据结构定义2.1告警数据结构struct ALARM_ADAPT{int iSequenceNo ;// ^lJ;int iObjectID ;// 对象 ID ;int iAlarmCode ;// 告警代码;int iPortNo ;//端口号;string strBeginTime ;// 开始时间;string StrEndTime ;// 结束时间;};2. 2性能数据结构struct PM_ADAPT{int iSequenceNo ;// ^lJ;int iObjectld ;// 对象 ID ;int iPMCode ;// 性能代码;int iPortNo ;//端口号;double dValue ;// 性能值;string strBeginTime ;// 开始时间;string StrEndTime ;// 结束时间;};2. 3缓存所有的通信失效告警数据multimap<int, ALARM_ADAPT>oAlIAlarmMMap ;主键为告警对象ID,值为告警对象;数据来源于告警缓存数据在读取脚本缓存的 通信失效代码数据后,过滤出来的数据。其中,通信失效代码数据,在解决方案中可以通过脚本文件定制。在具体实施例子 中枚举了有限的通信失效代码AMCODE的作为示范。2. 4缓存所有的收无光告警数据vector<ALARM_ADAPT>oAlILosOptAmVec ;元素为每个收无光告警对象;数据来源于告警缓存数据,在读取脚本缓存的 收无光代码数据后,如果告警数据的代码为收无光数据,则过滤出该告警的数据,写入oAllLosOptAmVec。此处给出说明后,具体实施中,不再描述这一收无光告警筛选过程。其中,收无光代码数据,在解决方案中可以通过脚本文件定制。2. 5缓存所有的拓扑连接数据map<int. pair<int, int>>oAlITopoLinkMap ;主键为源(宿)端ID,值为一个对pair,对的第一个值为拓扑连接ID,第二个值为 宿(源)端口 ID ;数据来源于配置数据中的拓扑连接数据。2. 6缓存所有的单盘和端口父子关系对map<int, int>oPort2BoardMap ;主键为端口 ID,值为盘ID ;数据来源于配置数据中的单盘和端口数据。2. 7缓存所有的网元和单盘父子关系对map<int, int>oBoard2NeMap ;主键为盘ID,值为网元ID ;数据来源于配置数据中的网元和盘数据。2. 8收集故障分析结果到map<int,int>oAllResultMap,主键为对象ID ;值为故障 原因。第二部分的具体实施的实现流程3具体实施周期性分析的框架流程(参见图4)3. 1,装载分析定位装置线程退出事件句柄hEvent ;装载计时器周期T ;3. 2,启动计时器,分析周期完毕了吗?是,去3. 3;否,去3. 4;3. 3,执行后边的“告警性能分析的流程”;去3. 2 ;3. 4,有线程退出事件到来吗 是,去3. 5;否,去3. 2;3. 5,结束。4具体实施告警性能分析的流程(参见图5)4. 1,装载收无光告警集合oAllLosOptAmVec ;装载所有告警集合oAlIAlarmMMap ; 装载拓扑连接集合oAllTopoLinkMap ;装载端口和盘映射集合oPort2BoardMap ;装载盘和 网元映射集合oBoard2NeMap ;4. 2,遍历 oAllLosOptAmVec 完毕吗?否,去 4. 3 ;是,去 4. 18 ;4. 3,有告警对象Am ;遍历位置指向下一个元素;4. 4,由 Am. iObjectld 查找 oAllTopoLinkMap 有值吗?是,去 4. 5 ;否,去 4. 2 ;4. 5,有端口 IDl,拓扑连接 IDl ;4. 6,以端口 IDl、AMC0DE_TF、oAlIAlarmMMap为参数调用后边“通过告警类型和对 象ID查找告警的流程”为真吗?是,去4.7 ;否,去4.8 ;4. 7,以端口 IDl为主键,AMC0DE_TF为值,装入结果集合oAlIResultMap中,去 4. 2 ;4. 8,由端口 IDl 查找 oPort2BoardMap 有值吗?是,去 4. 9 ;否,去 4. 2 ;4. 9,有盘 IDl;4. 10,以盘ID1、AMC0DE_FAIL、oAlIAlarmMMap为参数调用后边“通过告警类型和 对象ID查找告警的流程”为真吗?是,去4. 11 ;否,去4. 12 ;4. 11,以盘IDl为主键,AMC0DE_FAIL为值,装入结果集合oAlIResultMap中,去 4. 2 ;
4. 12,由盘 IDl 查找 oBoard2NeMap 有值吗?是,去 4. 13 ;否,去 4. 2 ;4. 13,有网元 IDl;4. 14,4. 14,以网元 ID1、AMC0DE_NEC0MFAIL、oAlIAlarmMMap 为参数调用后边“通 过告警类型和对象ID查找告警的流程”为真吗?是,去4. 15 ;否,去4. 17 ;4. 15,以网元IDl为参数调用后边“电源电压性能分析流程”为真吗?是,去4. 16 ; 否,去4. 17 ;4. 16,以网元 IDl 为主键,AMC0DE_P0WER0FF 为值,装入结果集合 oAlIResultMap 中,去4.2 ;4. 17,以拓扑连接IDl为主键,AMC0DE_FIBERBRE0KEN为值,装入结果集合 oAlIResultMap 中,去 4. 2 ;4. 18,结束。5通过告警类型和对象ID查找告警的流程(参见图6)5. 1,装载对象IDl ;装载告警类型1 ;装载所有告警集合oAlIAlarmMMap ;5. 2,由 IDl 查找 oAllAlarmMMap 有值吗?是,去 5. 3 ;否,去 5. 8 ;5. 3,有一个 pair;5. 4,遍历pair完毕吗?否,去5. 5 ;是,去5.8 ;5. 5,有告警对象Aml ;遍历位置指向下一个元素;5. 6,Ami. iAlarmCode 等于告警类型 1 吗 是,去 5. 7 ;否,去 5. 4 ;5. 7,返回真,去 5.9 ;5. 8,返回假,去 5.9 ;5. 9,结束。6具体实施电源电压性能分析流程(参见图7)6.1,装载网元 IDl;6. 2,通过数据库接口,查找网元IDl从当前时间开始向前的连续4个15分钟电源 电压的性能集合oPowerPmMap ;6. 3,oPowerPmMap 为空吗?否,去 6. 4 ;是,去 6. 11 ;6. 4,i = 1 ;6. 5,i <= 3 ?是,去 6. 6 ;否,去 6. 13 ;6. 6,由 i 查找 oPowerPmMap 有值吗?是,去 6. 7 ;否,去 6. 11 ;6. 7,有性能对象1;6. 8,由 i+Ι 查找 oPowerPmMap 有值吗?是,去 6. 9 ;否,去 6. 11 ;6. 9,有性能对象2;6. 10,对象 1. dValue >=对象 2. dValue ?是,去 6. 11 ;否,去 6. 12 ;6. 11,返回假,去 6. 14 ;6. 12,++i,去 6. 5 ;6. 13,返回真,去 6. 14 ;6. 14,结束。
19
权利要求
一种对引发收无光告警自动进行故障定位的装置,该装置为一种分析定位装置,其特征在于,所述分析定位装置包括对外接口和内部模块;所述的对外接口包括启动分析的接口、结果返回的接口、读数据库的接口和读脚本文件的接口;启动分析的接口是指调用者启动分析定位装置的接口,结果返回的接口是指调用者接收分析定位结果的接口,分析定位装置的分析定位结果从此接口返回给调用者;读数据库的接口,完成分析定位管理器从数据库中获得配置数据、告警数据及性能数据的功能;读脚本文件的接口,完成以下功能1、从脚本文件中获取分析定位管理器定时分析周期T,周期T的单位为秒,缺省值为30秒;2、从脚本文件中获取收无光告警代码;3、从脚本文件中获取网元、盘、端口通信失效的告警代码;4、从脚本文件中获取电压性能代码;分析定位管理器获取告警及性能数据,需要调用分析定位装置对外的数据库接口;分析定位管理器输出分析结果数据,需要调用分析定位装置对外的结果返回的接口;当分析定位管理器接收到对外接口的启动分析的函数调用,完成脚本及配置数据缓存之后,执行告警分析及性能分析;所述的内部模块包括三个子模块分析定位管理器子模块、执行分析定位的子模块、支持分析定位的数据缓存子模块;所述分析定位管理器子模块为分析定位管理器;所述执行分析定位的子模块包括告警分析和性能分析两个子模块;所述支持分析定位的数据缓存子模块包括脚本数据缓存、配置数据缓存、告警数据缓存、性能数据缓存和分析结果缓存五个子模块。
2.如权利要求1所述的对引发收无光告警自动进行故障定位的装置,其特征在于所 述从数据库中获得的配置数据,包含了三类配置数据第一类配置数据是物理配置数据,物理配置数据包括了网管中局、架、框、槽和盘数据;第二类配置数据是逻辑配置数据,逻辑配置数据包括了网管中的网元级管理系统、网 块、网元和端口 ;第三类配置数据是拓扑连接数据,拓扑连接数据至少包括了三个属性值拓扑连接 ID、源端口 ID和宿端口 ID ;所述从数据库中获得的告警数据,至少包括了五个属性值对象ID、告警序列号、告警 代码、告警开始时间及告警结束时间;所述的产生对象ID包括网元ID、盘ID以及端口 ID ; 所述从数据库中获得的性能数据,至少包括了五个属性值对象ID、性能代码、性能值 大小、性能开始时间及性能结束时间; 上述各ID的值均取正整数。
3.如权利要求1或2所述的对引发收无光告警自动进行故障定位的装置,其特征在于, 所述的分析定位管理器,完成以下功能①、负责调用执行分析定位的子模块、对外输出分析定位结果;所述的执行分析定位的 子模块调用告警分析子模块及性能分析子模块;所述的分析定位管理器对象包括的数据成员定义了回调函数指针、分析定位装置线程退出事件句柄,所述的回调函数定义了一种函数指针类型,该函数功能由调用者实现,作为一个异步 数据传送的通道,根据执行具体分析步骤的需要,从分析定位管理器获取告警或者性能数 据;执行告警分析子模块及性能分析子模块完毕之后,将分析结果回传给分析定位管理器 子模块;所述的分析定位装置线程,是一个周期性等待的线程,周期数据来自于脚本缓存子模 块的数据分析定位管理器定时分析周期T,当一个等待周期结束时,该线程调用执行分析 定位的子模块,具体执行告警分析子模块及性能分析子模块;②、管理分析定位处理周期、管理分析定位装置线程线程;③、直接调用读脚本文件接口;④、直接调用读数据库的接口;⑤、调用配置数据缓存子模块;调用脚本数据缓存子模块;其中配置数据缓存子模块 通过分析定位管理器调用数据库接口得到的配置数据进行缓存处理;脚本数据缓存子模块 通过分析定位管理器调用读脚本文件的接口得到的脚本数据进行缓存处理,⑥、提供调用告警分析子模块的接口;提供了告警数据缓存、性能数据缓存、分析结果 缓存的回调接口 ;提供对外返回分析结果的接口。
4.一种基于权利要求1或2或3所述装置的对引发收无光告警自动进行故障定位的方 法,包括告警分析方法,和性能分析方法,所述这两种方法的执行步骤如下第一,收到分析定位管理器的启动告警分析子模块的函数调用; 第二,调用告警数据缓存子模块;第三,告警数据缓存子模块调用脚本数据缓存子模块的收无光告警代码脚本数据; 第四,告警缓存子模块调用和分析管理器之间的回调函数接口,获得一批告警数据,并 通过收无光告警代码进行过滤,得到一组收无光告警; 通过通信失效代码进行过滤,得到一组通信失效告警; 然后,执行网元、盘及端口的告警分析;最后,如果网元、盘及端口的告警分析没有完成对一个收无光告警进行故障定位,则性 能数据缓存子模块调用和分析管理器之间的接口,获得一批性能数据,然后性能分析子模 块调用缓存的性能数据,执行网元断电性能分析;第五,将告警分析子模块执行的结果写入分析结果缓存中,将性能分析子模块执行的 结果写入分析结果缓存中。
5.如权利要求4所述的对引发收无光告警自动进行故障定位的方法,其特征在于,所 述网元、盘及端口的告警分析及网元断电性能分析的执行步骤如下第一,遍历收无光告警的缓存数据集合完毕了吗?否,去第二 ;是,去第十八; 第二,获取一个收无光告警对象,记为告警1,遍历位置指向下一个元素;通过告警1的 对象ID,查找配置数据缓存的拓扑连接数据的源(或者宿)端口 ID有结果吗?是,得到拓 扑连接L,去第三;否,去第一;第三,获取拓扑连接L的宿(或者源)的端口 IDl ;第四,通过端口 IDl查询通信失效告警缓存数据集合成立吗?是,去第五;否,去第七; 第五,有一个通信失效告警对象,记为告警2,告警2的告警代码为发送失效吗?是,去第六;否,去第七;第六,故障定位为IDl对应的光物理口发送失效,去第十七; 第七,获取拓扑连接L的宿(或者源)的端口 IDl所在的盘ID2; 第八,通过盘ID2查询通信失效告警缓存数据集合成立吗?是,去第九;否,去第十一; 第九,有一个通信失效告警对象,记为告警3,告警3的告警代码为盘失效吗?是,去第 十;否,去第十一;第十,故障定位为盘ID2失效,去第十七;第十一,获取拓扑连接L的宿(或者源)的端口 IDl所在的网元ID3; 第十二,通过网元ID3查询通信失效告警缓存数据集合成立吗?是,去第十三;否,去 第十六;第十三,从当前时间开始,依据时间值的减小,通过性能数据缓存调用和分析定位管理 器之间的回调接口,获得一批性能数据集合4个相邻的15分钟电源电压值V1,V2,V3和 V4,其中,Vl距离当前时间最近,而V4距离当前时间最远;第十四,在数值上Vl < V2 < V3 < V4成立吗?是,去第十五;否,去第十六; 第十五,故障定位为判定为网元ID3有断电故障,去第十七; 第十六,故障判定为由端口 ID查询出来的拓扑连接L对应的光纤断了 ; 第十七,故障分析结果写入分析结果缓存,去第一; 第十八,结束。
6.如权利要求5所述的对引发收无光告警自动进行故障定位的方法,其特征在于该 分析定位装置依赖集成维护系统,所述该分析定位装置所依赖的集成维护系统在体系架构 基本上分为2层集成维护系统的客户端,和集成维护系统的服务端;分析定位装置在集成 维护系统的服务端实现; 具体的实现过程如下采用以太网通信,传输设备和主机1上的网元级管理系统进行配置业务、告警和性能 数据的交互;采用以太网通信,多个网元级管理系统和一个集成维护系统服务端建立通信连接,且 在具体实现中,采用RPC进行两层网管系统的通信;在主机2上的集成维护系统服务端进程的RPC客户端,收到网元级管理系统的RPC的 服务端送来的配置业务数据后,启动配置业务处理功能,采用集成维护系统体系中的对象 模型,对象ID编码范围,进行配置业务数据的映射处理,刷新集成维护系统服务端进程中 的树结构存储的对象集合,所述树结构存储的对象集合简称内存对象树,以及和数据库表 中的配置业务数据,达到内存对象树和数据库中没有脏数据的效果;在主机2上的集成维护系统的服务端进程中,建立RPC客户端和主机1上的网元级管 理系统的RPC服务端之间的持久态的事件通道,RPC客户端用于随时接收RPC服务端上报 的告警性能数据;在主机2上的集成维护系统的服务端进程中,创建分析定位装置对象,创建成功后,调 用脚本数据缓存子模块及配置数据缓存子模块;在主机2上的集成维护系统的服务端进程中和分析定位相关的三个线程,分别为告警 处理线程,性能处理线程和分析定位装置线程;前两个线程的功能在于无限期的分别等待告警数据处理完成事件到来,性能数据处理 完成事件的到来,任意一个事件到来后,从事件对应的队列中将数据读出来,写入数据库; 具体实现过程是集成维护系统的RPC客户端在收到网元级网管的RPC服务端的告警或性 能数据后,调用内存对象树的数据缓存,进行告警性能对像ID及序列号处理;处理完毕后, 分别写入告警队列及性能队列;一批告警数据处理完成,并且写告警队列完毕后,发出告警 数据处理完成事件,通知告警处理线程将告警队列中的告警数据读走,然后写数据库;一批 性能数据处理完成,并且写性能队列完毕后,发出性能数据处理完成事件,通知性能处理线 程将性能队列中的性能数据读走,然后写数据库;分析定位装置线程在于周期性的执行告警分析子模块及性能分析子模块。
7.如权利要求6所述的对引发收无光告警自动进行故障定位的方法,其特征在于,所 述分析定位装置线程在于周期性的进行告警分析及性能分析,包括 周期性分析流程`3. 1,装载分析定位装置线程退出事件句柄hEvent ;装载计时器周期T ; 3. 2,启动计时器,分析周期完毕了吗?是,去3. 3 ;否,去3. 4 ; 3. `3,执行后边的“告警性能分析的流程”;去3. 2 ; 3. 4,有线程退出事件到来吗?是,去3. 5 ;否,去3. 2 ;`3.5,结束;告警性能分析的流程`4.1,装载收无光告警集合oAllLosOptAmVec ;装载所有告警集合oAllAlarmMMap ;装载 拓扑连接集合oAllTopoLinkMap ;装载端口和盘映射集合oPort2BoardMap ;装载盘和网元 映射集合 oBoard2NeMap ;`4. 2,遍历 oAlILosOptAmVec 完毕吗?否,去 4. 3 ;是,去 4. 18 ; 4. 3,有告警对象Am ;遍历位置指向下一个元素;`4. 4,由 Am. iObjectId 查找 oAlITopoLinkMap 有值吗?是,去 4. 5 ;否,去 4. 2 ; 4. 5,有端IDl,拓扑连接IDl ;`4. 6,以端ID1、AMC0DE_TF、oAlIAlarmMMap为参数调用后边“通过告警类型和对象ID 查找告警的流程”为真吗?是,去4. 7 ;否,去4. 8 ;`4. 7,以端口 IDl为主键,AMC0DE_TF为值,装入结果集合oAlIResultMap中,去4.2 ; 4. 8,由端IDl查找oPort2BoardMap有值吗?是,去4. 9 ;否,去4. 2 ; 4. 9,有盘 IDl ;`4. 10,以盘ID1、AMCODE_FAIL、oAlIAlarmMMap为参数调用后边“通过告警类型和对象 ID查找告警的流程”为真吗?是,去4. 11 ;否,去4. 12 ;`4. 11,以盘IDl为主键,AMCODE_FAIL为值,装入结果集合oAlIResultMap中,去4. 2 ; 4. 12,由盘IDl查找oBoard2NeMap有值吗?是,去4. 13 ;否,去4. 2 ; 4. 13,有网元IDl ;`4. 14,以网元IDl、AMCODE_NECOMFAIL、oAllAlarmMMap为参数调用后边“通过告警类型 和对象ID查找告警的流程”为真吗?是,去4. 15 ;否,去`4. 17 ;`4. 15,以网元IDl为参数调用后边“电源电压性能分析流程”为真吗?是,去4. 16 ;否, 去 4. 17 ;`4. 16,以网元IDl为主键,AMC0DE_P0WER0FF为值,装入结果集合oAlIResultMap中,去`4. 2 ;`4. 17,以拓扑连接IDl为主键,AMC0DE_FIBERBRE0KEN为值,装入结果集合 oAlIResultMap 中,去 4. 2 ;`4.18,结束;通过告警类型和对象ID查找告警的流程`5.1,装载对象IDl ;装载告警类型1 ;装载所有告警集合OAllAlarmMMap ; 5. 2,由 IDl 查找 oAllAlarmMMap 有值吗?是,去 5. 3 ;否,去 5. 8 ;`5. 3,有一个pair ;遍历位置指向下一个元素;`5. 4,遍历pair完毕吗?否,去5. 5 ;是,去5. 8 ;`5. 5,有告警对象Aml ;遍历位置指向下一个元素;`5. 6,Ami. iAlarmCode等于告警类型1吗 是,去5. 7 ;否,去5. 4 ;`5. 7,返回真,去5.9;`5. 8,返回假,去5.9 ;`5.9,结束;电源电压性能分析流程`6.1,装载网元IDl ;`6. 2,通过数据库接口,查找网元IDl从当前时间开始向前的连续4个15分钟电源电压 的性能集合oPowerPmMap ;`6. 3,oPowerPmMap 为空吗?否,去 6. 4 ;是,去 6. 11 ; 6. 4,i = 1 ;`6. 5,i < = 3 ?是,去 6. 6 ;否,去 6. 13 ;`6. 6,由i查找oPowerPmMap有值吗?是,去6. 7 ;否,去6. 11 ;`6. 7,有性能对象1 ;`6. 8,由i+Ι查找oPowerPmMap有值吗?是,去6. 9 ;否,去6. 11 ; 6. 9,有性能对象2 ;`6. 10,对象 1. dValue >=对象 2. dValue ?是,去 6. 11 ;否,去 6. 12 ; 6. 11,返回假,去6. 14 ; 6. 12,++i,去 6. 5 ; 6. 13,返回真,去6. 14 ; 6. 14,结束。
全文摘要
本发明涉及一种对引发收无光告警自动进行故障定位的装置及方法,包括对外接口和内部模块,所述的对外接口包括启动分析的接口、结果返回的接口、读数据库的接口和读脚本文件的接口;当分析定位管理器接收到对外接口的启动分析的函数调用,完成脚本及配置数据缓存处理之后,执行告警分析及性能分析;所述的内部模块包括三个子模块分析定位管理器子模块、执行分析定位的子模块、支持分析定位的数据缓存子模块。本发明不增加传输网中的硬件资源,不修改现有传输帧结构的内容,充分挖掘网管数据,提出自动化的周期性的推理方法,分析随机引发收无光告警的故障原因,进行故障定位。有利于提高提高运维人员分析收无光告警的效率,对保证网络稳定运行有重要意义。
文档编号H04L12/24GK101982947SQ201010294018
公开日2011年3月2日 申请日期2010年9月28日 优先权日2010年9月28日
发明者程荣, 陈天奇 申请人:烽火通信科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1