Transcription

1 An agent archtecture for network support of dstrbuted smulaton systems Robert Smon, Mark Pullen and Woan Sun Chang Department of Computer Scence George Mason Unversty Farfax, VA, U.S.A. smon, mpullen, Abstract Contnued research nto dstrbuted agent-based systems and evolvng web based technologes are openng up tremendous possbltes for the deployment of large scale and hghly extensble and flexble smulaton systems. However, the queston remans as to how well agent and web based smulaton systems can use underlyng network protocols. Ths s especally true for complex dstrbuted smulatons that have multple partcpants and real-tme data delvery requrements. Ths paper addresses the ssue of nterconnecton patterns between web-based smulaton agents. We frst descrbe a smple agent-orented archtectural extenson to an exstng dstrbuted smulaton system. Next, we present a set of nterconnecton algorthms between the agents n the system, under the assumpton that only end-host multcast s avalable. In other words, we assume natve IP multcast wll not be deployed n the near future on a large scale. We expermentally evaluate our approach under a number of dfferent scenaros. Our results show that by usng a proper connecton strategy t s possble to get good performance for agent-based systems that use end-host multcast. Index terms Agent-based Smulaton, Performance of Agent-based Smulaton Systems, Overlay Multcast Support for Dstrbuted Smulaton

2 A. INTRODUCTION One of the problems currently facng dstrbuted smulaton system desgners s how to best take advantage of evolvng web-based technologes to provde for smulaton servce nteroperablty, composablty, extensblty and dscovery. Snce many dstrbuted smulaton systems requre real-tme performance, a closely related problem s how web-enhanced smulaton envronments can effectvely use network level QoS servces for relablty, bounded latency and group-based multcast. The challenge n addressng both ssues s that web-based smulaton technologes and network-level control polces operate at dfferent system levels, and the polces and semantcs at each level do not readly translate nto effcent support at another level. For nstance, software agents are often the enttes that control web-based smulaton programs. However, applcaton-level agents may not make effcent use of avalable network servce choces such as end-host multcast, whereby the multcast functon s shfted from the network nto the applcaton [3]. End-host multcast s requred when IP multcast s not avalable. The focus of ths paper s the desgn and mplementaton of an agent-based archtecture and set of nterconnecton algorthms to effcently use end-host multcast n the Next Generaton Internet (NGI). We have prevously addressed the ssue of supportng a web-based dstrbuted vrtual smulaton (DVS) system over the NGI [9]. Portons of ths earler work descrbed our NGI Internet Federaton Obect Model (NGI FOM) and the Selectvely Relable Multcast transfer Protocol (SRMP). The NGI FOM provded a structured FOM to support a varety of multcastng styles wthn a dstrbuted smulaton system such as the HLA[13]. SRMP s a transport level protocol that supports a mx of relable and best-effort multcast by takng advantage of the specfc requrements of the DVS. For nstance, many data streams are refreshed frequently and thus may be dstrbuted by best-effort transport, whle a small fracton of traffc conssts of data change rarely and thus requres relable transport. Our orgnal work was mplemented by modfyng an RTI wrtten n TAO. Ths paper extends our approach to take advantage of several proposed web-based technologes, specfcally dstrbuted agents usng Web Servces [8] and the Semantc Web[5]. Our goal s to develop and evaluate an agentfed verson of our work n the NGI FOM and SRMP, and to use them to effectvely support an end-host DVS applcaton. Usng ths framework, we desgn nterconnecton algorthms between agents that make effcent use of the network. We have defned three basc agent classes; one to represent ndvdual runnng federatons and ther assocated FOMs, a second class concerned wth end-to-end data transport, and a thrd class of network-level agents. Our agents and ther capabltes are descrbed usng an ontology markup language based on DAML-S, and s therefore compatble wth current work n web servces and other agent ontologes [8]. Prevous related work n Web Servces for dstrbuted smulaton ncludes research nto technques for composable servces [2][10]. However, to date, there has been lttle work addressng the relatonshp between moble and composable smulatons and end-host multcast, whch s ncreasngly becomng an accepted alternate to drect IP multcast. B. BACKGROUND The use of agent-based computng n desgnng flexble and extensble smulaton systems has long been recognzed[1]. Agents are a powerful software engneerng unt that can encapsulate complex rule sets, can be composed from other agents and can communcate semantcally rch

