大规模网络管理中的任务分解与调度

发布时间:   来源:文档文库   
字号:
第27卷第3期2006年3月
通信学报
Joumal
on
、,01.27No.3
Commullicadons
M眦h2006
大规模网络管理中的任务分解与调度
刘波,罗军舟,李伟
(东南大学计算机科学与工程系,江苏南京210096)
摘要:集中式的管理模式和简单的基于移动agent的网络管理方法都已不能满足大型网络管理的需要,为此,
在给出基于多agent的网络管理框架的基础上,提出了一种基于任务依赖关系的任务分解算法,把网络管理任务分解为具有不同优先级的子任务,处于同一优先层次的子任务可以并行执行,根据子任务的优先级产生结合网络管理特点的调度策略,理论分析和实验表明:在大规模网络管理中采用任务分解技术能够提高时间效率和减轻网络负载。
关键词:网络管理;多agent;任务分解;任务调度;控制依赖;数据依赖中图分类号:TP393.07
文献标识码:A
文章编号:1000.436x(2006)03.0064.09
TaskdecompositionandscheduHnginlarge-scalenetwork
LIUBo,LUOJun—zhou,LI
ma朐gement
W文
(D印釉ent
Abstract:With
nor
ofcomputer
Sci锄ce柚d
Engineering,Soutlleast
universi吼N删ing210096,China)
Iarge—scalenetworkmanagemembecoIIlingmorecomplicated,neimercen廿alizednetworkmanagement
gen甜c
agcnt_basednetwork
on
managementcouldsatis匆tIleincreasingdem粕ds.A(h∞e-£iernetworkmanagement
行ameworkbased

multi—agemwaSpmvided,wllichgavemulti—agentmecollabomtionenVimnment.Intllis
f№ework,
task
decompositionalgoritllmbasedontaskdependencerelationsllipwas
pmposed,acc删ngwhichschedulingmetllod
save
was
pmducedformulti—agentconsideringthecharacteIisticofnetworkm柚agementfunction.Thetheoretic柚alysisaIld
network
experimentalresultsrevealmatusingtaskdecomposinonmettlodc柚decreasetasksexecutiontiIneand
b锄dwidtll
inlarge-scalenetworkm柚agement.
Keywords:networkInanagement;mlllti—agent;taskdecomposition;taskscheduling;con廿ol
dep蚰dence;data出删dence-

引言
随着计算机网络的应用规模迅速增长,网络复
或者不频繁访问的有限的信息管理,例如监控路由器的状态,涉及小部分的网络参数的管理。然而,对于大型网络的高级管理,
基于SNMP的网络管
杂性和异构性的特点日益突出,使得网络管理问题上升到战略性地位。在传统的集中式网络管理中,管理工作站通过SNMP协议收集被管设备中的管理数据,基于SNMP的网络管理使管理者可在一个地方实现对整个网络的灵活管理,适合于小型网络
理方式不再适用【l】,首先,网络管理对管理工作站的依赖容易使其成为瓶颈。其次,传统的网络管理在强调了网络成员之间必须遵循的标准之外,较少
考虑各网络成员的自身特点,在外界环境发生变化
时,不能对网络成员之间的关系自动做出适当的调
收稿日期:2004—10—08;修回日期:2006.01.14
基金项目:国家自然科学基金资助项目(90204009);高等学校博士学科点专项科研基金课题(20030286014)
FoundaU蚰Ite麟:ne
toral
National
NamralScienceFoundationofChina(90204009);ChinaSpecializedRcsearchFundfortheDoc-
Progr锄ofHigherEducation(20030286014)
方数据 

第3期刘波等:大规模网络管理中的任务分解与调度
整和响应。第三,网络成员缺乏自组织、自适应的
能力,不能很好地协同工作以处理日益复杂的网络管理事务。而智能agent的自治性和移动性等特性
恰能解决目前网络管理中存在的问题。Buchanan【2J总结了在网络管理中使用agent的优点:节省网络带宽,增加扩展的灵活性,解决网络连接的间断性
和不可靠性。
目前,研究者们提出了多种基于agent的分
布式网络管理方法【24】,也逐渐深入研究如何利用
智能agent的特性实现分布式的网络管理【5’6】,但
是却很少对agent的应用模式进行研究,大规模网络管理任务往往需要分派多个agent去完成,
如何合理划分和分配任务给不同功能的agent呢?
任务的分解与调度问题在相关领域已有很多
的探索,特别是在并行计算领域,从对串行程序的并行划分【『刀到对程序切片【8】的研究,逐步深入,但
是对于大型网络管理中多agent任务,如果采用程
序级的划分方法,那么会产生为数众多的子代码,这会使创建、分配agent和agent之间的通信变得非
常烦杂,即使对划分后的子代码再进行组合以增加粒度,也会破坏网络管理子功能的完整性和划分的
准确性,不利于agent发挥智能管理的特性。其它
的划分方法有均匀划分技术、方根划分技术、对数
划分技术和功能划分技术等,这些方法对于数据并行机制是有效的,而对于数据不规则的任务,例如
网络管理任务,就需要设计出适合其任务特点的功
能分解方法。Sin曲和PaIlde【w提出了两种agent迁
移策略,一种是agent迁移时携带它未来路线中节点所需要的全部代码,以减少迁移次数;一种是只携带路线中下一个节点所需要的数据,以减少agent
携带数据量,这两种方法各有其适应的情况,采用
任何一种方法都不能解决大规模的任务处理。zhuaIl一10J运用图论分别以最小迁移次数(MNM)
和最小数据传输(NDT)为优化指标对单个agent
系统中的agent路线进行了静态和动态规划,但其
只考虑系统中只有一个agent的情况,而没有考虑多个agent的情况。针对上述问题,本文将从适合
agent并行执行的角度出发,通过对网络管理任务
关系进行分析,设计适合复杂的大规模网络管理
任务特点的任务分解算法,在分解任务的基础上设计agent分组调度策略,由多个agent协作完成网络管理任务。
 
方数据2基于多agent的网络管理框架
为了满足网络管理需求,提出了一种基于多
agent的网络管理框架(如图1所示),包括三层结
构:数据库层;agent管理层;被管对象层。数据库
层包括服务单元库和agent信息库,服务单元是进行任务分解的最小粒度单元;agent管理层包括网络管理任务定义模块、网络管理任务分解模块、agent任务调度模块、通信模块及agent管理模块;被管对象层包括支持SNMP的网络设备和其它类型的
被管网络对象。
图l基于多agcnt的网络管理框架
首先,网络管理任务定义功能以W曲方式提供给用户,用户可以根据网络拓扑图来选择希望
管理的域,也可以指定需要管理的IP组。OSI定义的五个管理功能域中,每个功能域都包含了许
多具体的功能实现,由于在这些功能中存在着不
少相同或相近的功能,因此,系统中定义了以下功能:MIB管理、对象管理、状态管理、条件关
系管理、阈值检查、告警报告、事件报告、日志
管理、安全警告、安全审计跟踪、计费管理、工
作负载监视、测试管理等。这些功能及其子功能
以列表的形式提供给用户,用户可以选择需要的
管理功能,可以对同一对象进行多种功能的管理,
也可以同时对多个对象实现多种管理功能。系统
中提供的功能可能对应服务单元库中的一个单元
或多个单元。网络管理任务定义模块收到用户的
提交以后,根据用户定义的功能的步骤和这些功能的内在关系形成任务流程图,网络管理任务定义模块中的形式化处理子模块会根据服务单元库中的服务单元与用户定义的功能的对应关系对任务流程进行形式化处理。在被管网络节点上工作的agent可以通过agent管理平台的通信模块把收集到的管理信息或计算结果传送给agent管理模块,并以可视化的形式呈现给用户,通信模块通

通信学报
第27卷
过一个本地agent实现,它通过KQML…】与其它
agent进行通信。
网络管理任务通过网络管理任务定义模块产生后,由任务分解模块把任务分解成具有优先级次
序的子任务,并把子任务交给agent调度模块,由
agent调度模块计算出多agent的任务调度规划,然
后由agent管理模块根据调度规划产生agent,为agent装配服务单元,并派送agent到目的节点进行一定的动作;也可以是调用目的节点附近的agent迁移到目的节点来执行任务。agent迁移到目的节点后通过与通信模块通信来注册位置信息。其处理流程如图2所示。
图2网络管理任务处理流程
3网络管理任务的形式化处理
为了便于任务分解算法对任务的处理,网络任务定义模块首先对任务进行形式化,给出以下定义。
3.1形式化定义
1)网络管理任务:一个网络管理任务由多个子任务组成,用丁表示。
2)控制依赖(con廿old印endence):对于控制依赖的定义,引用Ferramte【7J的定义,一个控制流程图是一个有向图,这个有向图中只有一个入口和一个出口,图中每一个节点至多有两个后继,两个后继的特性是1’me或False,并且对于控制流图中的任一个节点,都存在一条从入口到此节点的路和一条从此节点到出口的路。对于控制流程图中的节点X和y,如果y控制依赖于x,则x必然有两个出口,一个出口导致y被执行,一个出口导致y不被
执行。控制依赖用数组国印【][】表示。
3)数据依赖(datadependence):数据依赖是指在本次管理任务执行过程中,某服务单元需要一组服务单元的执行结果或传递的变量,这组服务单
 
