Analysis of Task Scheduling Algorithms in Distributed Web-server Systems Mário Meireles Teixeira Universidade Federal do Maranhão Departamento de Informática 65085-580 São Luís, MA, Brazil Phone/Fax: +55-16-2739564 mario@icmc.usp.br Marcos José Santana Regina Helena Carlucci Santana Universidade de São Paulo Inst. Ciências Matemáticas e de Computação 13560-970 São Carlos, SP, Brazil {mjs, rcs}@icmc.usp.br Keywords: infrastructure, web servers, task scheduling, load balancing, differentiated services. ABSTRACT The current best-effort service model used on the Inter- net treats all requests uniformly, both in the network and at the application level. However, sometimes it is desir- able to provide different classes or levels of service in order to satisfy the needs of different users and applica- tions. Successful efforts have been seen in the network infrastructure but not much has been done in the server side. This paper proposes an architecture for the provi- sion of differentiated services at the web server level. The architecture is exercised by means of a simulation model and trace files collected from real web servers are used as workload. Two different classes of users are considered, with high and low priority and two algorithms for load bal- ancing and one for service differentiation are evaluated. The load balancing algorithms have been assessed under different combinations of the web server cluster and one of them proves to be more efficient in a heterogeneous en- vironment. A resource reservation algorithm has been im- plemented for service differentiation and the simulation results show that the proposed architecture is effectively able to provide a differentiated QoS to its clients even at high loads. Some weaknesses of the service differentiat- ing algorithm are pointed out and possibilities for further work are discussed. 1 INTRODUCTION The Internet has experienced an enormous growth over the past few years and there are no signs of calmness in the near future. In the last decade, the traffic in the network has grown a few orders of magnitude, mainly due to the appearance of the Web and commercial Internet providers. However, the Internet was not originally planned for the type of use seen nowadays and neither to support the load currently on it. The change has not only been in the amount of traffic but also in its nature. Initially, most traffic was composed of plain text, generating a light load but nowadays there is a widespread use of images and multimedia content. Moreover, the Web has now become a platform for con- ducting business transactions, the so-called e-commerce. In this scenario, the Internet and especially the Web are rapidly reaching saturation and it is not enough to sim- ply add more bandwidth to the network, as this resource has been systematically and quickly consumed by user de- mand. The service currently provided on the Internet is based on a best-effort model, which treats all traffic uniformly, without any type of service differentiation or prioritiza- tion, a characteristic found even in the design of critical Internet services, such as the Web. However, not all types of traffic are equivalent or have the same priority to their users. It is thus essential to provide service differentiation with different levels of quality of service (QoS) to differ- ent request types [1]. Considering the network infrastructure, some stan- dards have already been defined, under the sponsorship of the IETF (Internet Engineering Task Force), which has specified some solutions for the provision of QoS over IP networks, resulting in the approaches of integrated [2] and differentiated services [3]. Nevertheless, not much has been done at the application level, especially in the web server architecture. It may be noted that any attempt to provide a thorough quality of service on the Web will not succeed if network-only mechanisms are used, since