首页> 中国专利> 分布式多层多域体系Multi-Agent协同故障诊断方法

分布式多层多域体系Multi-Agent协同故障诊断方法

摘要

本发明公开了一种分布式多层多域体系Multi-Agent协同故障诊断方法,分为域间故障诊断和域内故障诊断,域间故障诊断诊断系统级的故障,域内故障诊断诊断内部节点的故障,域内故障诊断采用移动Agent的方式进行诊断,将故障诊断任务分散到各个域首,实现了分布式故障诊断。实现了故障诊断的分布化,避免了网络堵塞,提高了故障诊断的速度和效率,保证了大型网络的可靠运行,有效的提高通信网络诊断的实时性、可操作性,使网络具有更好的扩展性。

著录项

  • 公开/公告号CN104660448A

    专利类型发明专利

  • 公开/公告日2015-05-27

    原文格式PDF

  • 申请/专利权人 江苏建筑职业技术学院;

    申请/专利号CN201510048017.9

  • 申请日2015-01-24

  • 分类号H04L12/24(20060101);H04L12/26(20060101);

  • 代理机构51216 四川君士达律师事务所;

  • 代理人芶忠义

  • 地址 221000 江苏省徐州市泉山区学苑路26号

  • 入库时间 2023-12-18 09:04:05

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-12-27

    专利权的转移 IPC(主分类):H04L12/24 登记生效日:20191206 变更前: 变更后: 申请日:20150124

    专利申请权、专利权的转移

  • 2018-09-25

    授权

    授权

  • 2015-12-09

    实质审查的生效 IPC(主分类):H04L12/24 申请日:20150124

    实质审查的生效

  • 2015-05-27

    公开

    公开

说明书

技术领域

本发明属于计算机网络技术领域,涉及一种分布式多层多域体系Multi-Agent协同故障诊断方法。

背景技术

上世纪80年代末以来,以信息技术为核心的高新技术群迅猛发展,以TCP/IP等协议为核心的计算机网络已经推广到各个领域,特别是Internet,已形成统治性局面。现代计算机网络是一个大型、复杂、高度分布化的网络,而且伴随着移动技术的发展,人们可以通过网络实现互联互通,资源共享,从此世界变得触手可及。

现代计算机网络正向大网络、大融合方向推进,目的在于使异构网络同构化,从而来实现一个互通互达、高效稳定的整体。计算机网络属于一种在功能上、结构上和空间上高度分布的巨型系统,一个整体效能佳、效益高、反应快及鲁棒性好的网络变得越来越重要。同时现代网络又是对实时性和可靠性要求高的系统,为了保证整个系统正常运行,对其进行智能高效的故障诊断是十分必要的。

故障在大型、复杂的网络中是不可避免的,而通过对网络设备及链路进行快速的检测定位和修复,在很大程度上,可以提高网络的可靠性。在大型的计算机网络中,一个简单的故障可能会产生多个故障报警,从而使得对故障源的检测定位成为一项很困难的任务。并且在爆发多个故障的情况下,这个问题愈加严重。因此,对网络故障的诊断就显得越来越重要。

Agent技术的提出,为网络故障诊断提供一种新的思路,它以其智能性、可移动性、自治性等特点已广泛应用于故障诊断[3]。纵观现今网络发展的总体情况,基于Agent的故障诊断技术受到了相当的重视,有了一定的发展,但还不能完全适应日益复杂网络环境快速故障诊断能力的要求,技术水平还有待进一步提高。计算机网络是一个高度分布式的复杂系统,现代网络故障诊断技术大都基于集中式故障诊断体系结构,已经不能适用现代网络的故障诊断,基于Agent技术的分布式故障诊断取得了一定的成果,但是Multi-Agent的协同诊断体系结构、任务分配和移动Agent的路径规划有待进一步研究。

分布式故障诊断针对被诊断设备地域和功能上高度分布的特点,把系统的故障诊断分散到系统的各个节点上进行,通过资源共享、分散诊断,避免了网络的拥塞,提高了系统网络资源的利用率,从根本上解决了集中式故障诊断的瓶颈。其中分布式体系结构又分为完全分布式体系结构和分层分布式体系结构两种。

(1)完全分布式体系结构

完全分布式体系结构是由地位和作用完全平等的节点组成,各个节点可以完全独立的进行数据采集和诊断维护,也可以配合其他节点进行协同工作。为了保持维护网络的整体性,在完全分布式体系结构中每个节点都要储存整个系统和系统中其他节点的信息,包括节点位置、网络连通性、网络链路占用率等。