方数据元称为此服务单元的数据依赖。数据依赖用
如细D印[】【]表示。
4)子任务:子任务用(LS,KA)表示,丁(task)代表子任务所属的总任务,S(subtask)代表子任务及其所需的服务单元代码集,y(vadable)表示在这个子任务中用到的其他子任务的变量集,A(address)代表子任务被执行的网络地址,也可能是一组地址。
5)agent状态:agent状态表示为(G,L&C,A,R),表示名字为G的agent在m地址为A的网络节点上执行任务r中的子任务S,用到的服务单元代码为集合C。其中尺为一布尔变量,尺=0时,表示子
任务S已完成,尺=1时,表示在执行子任务S。
3.2网络管理任务控制流程图
由于用户是以子任务为单位定义的,子任务与所对应的服务单元又是已知的,所以容易生成子任
务控制流程图,把每个子任务表示为图中的一个节
点,每个子任务对应的服务代码单元可以是一个或一组单元,因为在图中很容易找出予任务之间的控制依赖关系,所以称之为任务控制流程图。为了便
于任务分解算法的执行,网络管理任务定义模块会对控制流程图进行形式化处理,图3中给出了任务
丁的控制流程图。任务丁是对网络中的路由器、交换机和服务器等的管理。根据网络管理任务的特
点,子任务之间的关系可以归结为数据依赖关系和控制依赖关系,从而可以更大粒度地分解网络管理任务。控制流程图包含节点之间控制依赖关系,也包含有数据依赖关系,但控制流程图所表示的各节点的顺序关系存在冗余,有些节点可以提前执行,任务分解的目的就是要找出能够与其祖先节点并行执行的节点。图3中的Sl、&、&和&表示一组子任务,S1表示故障监控,S2表示取接口的丢包率并进行判断,岛是把数据写入数据库,&表示流量监控。由于任务的规模较小,可以根据任务流程从直观上判断,节点4中的S3需要节点1中的蜀和节点2中的&的执行结果,也就是说节点1和节点
2是节点4的数据依赖,节点4必须在节点1和节
点2之后执行,同样根据控制依赖的定义,节点3和节点4控制依赖于节点2。实际中面临的网络
管理任务是复杂而又庞大的,后面会介绍如何通
过算法产生数据依赖,并根据控制依赖和数据依赖把大规模的网络管理任务分解为小规模的并行子任务。