3 messages va agent communcaton languages. Messages passed between agents are descrbed by knowledge representaton schemas called ontologes[5]. Agent computng s partcularly well suted for deployment n the context of recent work n Web servces and the Semantc Web. Web servces are applcatons or software components that are deployed on the World Wde Web. Web servces have an assocated sute of enablng protocols, such as the WSDL [7](Web Servces Defnton Language). Web smulaton servces must be descrbed along multple dmensons, ncludng both syntactc (how to use t) and semantc (what does the servce mean and what does t offer). Whle methods for syntactc descrptons are generally well understood for dstrbuted smulaton, the ssue of semantc descrpton s stll consdered an open queston. One promsng approach to ths problem s through ongong efforts n Semantc Web servce descrpton. A potental drawback n usng web-enabled agent-orented smulaton s that system performance wll suffer. Ths s partcularly true n the case of group-based communcaton systems that use end-host multcast. End-host multcast s where group management and packet replcaton s performed on end host systems, rather then wthn the network, as n the orgnal IP multcast model. As the end-host multcast model ncreases n mportance, there s growng concern about ts mpact on system performance, especally for systems such as tme senstve DVS. For nstance, snce agent composton and locaton can cause communcaton bottlenecks, t s essental to desgn effectve agent placement algorthms for end-host multcast. C. AGENT DESCRIPTION We use three classes of agents. The frst class s federate agents, and s used to represent and control ndvdual smulaton programs assocated wth a partcular NGI FOM. The functon of these agents s to allow for automatc servce dscovery, servce nvocaton, servce composton and servce executon montorng for smulaton federatons. The second agent class s fed_com agents, short for federaton communcaton. These agents are used to specfy and control communcaton level relablty and group communcaton ssues, such as multple types of relablty for dfferent data obects n the same federaton by provdng agent control over SRMP functonalty. The thrd agent class s serv_comp agents, short for servce composton agent. These agents nteract wth the network level to specfy the constructon of multcast overlay trees. Serv_comp agents determne the nterconnecton pattern between fed_com agents. They also possess the necessary functonalty to perform data conversons, such as lowerng the data rate to certan members of a group, due to compresson technques, data dstrbuton management, etc. These three classes of agents communcate by exchangng web-pages. Each web page contans ontologcal nformaton based upon DAML-S. In the DAML-S model, each ontologcal framework consstng of three subonotologes: a servce profle, a process model and a groundng. The agent servce profle descrbes what the servce can do, for purposes of servce advertsement, servce dscovery and servce matchmakng. Matchmakng s the act of matchng servces wth other servces. The process model descrbes how smulaton servces work n terms of control and data flow n terms of nputs and outputs, along wth the servce s precondtons and sde effects. The groundng specfes the detals of how an agent can access a servce. In our case we use WSDL as the format to specfy fed_com communcaton modes and assocated transport-level port numbers.

4 D. ARCHITECTURE Our approach s to defne two communcaton paths through the system. The frst s drect agent-to-agent communcaton, and s used for setup and control purposes. Ths occurs as agents exchange web pages. The second type s used drectly for data transfer, bypassng drect agent control. Ths occurs when drect network paths are setup to go between fed_com agents. The reason for two paths s that agent communcaton methods, ncludng ours, operate by exchangng XML messages. Ths technque s too slow for tme senstve data transport. The serv_comp agents wll also partcpate drectly n data transfer, usng drect network connectons. A smulaton s ntated when a federate agent fnds other federate agents va the use of a system matchmaker. Under the drecton of the ntatng agent, the agents perform an all-to-all exchange of web page descrptons, whch nclude ther FOMs and requrements for runtme smulaton parameters, based on the RTI model for smulaton specfcaton. Usng ths shared nformaton, the runtme smulaton requrements are encoded n the form of a XML descrpton. Each federate agent then dscovers a local serv_comp agent to determne network connectvty and data management requrements. Ths ncludes a specfcaton of the federates expected data rate and the selecton of the desred multcast servce, ether IP Multcast or end-host. Serv_comp agents manage multcastng and the need to support both heterogeneous data rates and data relablty modes. Data rates are determned by network connectvty and applcaton needs. For nstance, n the case of DVS systems requrng streamng data or meda streams dfferent rates can be supported, due to dfferent compresson technologes or network connectvty. Interest Management technques n the HLA also can result n dfferent requred data rates. Data relablty s a functon of the FOM. Fed_comp Fed_comp Broadcast Doman Serv_comp Broadcast Doman Wde Are Network Serv_comp Fed_comp Serv_comp Fed_comp Broadcast Domans Fgure 1: Smulaton agent archtecture From the archtectural vewpont, serv_comp agents manage local domans that represent connecton ponts between federate agents runnng on end-hosts and the Wde Area Network (WAN). A local doman may be one or more Local Area Networks (LAN), a sngle hgh-end computer connected drectly to a router, etc. We characterze the local doman as a broadcast doman. In effect, each broadcast doman s the end-pont of a logcal multcast dstrbuton tree. Based on the smulaton specfcaton and the locaton of federates nsde each broadcast doman, each serv_comp dscovers and assgns fed_comp agents to provde transport level mxed data delvery mode support. Thus, the number and locaton of each fed_comp agent represents the endponts n the logcal data dstrbuton tree. An overvew of ths archtecture s

