Review – Resource Sharing in Distributed Environment using Multi-agent Technology

1. Introduction

Nowadays world increasing experiences of communication devices and therefore the growing bandwidth, file sharing applications have remarkably become of those are terribly celebrated for knowledge transfer over the Wide area Network (WAN) and local area Network (LAN). Communication and file sharing application’s technology permit the sharing of computer resources such as files by a direct interchange between end-users computers or devices. Peer to Peer networking means files are not kept on a central server.

Instead, client software (such as the popular Kazaa , Limewire) works as a server for transfer files on an individual’s computer. This allows each computer with the software to performance as a mini-server from which other software holding users can download and share files.

Problem Statement

Nowadays networks resources are very importance in the world. Without user’s knowledge, they waste these resources when it using. Most of the people use pen drives to share their data with others. One person downloads file from the internet and puts in into pen drive then share with other. It very risky because the virus can easily spread through the pen drivers. Otherwise, all the people try to download that file through the internet. Because of that network become slow due to the network traffic. It will affect all the users on the network and due to this reason wastage user’s time. Finally, it will affect to reduce the total work time for the users

The purpose of the paper

This paper reports the design and implementation of the Multi-agent based system which is design for peer to peer network in local area network application, especially for resource sharing a purpose.

Discussion in the paper

The rest of the paper is structured as follows.

  • Gives some related works.
  • Gives a note on multi agent systems technology including the MaSMT framework.
  • Presents design and implementation of the system.
  • Reports experimental result of the research.
  • Gives conclusions and further works of the research.

2. Related Works

Koen and others implemented a home automation software that dynamically schedules network bandwidth for various types of multimedia streams with various constraints toward quality and latency [1]. The dynamic scheduling problems can be overcome using agent systems by using communications. Nowadays these systems are configured using statically methods and this method has so many limitations. The video stream is configured to a specific format therefor network no longer overloaded. When so many application comes to the environment that configuration is no longer valid. Therefore network streams must be configured dynamically when environment change. This tool is using multi-agent technology with Contract Net Protocol (CNP) [2].

Chongjie Zhang, Victor Lesser and Prashant Shenoy propose a multi-agent learning algorithm and use it for improving online resource allocation in cluster networks [3]. To  develop a shared computing structures, the traditional model is to establish a set of shared clusters into a network and allow resource sharing through shared clusters. The resource sharing consequence is now spread to each shared cluster. Individual cluster still uses a cluster-wide technique for managing its local resources.


Multi-agent technology becomes a new trend in artificial intelligence because of the power of communicating for solving problems like humans. A single agent cannot provide best solutions by using individual capacity, but by communicating with each agent can provide more accurate solutions for the complex problem. The problem becomes more complex because of dynamic behavior, interconnected with each other, distributed and uncertain. Nowadays there is so many well-established frameworks and toolkit for developing multi-agent systems such as JADE (Java Agent Development Framework), JaCaMo , SeSam (Shell for Simulated Agent Systems), Madkit (Multi-Agent Development Kit), MaSMT and etc.


This section presents design and implementation of the proposed solution in terms of MaSMT framework, Agent architecture, Task scheduling, Load balancing and Task allocation.

4.1 MaSMT Framework

Multi Agent System for Machine Translation (MaSMT) is a java based agent development framework with two kinds of agents namely manager agent and ordinary agent [4]. Manager agents have responsible for controlling ordinary agents. The framework developed under Fundamentals of Intelligent Physical Agent (FIPA) stands and message passing is done by according to the Agent Communication Language (ACL).

4.2 Agent Architecture

Fig 1: ITray Agent Diagram

This system is containing one manager agent and four ordinary agents namely file send agent, download agent, file receives agent and load balancing and dynamic scheduling agent figure 1 shows the agent architecture. Manager agent communicates with other manager agents which are on other computers by using java socket mechanism.

4.3 Task Scheduling

The system maintains an XML-based ontology to as its knowledge base to store peer’s IP (Internet Protocol) address. When new users come to the LAN (Local Area Network) others peers share their ontology with new peer and then new peer can build his own ontology.