第3期
刘波等:大规模网络管理中的任务分解与调度

对IP地址为4-的服务器进行故障监测

(L¨,Sl,彳1)
一IP地址为爿。的路由器接口丢包率是否大于调定阈值h



(t坞,&,爿2)


对IP地址为爿z的

在IP地址为彳,的主机的数据库中
记录爿:的丢包率和对彳t的监控值


路由器进行故障监测



对IP地址为爿。的交换机进行故障监测对IP地址为爿:的路由器进行流量监测

在IP地址为爿,的主机的数据库中记录爿:的流量监测值

_
(t儿,&,彳z)
(LK,岛,爿,)

(t蚝,s,爿。)

(t玩,蜀,以)

(L玛,S,凡)
(L蚝,&,彳,)
在IP地址为爿,的主机的数据库中记录爿。的故障报告
图3
任务控制流程图的形式化处理
4基于多agent的网络管理任务分解与调度
大规模的网络管理任务可能包括多个控制流程图,这里考虑如何对一个控制流程图进行分解,
号。DQ是以层次顺序存储有向图的双向队列。
算法描述:从任务流程图的根(root)出发广度优先遍历图,在层次遍历的过程中把图中的顶点按深度顺序放入双向队列DQ中。附设队列Q,其中存储已被访问路径为1,2,…的项点,其中Q最后为空。
(1)初始化双向队列DQ和队列Q,图的起始节点root加入队列Q。
(2)如果队列Q不为空,队头元素1,出队,1,和其深度值d加入双向队列DQ中。判断v的入弧的属性是否为“2”,若不为2,则把v的前驱加入
找出可以并行执行的子任务,分派给多个agent,
以避免冗余计算、优化任务执行效率和节省网络带宽。
4.1任务分解算法
任务控制流程图是一个有向图,可以看成是一
种层次结构,对它的广度优先遍历实际上是按层次遍历。首先对有向图广度优先遍历求出子任务的控
制依赖(算法1),在遍历的同时把图以层次的顺序存储在双向队列中,以便于求出服务单元的数据依赖(算法2),然后根据子任务的控制依赖和数据依赖分解任务,产生子任务的优先级顺序(算法3)。依赖关系图和优先级次序图将交给调度模块作为制定任务调度规划的依据。
算法1遍历任务控制流程图,产生子任务的控制依赖。
cD印M,否则v的控制依赖扣印M为NULL。
(3)有向图中节点v的所有邻节点依次加入队列Q中。
(4)如果队列Q为空,则算法结束,否则转第(2)步。
算法2对双向队列按层次逆向遍历,产生服务单元的数据依赖。
算法思想:对算法1产生的双向队列从队尾元素开始遍历即可实现对有向图的逆向按层次遍历,
对每个节点检查其祖先节点是否为其数据依赖,从而产生各个节点的数据依赖。
输入:DQ。
算法思想:对有向图广度优先遍历,判断每条
弧的属性,如果为1或0,则弧头节点控制依赖于弧尾节点,如果为2则表示无控制依赖。
输入:DG(directedgmph)∥输入任务控制流程图。
输出:cD印【][】,DQ∥cD印为二维数组,存放从第1个节点到第,z个节点的控制依赖的节点序
输出:砌勉D印【]【】
务依赖图。
∥输出为数据依赖和子任
算法描述:从DQ的队尾节点开始对双向队列DQ中的节点按顺序访问,对每一个节点都要根据
方数据 

