您好, 访客   登录/注册

基于多Agent的网络性能递阶控制模型研究

来源:用户上传      作者:

  摘要:计算机网络的复杂性与日俱增,网络管理体系的创新性研究已成为研究热点。为保证网络性能管理满足容错性、学习能力和组织功能的需求,结合多Agent技术与递阶控制理论进行网络性能递阶控制模型研究。在利用多Agent的分布性与协作性进行实现网络性能监测、分析与预测的基础上,由递阶控制方法完成对网络性能控制。通过JBuilder 2006开发平台完成该模型的软件系统开发与测试,可对网络中不同关键设备进行网络性能的智能化管理。在某局域网的应用表明:这种方法能显著提高网络利用率,实现网络优化。
  关键词:多Agent;递阶控制;网络优化
  
  1 引言
  随着Internet的使用范围扩大、商业应用增多,网络管理成为网络发展中一个很重要的关键技术。它的重要性已经在各方面得到体现,并为越来越多的人所认识。国际标准化组织(ISO)在网络管理框架(ISO/IEC7498-4)中为网络管理定义了配置管理、性能管理、故障管理、安全管理和计费管理这五大功能。根据国际网络服务组织(International Network Service, INS)在世界范围内统计的结果显示:性能管理已经超过故障管理,成为网络管理中最重要的功能和研究重点之一。本文主要利用多Agent技术与递阶控制理论对网络性能管理体系进行研究,通过各部分的相互协商与合作实现网络性能递阶控制模型。
  目前计算机网络管理体系主要有基于SNMP的集中式管理和分布式管理两种不同方式,在网络管理实践中、这两种方式均表现出一定的优势和不足。传统网络管理体系是基于SNMP的集中式管理,它由一个管理者对整个网络的运行进行管理、负责处理所有代理上的管理信息。这种管理模式具有简单、价格低和易维护等优点,随着计算机网络的迅速发展,这种模式存在的管理职能过于集中、管理方案过于固定以及管理功能有限而且固定等问题越来越突出。随着Agent技术的不断发展,分布式网络管理体制获得了国内外学者的广泛关注。分布式网络管理的根本特性就是能容纳整个网络的发展、可靠、管理性能高。但是、由于控制分散、观测分散,一方面控制的有效性不如集中式管理,而且需要完善的协议和通信机制支持;另一方面目前实际网络中的设备对分布式网络管理支持力度很小,仅具备小范围的实验条件,实际运行的较大网络系统的运行管理部门不支持提供全局或局部网络的相关实验。对应用而言,利用多Agent集成已有网络技术,将分布智能式与集中式网络管理进行优化组合、探索新的网络性能管理控制模式已经成为研究热点。这样不仅有利于充分发挥各自的优势,而且拓宽了网络设备的被管范围。
  
  2 网络性能递阶控制模型
  2.1 模型整体结构
  网络性能的递阶控制方式是以分布式网络管理方式为基础,同时采纳了集中式网管的优点而构成的。将集中式网管的网络中心作为网络性能协调级,把网络内部分散的局部服务器作为网络性能递阶控制级、对子系统实行局部分布式管理。网络性能协调级只解决针对网络性能递阶控制级的控制以及网络性能递阶控制级之间的协调与协作问题,网络性能递阶控制级分别代表网络的不同区域,通过内部的局部控制级以及与其他递阶控制级的协作完成子系统内部的性能管理。和分布式网络管理一样,网络性能递阶控制的技术基础是多Agent理论。网络性能递阶控制系统内部以自治Agent为组织单元,根据功能不同分为五大类:监测Agent、分析预测Agent、控制Agent、通信Agent和环境Agent。
  
  图1是利用1台Catalyst 4507交换机、3台Catalyst 3550交换机、9台Catalyst 2950交换机和22台主机搭建的网络性能递阶控制的局域网实验环境。该网络的拓扑结构实质是一种金字塔控制结构:Catalyst 2950交换机为第一级局部控制级,它直接完成网络各局部的性能监测、分析预测;Catalyst 3550为第二级递阶控制级,实现对第一级各子系统进行控制以及完成与其他递阶控制级的协作,这两级称为本地控制系统;Catalyst 4507为第三级协调控制级,它根据网管系统的总目标对第二级进行控制,完成网络性能管理的总任务。
  这种结构的实质是对分散的子系统实行局部分布式管理的基础上再加一个网络性能协调级,以解决网络系统的整体管理控制以及子系统之间的协调与协作问题。网络协调级一方面是一个协调器,能对局部递阶控制级的环境Agent提供协调信息,当需要其他局部递阶控制级进行协作控制时直接通过网络协调级联系适合的合作者。这种方式与分布式网络管理相比,大大提高了局部递阶控制级间相互协作的效率。另一方面是一个管理器,能在宏观上控制管理整个网络发生的性能异常情况,处理黑客对网络的入侵和网内出现的局部病毒散播。网络协调级的这两方面作用使整个网络系统能在各局部分布式管理实现局部最优化的同时达到全局最优化。
  2.2 递阶控制过程
  网络性能递阶控制模型将本地控制系统的各Agent分布在网络中的不同位置,当网络中某节点处流量异常、需要控制的时候,邻近节点的Agent能够自组织起来,按照预定的策略、通过协商来合理控制流量,从而避免异常的发生。
  ⑴ 本地控制系统主要由五个Agent构成:监测Agent、分析预测Agent、控制Agent、通信Agent、环境Agent,系统中第一层局部控制功能是通过监测Agent与分析预测Agent的合作把性能异常情况传给递阶控制级的控制Agent;控制Agent负责构建专家系统,并将性能分析的结果与专家系统规则的前件进行比较,根据知识规则的后件采取相应的控制策略。
  ⑵ 局部递阶控制级与网络协调级之间的通信非常重要,利用各个Agent系统中的环境Agent和通信Agent实现通信。
  ⑶ 网络性能递阶控制策略:当局部递阶控制级无法采取有效的措施时,首先由局部递阶控制级的通信Agent通过网络协调级获取周边局部递阶控制级的性能参数,并报告给控制Agent,通过合同网协议决定与哪些局部递阶控制级合作,然后利用通信Agent向指定局部递阶控制级统发送消息,收到消息的局部递阶控制级便按照消息的内容采取相应的本地控制,控制完成后,收到消息的局部递阶控制级Agent系统利用自己的通信Agent再返回消息,依次循环,直到异常状况消除为止或者向网管人员发出报警信息。
  
  3 递阶控制模型的实现
  考虑通过JBuilder环境开发程序便于把握整个程序各部分之间的关系;同时JBuilder通过其特有的数据库应用开发架构和大量高级数据库应用的API,为数据库应用开发人员提供了更为便捷的开发环境技术。因此本文采用JBuilder集成开发环境实现基于多Agent的网络性能递阶控制模型的软件开发。
  3.1 监测Agent
  在网络性能递阶控制系统中、每个局部递阶控制级都有一个监测Agent,主要完成网络性能监测。鉴于性能管理实际上是数据流(数据)管理,本模块利用基于SNMP的端口流量监测和基于数据包捕获的流量数据监测思想,定期提取交换机、路由器等网络关键设备的流量数据,将收集的各种历史数据和实时数据在传入MIB便于进行分析预测的同时、以图形方式直观显示出来,实时对网络运行情况进行观察。在本文采用的开发环境中通过SOCKETS技术或JAVABEAN技术实现监测Agent。
  3.2 分析预测Agent
  在网络性能递阶控制系统中、每个局部递阶控制级的分析预测Agent主要对监测Agent获取的流量数据进行局部网络性能分析与预测:计算带宽利用率和丢包率等网络性能指标,同时利用混沌理论和人工神经网络进行数据挖掘、实现性能预测,并归纳出网络性能异常的阈值条件。
  3.3 本地控制Agent
  每个局部递阶控制级均有一个控制Agent,它是局部递阶控制级中其他Agent的上级,负责控制其他Agent。当网络性能分析预测Agent分析出网络将要发生性能异常或者故障时,就向控制Agent发出通知,让其负责解决。每个控制Agent都有自己的知识库,里面存放针对不同故障表象而应该采取何种措施的规则。当控制Agent接收到异常或者错误信息后,就查询知识库,看着自己是否能在本地解决,如果能够,就按照知识库中所匹配的规则来执行相应的操作。本文通过三种方式实现本地控制Agent的功能。
  ⑴ 根据防火墙的流量控制功能用vi编辑器编写iptables防火链,以阻止非法服务或关闭端口,达到性能异常控制的目的。
  ⑵ 利用负载均衡技术中的NAT负载均衡将一个外部IP地址映射为多个内部IP地址,对每次链接请求动态转换为一个内部服务器地址,将外部链接请求引到转换得到地址的服务器上,从而实现负载均衡的目标。
  ⑶ 在MVC模式的JSP中输入要进行控制的参数,利用JAVABEAN中建立的套接字与内核态的netlink通信传递参数。
  3.4 环境Agent
  环境Agent保存了本局部递阶控制级的基本信息和整个网络的主要信息,当本局部递阶控制级需要寻求协作伙伴的时候,必须首先询问环境Agent,利用环境Agent可以获得任意局部控制级的各种信息,从而寻找可能为其提供帮助的局部递阶控制级。本文主要通过RMI技术或SOCKETS套接字来获取相应的环境参数。
  3.5 通信Agent
  通信Agent主要是帮助不同局部递阶控制级进行协商并传递网络性能协调级的相应指令。通信Agent包括两条队列:输出队列与输入队列,能够在发送消息的同时接收来自其他节点的消息。通信Agent可以通过SOCKETS套接字实现客户端程序与服务器端程序的参数以及对象传递的方式进行。
  3.6 网络性能协调级的实现
  当局部递阶控制级不能解决本部分出现的性能异常时,由通信Agent向网络协调级通信,网络协调级将通过环境Agent和通信Agent寻找适合的局部递阶控制级实现协作。为保证递阶控制系统的问题求解能力和效率,本文按照合同网协议来构建网络协调级与各局部递阶控制级的协调与合作。
  针对网络管理的不同问题,网络协调级派遣不同局部递阶控制级来处理不同问题,每个局部递阶控制级都是一个独立的线程。这样在同一时间内网络协调级就可以同时处理多个网管问题。这些不同的局部递阶控制级模块必须向网络协调级报告最新情况,由其统一管理。尤其是当出现某些性能、故障问题的界限比较模糊时,一个问题可能同时需要多个局部递阶控制级去解决,这时需要网络协调级统一调配,以节省系统资源。
  
  4 结论
  在递阶控制理论和多Agent技术的基础上,本文提出一种网络性能递阶控制模型。该方法克服了传统网络管理进行性能异常控制的局限性,是对网络性能集中管理与分布式管理的优化组合,适合完成较大规模网络的性能异常控制。局域网环境的实践证明:本系统能提高网络利用率,实现网络优化,具有广泛的市场前景。
  
  参考文献
  [1]郭军.网络管理[M].北京:北京邮电大学出版社,2008.
  [2]LI M, SANDRASEGARAN K. Network Management Challenges for Next Generation networks[A]. The IEEE Conference on Local Computer Networks 30th Anniversary (LCN'05)[C]. Sydney, Australia; IEEE Computer Society, 2005, 11.593-598.
  [3]THOTTAN M, JI C. Anomaly Detection in IP Networks[J]. IEEE Transactions on signal processing. 2003,51(8):2192-2204.
  [4]张宏莉,方滨兴. Internet测量与分析综述[J].软件学报,2003,14(01):110-116.
  [5]邹松.基于多Agent系统的网络拥塞控制方法的研究与实现[D].武汉:武汉大学,2004.
  [6]何炎祥,陈萃萌.Agent和多Agent系统的设计与应用[M].武汉:武汉大学出版社,2001.

转载注明来源:https://www.xzbu.com/8/view-8739609.htm