5 shown n Fgure 1. If natve IP Multcast were possble, fed_comp agents could be placed drectly n a spannng tree. However, under the end-host scenaro each fed_comp agent needs to perform data forwardng and packet replcaton. Therefore, the nterconnecton pattern between fed_comp agents s of central mportance to system performance. The purpose of defnng and analyzng fed_comp nterconnecton algorthms s to reduce communcaton latency and system load, thus mprovng end-to-end performance. Notce that all end-host overlay technques cause extra packet transmssons over the network. Our goal s to mnmze ths effect and reduce actual bandwdth utlzaton. Our approach to multcastng s for sngle-source tree constructon. That s, each sender s the root of a tree that conssts of all the recevers. Further, we dynamcally place serv_comp agents wthn the tree at specfc places n order to reduce data traffc transmsson, as explaned below. The algorthm has three phases. In phase one, we create a mesh of fed_comp agents ordered by data rate. In phase two, we create a seres of sngle source overlay multcast trees. For phase two, we add applcaton-level admsson control, n an attempt to lmt congeston over any partcular porton of the WAN. We also use a load-balancng path selecton heurstc. Our algorthm s flexble, and uses several dfferent approaches to tree creaton. In phase three, we place extra serv_comp agents n the system to support the data rate of recevng fed_comp agents, as requred. Ths allows us to further reduce bandwdth utlzaton. The detals follow. Phase 1: Create a mesh of fed_comps per source s dfferent data rate. The mesh s a complete vrtual graph whose vertces are the fed_comps. Frst, fnd the shortest path between each fed_comp usng lnk delay as the lnk cost. Then add a un-drectonal vrtual lnk between the two group members, (.e. fed_comp) to the mesh, only when there s a path that starts from a sender to a recever fed_comp, the data rate requested by the sender s greater than or equal to the data rate requested by the recever, and the physcal lnks of the shortest path have the avalable bandwdth greater than or equal to the data rate requested by the recever. Algorthm for Mesh Creaton Let Mˆ be a set of fed_comp agents. For all ˆ Mˆ m // Requred n case of newly assgned fed_comp f ( mˆ.data_rate > (maxfederate.data_rate) mˆ.data_rate = (maxfederate. source.data_rate; For all ˆ Mˆ m Fnd the shortest path from ˆ Mˆ to ˆ Mˆ where usng a shortest path m algorthm and the delay as the lnk cost. For all ˆ Mˆ m m