通信学报第27卷
它的变量集y来判断它是否需要祖先节点提供变量,如果需要,则它的祖先节点就是它的数据依赖,反之跳过。附设两个指针P和F辅助访问双向队列
节点组成一个优先级为1的集合,产生一个弱连通
的图DG2,对DG2中的节点进行类似的处理,首先找出所有控制依赖集和数据依赖集是已访问节点集合的子集的节点,设定它们的优先级,然后去掉这些节点和所有以此节点为弧头的弧,以此类推,
DQ,P用来指向被遍历的节点,F用来指向被遍历
节点的父节点。
(1)如果双向队列DQ不为空,DQ的队尾节点
直到对所有的节点都设定了优先级。优先级值越小
则优先级越高。
(1)PrfD芦1,所有节点标志为末访问;
(2)找出未访问节点中所有控制依赖集和数据依赖集为已访问节点的子集的节点1,,设定v的优
P出队,砖P的第一个祖先;如果双向队列DQ为
空,则算法结束。
(2)根据P和F的变量集,判断P是否数据依赖于F,如果是,F被加入P的数据依赖集;如果不是则转第(4)步。
(3)P的每一个祖先F若都被访问了,则转第(1)步。
先级:尸rf【v].肭,.,把节点’,标志为已访问。P砌忙
P—D,.+l。
(3)如果所有节点都被访问则算法结束,否则
转第(2)步。
图4给出了对图3中定义的任务丁的分解过
(4)F=JP的下一个祖先;转第(2)步。
算法3遍历有向图中节点,对每一节点根据其控制依赖和数据依赖设定其被执行的优先级。
算法思想:算法1和算法2已给出了有向图中节点的控制依赖和数据依赖,图中控制依赖和数据依赖为空的节点即可与它的祖先并行执行,对于控制依赖和数据依赖不为空的节点,它必须在其控制依赖和数据依赖节点执行完后再执行,但它可以和一些与它无依赖关系的节点并行执行,所以用设定
程,图4(a)给出了任务丁的任务控制流程图的简
化图,每个子任务是有向图中的一个节点。图4(b)中的虚线弧表示控制依赖,实线弧表示数据依赖。
使用算法1可以得出,节点2是节点3和节点4的控制依赖,通过算法2可以得到这些节点的数据依赖。得到子任务的控制依赖和数据依赖(见表1)之后,利用算法3可以得出各个子任
优先级的方法来梳理节点的关系。
输入:DG,棚印,砌砌D印
控制依赖和数据依赖。
∥输入有向图、务的优先级(图4(c))。从图4(c)可以看出,子任务1、2、5和6可以并行执行,在优先级为1的
输出:Prf[】∥输出为各个节点的优先级。算法描述:判断有向图JDG中的每一节点,如果某些节点的控制依赖和数据依赖都为空,则去掉这些节点和所有以此节点为弧头的弧,这些已访问
节点执行完之后,节点3、4、7和8可以并行执
行,由于3和4是控制依赖于2的,所以3和4只有一个会被执行,这些关系是制定调度规划的依据。
优先级=l


⑩o
优先级=2

(a)子任务简化图
(b)子任务依赖关系图
图4任务分解过程示例
(c)所有节点优先级被设定
方数据 

第3期刘波等:大规模网络管理中的任务分解与调度
表l子任务的控制依赖和数据依赖
4.2多agent任务调度策略
经过任务分解算法的执行,大规模的网络管理
任务被分解为不同优先级的子任务,优先次序作为
调度agent分配任务的依据。agent调度模块分配任务的规则为:
(1)根据网络管理任务的类型分配。新型网络管
理任务要求提供实时的可监控功能和可管理能力,
及时、迅速地反映网络资源的通信状况和运行状态,并对网络中可能出现的故障进行故障分析和预测,所以对于告警报告、事件报告、日志管理、安全警告、故障处理等时间性要求严格的管理功能,要比同一优先级内的其它子任务优先分配。配置管理对动态性要求较高,调度agent可根据所管辖小组中的agent的状态描述(岛瓦S,C,A,尺)中的尺的值来判断该agent是否空闲,若空闲则在执行任务过程中调度该agent到任务繁忙的节点上,以实现系统动态特性。多agent更适合于性能管理,把性能管理相关的复杂计算分解为多个计算单元,由多个agent分担计算任务,大大减少了集中式网络传输的开销。
(2)根据被管对象分配。对网络中的主干路由
设备和服务资源,采用agent与被管对象一一对应
的关系,采用静态驻留的方法对被管对象进行实时监控。对于一般的被管对象,采用分组调度方法:对同一优先级的子任务,每一个子任务由一个agent执行,也就是把同一优先级的子任务派送给一组agent,同时会在这一组agent中派送一个执行agent调度功能的agent,称为调度agent,调度agent装配有对次级优先级子任务的调度规划和予任务所需要的服务单元代码,并可以对小组内的agent进
行管理。调度agent也可以对任务进行在线分解,然后交给多agent去执行。当某一优先级的子任务
被执行完毕,调度agent就会根据所携带的优先级
 
方数据agent管理平台


、t
多申
I占如胡苫吉酩龄…象
一名
图5多agent派送方法
知识制定下一层次子任务的调度规划,派送方法如图5所示。
以图4中的网络管理任务丁为例,agent调度模块会制定这样的调度计划:首先执行优先级为1的子任务,子任务l、2、5和6分别交给4个agent去执行,由表l中子任务1、2、5和6的定义可知,它们对应的服务单元代码分别是Sl,&,Sl,函,对应的变量集分别是是u,屹,%,%,所以这4个agem分别会被装配这些服务单元代码和变量,agent小组内会增派一个调度agem,调度agent会被装配优先级为2的子任务的信息以及其依赖关系。从调度计划可以看出,同一优先级的agent可能被装配的服务代码是相同的,可以根据任务的特点制定不同
的调度策略,对于服务代码是执行故障管理功能和
配置管理功能的子任务,即使多个agent需要同一种
代码,但为了保证其管理功能的及时性,调度agent
也会重复把同一代码装配给不同的agent;但如果是对时间要求不高的网络管理子任务,调度agent会把代码装配给一个agent,并且给此agent制定相应的旅游路线,按顺序实现远程管理;对于将在同一目的地
址上执行的多个子任务代码可以装配给同一个agent。
正是由于调度agent的存在,任务可以进行再分解,
派出的agent也不必向服务代码库回取服务代码。
网络管理任务执行效率主要由任务分解效率和调度效率决定。任务分解主要有三个算法,其复杂度有所不同,假设,l为图的节点数目,算法1的复杂度为D∽),算法2的最差情况是对图中的每一节点都要访问其上层的所有节点,但它的复杂度不会超过
D仍2),在实际中会比D(,12)好,而算法3的复杂度是
D(,z),算法2的复杂度与踟ang【10J的agent调度算法
相比,复杂度属同一数量级,但动u锄g的算法利用
5分析与测试
权重、概率,图的转换次数较多,算法复杂,而且解