完全分布式体系结构的网络比较简单,组网灵活、迅速,在源节点和目的节点间一般有多条路径存在,这样可以通过多条路径进行通信,减少阻塞,防止网络中出现传输瓶颈,可以为不同的业务类型选择适当的路径,即选择与信息流的特殊要求相适应的路由。系统中所有节点是完全对等的,系统的健壮性好。

完全分布式体系结构的优点是结构简单、系统健壮性强、资源利用率高。节点与节点进行通信时,不只有唯一的信道,系统可以根据信道的占用率等情况,灵活的选择信道进行通信,这样既提高了系统的利用率,又防止了网络的拥塞。系统中的所有节点都是对等的,某个节点的故障对于整个系统的影响较小。

完全分布式结构的缺点也是显而易见的,即可扩充性差。完全分布式体系结构节点存储的信息量与节点的数量成正比,且系统中的节点往往是动态变化的,所以系统中的节点愈多,各个节点用来存储和处理其他节点所损耗的资源就愈大。在大规模的网络系统中,节点既要储存大量的节点信息又要处理各种网络业务,就会导致节点负载过大,最后导致系统瘫痪。

(2)分层分布式结构

分层分布式结构结合了集中式体系结构和完全分布式体系结构的特点,首先将节点划分为多个层,然后将每层的节点再划分为多个域,每个域由一个管理其他节点的域首和成员节点组成。在分层分布式结构中,域首负责管理域内所有节点,储存和处理域内节点和路由信息,域首既可以预先指定,也可以通过选举算法选举产生。分层分布式结构的优点是:可扩充性好、资源利用率高、系统健壮性强,而且分层分布式结构符合现有的网络结构实情。

综上所述,完全分布式结构可扩充性差,网络规模受限,不适合大型复杂的现代计算机网络。完全分布式体系结构节点存储的信息量与节点的数量成正比,且系统中的节点往往是动态变化的,所以系统中的节点愈多,各个节点用来存储和处理其他节点所损耗的资源就愈大。在大规模的网络系统中,节点既要储存大量的节点信息又要处理各种网络业务,就会导致节点负载过大,最后导致系统瘫痪。

而分层分布式结构结合了集中式体系结构和完全分布式体系结构的优点,资源利用率高、可扩展性好,与其他结构相比更适合使用在大型计算机网络诊断的体系结构中。

发明内容

本发明的目的是提供一种分布式多层多域体系Multi-Agent协同故障诊断方法,实现了故障诊断的分布化,避免了网络堵塞,提高了故障诊断的速度和效率,保证了大型网络的可靠运行,有效的提高通信网络诊断的实时性、可操作性,使网络具有更好的扩展性。

本发明所采用的技术方案是,一种分布式多层多域体系Multi-Agent协同故障诊断方法,分为域间故障诊断和域内故障诊断,域间故障诊断诊断系统级的故障,域内故障诊断诊断内部节点的故障,域内故障诊断采用移动Agent的方式进行诊断,将故障诊断任务分散到各个域首,实现了分布式故障诊断。

本发明的特征还在于,

域间故障诊断连同多个域首进行复杂任务的故障诊断,当一个域首无法诊断任务时,它就会联合多个域首形成共同诊断知识空间,以此来协同诊断故障。

域首的选举采用指派的方式,然后根据地域关系将同层节点分为多个域;系统初始化时,首先按照上下级关系划分为多个层,然后再按照隶属关系划分为多个域,并选出域首;域中的每个节点都要自主的向所在域的域首进行信息注册,并保持更新,域中的节点使用其MAC地址作为其唯一标识,并且每个节点都要建立域内节点信息库,用来储存节点和网络的信息;域内的节点都是动态的,如果一个外部节点想要加入域,则需要向域首提出注册申请,域首根据域内的管理规则批准后,该节点即可注册并加入该域。

Agent的结构分为五部分,分别是控制协同模块1、通信模块5、专家系统模块6、数据采集与预处理模块3与存储模块2;控制协同模块1是Agent的核心,负责控制Agent与其他Agent的系统,及于专家系统的互动;通信模块5负责利用KQML语言与其他Agent进行通信,处理通信中的错误;专家系统模块6负责故障的诊断,它可以直接从Agent的存储模块中提取信息进行故障诊断。数据采集与预处理模块3负责数据采集工作,将采集来的数据进行预处理,除去冗余信息,提高数据的利用率;存储模块2负责暂时存储采集来的重要数据和故障诊断结果。

Agent的通信语言采用KQML。

域内故障诊断中,采用的是SNMP技术、双独立互联技术进行数据采集。

本发明的有益效果是,将Agent技术引入到分布式多层多域体系结构,构建了分布式Multi-Agent故障诊断体系结构,并通过对Multi-Agent系统理论与技术的研究分析,提出了分布式Multi-Agent协同故障诊断模型,该模型分为域内协同故障诊断和域间协同故障诊断,实现了分布式故障诊断,大大提高了故障诊断的效率和准确率。

