Está en la página 1de 17

Design of a Mobile Agent for Monitoring Activities of Users

Abstract

Observation or monitoring is an aspect of management that aims to provide maximum network performance in order to run according to user defined rules. This paper presents the design of a mobile agent to monitor the activities of users on the network. User activity can be localized on their personal workstations or extended to the corporate network and the Internet, in that it can have an impact on bandwidth subscription, which is a shared resource of corporate entities they represent. All users are looking forward to work in an environment of limited resources, including disk, RAM space and bandwidth. However, although the cost of computing resources has been reduced significantly advances in microelectronics technology, they are still far from being free and inexhaustible. In this study, we designed a mobile agent can monitor the activity of users in a network environment with a view to increasing the effective utilization of system resources, and in particular, the physical memory. The goal is to allow optimal utilization of resources in a networked environment. In this paper, we define a mathematical formulation of the activities of the user, the mobile agent load overhead and partition the schedule to avoid the problem of over-bloated. Architecture of mobile agents is described.
Keywords: Mobile Agent; System resources; Computer network; Code Mobility; Monitoring 1. Introduction

computing mobile agent is a software entity that can operate on a network node that can withstand the action and then migrate to the node before the change. Mobile agent has a schedule and after activity can return to the source node after completing the circle. Mobile agents can migrate autonomously and continue its execution. in concept, a mobile agent can move through the virtual machine, then move from host to host,, it has a code but not the resources for execution which is owned by the host. While on a particular host, the mobile agent can perform a number of tasks, and after that, it can be migrated to another host to continue the operation from where it stop before the action on the host. For program executes, the mobile agent consists of code, data and execution state SSN 2222-1719 (Paper) ISSN 2222-2863 (online) Vol.4, No.2, 2013 is embedded with some intelligence and the ability to independently migrating across the network. When moving, the mobile agent can represent the owner in his various assignments and requests. It can communicate with the host and other agents on a host, it is to sense the environment and execute a series of activities to achieve the mission and goals. Mobile agent The paradigm has become topical since the mid-1990s have found applications in a few areas. Mobile agent paradigm derived from two basic discipline - from artificial intelligence where the the concept originated and distributed agents that define the concept of code mobility. Characteristic features agent paradigm (Al-Kasassbeh and Adda 2007) include:

cooperation. c. In this study. there is also a growing concern for security issues. Destination driven: the behavior of agents exhibit goal-directed. (Jin. In part 4. we focus on one important area of network management. Aparico and Singh 1999). 2002). Mobile agent has been highly considered in many application areas like ecommerce. Part 5 includes discussions and the conclusion. (Papazoglou 2001). Their work involves monitoring. A key aspect of agency autonomy and their ability to think and act in their environment. remote control devices and configuration. and d. 2. Related Works Agents can follow a set of rules that have been set by the owner and then apply it. (Pullum 2001). and learning. as well as to interact and communicate with other agents to solve complex problems (Jain. network monitoring and management. Ahn and Lee 2009). By (Shih 2001). b. Cooperation demonstrate the ability of social agents to interact with other agents or humans via some communication language to meet specific mission or purpose. in Section 3 we are presenting mathematical model of the activity of the users' interest in research. evaluation and analysis . Mobile agent paradigm holds the promise of increasing the throughput of any computing elements in the network and create an environment ubiquitous computing robust (Chen and Hu. which monitors user activity on the network. Autonomy means that agents can act without the direct intervention of humans or other agents and that it has control over its own actions and internal state. efficient management of enterprise networks has become a non-negotiable and imperative. software agents must have two of the three behaviors: autonomy. autonomy of: agents operate without intervention. Agencies should communicate with the user or other agents to receive instructions and to deliver results. We face a major challenge to effectively manage these networks in a society that has become so dependent on accurate and timely exchange and availability. Internet etc. In today's complex networks and a variety of businesses in which the survival of companies anchored. Social skill: agents interact with one other via an agent communication languages. denial of service and unauthorized access. Not only that the network should be up and running all the time. we discuss the architecture of a mobile agent. telecommunications.a. The rest of the paper is organized as below: Parts 2 discusses some related work. distributed information retrieval. (Boutaba and Xiao 2002). The system administrator has used human tissue. reactivity: agents looked and respond to their environments.