通信学报
第27卷
决问题的角度不同,他从优化单个agent的迁移路线考虑,而本文从优化多agent的任务结构考虑,但目的是相同的,那就是缩短任务执行时间。
图的节点数是影响算法复杂度的一个重要因素,而在实际的应用中,影响节点数的因素有两个:网络管理任务的规模和被管节点所在网络的规模,网络管理任务规模越大,而被管网络的规模越大,被管对象越多,则agent执行的任务量越大,其对应的图的节点数也就越多。对于大型的网络管理任务,任务的执行时间是衡量算法的一个重要指标,假设网络管理任务为丁,子任务数为,l,经过任务分解,分为,,z个优先级,设agent在任两个节点间的迁移时间均为‘,一个agent执行n个子任务,每个子任务所用的平均时间为

(厶:刍±生±:::盐
,其中fl,如,…岛为执行,z个子
,z
任务分别需要的时间)。假设把,z个子任务分配在m个优先级中,如果把每个优先级的每个任务分派给一个agent,则需要n个agent,迁移次数至多为n,设子任务的执行时间最大是‰。。,则执行任务丁所用的总时间最大值为:
mf。。。+n岛;如
果不采用任务分解算法,把所有的子任务交给一个agent执行,那么所需要的agent是一个,迁移的次数至少为,z,那么在不区分子任务优先级的情况下执行任务流程所需的时间至少为:,z如+,z%。算法优化的目标是使mf。。。+,z乓<n乙+,lk,容易得到
——<:——
,竹

