Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Keywords
web services, mobile agents, performance, response time
2.
BACKGROUND
1.
INTRODUCTION
In recent years, Web service technology is considered as an eective means for building distributed information systems. Based on a set of standards (XML, SOAP, WSDL, etc.), Web service technology provides systems with exibility and extensibility. However, to exploit the benets of this technology, many issues must be solved including the performance of services. With the aim of increasing performance of systems based on Web services, several researches have been carried out. The idea of using distributed servers with replicated resources is proposed in [2, 4, 1]. An infrastructure for the design and the development of mobile agent Corresponding author
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for prot or commercial advantage and that copies bear this notice and the full citation on the rst page. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specic permission and/or a fee. iiWAS2011, 5-7 December, 2011, Ho Chi Minh City, Vietnam. Copyright 2011 ACM 978-1-4503-0784-0/11/12...$10.00.
In this section, we give an overview of our proposed framework for reducing load and increasing performance for Web service systems. A mobile agent is a software component that has the ability to move from one host to another while preserving its state. It has been utilized for adaptation to various environments, typically mobile computing environments [3, 8]. In our framework [6], there are three main layers: web servers, proxy servers, and clients. Each group of clients in the same network area is coupled with a proxy server. These clients and the proxy servers can be very far away from the web servers. Both web servers and proxy servers have mobile agent platform installed. When clients in a group (i.e. use the same proxy server) make the same requests, the proxy server determines whether to forward the request directly to the web servers or to request the web servers to send a mobile agent to carry out service at the proxy server. With this mechanism, the response times of services are decreased because clients only need to connect to proxy servers instead of connecting to web servers. It also will prevent the problems of bottle-neck and overload at the server sides. The overview of framework can be seen in Figure 1. The core of the framework is i) a service is composed by a number of agents, and ii) the use of the mobility of agents to carry the reallocated service to the proxy server and to execute it there. Among to proposed framework, a proxy could
investigate itself in possibility of containing agent, and provide the mechanism to communicate with other agents. It can improve a performance and reliability of systems. The problem remains that, there is not enough experiments in proving the realizing of proposed framework. And to achieve scalability as shown in proposed approach, we need to prove the performance of our proposed framework.
to get agent from server is ts . Also, a time of completed the rst request is treq0 , and a time of competed the rst response is tresp0 from a client to proxy and server. We have a following conditions: tag t1 + t0 tag t2 + t0 Thus, we have t1 t2 treq0 .rreq + x0 (tresp0 ts ).rresp + tresp0 + y0
3.
In this section, we propose a model for evaluating a performance of scalable mobile agent based web service systems. The mathematical model is based on software architecture of network systems using mobile agents. It models the transferred agents among request and response time. The model will realize a performance of systems by nding the response time value on each transaction agent.
where x0 , y0 are the time related with a received data unit, and dependent to servers speed, memory and transmission systems. We will have a formula of overall agent transaction from server to client as follows tag = t1 ( + 1) + t2 ( + 1) + t0 with [0, 1] is a value of delayed network on request processing. The response time is shown in Figure 3, in which, the response time is a monotonic function. In comparison with traditional web service systems, the response time of mobile agent systems will always be smaller.
3.1
Firstly, we describe our model of response time in mobile agent based web service systems, where mobile agent platform is installed in proxy server and web server sides. The overall system is shown in Figure 2. We calculate the response time in this system when proxy carries agent. The performance is critical and should be aected by reducing the load of requests from clients and reducing the response time to get result from client side. In order to measure the overall performance of our proposed systems, we adopt some denitions of request and response to the client side. These denitions will eect the response time of web service systems. We dene the mathematical model as below. Suppose that the number of requests and the number of responses are dened as rreq and rresp , respectively. We dene tag as response time of agent based web services, t1 , t2 are request and response time of agent, and allocated time
3.2
Scalable model
With increasing the number of requests, i.e increasing number of clients, the systems need to be designed as scalable proxy servers. We propose a scalable model that will control distributed agents and responses on the success transferred. The process is shown in the Figure 4. In that gure, each proxy server has a connection to one client as a local network, which can be quickly response to requests of client. A connection between proxy servers and web servers is the Internet. Thus, the total response time of systems includes all the response time of each agent in the network. We dene set of relation values in order to verify a existing proxy server which carries agent and return to clients requests.
sponse time can be formulated as following: Tresp = where = wc .scost + wt .stime + wa .savail 0 with agent no agent (treq + tresp ) + tagj +
with wc , wt , wa are the priority values of request which turn of cost, time and available of services. And scost is cost of service, stime is response time and savail is available of service. Through scalable systems, our proposed platform depends on the available carried agent in proxy, and it could connect or reallocate to web server in order to get response agent to the requested client. Figure 3: Mathematical graph of response time.
4.
EXPERIMENT
Def 1. Response value d [0,1], that is dened as follows: d= 1 0 proxy server carries agent proxy server locates to web server for agent
Def 2. Response function sij could be formulated as follows: sij = i 0 response from proxy server carried agent response from web server located agent
Def 3. Response condition uij will be as sum of response function and its priority of request. uij =
j
wj .sij
where wj [0, 1] is priority of request j. In scalable system, one request will be processed at one time, thus priority value is happened to dene it. When w = 1 means that the request of one client is processed, otherwise if w = 0 - system is looking for priority value on overall network. Total time is shown as: T =
j
tagj .uij
Our experiment bases on network simulator tool with the focus on simulation of web service systems using mobile agents. In the tests, we establish two levels of load management. The rst one is simulated as a local network including clients and proxy servers. The second one is simulated as the Internet with one web server. We assigned for rst level a DNS address, and each client is given an IP address of proxy server based on locally. The second level of load balancing is via proxy server which dynamically distributes transactions among a group of proxy servers. In local network, each client can connect to a proxy server. It gives faster response time and reduces unnecessary trac in the networks. The test system examines all agents that are moved between the web server and proxy servers. Specic functions of proxy servers are to: (a) inspect all agents in both directions between web server and proxy servers; (b) look for needed agents existing inside proxy server; (c) if no agents found in proxy server, locate them to web server; (d) receive agent from web server; (e) response to clients; and (f) watch for next request and agents. We performed 5 clients sending approximately 3000 requests to proxy servers within 100 ms based on 10Mbps speed of local network. We made a random of thousand times of sending a set of requests to a server with by 10 ms for each. The requests were sent continuously with number of requests increasingly. The Internet connection in use had speed of 128Kbps. An experimental example is shown in Table 1 with some testing values. In the table, the rst column is the number of sending requests, the second column is the interval of sending request, and the next 2 columns are the response time of our proposed framework and traditional web services. In the table, when the number of requests is increased to a sucient value, the response time is always smaller in comparison with traditional web service systems. In experiment, we compare our systems with traditional web service systems. The comparison is shown in Figure 5. In that gure, the vertical axis is the response time values that measures in ms. The horizontal axis is the number of requests. The dot line is the response time of mobile agent based web services, and the other line is response time of traditional web services. The rst request is sent to web server to allocate agent, and on the next time if the agent is in proxy, then proxy server will send response back to requested client without allocating to web server and so on. Thus it reduces the time of receiving response to client side.
Table 1: Experimental result Number of Request Resp. time Resp. time request interval web service agent based (ms) (ms) (ms) 1 0 0.000 0.012 2 0 0.312 0.012 21 10 0.208 0.018 25 10 0.204 0.024 93 20 0.505 0.028 97 20 0.505 0.028 252 30 0.514 0.030 257 30 0.505 0.034 373 40 0.609 0.032 378 40 0.705 0.042 647 50 0.809 0.052 648 50 0.909 0.054 961 60 0.909 0.062 964 60 1.013 0.063 1455 70 1.129 0.071 1461 70 1.304 0.081 1480 80 1.309 0.087 1483 80 1.409 0.096 1845 90 1.613 0.112 1846 90 1.845 0.224 2727 100 2.606 0.291 2750 100 2.132 0.403
7.
REFERENCES
As seen in the graph, the response time for next request is lower than a previous request, and that process improves the performance of systems and avoids the trac in network transaction. In the comparison graph, the response time of our model is smaller than in the traditional system. In experiments, we have shown that our proposed system has high performance in comparison with traditional web services with more eective, high scalability, availability, and reliability.
5.
CONCLUSION
In this paper, we have shown mathematical models which evaluate the performance of our proposed systems. We have simulated our models by using network simulator tool with the focus on response time. The results have shown that our system is scalable and reliable. The proposed system can solve the bottle-neck and overload problems which usually happened in traditional web service systems. Our system has higher performance in comparison with traditional web service systems. In the future, we will develop more complex web service systems with using mobile agent with regard to composite web services. Also, we are continuing to implement an application based on our proposed framework which will realize a transaction of mobile agents for overall network.
6.
ACKNOWLEDGEMENTS
This work is partly supported by the research project No. 102.02-2010.06 granted by NAFOSTED Vietnam. The authors also thank TRIG project at VNU for providing the research environment.
[1] G. Cabri, L. Leonardi, and F. Zambonelli. A proxy-based framework to support synchronous cooperation on the web. Softw. Pract. Exper., 29(14):1241U1263, 1999. [2] J. Cao, Y. Sun, X. Wang, and S. K. Das. Scalable load balancing on distributed web servers using mobile agents. Journal of Parallel and Distributed Computing, 63(10):9961005, 2003. [3] G. Chen, J. Lu, J. Huang, and Z. Wu. Saaas - the mobile agent based service for cloud computing in internet environment. In Proc. Sixth Int Natural Computation (ICNC) Conf, volume 6, pages 29352939, 2010. [4] L. Cherkasova. Flex: load balancing and management strategy for scalable web hosting service. In In Proceedings of the Fifth International Symposium on Computers and Communications, 2000. [5] J. L. Hsiao, H. P. Hung, and M. S. Chen. Versatile transcoding proxy for internet content adaptation. IEEE Transaction on Multimedia, 10(4):646658, 2008. [6] V.-H. Nguyen, T. D. Bui, Q.-D. Vu, and N. T. T. Hien. Towards scalable agent based web service systems. In Proc. 4th Int New Trends in Information Science and Service Science (NISS) Conf, pages 210213, 2010. [7] A. Omicini and F. Zambonelli. Coordination for internet application development. Journal of Autonomous Agents and Multi-Agent Systems, 2(3):251U269, 1999. [8] Z. Zhu, J.-Y. Wang, Z. Yang, and F. Lei. Internet information retrieval system based on mobile agent. In Proc. Int Machine Learning and Cybernetics Conf, volume 1, pages 6266, 2005.