Both SNMP and CMIP are usually associated with large transfers of data management. . this model is usually identified by a static management component that can not adapt to the evolving nature of the current network. network administrators can. various types of network management paradigm has emerged (Martin-Flatin and Znaty 1997). slow. In view of these limitations. The most popular approach to manage the network from the Internet Engineering Task Force (IETF). this protocol. several hierarchical / distributed management framework has been proposed by the researchers and standardization bodies. This function can be tiring and cumbersome. It is therefore clear that the user network management system can not meet the requirements of modern complex networks. The agents in computing is the responsible entity for collecting and storing information locally for node management and responding to information requests from the MS through management protocol that specifies the format of packets to a set of basic operations. This centralized network management seriously limit scalability (not efficient when a network node to grow significantly). Closely related in structure to the approach is general information Management Protocol (CMIP) proposed by the International Organization for Standards (ISO) for applications in the open systems interconnection (OSI) networks. Interacting with the agent architecture is client / server where the function of both the client (manager) and distributed server (agent) rigid defined at design time. rapidly changing traffic patterns and topology structure. causing poor performance and inability to cope with the network dimensions. As a result. based on the Simple Network Management Protocol (SNMP). and may be confused about which node to the next monitor. a new distributed technologies have been proposed. the physical resources are represented by managed objects and a collection of managed objects are grouped into a tree structure of management information base (MIB). There is usually a delay in monitoring the activities and events on the network is usually not monitored in real time. which as it happens. especially in large networks. Unlike computer-based approach to the effective management of computer networks have been proposed in the literature. Being human. Both approaches assume the existence of a management station (MSS) to interact with the management agent running on network nodes. However. which is based on mobile code or distributed object paradigms. For this purpose. which puts huge pressure on network throughput and bottlenecks host process manager.of the various nodes attached to the network in order to resolve problems and ensure optimal performance and efficiency. tired.