,lfmax
可以看出,m(优先级数目)越小,乇和n越大,算法就越接近优化目标,这说明任务分解算法适用于大规模的网络管理任务(n增大),各个子任
务的规模相差不大(乙接近‰)的情况。得出结论:
任务分解适用于大规模的网络管理任务,“大规模”
包括两个方面:大规模的被管对象和大规模的管理
功能。下面对于任务分解和任务调度的测试就是分别对于大规模管理功能和大规模被管对象进行的试验和仿真。
5.1网络管理任务分解方法测试
定义了如图6(a)的网络管理任务,对网络节点的性能管理和故障监测都包括其功能域内所有的子功能,以体现任务的规模。在100兆以太网内完成对服务器Al、路由器A2和交换机A3的性能
 
方数据开始1)
1一①
对服务器爿一进行性能l

耋』缫率是否大l监测,计算接口的丢包卜]
于规定阈值?
I③
I…
记录彳-监测值l
I对彳t进行故障测测
1l
④—r——一
l对路由器彳:进行性能监测l
对交换机彳,进行性能监测I⑤
记录爿z和爿,的监测值l⑥

绫塞

(a)网络管理任务优先级=l
①④⑤
两武⑥
\~—/楫靠娇:2
例6任务的定义与分解
的丢包率定义如下:
丢包率=(if]hDiscards+ifoutDiscards)/
fifhlUcastPkts+iⅡnNUcastPkts+ifou(UcastPkts+ifOutNUcastPkts)
实验环境:100bit以太网,mM的A91ets系统【l
2J
测试方法和过程:主要测试两种执行方法,一间,并通过Sni圩er测出agent所占用的网络带宽;
测试结果如表2所示。
和故障管理,这些设备均支持SNMP协议。任务中为agent的工作平台,利用snif衔软件对aglets的
监听端口进行监测。
种方法是把所有的子任务派送给一个agent(91),91
会依据迁移路线去完成各个子任务,在耳1的代码中
加入计算执行时间的代码,测试91执行任务的总时另一种方法是首先使用任务分解算法把任务分解
为处于不同优先级的子任务(如图6(b)),然后把优先级为1的子任务交给不同的agent去并行执行,优先级为1的子任务执行完毕后就开始按照同样策略执行优先级为2的子任务,直到完成所有的任务,其中子任务2和3控制依赖于1,所以子任务1的结果会决定2和3之中只有一个会被执行,同样也
测试执行时间和网络负载。