附图说明

图1是Agent结构示意图。

图2是双独立互联系统模型结构图。

其中,1.控制协同模块,2.存储模块,3.数据采集与预处理模块,4.数据采集对象,5.通信模块,6.专家系统模块,7.其他Agent,8.计算机,9.交换机/路由器,10.串口共享器。

具体实施方式

下面结合附图和具体实施方式对本发明进行详细说明。

本发明一种分布式多层多域体系Multi-Agent协同故障诊断方法,分为域间故障诊断和域内故障诊断。域间故障诊断主要诊断系统级的故障,域内故障诊断主要诊断内部节点的故障,域内故障诊断采用移动Agent的方式进行诊断。

1.域间故障诊断:

域间协同故障诊断主要连同多个域首进行复杂任务的故障诊断,当一个域首无法诊断任务时,它就会联合多个域首形成共同诊断知识空间,以此来协同诊断故障。

2.域内故障诊断:

域内故障诊断主要任务是直接检测域内各个监控节点的故障,及时的发现与修复故障。但是域内节点Agent的能力有限,很多时候无法检测故障,这就需要域首派遣移动Agent进行故障诊断。很多时候是多个节点需要进行故障检测,这时移动代理就需要在各个域内节点内进行巡游故障诊断。

分布式Multi-Agent故障诊断体系结构充分利用了分布式多层多域体系结构的高效性和高扩展性的特点,将故障诊断任务分散到各个域首,实现了分布式故障诊断。首先根据地域和功能将节点划分为3层,然后每一层再按照节点的地域关系进行域的划分,最后选出域首。域首既负责对域内节点的管理,也负责进行层间和域间通信。分布式多层多域体系结构可以根据域的大小、各层域的数量等进行灵活扩充。

具体来说,域首的选举采用指派的方式,然后根据地域关系将同层节点分为多个域。系统初始化时,首先按照上下级关系划分为多个层,然后再按照隶属关系划分为多个域,并选出域首。域中的每个节点都要自主的向所在域的域首进行信息注册,并保持更新,域中的节点使用其MAC地址作为其唯一标识,并且每个节点都要建立域内节点信息库,用来储存节点和网络的信息。域内的节点都是动态的,如果一个外部节点想要加入域,则需要向域首提出注册申请,域首根据域内的管理规则批准后,该节点即可注册并加入该域。

基于Multi-Agent的故障诊断系统主要是将Agent技术引入到故障诊断中来,让Agent为故障诊断服务,涉及到Agent的关键技术主要有Agent结构、Agent通信语言和Multi-Agent实现平台。

(1)Agent结构

本文Agent结构采用了模块化设计,分为五部分,分别是控制协同模块1、通信模块5、专家系统模块6、数据采集与预处理模块3、存储模块2,如图1所示。

控制协同模块1是Agent的核心,主要负责控制Agent与其他Agent 7的系统,及于专家系统的互动。

通信模块5主要负责利用KQML语言与其他Agent 7进行通信,处理通信中的错误。

专家系统模块6主要负责故障的诊断,它可以直接从Agent的存储模块2中提取信息进行故障诊断。

专家系统模块6分为知识库、推理机、解释机、学习机、用户界面、Agent接口、数据库管理系统

其中,知识库:整个系统的核心部分之一,为推理机和解释机提供所需知识,存放从领域专家处获取的以规则的形式表示的知识。一个正确的、能够完全表达领域知识的规则库是整个故障诊断专家系统的基础,主要包括用于域内故障诊断推理的诊断规则集合。其中知识表示是建立知识库的基础。近年来知识工程的兴起使得知识表示的研究显得尤为重要。研究者在分析了目前流行的几种知识表示方法的基础了,采用了基于产生式规则与面向对象相结合的知识表示方法。

用户界面:主要负责与用户或专家进行交互,将领域专家所提供的知识存储到知识库,将诊断结果反馈给用户。

推理机:实现知识的推理功能,运用知识库的知识、数据库的数据和实时信息进行各种推理,推理机采用基于规则推理的推理机制。

学习机:系统运行中学习机能够根据数据和推理结果自动地获取新的知识,并将新知识储存到知识库中,提高专家系统解决问题的能力,学习机采用了一种基于故障发生频度的学习机制。

Agent接口:主要负责与Agent进行交互,将Agent的预处理后的信息交由专家系统进行推理诊断。

解释机:记录推理机的规则推理过程,给出对故障诊断结果可能的解释。

用户界面:完成人机交互、系统设置、问题描述、诊断结果显示和系统的总体控制。

数据库管理系统:负责存储又Agent接口传输过来的信息及推理机推理诊断结果的存储、检索、查询等操作。