data and execution state more than once to continue its execution on another server in the network after completing their tasks on the server first visit. • They offer extended flexibility in the operation of the data is lost. • Mobile Agents act autonomously its own or on behalf of the user with the ability to exact begin migration by itself and execute the request owners and move independently from one host to another to continue execution (Park. Other through a network of locally-based mechanisms and inter-process communication mechanism. especially in applications where there are large amounts of data to process on a different host. et al. Shen and Defago 2005).Typical research effort in that direction is (Carzaniga. especially in the environments with intermittent connections such as the Internet (Gray. mobile code is transferred only once in the other mobile paradigm (Park. Picco and Vigna 1997) the last mobile code paradigm used by distributed applications. mobile agents can communicate synchronously or asynchronously with other agents or the host system. can decide for themselves whom to interact with the execution time (Park. 2004). In In contrast. Shen and Defago 2005). • Mobile agents are very dependent on the underlying protocol for communication by means of interaction and exchange messages in order to successfully implement and execute specific tasks within the agent system (Qu. During the migration. et al. moving the code to the data rather than the data to the site code (Braun and Rossak 2005). • Mobileagents demonstrated ability to multi-hop. These features make them more desirable to build mobile applications on top of the traditional client-server paradigm (Pullum 2001). can perform the requested . Some of the benefits provided by the mobile agents that make them better for the creation of distributed systems and applications in particular mobile agent paradigm than others include: • They save bandwidth. 2004). 2000). that is. Unlike client-server applications. • They can exhibit autonomous and asynchronous interactions as they can be delegated to perform certain tasks and the intelligence embedded in them. they can travel with their code. and customizable in a distributed system. These features are: • natural mobile agents operate in a heterogeneous environment characterized by a wide-area network and a variety in which either the reliability or security of the computer and the assumption of each network connection is not a factor (Qu. flexible. Mobile agents exhibit certain characteristics that allow for the effective deployment of services and applications in a more dynamic.

In (Imianvan 2008) and (Akinyokun and Imianvan 2009) proposal for an experimental study of bandwidth management in a computer network environment. In a mobile agent system. including e-commerce. and to produce the desired statistics for policy formulation and decision-making. 2000). The research is motivated by the wide application of mobile agents in many areas of human interest. Z-notation. In this case. • They provide support for heterogeneous environments through their mobility framework. the system is characterized by UML. on the other hand. • Mobile agents have been proposed for load balancing routing for LEO satellite the network (Rao and Wang. modified agent can be injected once and install it yourself wherever necessary to install. distributed information retrieval and network management. client modification may require removal of the client installation. Mobile agents are generally independent of the computer-layer and transport-layer and rely only on their execution environment (Lange and Oshima 1999). 2010). Their research methodology involves the design of a prototype expert system for the management of bandwidth usage on a computer network was developed and tested. • Mobile agent has better scalability especially with respect to flexibility in Dynamic deployment (Gray et al. only the final results of the count will be sent to the server. • They are robust and fault tolerant because of their ability to dynamically respond to deteriorating conditions and events in a distributed system (Kotz and Gray 1999). In client-server development. The two-fold purpose of this study is: to provide an intelligent system that can monitor bandwidth usage in a computer network environment. Deemed appropriate network management requires supervision and control of network resources and the assessment and evaluation of network resources is thus an essential part of network management activities. the mobile agent can be launched from the server machine to survey the state of the resources in one of the workstations in the network. Telescript command is used to . Petri Nets. Mobile agent system that consists of a server that connects a workstation. 2000). • They can increase the network latency with a better response time than client-server application for the intermediate results are not sent back and forth between the client and the server.operation on the specific host and wait until a connection is available before they migrate to the next host. which may have resulted in delays caused by network congestion (Gray. Telescript mobility and object-oriented programming. et al. which separates the executive and the host operating system.

and shared priorities. graphics and formal. UML modeling (UML) is employed to handle the mobile agent system interaction. The implementation is based on an environment characterized by the Microsoft Windows NT operating system as the platform. Bandwidth usage issued by the ISP to the client tested and measured on an hourly basis to determine efficiency. A mathematical model is formulated for the transmission of code.encourage the mobility of mobile agents. a programming environment that is compliant mobile agent and leading to. This study is limited bandwidth. study experimentally tested in a local area network environment where Internet connectivity is not available. Functional purpose of this research is to apply the mobile agent technology in the monitoring and evaluation activities of users in a networked environment. collected and analyzed the data. These studies provide a mobile agent system which has the practical ability to assess and evaluate the use of bandwidth in a computer network environment. the Z specification language adopted in the modeling of mobile agents. which is one of the many resources of the network that can be managed. Proposed implementation in Java. SQL Server 2000 SP3 as the engine backend and Visual Basic Application language as the engine front end. statistical insight into the activities of the user's data processing and associated bandwidth consumption and the monitoring and control of bandwidth to users with the intent to influence the redistribution. and developing a mobile agent capable of mobility and . 2008) and to expand employment in other areas of monitoring and evaluation activities of users in a networked environment. b. The study was however limited in the following: a. A mathematical modeling of a defined bandwidth utilization and case studies of local area network of the University of Benin created. The results obtained from experimental studies provide information for workstation ranked by bandwidth consumption. the mobility and portability of object-orientation. we attempted to follow-up on the work (Imianvan. In this study. and finally c. Specific objectives are: to design the mobile agent model for monitoring and evaluation activities of users in a computer network environment. data and status information from mobile agent system for monitoring and evaluation activities of users in a network environment. A robust design of the mobile agent system for monitoring and evaluation of user activities in the network environment is done by using mathematical modeling tools. mobile agents developed using visual basic that is not very suitable for mobile agent technology.

Of particular interest in this research is physical memory usage of the system. 3. Mathematical Model Activities of a user could impact on the resources of the local node and the network. Users’ reflect in terms of processes initiated by the user (denoted as ) which may run concurrently.autonomous self-cloning using JADE mobile agent platform and Java technologies. When a computer system is started. a number of processes are also initiated by the operating system. These fall into two categories: the compulsory processes ( ) and .

Hence.the optional processes ( ). Let denote the total processes running on a node defined by: where d is finite. In the face of scarce node resources. We assumed that: Total physical memory is denoted as Memory consumed by process is ) is given as: Total memory consumed by all processes running on a node ( Percentage memory consumed by all processes: We classified the health status of a node as a function of the available physical memory as follows: . Each process utilizes the resources of the computer system to varying degrees depending on its length or size in (bytes). the optional processes can be terminated or killed to improve the performance of the system.

We assumed an ordered set of target nodes to be visited by the mobile agent. whereby. defined as: Mobile agent is made up of three components: codes c. data and information status of mobile agent from source to destination platform was formulated. A mathematical model for transmitting the code. El-Gazzar and Saeb 2007) and (Braun and Rossak. This data was carried along to each of the nodes the mobile agent visited on its round trip. 40 40 . . data and all information status along. and information state. the total length of the code (in bytes) is: where remained constant throughout its life time. adapting the push-all-to-next strategy in line with (El-Gamal. s. data d. this data constituted a load on the network as the mobile agent moved along. Along with the code and its information status. it accumulated additional data We further assumed that the length of the information state (bytes) is constant throughout the agent lifecycle. at take off is . and this is and at each node We assumed that the length of data (bytes) of visited.The mobile agent visited each node and extracted data on the configuration and application processes. 2005). when an agent migrates to a new location it carries all its code. If the code is composed of classes.

Then. with has network load of: When the agent migrates to its home. the load is given by: An itinerary partitioning process is modelled in line with (Verma. The initial itinerary for the MA is represented as: ……………….. the load of from home to the first target node was calculated as: A migration from to . When 41 41 . (12) Figure 4 Multi-agent system with an agent visiting a sub-itinerary where Sh is the home node and is the ith monitored node in the network. We consider m nodes to be managed. 2008). et al.

that is. We define a partition factor p to control the itinerary partition. Hence. Data Assembler. when p=m. when MA arrives at node T1. MA Generator checks the MA Library to see if the template for such agent is available and retrieves it if 42 42 . Any agent generated can be stored in template form in the MA Library for later retrieval. If (m-p) > p. MA Disposer. Ij: ………………. The partition factor visit. the initial itinerary has no partition. et al. If m>p. C2 will be cloned into C3 and dispatched to node T2p+1. it has m sub-itineraries. We define sub-itinerary. 2008) .. 4.when the accumulated data from node to node would have been too much. MA Library. (13). the response time for a single mobile agent visiting all the nodes sequentially become very high. and the second clone is called C2. The description of each module and their specification and design are presented in the following sub-sections. and Report Library. (14) Let the first clone of MA be denoted as C1. When p=1. I1 and I2. each MA will visit only one node. meaning that a single MA travels through the entire itinerary. (13) is the maximum number of nodes that an MA can From eq.1 Agent Generator MA Generator is the component that produces the mobile agents for management functions. Mobile Agent Architecture The architecture adopted in this research is shown in Figure 2. 4. the itinerary is partitioned into two independent sub-itineraries. We therefore consider using multiple agents by making clone(s) of the original MA. When the network administrator requests the service of an agent. On the contrary. resulting in bloated state problem (Verma. the initial itinerary is therefore divided into sub-itineraries. the start point of itinerary I3. C1 visits sub-itinerary I1 and C2 visits I2. The sub-itineraries are: ………………. The components of the architecture include the following: MA Generator. it examines the itinerary. MA Launcher..the number of nodes to be monitored (m) are very large. In general. Clone Manager.

43 43 . Figure 2 Mobile Agent Architecture 4. To dispatch a single agent only one clone is made while for multiple agents. For instance.it exists. the MA Generator checks the MA Library to see if the template for such agent is available and retrieves it if it exists. otherwise it is created. if the first node is down. Even when several clones are made. and cloning.2 MA Library MA Library serves as the repository for the mobile agents that are designed to perform specific management functions. the agent can visit the next node first and later return to visit the first node. Any agent generated can be stored in template form in the MA Library for later retrieval. several clones are made. the administrator decides how many targets each cloned agent should visit but it is at the discretion of each agent to determine which node to visit first and which to visit next. When the network administrator requests the service of an agent. otherwise it is created. activation. 4.3 Clone Manager Clone Manager makes copy or copies of the mobile agent and gets it set for activation and onward transmission.

This reduces the turnaround time. On getting to the destination host.5 MA Data Assembler After interacting with each target host to obtain the necessary network management data. instead of sending out the original agent.4 MA Launcher MA Launcher provides the itinerary or destination address for the mobile agent. a clone may be sent out instead of the master. Cloning facilitates fast retrieval of data from managed hosts because the mobile agent can migrate to multiple hosts simultaneously and take advantage of parallelism. In our framework. a replica of the agent is created and given a unique name. When a large number of hosts are to be visited. which we call the itinerary. During mobile agent migration from source host to destination host. the addresses of the hosts are given in the itinerary. Agent must be empowered to visit certain places. then they must be dispatched to a particular address. we can save time by using multiple clones to visit a few nodes. The second reason is to take advantage of parallelism. the agent code. They must hence have the address of the places to visit. At the destination. Figure 3 The Migration Strategy The migration process is depicted in Figure 4. This should be more apparent when dealing with large number of hosts. Even when a single agent is being sent out to visit all managed nodes. 4. One is to ensure that original agent is protected and secured. we create agents to visit nodes and collect management data. the mobile agent is serialised and sent. MA launcher also serialises the mobile agent and send it to the target node. we make clones for two principal reasons. the master agent can be cloned again and dispatched to the target nodes. the agent is deserialised and instantiated. In the event that the cloned copy is compromised through any security threats. In this work. the results obtained by the mobile agent should be assembled 44 44 . its data and state are serialised and migrated at the same time. the design approach adopted is the push migration strategy. At the source host. Therefore. When a single agent is to visit multiple hosts.When an agent is cloned. mobile agent is deserialized and made to resume execution (Figure 3). we send a clone. 4. When multiple agents are to visit one host each. In this case.

In future research. 4. we have described the design of a mobile agent system for monitoring and evaluation of the activities of users in a network environment.4.6 Report Library Report Library is a repository where data collected are stored. thus reducing the performance of their local system. From here the network administrator can aggregate his report. Heavy usage of the Internet and downloads of heavy files and graphics by some users for instance can impact negatively on Internet speed by other members who would love to be on the Internet for routine activities such as checking mails and sending and receiving regular sized files. mobile agent cannot be left to roam aimlessly in the network as this can be dangerous or at least compete for network resources. As a rule. 5. The proposed system generates statistics on the activities of each user’s node on a corporate network which can help the system administrator to evaluate the level of usage of each node on the network to ensure optimal performance. mobile agent templates kept in the MA library do not exist in activated form and pose no dangers for to the network. 45 45 . The system may thus serve as a veritable tool to enhance system efficiency and network reliability. A mobile agent can be launched to visit a number of hosts in the network with the view to monitoring their usage of resources within the system. Of course.7 MA Disposer This component disposes off any agent that is no longer needed in the system. Conclusion In this paper.2. we shall attempt develop a practical realisation of the proposed system and carry out case studies of computer networks. No. In these days of multiprogramming operating systems. Agent disposal is also called agent dump or agent deletion. users may simply open several applications which can consume a lot of the physical memory space. Downloads from the Internet can also consume a lot of bandwidth and deny other people from smooth assess to bandwidth usage. 2013 4.ISSN 2222-1719 (Paper) ISSN 2222-2863 (Online) Vol. make analysis and take informed decisions.

127-146.” Journal of Network and Computer Applications 31 (2007): 699-711. Rossak. 46 46 . P. O. Adda.Figure 4 Mobile Agent Migration Process References Akinyokun. Al-Kasassbeh.. Mobility Models.TC6 Stream on Communication Systems: The State of the Art.” International Conference on Advances in Engineering and Technology. 2005. R.. 2002. 2009.C..” Edited by B.. and A. Imianvan. and W.V. M. 796-808.A. “Mobile Agent System for Computer Network Management. and M. and J. Boutaba. Proceedings of the IFIP 17th World Computer Congress .” Morgan Kaufmann. Xiao. Kluwer. Braun. “Analysis of mobile agents in Network fault management. “Network Management: State of the Art . “Mobile Agents: Basic Concepts. and the Tracy Toolkit.

Dartmouth College. Federal University of Technology. D.. D. Springer. 2000.” World Academy of Science. S.. and M. B. M. Lange. “Annotated Typology of Distributed Network Management Paradigms. no. EPFL CH Lausanne. Chen. “A Fault-Tolerant Mobile Agent Model in Replicated Secure Services. Cybenko. Massachusetts. Khalid El-Gazzar. S. “Agent-oriented technology in support Communications of the ACM (ACM) 44. Switzerland. no. and G. D. J.” In Proc. 1997.. and K. G. Aparico.. 993–1001. Jain.” Technical Report. Communication Systems Division (SSC). 2004. K.. 3 (1999): 88-89.P. Gray. W. no. El-Gamal. of e-business. “Designing Distributed Applications with Mobile Code Paradigms. “A mobile agent-based active network architecture for intelligent network control. Boston. and Hu. 4 (2001): 71–77. R. Martin-Flatin. K. Vigna.. A. P.” ACM SIGOPS Operating Systems Review ( ACM) 33. “A Fault-Tolerant Protocol for Mobile Agent. Ahn. Singh. C. G. and D. on Software Engineering. and M. 500-509. Picco. Dartmouth College.E.” A PhD Thesis in the Department of Computer Science. “Mobile Agents and the Future of the Internet. 47 47 .” Proceedings of International Conference on Computational Science and Its Applications. Rus. Nigeria. Lee. “Seven Good Reasons for Mobile Agents.” Technical Report. Jin. USA. and R. no. 2008.. Springer. D.” Communications of the ACM 42. G. Znaty. Anthony Agboizebeta.” Proceedings of International Conference Computational Science and Its Applications.” Communications of the ACM (ACM) 42. Gray. Imianvan. B.” Park. M. Engineering and Technology 3 (2007): 286-291. “Development of a mobile agent for evaluating the use of bandwidth in a computer network. “Mobile Agents: Motivations and State-of-the-Art Systems. “Agents for process coherence in virtual enterprises. 1997.” Information Science 14 (2002) 3-35. A. 19th Int. “A comparative performance evaluation model of mobille agent versus remote method invocation for information retrieval. 2009. and Magdy Saeb. Kotz. P. 3 (1999): 7-13. Kotz. Papazoglou. 3 (1999): 62–69.Carzaniga. Yousry. Conf. and S. Oshima. Akure.

” Proceedings of 21th IEEE Symposium on Reliable Distributed Systems. Rao. no. Ramesh C. Shih. L. Bin Xie. 48 48 . T. H Kim. I. “Agent-based load balancing routing for LEO satellite networks.Park. Pullum. Defago.” Computer Networks (Elsevier B. and Dharma P. 2001. and H. “Software Fault Tolerance Techniques and Implementation.V. L.” Information Sciences 137. “Combating the bloated state problem in mobile agents based network monitoring applications. Y... Verma. Y and Wang.” Proceedings of the Sixth International Conference on Parallel and Distributed Computing Applications and Technologies. 2005. Joshi. 2002. T. “The Performance of Checkpointing and Replication Schemes for Fault Tolerant Mobile Agent Systems. Qu. IEEE. Shen. H. W. 1 (2001): 53–73.K. 446-450. Agrawal.” Computer Networks 54 (2010) 3187–3195. and X.” Artech House. IEEE Computer Society. “A Survey of Mobile Agent-Based Fault-Tolerant Technology.. “Mobile agent evolution computing. Vijay K.) 52 (2008): 3218-3228. Yeom. Byun.