第3期刘波等:大规模网络管理中的任务分解与调度
・71・
表2
分解算法测试结果
从表2可以看出,方法2中ageIlt执行的总时间远远少于方法1,符合理论推理结果。方法2中agent
代码负载的最大值也小于方法1的agent代码负载,
由于方法2中的代码负载较小,所以在迁移次数相当的情况下其迁移时间要小于方法1,从而方法2的网络负载也小于方法1。方法l的迁移次数为4是因为
它执行子任务的次序是:1.345—6,其中子任务1和
3在同一节点上执行,不需要迁移。而方法2的执行次序是:首先派送3个agem分别去执行子任务1、4和5,这3个任务完成以后调度agem根据1的结果派送一个agent去执行任务2或3,同时派送一个agent去执行子任务6,所以总的迁移次数是5。5.2网络管理任务调度方法测试
为了验证调度方法对于大规模网络管理对象的有效性,根据网络中被管节点数目的变化,用仿真的方法对集中式方法、单个agent迁移方法和多agent分组调度方法的执行效率进行了对比。实验定义了一个网络性能管理任务:计算网络节点的端口吞吐率、端口输入错误率、端口输出错误率,网络利用率。,从而模拟对网络节点的性能检测。
测试环境:实验以IBM的Aglets系统为agent
工作环境,利用AsDK【121开发仿真环境,实验中模
拟的网络节点支持SNMP协议。
仿真方法:实验以网络中的节点数目为自变量,以执行时间和迁移次数为因变量,测试节点数目的变化对任务执行时间和agent迁移次数的影响,从而比较它们的效率。因为实验中对每个节点的管理功能相同,所以容易仿真出网络中拥有不同节点数目的情况。定义自变量以50为步长逐步增加,计算执行时间和迁移次数。在集中式的方法中,对被管节点采用轮询的方式;在单个agent方法中根据节点数目为agent制定旅游路线,在agent代码中加入计时的功能代码以测试执行时间;在多agent
 
方数据方法中,在调度agent的代码中加入计时功能,并把各个agent的迁移次数作为调度规划表的一个字段,从而测试总任务的执行时间和agem的迁移次数。
测试结果:图7表示了3种方法的时间特性和迁移效率比较,得出结论,在局域网内节点较少的情况下,传统的集中式管理效率较好,当节点数目增多到大约40以上时,分布式方法显示出其优越性,而基于多agent的方式要优于单个agem在网络中的迁移管理的方式,多agent的迁移次数更是远远少于单个agent方式。
2100020000190001800017000
姜徽

4000300020001000

被管节点数目
(a)3种方法任务执行时间比较