4.4 Load Balancing

The user feeds a lot of URLs to the system to download the system degrades the performance, because of that user want to stay a lot of time to get downloaded files To overcome that problem system maintain a load balancing mechanism to get shared resource with other peers. First, it filters the name of the file using the URL and sends to all other available agents to check that the file is available with them. If available it will send to the requested agent using send agent. Otherwise, when user feeds URL to the system, the system maintains a queue to store URL in a first come first out based mechanism.

4.5 Task Allocation

Manager agent gets the URL of the download file and sends a message to the download agent for the download file and load balancing and dynamic scheduling agent to check the workload of the system. According to the URL, the file is downloaded to other machine and pass the message to manager agent to send that file to the request agent. Then manager agent invokes file send agent and send that file to the request agent. After downloaded the file or completely allocation task to the other agent, URL is automatically removed from download queue. Using this kind of mechanism download task can be allocated to others in a distributed environment within the same LAN.

Fig 2: Agent Communication Diagram


The system put into the real environment and collect quantitative and qualitative data for the evaluation. First collect quantitative data without connecting peers, as a standalone download manager. For evaluation system put into the SLT(Sri Lanka Telecom) network and download various types of files such as PDF, EXE, MP3 and etc with different file size. Also used the different web browsers and analyse the time taken to download. Data is collected different blocks of time within a 24 hour day: morning, afternoon and evening in random three days. Finally get the average download time for each file in different browsers and system.

Fig 3: Average Download Time for File

According to the results of figure 3 graph, developed system is very fast download feature. Developed system can download any types of file with high speedily. The system put into the real environment with a total number of 3 peers in that environment. Connect all peers and let start download files using SLT network. Download list contains the different size of the different file. Above graphs 4 show that the system is working very accurately in a real environment with several peers by sharing a resource with each other.

Fig 4: Average Download Time in Different Environments


This paper presented the research of resource sharing using multi-agent technology. Due to the assigned tasks, the computer network acts dynamic roles and it always becomes a challenge to each other tasks. Using load balancing mechanism agent reduce the own load and use tasks scheduling to allocate the task to available resources in the network. Using these resources can be shared more effetely in the dynamic and distributed environment. Simulate the MaSMT framework contained with one manager agent and four ordinary agents namely file send agent, file receives agent, download agent and load balancing and dynamic scheduling agent. The core system consists of an XML-based ontology. The system has a very complex communication mechanism to do several tasks over the network. The MaSMT is fully tested under actual environment and it shows that resources can share perfectly within the network. Furthermore, research can be improved by sharing processing power within the network as per the requirements of the network.


[1] K. Vangheluwe, W. Souffriau, K. Verbeeck, and P. De Causmaecker, “Dynamic scheduling of multi-media streams in home automation systems,” in Proceedings of the 7th international joint conference on Autonomous agents and multiagent systems: demo papers, 2008, pp. 1683–1684.

[2] FIPA. Contract net interaction protocol speci_cation.

[3] C. J. Zhang, V. Lesser, and P. Shenoy, “A multi-agent learning approach to resource sharing across computing clusters,” UMass Comput. Sci. Tech. Rep. UM-CS-2008- 035, 2008.

[4] B. Hettige, A. S. Karunananda, and G. Rzevski, “MaSMT: A Multi-agent System Development Framework for English-Sinhala Machine Translation,” Int. J. Comput. Linguist. Nat. Lang. Process. IJCLNLP, vol. 2, no. 7, pp. 411–416, 2013.

Resource Sharing in Distributed Environment using Multi-agent Technology


L. D. S. B. Weerasinghe.  Department of Computer Science General Sir John Kotelawala Defence University Sri Lanka

B. Hettige.  Department of Computer Science General Sir John Kotelawala Defence University Sri Lanka

R. P. S. Kathriarachchi.  Department of Computer Science General Sir John Kotelawala Defence University Sri Lanka

A. S. Karunananda.  Department of Computational Mathematics University of Moratuwa, Moratuwa Sri Lanka