6 f (( mˆ mˆ ) and ( mˆ 's data rate mˆ 's data rate ) and (the bottleneck bandwdth of the path from mˆ to mˆ m 's data rate )) ˆ Add a vrtual lnk from mˆ to mˆ to the mesh. We repeat ths procedure to create a mesh per each source s dfferent data rate. If the sources data rates are the same, a mesh can be used to create Overlay Multcast Trees rooted on the sources wth the same data rate. Phase 2: Create a source-based Overlay Multcast Tree over the mesh that the source s data rate matches. We do applcaton-level admsson control, nsurng that no partcular lnk or path s overloaded. Our algorthm accommodates ether a shortest path or a spannng tree routng tree constructon. We use a load balancng heurstc based upon avodng paths for whch there s a large mbalance of utlzaton along specfc lnks. Phase 2 requres ths extra complexty because we are tryng to mnmze multple routng metrcs, ncludng delay, bottleneck bandwdth and overall tree cost. Durng constructon of source-based multcast tree, at each step, a largest data rate edge connectng an off-tree node to the partal tree s added to the tree. When a node decdes ts parent, t chooses the node connected wth the mesh lnk that has the least value of ( 1 ILBR( P m ˆ, mˆ )), where ILBR ( P ) m ˆ, mˆ (Independent Least-balanced Routng [11]) s defned as ILBR ( Pm ˆ, mˆ ) = z P z P ec m ˆ, mˆ ec mˆ, mˆ z z Excess capacty ecz at each lnk n the system s lnk z s defned as the bandwdth requrements of the smulaton connectons routed through the lnk as a percentage of total lnk capacty. Ths nformaton s obtanng usng standard network montorng and tracng tools. Only when the avalable bandwdth of the bottleneck lnk of the path between two group members supports the recever s data rate, the path s added to the overlay multcast tree. If a path s added to the overlay multcast tree, the avalable bandwdth of each lnk on the path s reduced by the recever s data rate. Each parent fed_comp keeps only the fed_comp wth the hghest data rate request among the chldren canddates as ts chldren. Ths condton s enforced by placng only one fed_comp n each doman. The algorthm shown below mplements fndng a mnmal cost spannng tree. Algorthm for routng overlay creaton

7 Let Mˆ be a group of fed_comps and ˆ Mˆ m be a multcast group member. Let L be a lst of frnge fed_comps. The status of mˆ Mˆ can be UNSEEN, FRINGE, and IN-TREE. UNSEEN means the node s never vsted, FRINGE means the node was vsted, and IN-TREE means the node s added to the multcast tree. Set the status of all ˆ Mˆ m to UNSEEN; Set source_node s status to IN_TREE; current_node = source_node; For all ˆ Mˆ m For all w node adacent to the current_node next_node = w ; If (next_node.status s UNSEEN) //admsson_control returns true f the avalable bandwdth of the //bottleneck lnk of the path from current_node to next_node s //greater than or equal to the next_node s data rate, otherwse //returns false. If (admsson_control(current_node, next_node) == true) next_node.status = FRINGE; next_node.cost = ILBR( ) ; 1 P current _ node, next _ node next_node.parent=current_node; Add next_node nto the lst of frnge node; If (next_node.status s FRINGE) new_cost = ILBR( ) ; 1 P current _ node, next _ node If (next_node.cost > new_cost)

9 Ths s smlar to the above Mnmum Spannng Tree-based algorthm. The dfference s that t uses the cost of the path from the source group member to another member to choose a parent of a node nstead of the cost ust between the parent_node and chld node to determne a parent_node of a node. We omt the detals because of space consderatons. Phase 3: Place serv_comps to adapt the data rate to users requests at the nodes on the overlay multcast tree that have the chldren whose requested data rates are smaller than the node s. Fnally, at the end of Phase 3, drect network connectons are nstantated between the fed_coms n the system, along wth connectons between any added serv_comps and ther assocated fed_coms. The result of the three phases of ths algorthm s drect transport level network connectons between fed_comps, the agents that control SRMP functonalty. Further, f as a result of Phase 3 addtonal serv_comps were added for data reducton, there are transport level connectons setup between these serv_comps and other fed_comps n the system. Recall that for data transfer all connectons use regular transport level protocols, not agent communcaton protocols. E. EVALUATION We have conducted an expermental evaluaton of our approach for constructng fed_comp nterconnecton patterns. We compare the performance of the Shortest Path-based heurstc and the Mnmum Spannng Tree-based heurstc wth the performance of IP Multcast, usng DVMRP, along wth pure uncast. We determne the IP Multcast tree based on the uncast paths from the source to each recever. The evaluaton metrcs for the performance of each algorthm ncludes the number of serv_comp agents needed to be placed for a smulaton, the average lnk stress, the worst lnk stress, the resource usage, the total bandwdth usage, and the relatve delay penalty (RDP) of each path. In reference [5], the stress of a physcal lnk s defned as the number of dentcal copes of a packet carred by a physcal lnk. For our evaluaton, the physcal lnk stress s rato of the number of packets that a lnk processed to the number of packets sent by all members. Resource usage s the sum of the product of the lnk stress and the lnk delay over all lnks used. We assume that lnks wth hgher delay values tend to be assocated wth hgher cost. The total bandwdth usage s the sum of all bandwdth reserved along the paths from all sources to all recevers. The resource usage and total bandwdth are metrcs to measure the network resources consumed n the process of data delvery to all recevers. RDP s the rato of the latency experenced when sendng data usng the overlay to the latency experenced when sendng data drectly usng the underlyng network. In our smulaton, all fed_comp agents send and receve packets. We created a separate source-based multcast tree for each member to send out packets to all other multcast group members n IP Multcast, the Shortest Path-based overlay heurstc and the Mnmum Spannng Tree-based heurstc. The admsson control s performed when a path s added to the multcast trees n IP Multcast, the shortest-tree-based heurstc and the mnmum-tree-based heurstc, and also for a path between the source and recever for uncast. A source-based tree s accepted only

10 when there s bandwdth enough to meet the data late requested by each member for all the paths from a source to all other multcast group members. Otherwse, the tree s reected. We used CSIM package to wrte the smulaton programs, and Georga Tech Internetwork Topology Models (GT-ITM) [12] to generate transt-stub graphs wth 100 nodes. The multcast group sze vares from 5, 10, 15, 20, 25, and 30. Notce that 30 group members mples that 30% of the routers are part of the group, whch s qute a hgh percentage compared to a typcal WAN scenaro. We ncluded ths worst case scenaro as a stress test for our approach. The members are unformly assgned to each node on the graph. We ran the smulaton program for each heurstc 30 tmes per group sze. Each tme, we used dfferent graph wth 100 nodes. We used the number for each lnk n the graph generated by GT-ITM as the lnk delay. The delay of the local lnk s randomly dstrbuted between 1 and 15. We used 1 Gbps for the bandwdth of the backbone lnks and 20 Mbps for the local lnk between the router and the end host. The data rates requested by the fed_comp members are randomly dstrbuted among 150 Kbps, 60 Kbps, and 20 Kbps. The frst set of results n Fgure 2 shows the effect of data rate reducton, by comparng the number of serv_comp agents placed n the two overlay technques to what would happen n IP Multcast. In the latter case, data reducng gateways are requred at the end-ponts of the IP multcast tree. Notce that ths comparson s not requred n uncast group sze IPMultcast Shortest Path Heurstc Mn Spannng Tree Heurstc Fgure 2 The number of serv_comp Agents due to data reducton The averages are between 9.98 and for the Mnmum Spannng Tree-based heurstc, between and for the Shortest Path-based heurstc, and between and for IP Multcast at 95% confdence level. Notce that the overlay approach actually reduces the number of data-reducng agents requred over IP multcast, whch must be modfed to make ths type of ntellgent data reducton n the data path. Ths s a strong ndcaton that agent moblty s mportant. Fgure 3 shows average lnk stress. The averages are between and for IP Multcast, between 0.80 and 0.81 for the Mnmum Spannng Tree-based heurstc, between 0.99

11 and 1.0 for the Shortest Path-based heurstc, and between 1.05 and 1.07 for uncast at 95% confdence level group sze IPMultcast Uncast Shortest Path Heurstc Mn Spannng Tree Heurstc Fgure 3 Average Lnk Stress Fgure 4 shows the maxmum, or worst case lnk stress for the scenaros. Ths gves us an ndcaton as to the mbalance of the varous approaches. The mnmum-spannng-based heurstc has the larger worst lnk stress than IP Multcast, but has smaller worst lnk stress than uncast. However, the Shortest Path-based heurstc has the larger worst lnk stress than IP Multcast and uncast. The fgure 3 shows the result group sze IPMultcast Uncast Shortest Path Heurstc Mn Spannng Tree Heurstc Fgure 4 The Worst Lnk Stress

12 Fgure 5 shows the total bandwdth usage. The Shortest Path-based heurstc and the Mnmum Spannng Tree-based heurstc naturally both have larger total bandwdth usage than IP Multcast, but the smaller than uncast. The Mnmum Spannng Tree-based heurstc has the smaller total bandwdth usage than the Shortest Path-based heurstc. The results show that our approach scales n lnear fashon to the Multcast approach Kbps group sze IPMultcast Uncast Shortest Path Heurstc Mn Spannng Tree Heurstc Fgure 5 Total Bandwdth Usage Fgure 6 shows the RDP. The Shortest Path-based heurstc has a smaller RDP than the Mnmum Spannng Tree-based heurstc. We used 1 for the RDP of uncast and IP Multcast. The RDP penalty for the Shortest Path heurstc s qute compettve as compared to IP multcast and uncast, ndcatng the vablty of our approach for tme senstve communcaton.

14 multcast for number of requred data reducton agents. We observe that for networks where IP multcast s not avalable t s possble to stll obtan good network performance, expect n hghly saturated networks. Further, snce the end-host technques can make ntellgent use of packet rebroadcast, the number of data reducng agents requred s reduced n the overlay methods, as compared to IP multcast. E. CONCLUSIONS Ths paper descrbed an agent-based archtecture and nterconnecton strategy for a dstrbuted vrtual realty smulaton envronment. We frst dscussed a web-based ontology for three classes of agents requred to make a prevously deployed system compatble wth current work n Web Servces and the Semantc Web. We then descrbed how these agents ntalze and confgure themselves nto an nterconnecton pattern. We ntroduced a new algorthm for agent nterconnecton, nvolvng three separate phases. The outcome of the thrd phase nvolved settng up drect network connectons, and may also result n addtonal agents beng placed for purposes of data reducton. We expermentally evaluated our approach, usng two dfferent heurstcs, aganst IP Multcast and pure uncast. Expect n the crcumstances of extremely dense group membershp, our approach perform n a compettve fashon to IP multcast. Further, the ablty to place ntellgent agents for packet forwardng on end-hosts reduces the computatonal burden wthn the system.

An Alternatve Way to Measure Prvate Equty Performance Peter Todd Parlux Investment Technology LLC Summary Internal Rate of Return (IRR) s probably the most common way to measure the performance of prvate

The Greedy Method Introducton We have completed data structures. We now are gong to look at algorthm desgn methods. Often we are lookng at optmzaton problems whose performance s exponental. For an optmzaton

Module LOSSLESS IMAGE COMPRESSION SYSTEMS Lesson 3 Lossless Compresson: Huffman Codng Instructonal Objectves At the end of ths lesson, the students should be able to:. Defne and measure source entropy..

A New Paradgm for Load Balancng n Wreless Mesh Networks Abstract: Obtanng maxmum throughput across a network or a mesh through optmal load balancng s known to be an NP-hard problem. Desgnng effcent load

What s Canddate Samplng Say we have a multclass or mult label problem where each tranng example ( x, T ) conssts of a context x a small (mult)set of target classes T out of a large unverse L of possble

REVIEW OF RISK MANAGEMENT CONCEPTS LOSS DISTRIBUTIONS AND INSURANCE Loss and nsurance: When someone s subject to the rsk of ncurrng a fnancal loss, the loss s generally modeled usng a random varable or

On the Optmal Control of a Cascade of Hydro-Electrc Power Statons M.C.M. Guedes a, A.F. Rbero a, G.V. Smrnov b and S. Vlela c a Department of Mathematcs, School of Scences, Unversty of Porto, Portugal;

Formulatng & Solvng Integer Problems Chapter 11 289 The Optonal Stop TSP If we drop the requrement that every stop must be vsted, we then get the optonal stop TSP. Ths mght correspond to a ob sequencng

Evaluaton And Comparson Of The Dfferent Standards Used To Defne The Postonal Accuracy And Repeatablty Of Numercally Controlled Machnng Center Axes Brgd Mullany, Ph.D Unversty of North Carolna, Charlotte

To ensure the functioning of the site, we use cookies. We share information about your activities on the site with our partners and Google partners: social networks and companies engaged in advertising and web analytics. For more information, see the Privacy Policy and Google Privacy &amp Terms.
Your consent to our cookies if you continue to use this website.