籁l
勰裟裟裟勰裟8
被管节点数目
(b)2种agent方法迁移次数的比较图7调度方法测试结果
本文研究了网络管理任务的分解算法和建立而提供了一种有效的大规模网络管理方法。研究还KONAK,XUZ.A
fr锄eworkfor
network
m柚agement
using
mobile
agents【A】.Pmc
of山eIIltemationalParallel柚dDis耐buted
Processing
Symposium(IPDPS’02)[C】.2002.227—234.
BUCHANMAN
J,NAYLoR
M,SC()1frEnhancingnetwork
m柚agementusingmobileagents【A].7thIEEEIntemationalConfer-
6总结
在分解算法的基础上的多agent任务分配方法,从
存在一些不足之处,例如假定服务单元粒度合理,所以未来会对agent分组优化和agent协作能力等问
题进行研究。参考文献:
【1】
【2】
・72・
通信学报
第”卷
∞ce觚dWbrkshop
onme
Engin∞ring
of
CoInputer
Based
Sys—
minimizingoVerheads【A】.Pmcof山e23血IIItemationalConfemnce
tcms【C】.2000.218—227.
on
Dis砸butedComputingSystems(ICDCS’03)【C】.2003.600-609.
【31王汝传,卞正皑,徐小龙.基于移动代理网管平台的集成化系统模型
【ll】KQML【EB,oLl.http:,,www.却a.orghpository,ips.php
3.
研究【J】.通信学报,2004,25(3):82・90.
【12】Aglets【EB,OL】.http:,,www.m.ibm.coIr—aglet“.
ⅥrANG
C,BIANA,XUL.Ttle
stIldy
ofintegr№d
systcm
model
tothemobik—agent
b鹊ednetwork
In柚agementplatfb咖【J】.
作者简介:
Joumalon
Communications,2004,25(3):82—90.
刘波(1975,),女,河南南阳人,东
【4】
Ho
T’MEDARDM,KOErrrER
R.An
info帅ation
theoreticviewof
南大学博士生,主要研究方向为分布式网network
m柚agermnt【A】.mEEINF()COM【C】.2003.
络管理与多agent技术。
【5】CHUNK,CHOY,CHoH,LEEW.Networkm柚agement
bascd
on
PC
communic撕onplatfb咖withSNMP粕d
mobile
agents【A】.Proc
of出e22nd
IntemabonalConf醣∞ce
on
Dis伍buted
Compu曲gSystemsWorkshops(IcDCSW’02)(C】.2002.222・227.
【6】
队队VASSILIOU
S,PUUA肌A,TOMARCmO
O.M0bile
agent_bascd印pmach
for
emcient
network
m粕agement粕d
Resoufce罗军舟(1940.),男,浙江宁波人,alloc撕on:胁r∞work柚d叩plications【J】.I眦JoIIrnal
0n
Selcctcd
博士,东南大学教授、博士生导师,主要Are懿inCommunications,2002,20(4):858-872.研究方向为高性能网络与协议工程、网络
【7】FERRANTE
J,01’rENSTEINJ,WARREN
D.The
pro毋砌
管理、网络安全、网格计算等。
dependence
graph粕d
itsusein
optiIllization【J】.ACMTr柚sactions
on
Programming‰guages锄dSystems,1987,9(3):319・349.
【8】
MORELB,ALEXANDER
A.slicing
appm∞h
for
p黝llel
compo-
nent
ad印‘撕on【A】.10山mEEIntemanonalConfercnce强dWbrl【sh叩
on
ule
Engi瞅ringofCo唧uter-B硒ed
Syste脚【C】.2003.108-114.
李伟(1978.),男,河南许昌人,东南【9]
sINGHA,PANDE
S.Conlpiler
optiIllizationsfor
java
agletsindis—
大学博士生,主要研究方向为网络管理、mbut酣datainteIlsive印plications【A】.Proc
of17ttl
ACMSymposium
流量工程等。
on
Applied
Computing(Ag曲ts,Intcf孔tions,M0bil时柚d
System
Track)【C】.2002.87—92.[10】ZHUANG
X,PANDES.cornpilerscheduling
ofmobile
agems
for
(上接第63页)
谢宁(1979.),男,四川新都人,中梁奂晖(1977.),男,广东阳江人,山大学博士生,通信学会会员,主要研究中山大学博士生,通信学会会员,主要研方向为通信系统的空时域接收技术。
究方向为宽带无线通信技术。
 
方数据
大规模网络管理中的任务分解与调度
作者:作者单位:刊名:英文刊名:年,卷(期:被引用次数:
刘波罗军舟李伟LIUBoLUOJun-zhouLIWei东南大学,计算机科学与工程系,江苏,南京,210096通信学报
JOURNALONCOMMUNICATIONS2006,27(34次

参考文献(12条

1.SINGHA;PANDESCompileroptimizationsforjavaagletsindistributeddataintensiveapplications2002
2.MORELB;ALEXANDERPAslicingapproachforparallelcomponentadaptation2003
3.FERRANTEJ;OTTENSTEINKJ;WARRENJDTheprogramdependencegraphanditsuseinoptimization[外文期刊]1987(03
4.PAPAVASSILIOUS;PULIAFITOA;TOMARCHIOOMobileagent-basedapproachforefficientnetworkmanagementandResourceallocation:frameworkandapplications2002(04
5.CHUNJK;CHOKY;CHOSH;LEEYWNetworkmanagementbasedonPCcommunicationplatformwithSNMPandmobileagents[外文会议]2002
6.HOT;MEDARDM;KOETTERRAninformationtheoreticviewofnetworkmanagement2003
7.王汝传;卞正皑;徐小龙基于移动代理网管平台的集成化系统模型研究[期刊论文]-通信学报2004(038.BUCHANMANWJ;NAYLORM;SCOTTAVEnhancingnetworkmanagementusingmobileagents[外文会议]20009.Aglets10.KQML
11.ZHUANGX;PANDESCompilerschedulingofmobileagentsforminimizingoverheads[外文会议]200312.KONAMK;XUCZAframeworkfornetworkmanagementusingmobileagents[外文会议]2002

引证文献(4条
1.梅鲁海基于智能主体的运营级公共视频监控系统模型[期刊论文]-微型机与应用2009(152.冯德超.姜月秋卫星综合信息网网络管理协作任务分解算法[期刊论文]-科技资讯2007(33
3.李伟.刘波.罗军舟适合大规模网络的一种新型智能网管模型及性能分析[期刊论文]-通信学报2006(54.袁华军基于TCP/IP技术的ECC协议栈的设计与实现[学位论文]硕士2006

本文链接:http://d.g.wanfangdata.com.cn/Periodical_txxb200603010.aspx

本文来源:https://www.2haoxitong.net/k/doc/a72590e8e009581b6bd9eb60.html

《大规模网络管理中的任务分解与调度.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式