数据采集与预处理模块3主要负责数据采集工作,将采集来的数据进行预处理,除去冗余信息,提高数据的利用率。

存储模块2负责暂时存储采集来的重要数据和一些故障诊断结果。

(2)Agent通信语言

本文的Agent采用KQML(Knowledge Query and Manipulation Language)作为Agent间的通信语言,KQML作为信息和知识的交换语言,事实上已经是Agent通信语言的标准。

KQML是一种高层的,面向消息的Agent通信语言和通信协议,支持Agent之间和Agent与其他应用程序间的知识共享,支持问题的协同处理。KQML定义了一组可扩展的Agent行为原语,这些原语规定了Agent间的交流和信息共享方式,同时还支持建立Agent之间交流的更高层模型。

KQML作为本文Agent通信语言,其目的是支持在分布式的、异构的、动态的、含有大量自主节点环境下,实现知识的交互、重用和共享,这与本文所建立的分布式Multi-Agent故障诊断体系结构不谋而合,因此本文利用KQML作为Agent的通信语言能够更好的发挥Agent的效用,提高故障诊断效率。

(3)Multi-Agent实现平台

为了解决分布式网络环境的下的Agent开发,本文选用了CORBA(Common Object Request Broker Architecture)分布式对象技术,作为开发的平台。CORBA技术是对象管理组OMG(Object Management Group)为解决分布式处理环境中的硬件/软件系统的互操作制定的对象管理体系结构OMA(Object Management Architecture)的一部分。

公共对象请求代理结构CORBA就是OMG为ORB制定的规范。CORBA定义了开发面向对象的分布式应用的一种框架,定义了IDL语言以及映射、单个ORB体系结构和ORB间的互操作机制。发布的基于分布对象技术的公共对象请求代理结构(Common Object Request Broker Architecture,CORBA)为分布式异构环境下Agent的通信提供了合适的平台,从而为各Agent之间的信息交流、协调与协作、数据与知识的交换与共享提供了强有力的技术支撑和保障。

CORBA分布式对象技术正逐渐成为分布式计算环境的主流,适用分布对象技术开发的系统具有结构灵活、软硬件平台无关性、系统可扩展性等优点,特别适用于网络环境下的分布式开发,能够有效地解决异构环境下的应用互操作性和系统集成,适合于分布式Multi-Agent故障诊断体系结构。

域内协同故障诊断中,域内的数据采集层,本文采用的是SNMP技术进行数据采集,而为了增强数据采集手段和数据采集的效率,本文采用了双独立互联技术进行数据采集。

其中,简单网络管理协议SNMP(Simple Network Management Protoeol)是由互联网工程任务组(IETF)定义的一套网络管理协议,最早以RFC157发布。自1989年正式发布第一个版本以来,经过十几年的完善和发展,日趋成熟。

SNMP由一组网络管理的标准组成,包含一个应用层协议、数据库模型和一组资料物件。该协议能够支持网络管理系统,用以监测连接到网络上的设备是否有任何引起管理上关注的情况。目前,几乎所有的网络设备生产厂家都实现了对SNMP的支持。领导潮流的SNMP是一个从网络上的设备收集管理信息的公用通信协议。设备的管理者收集这些信息并记录在管理信息库(MIB)中。这些信息报告设备的特性、数据吞吐量、通信超载和错误等。MIB有公共的格式,所以来自多个厂商的SNMP管理工具可以收集MIB信息,在管理控制台上呈现给系统管理员。

SNMP按照发展历程,分为了三个版本。本文采用SNMP的第二个版本,SNMPv2在第一版本的基础上进行了安全性的改进。

其中,双独立互联系统模型结构如图2所示,串口共享器10的实质是串口总线,数据采集设备在该总线上处于主机计算机8地位,其他的设备从机。串口总线上的通信总是由主机计算机8发起,主机首先发送地址帧,然后发送信息帧,从机收到地址帧后进行核对,接受自己地址的信息,不是自己地址的信息丢弃。

双独立互联系统由以太网互联系统、串口外总线互联系统组成。其中以太网互联系统是由网络设备、网络中间设备、数据采集设备和以太网接口构成。该系统的连接核心是网络中间设备,通过该设备数据采集设备与和其他网络设备相连。诊断设备通过网络中间设备与网络设备之间通信。串口外总线互联系统由网络设备、网络中间设备、网络诊断设备、串口共享器、和串口构成。各设备通过串口与串口共享器互连,数据采集设备通过串口共享器与各设备进行串口通信。

这种结构通过两种连接方式使设备在网络上相互独立、互为备份。当其中一种方式的故障数据采集失效时,启用另一种数据采集,这样就增强了网络数据采集的多样性和有效性,提高了网络故障的效率。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号