MULTI-AGENT SYSTEM FOR DECENTRALIZED COMPUTER NETWORK MANAGEMENT Krzysztof Cetnarowicz Jaros law Kozlak Institute of Computer Science, AGH - University of Mining and Metallurgy Al. Mickiewicza 30, 30-059 Krakow, Poland e-mail: cetnar@agh.edu.pl Abstract: Structure of the network becomes more and more complicated. Optimal management of a structure of a complex network becomes a dicult, work-consuming and costly task. A concept of a system being a module of a distributed operating system was presented in the paper. The module working as a decentralized multiagent system carries out current monitoring of protabilityofallnetwork connections. It takes advantage of abilities of mobile agents to negotiate and build plans of common enterprises, and realizes on-line (in real-time), self-acting reconguration of a network structure. As a result, we obtain a computer network that follows on its own, communication needs in the optimal manner. Copyright c 2000 IFAC. Keywords: multi-agent management, decentralized systems, computer networks, intelligent control, interaction mechanisms 1. INTRODUCTION The development of the computer network makes new tasks, such as optimal network designing, ecient and safe computer and network management more and more complex and dicult. These tasks should be supported in their realization by computer systems or even totally managed by them. It seems that due to a distributed character of the computer network, the above-mentioned tasks would be best managed by decentralized systems realized as multi-agent systems. Attempts at realizing such systems improving the process of packet routing in the computer network can be found in the papers of (Gibney and Jennings, 1998). An optimal movement of packets in the network depends on a proper routing which can make use of the current network structure in an optimal way. A proper choice of the network structure has a basic inuence on the eectiveness of activity. Consequently, it seems that multi-agent systems can be used for a more complex computer network management by means of eective packet routing but the evolution of the computer network must be steered dynamically, thus adapting its structure to the current needs. The computer system would then perform a double function of an automatic adaptation of the network to concrete needs of computer users (i.e. dynamic designing of the computer network structure) and an optimal use of the existing structure by means of decentralized packet routing. The second important task of the computer network management is to exploit such network safely. Due to its resistance to damage the capability to adapt to changing functioning conditions of the network, the multi-agent system can protect the computer network in an ecient way. The above tasks can be realized by a multi-agent decentralized system for computer management,
Fig. 1. Schema of the multi-agent system for network management in which agents base decision making processes on market mechanisms. 2. PRINCIPLES OF FUNCTIONING OF DECENTRALIZED SYSTEM MANAGING COMPUTER NETWORK To develop the multi-agent managing system for the computer network wehavetotake a particular point of view to consider the network as an environment for the agents population. The environment considered (computer network) should fulll the following features (g. 1): features of hardware: Network has a form of directed graph that consists of nodes and edges. Computers make nodes the former ones are able to store the sent information (packets). Edges make links between computers that enable sending information (packets) features of local nodes system's software: Nodes are responsible for directing packets in the network (the so-called routing), choosing a further optimal way according to the assumed criterion (in the current state - the fastest way). After choosing a way,apacket is directed to an appropriate edge. Through the intermediary of the edge, a packet reaches an appropriate (chosen by routing process) neighboring node. Network management system is based on the essential principle that denes conditions of a sending packet between the nodes. Sending of a packet follows the assumption that a packet pays for sending through every edge between the nodes. Therefore a packet is considered as a special agent (Agent - Packet Transporter - PT). Its task is to transport the entrusted information, from the source node to the destination node in given conditions (Cetnarowicz et al., 1999). The conditions (the quickest, the cheapest transport, etc.) are known to a given agent PT and are a basis for realizing a routing process. The payment may be done directly: For the purpose, each node (exactly - output port on an edge) has a bank account opened. Appropriate sums may be paid into the account by network Each packet which is to be sent in network has its account at (its own) bank and transfers an appropriate payment for sending, to an account of a sending port. Agents authorized to use the said bank accounts may perform all operations on the accounts with the intermediary of network operations. indirectly: In a simplied case, a sending port obtains a generalized payment in a form of some number of (stipulated) points. The number of points collected makes evidence on activity of a given port, and what follows - a given connection (an edge in a graph). The points collected may then be changed into cash and transferred from the funds, (e.g. centrally xed), planned to be spent on network functioning. The payments make a basis for market oriented decisions related to modications (extension, decrease) of certain parts of a network. Decision are undertaken and then realized by the multi-agent system managing the network. 3. MULTI-AGENT SYSTEM MANAGING THE NETWORK The multi-agent system consists of two main parts: a population of dierent kinds of agents and the environment in which the agents work. The environment is determined by the computer network and may be considered as particular graph (Fig. 1). There are the following types of agents in the system: Network Service agent that provides the interface between application in the systems and creates the Packet Carrier agent. Router agent that provides the routing process. Router Messenger agent that transfers routing information around the network.
If the negotiations are completed successfully the agent Investor-Proxy realizes the connection placing order for the appropriate service with the appropriate company. 4. INTERACTIONS IN THE MULTI-AGENT SYSTEM FOR COMPUTER NETWORK MANAGEMENT Fig. 2. Schema of the network where the agent undertake action to establish new connection Gate agent that makes possible for agents to leaveagiven node to reach the neighboring one. Packet Carrier agent that provides a transport of a given packet from the sender to the receiver node Linker agent that collects necessary information around the network (or its part) to enable detection of a problem of trac in the network. Investor agent that enables to undertake decisions with investment in the network (extension or reduction of connections, hosts etc.). Investor Proxy agent that participates in negotiations concerning investments in the network. The decisions concerning investments in the network (which results in the network modications) are settled as a result of negotiations among Investors and Investor Proxy agents. We can consider that host gate G 12 linking the host H 1 with the host H 2 nds that it is overloaded (it means that the connection between H 1 and H 2 has insucient transfer rate). A scenario of the action undertaken by agents to establish a new connection (or to raise data-transfer rate) may consists of the following steps (g. 2): Gate (port) G 12 at the host H 1 linking it with the host H 2 is overloaded and the agent Gate corresponding to the gate G 12 creates the agent Linker that is sent tothehosth 2. At the host H 2 the agent Linker veries the trac sent by the gate G 23 linking the host H 2 with the host H 3. If the trac from the host H 1 to the host H 3 going via the host H 2 is to heavy the agent Linker goes back to the host H 1 with a proposition to create a direct link between the hosts H 1 and H 3. This proposition is paid to the Investor agent at the host H 1. Investor agent at the host H 1 builds the nancial project of the enterprise, and sends the Investor-Proxy agent to the host H 3 to negotiate its participation in the project. 4.1 Introduction. An interaction protocol is a set of rules of interaction that describes what action each agent can take ateach time. In this chapter typical interaction protocols used in the multi-agent systems are presented, then a presentation is given how these protocols can be applied for the interactions in the system for the computer network management, which was presented in the previous chapter. 4.2 The choice of the interactions protocols used in the multi-agent systems. Contract net. Its idea is based on the mechanism of contracting, used in business (Smith, 1980). There are two roles of the agents in the protocol: manager { agent, which orders the realization of the task. It performs the following steps: the announcement of the needs of realization of the task, the reception and estimation of the proposition from the potential executors of the task, notication of the chosen executor, reception of the task performed and its processing, contractors { the agents { potential executors of the task. They perform the following steps: reception of the demand to perform the task, the evaluation of their capacities to perform the task, the answer (notication of the proposition or rejection), execution of the task if the proposition was accepted and sending the results received. Voting In some situations the agents can perform voting on the certain decisions. The result of the voting is obligatory for all agents participating in the voting. In (Sandholm, 1999) are presented some protocols of voting: plurality protocol. All propositions are evaluated simultaneously and the proposition accepted by the maximal quantity of agents wins. binary protocol. The propositions are evaluated in pairs. The one, which gets the minority of votes is rejected and the one which
receives the majority is accepted in the next voting. Bord's protocol. Each agent votes for the list of propositions. Each position on the list is associated with the value. After the negotiations the values from the lists of all agents are added up and the proposition which gets the best value from all agents wins. Auctions The exchange of goods between the agents may be realized by auction. The agents participating in the auction can perform one of the followings roles: auctioneer, participant of the auction. There are many dierent protocols of auctions which are associated with particular strategies of the agents. On the basis of an overview from (Sandholm, 1996) we canenumerate: English (rst-price open cry) auction The auctioneer proposes the initial price, the following participants have to make higher and higher bids. The goods goes to the participant, who oers the highest price. Dutch (descending) auction.the auctioneer oers a high price and then limits it progressively. The auction is won by the participant who is the rst to accept the proposed price. rst-price sealed-bid auction. The participants of the auction in secret deliver their prices oers to the auctioneer. The one who proposes the highest price wins and pays the price proposed by him. Vickrey auction (second-price sealed-bid). Similar to the previous kind of auction, but the winner pays the price not proposed by him, but the second proposed price. all-pay auction. All participants of the auction pay the prices oered by them, independently of the fact whether they win the auction or not. There is some modication of this auction - the participants who do not win the auction pay only some part of their oers. Market interactions The interactions based on the market approach have several advantages such as well analyzed (in economic science) theory and alow cost of communication. There are two kinds of agents in the system: producers and consumers. Producers transform the goods using technologies they have and the consumers put demands for the goods needed and their decisions are undertaken on the basis of their utility function (Wellman, 1996 Cheng and Wellman, 1997). The market approach was used for creation of the systems strictly connected with the management of the network: the system for analysis of the distributed multi-commodity ow problem (Wellman, 1993), nding the optimal localization of the mirrors of services in the Internet (Mullen and Wellman, 1995), system of routing of the packages in the Internet based on market mechanisms (Gibney and Jennings, 1998). 4.3 The types of the interactions in the multi-agent system for the management of the computer network. Introduction This sub-chapter will analyze, what interactions protocols can be chosen for particular tasks of the network management system. We concentrate on the following problems: choosing the Gate by PacketCarrier, which enables the best quality of the connection (using the criterion based on the cost and/or the performance of the link), gaining information about the state of the network, adding or removing the links to/from the network by Investor and Investor Proxy. Choosing the Gate by PacketCarrier The process of the choosing the Gate by thepacketcar- rrier may be realized using the following interactions protocols: Contract Net { Packet Carrier informs all Gates on the Node that it wants to transfer to a particular location in the Internet. The Gates inform what price it has to pay for the links, and what are other properties of the link (length, bandwidth etc.) The PacketCarrier chooses the best Gate from its point of view. voting { The PacketCarriers vote which link to choose and which link they acknowledge to be the best. auction { If the network is heavily loaded the PacketCarriers can take part in the auctions of bandwidth oered by the Gates. The opposite situation is also possible { the agent PacketCarrier demand to buy the permission to translocate by one of the Gates and the Gates participate in the auction oering lower and lower prices. The PacketCarrier chooses the lowest price. This algorithm may be used if the network is currently not much loaded.
market { The complex negotiation of the cost of the links between AgentCarriers (consumers) and Gate (producers) can be implemented using a market model. Gaining the information about the state of the network. Linker can gain the information about the state of the network using the following interaction protocols: Contract Net { Linker announces that it wants to buy information about the state of the network. The group of the nodes can send their propositions concerning the quality and the costs of the possessed information. Market { Linker and Gates take part in the exchange of the information about the structure of the network. The prices of the information are set by the market. The modication of the structure of the network - adding or removing the links The modication of the structure of the network by adding or removing the links can be performed using the following interaction protocols: Auction { Agents Investors take part in the auction of adding a new link to the network or sold the one by theinvestor who actually owns it.. Market { The Investors can buy or sell the owned links. 5. SIMULATION OF THE MULTI-AGENT SYSTEM The multi-agent system proposed for the network management has been modeled and veried by simulation (g. 3). It has a limited function { provides only the migration of the PacketCarriers using the Contract Net Protocol. The other tasks such as gaining information about the structure of the network and changing the structure of the network (adding/removing nodes) are not realized. The following interaction among agents has been realized: Packet carrier agent when arriving at a given host (node) is looking to a trip to reach the destination host at the lowest costs. At the host a number of options of transfer continuation at dierent prices is proposed to the packet carrier agent. Packet carrier agent accepts the solution, taking into consideration the price of the next displacement versus its own resources and the transfer rate versus the time it can waste Fig. 3. Schema of the examined network: a - at the beginning of simulation, b - at the end of simulation after improvement by system Table 1. Transfer rate between the hosts at the beginning of the simulation. (0) (1) (2) (3) (4) (5) (6) (0) { 10 { { 10 10 { (1) 11 { 10 { { 10 10 (2) { 10 { 10 { { 10 (3) { { 10 { 10 { 10 (4) 10 { { 10 { 10 10 (5) 11 10 { { 11 { 10 (6) { 10 10 10 10 10 { Table 2. Transfer rate between the hosts at the end of the simulation. (0) (1) (2) (3) (4) (5) (6) (0) { 2 { { 6 32 { (1) 20 { 26 { { 42 42 (2) { 18 { 10 { { 31 (3) { { 2 { 19 { 29 (4) 12 { { 6 { 26 26 (5) 16 46 { { 27 { 40 (6) { 32 35 34 38 38 { for the whole transfer from the sender to the receiver. Packet carrier agent pays the gate agent for the transfer. With the resources saved the gate agents undertake modication of the network. The simulation of the system was performed on the computer network composed of 6 hosts with links giving the same transfer rate between every pair of hosts. The pricing policy is to favor the trac of the packet carrier agent toward the center of the network (i.e. toward the hosts H 5 and H 6 ). The initial state of the network with the same transfer
rate links between hosts is shown in Fig. 3a. The initial values of the transfer rate beetween the hosts are presented in Table 1. After a number of transfers the system using collected funds modied the parameters of the network. The result of the system investment is presented in Fig. 3b. After the improvements realized by the system the links toward the hosts H 5 and H 6 were reinforced (thick lines in the Fig. 3b). The nal values of the transfer rate between the hosts are presented in Table 2. REFERENCES Cetnarowicz, K., M. _ Zabinska and E. Cetnarowicz (1999). A decentralized multi-agent system for computer network reconguration.. In: Proceedings of the 21st International Workshop: Advances Simulation of Systems - AS- SIS'99 (J. Stefan, Ed.). MARQ, Ostrava, Czech Republic, 1999. Cheng, John Q. and Michael P. Wellman (1997). The walras algorithm: A convergent distributed implementation of general equilibrium outcomes. omputational Economics. Gibney, M.A. and N.R. Jennings (1998). Dynamic resource allocation by market based routing in telecommunications networks. In: Intelligent Agents for Telecommunications Applications (IATA'98) (Garijo F.J. Albayrac S., Ed.). Springer Verlag. Mullen, Tracy and Michael P. Wellman (1995). A simple computational market for network information services. In: ICMAS. Sandholm, Tuomas W. (1996). Negotiation among self-interested computationally limited agents. PhD thesis of University of Massachusetts Amherst. Sandholm, Tuomas W. (1999). Distributed rational decision making. In: Multiagent Systems. A Modern Approach to Distributed Articial Intelligenc (Gerhard Weiss, Ed.). Vol. II. Chap. 7, pp. 201{258. The MIT Press. Smith, Reid G. (1980). The contract net protocol: High-level communication and control in a distributed problem solver. IEEE Transactions on Computers. C-29(12), 1104{1113. Wellman, Michael P. (1993). A market-oriented programming environment and its application to distributed multicommodity ow problem. Journal of Articial Intelligence Research pp. 1{23. Wellman, Michael P. (1996). Market-oriented programming: some early lessons. In: Market- Based Control: A Paradigm for Distributed Resource Allocation (S. Clearwater, Ed.). World Scientic.