Online Server Allocation in a Server Farm via Benefit Task Systems [Extended Abstract] T.S. Jayram Tracy Kimbrely Robert Krauthgamerz Baruch Schiebery Maxim Sviridenkoy ABSTRACT A web ontent hosting servie provider needs to dynamially alloate servers in a server farm to its ustomers' web sites. Ideally, the alloation to a site should always suÆe to handle its load. However, due to a limited number of servers and the overhead inurred in hanging the alloation of a server from one site to another, the system may beome overloaded. The problem faed by the web hosting servie provider is how to alloate the available servers in the most protable way. Adding to the omplexity of this problem is the fat that future loads of the sites are either unknown or known only for the very near future. In this paper we model this server alloation problem, and onsider both its oine and online versions. We give a polynomial time algorithm for omputing the optimal oine alloation. In the online setting, we show almost optimal algorithms (both deterministi and randomized) for any positive lookahead. The quality of the solution improves as the lookahead inreases. We also onsider several speial ases of pratial interest. Finally, we present some experimental results using atual trae data that show that one of our online algorithm performs very lose to optimal. Interestingly, the online server alloation problem an be ast as a more general benet task system that we dene. Our results extend to this task system, whih aptures also the benet maximization variants of the k-server problem and the metrial task system problem. It follows that the benet maximization variants of these problems are more tratable than their ost minimization variants. IBM Almaden Researh Center, 650 Harry Road, San Jose, CA 95120. E-mail: jayramalmaden.ibm.om y IBM T.J. Watson Researh Center, P.O. Box 218, Yorktown Heights, NY 10598. E-mail: fkimbrel,sbar,svirigwatson.ibm.om z Department of Computer Siene and Applied Mathematis, Weizmann Institute of Siene, Rehovot 76100, Israel. E-mail: robiwisdom.weizmann.a.il . Part of this work was done while this author was visiting IBM T.J. Watson Researh Center. 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 profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, to republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. STOC’01, July 6-8, 2001, Hersonissos, Crete, Greece. Copyright 2001 ACM 1-58113-349-9/01/0007 ... 5.00. $ 1. INTRODUCTION Web ontent hosting is an important emerging market. Data enters and web server \farms" are proliferating (see, e.g., [19, 20℄). The rationale for using suh enters is that servie providers an benet from eonomies of sale and sharing of resoures among multiple ustomers. This benet translates, in turn, to lower ost of maintenane for the ustomers who purhase these hosting servies. Web ontent hosting servies are strutured in many ways. One of the most prevailing ways is outsouring: the ustomers deliver their web site ontent to the web ontent hosting servie provider, and the servie provider is responsible for serving this ontent in response to HTTP requests. Most of the servie providers use \farms" of ommodity servers to ahieve this goal. One of the omponents in the payment for suh a servie is \pay per served request". Thus, one of the main objetives of the servie provider is to maximize the revenue from served requests while keeping a tab on the amount of resoures used. Ideally, the alloation to a web site should always suÆe to serve its requests. However, due to a limited number of servers and the overhead inurred in hanging the alloation of a server from one site to another, the system may beome overloaded, and requests may be left unserved. We make the realisti assumption that requests are not queued, and a request is lost if it is not served at the time it is reeived. The problem faed by the web hosting servie provider is how to utilize the available servers in the most protable way. Adding to the omplexity of this problem is the fat that future loads of the sites are either unknown or known only for the very near future. In this paper we model this problem, and onsider both its oine and online versions. In our model time is divided into intervals of xed length. We assume that eah site's demand is uniformly spread throughout eah suh interval. Server alloations remain xed for the duration of an interval. We assume that servers are realloated only at the beginning of an interval, and that a realloated server is unavailable for the length of the interval during whih it is realloated. This represents the time to \srub" the old site (ustomer data) to whih the server was alloated, to reboot the server and to load the new site to whih the server has been alloated. The length of the time interval is set to be equal to the nonnegligible amount of time required for a server to prepare to serve a new ustomer. In urrent tehnology, this time is in the order of 5 to 10 minutes. In the sequel, we normalize time so that the length of a time interval is one unit. Algorithm Lookahead Lower Bound Upper Bound Deterministi L = 1 4 4 o n p general L 1 + L + L2 min 1 + L ; 1 + L L L +1 Randomized general L 1+ L 1+ L 1 1 1 +1 4 7 1 1 Table 1: Results Eah server has a rate of requests it an serve in a time interval. For simpliity, we assume that all rates are idential. Due to pratial onerns (seurity onstraints plaed by ustomers), we do not allow sharing of servers at the same time. Customers share servers only in the sense of using the same servers at dierent times, but do not use the same servers at the same time. Thus, even in ase of overload, some of the servers may be underutilized if they are alloated to sites with rates of requests lower than the servers' rate. In the sequel, we normalize rates so that the servers' rate is 1, and allow the demand of sites to be frational. We assume that eah ustomer's demand is assoiated with a benet gained by the servie provider in ase a unit demand is satised. Given the number of available servers, the objetive of the servie provider is to nd a time-varying server alloation that maximizes the benet gained by satisfying sites' demand. We all this server alloation problem the web server farm problem. In the oine version of this problem, future demands of the sites are known. In the fully online version, only the demand of the urrent interval is known at the beginning of the interval. It makes sense to assume that some amount of future demand is known to the servie provider, and we model it by lookahead. Lookahead L means that the demand of the sites is known for the next L time intervals (following the urrent interval). In reality, lookahead will require that some foreasting mehanism be used to predit future demands. Fortunately, web traÆ exhibits properties of preditability over the short term whih render this pratial as demonstrated in [13, 18℄. We measure the performane of an online alloation algorithm using its ompetitive ratio; that is, the maximum over all instanes of the ratio of the benet gained by the optimal oine alloation to the benet gained by the online alloation on the same instane. Sine we are dealing with a maximization problem, this ratio is always greater than 1, and the goal is to make it as small as possible. Interestingly, our model an be ast as a more general benet task system. In this task system we are given a set of states for eah time t and a benet funtion. The system an be in a single state at eah time, and the benet gained between times t and t +1 is a funtion of the system states at times t and t +1. The goal is to nd a time-varying sequene of states that maximizes the total benet gained; that is, at eah time t we need to determine to whih state should the system move (and this will be the state of the system at time t +1), and we gain the benet that is determined by the benet funtion. Similar to the web server farm problem, in the oine version, the benet funtion is known in advane. In the fully online version, only the possible benets of the urrent step are known at the time a move is determined, and in ase of lookahead L, the benets of the next L steps (in addition to the urrent) are known. Note that number of states in a benet task system might be super-polynomial if the states are not given expliitly. It an be shown that benet task systems apture also benet maximization variants of well studied problems, suh as the k-server problem [16, 9℄ and metrial task systems [10, 9℄ (see Setion 2). Thus, our results hold for these variants as well, and show that the benet variants of these problems may be more tratable than their ost minimization variants. Our results We observe that the oine version of the web server farm problem an be solved in polynomial time. In the online setting, we rst note that the ompetitive ratio in the fully online version is unbounded; we then onsider the ase of a positive lookahead for both deterministi algorithms and randomized ones. We obtain tight bounds on the ompetitive ratio for the randomized ase and almost tight bounds for the deterministi ase. In the deterministi ase we also onsider the speial ase L = 1. The spei results are summarized in Table 1. Our bounds on the ompetitive ratio extend to the benet task system problem, assuming that an optimal sequene of moves for the period of the lookahead (i.e. for the next L + 1 time steps) is eÆiently omputable. Therefore, our upper bounds (i.e. algorithms) are presented in the more general framework of the benet task system problem, and the lower bounds are given for the more restrited web server farm problem. In addition, we onsider two speial ases of the web server farm problem with lookahead 1. One is the basi ase of one server and two sites. For the p ompetitive ratio in this ase we obtain a lower bound of 3 3=2 p 2:598 and an upper bound is the golden ratio. The of 1 + 2:618, where = seond ase is that of k servers and arbitrary number of sites, for whih we give an algorithm that ahieves a ompetitive ratio 2 if k is even and 2 + 2=(2k 1) if k is odd. Several of our algorithms use the natural approah of \disounting the future". Speially, when the algorithm faes the hoie between a guaranteed benet immediately and a potential benet in the future, the deision is made by omparing the guaranteed benet value with a disounted value of the potential future benet. This disount fator is exponential in the number of time units that it would take the potential benet to be materialized. The reason for disounting future benets is straightforward. By the time a benet will be materialized, things might hange and the algorithm might deide to make another hoie for a potential (even larger) benet. Another approah used by our algorithms in the ase of lookahead is an \intermittent reset". Some number of future steps are determined and then a single time step is \wasted" to realloate the servers in preparation for another sequene of future steps. The time step for realloation is hosen so that the amount of benet unrealized due to the realloation is guaranteed to be small with respet to the benet that is gained. 1+ 5 2 We use atual web traÆ data of ommerial sites and randomly generated data to evaluate our algorithms. Our experiments show that the disount algorithm performs better, with less lookahead, than the intermittent reset algorithm, and is within 0:2% of optimal on all the ommerial trae instanes, even with lookahead one. Related work Our web server farm problem an be viewed as a sheduling problem. The requests are represented by unit length jobs, and the k servers are mahines. Eah job has a deadline whih is exatly one time unit after its release, and a value. The goal is to maximize the throughput; that is, to maximize the value of the sheduled jobs. An additional fator is setup: it takes one time unit to set up a mahine to handle a job for one web site if it handled a job in the previous time unit for a dierent site. Several papers have onsidered the problem of throughput maximization in sheduling jobs on parallel mahines with release times and deadlines, both in the oine and online settings [5, 3, 7, 8, 14℄. In thePstandard notation, this type of problem is denoted by P jri j wi (1 Ui ). The type of setup onsidered here is related to \bath setup" sheduling, for whih several oine problems have been studied (see [17℄ for a survey). The online problems onsidered here also relate to previous work on online all admission and bandwidth alloation [12, 15, 4, 6℄. Again, the issue of setups does not appear in any of these papers. The benet task system an also be viewed as a prot maximization version of the request-answer game of [9℄. To the best of our knowledge this is the rst attempt to onsider a task system for prot maximization rather than ost minimization problems. Awerbuh et al. [2℄ onsidered a similar problem in whih a deision maker that has no way to aurately predit future performane of several options has to hoose one option that will have the best future performane. This problem has an unbounded deterministi ompetitive ratio, and the authors propose a randomized algorithm. Lookahead is not onsidered in [2℄. In the next setion we give more aurate denitions of our models and show their relations to the k-server model and metrial task systems. In Setion 3 we desribe an oine algorithm for the server farm problem. In Setion 4 we devise two deterministi online algorithms for the benet task system, based on disounting the future and on an intermittent reset, and we give upper bounds on their ompetitive ratio. In Setion 5 we prove lower bounds on the ompetitive ratio of any deterministi online algorithm for the more restrited web server farm problem. In Setion 6 we onsider some speial ases of the online deterministi web server farm problem. In Setion 7 we give tight bounds for the randomized ase. We onlude in Setion 8 with some experimental results based on traes of ommerial retail sites. Organization. server has a \servie rate" whih is the number of requests to a web site eah server an serve in a time unit. Without loss of generality, we normalize the demands by the servie rate so that a server an serve unit demand per time unit and demands of a site may be frational. A web server an be alloated to no more than one site at eah time unit and it takes a time unit to hange the alloation of a server. A problem instane onsists of the number of servers k, the number of sites s, a nonnegative benet matrix fbi;t g denoting the benet gained by serving a request of site i 2 [1::s℄ for time step t 2 [1:: ℄, and a nonnegative demand matrix fdi;t g denoting the number of requests at site i for time step t. The goal is to nd for eah site i 2 [1::s℄, a time-varying alloation fai;t g of servers, so as to maximize the total benet, as follows. The alloation must satisfy that for eah t, Psi ai;t k. Only a0i;t = minfai;t ; ai;t g of the servers alloated to site i for time step t are \produtive", i.e., atually serve requests. that the total benet P WePget s b minfd ; a0 g = of alloation f ai;t g is t i;t i;t i;t i Pan P s b minfd ; a ; a i;t i;t i;t i;t g. The initial alloation i t is xed to be, say, ai; = 0 for all i. In the oine version of this problem we are given the omplete demand matrix fdi;t g and we need to ompute the omplete alloation fai;t g. In the fully online version we need to ompute the alloation fai;t g at time t given the demands so far, i.e., fdi;t g for all i and t0 t. It is not diÆult to show that any fully online algorithm may perform arbitrarily badly with respet to the oine optimal solution. This is true beause of the one time unit lag in a server's availability. Thus we onsider online algorithms with lookahead. In the online version with lookahead L, at eah time t we are additionally given the demands and benets for times t0+1; : : : ; t+L, i.e., the entries di;t and bi;t for i 2 [1::s℄ and t 2 [t +1::t + L℄, and we need to ompute the alloation at time t, i.e., ai;t for i 2 [1::s℄. The benet task system problem: The web server farm problem is a speial ase of the generalized task system benet problem. In this problem we are given (i) a set of possible states Ut , for eah time t 2 [0:: ℄, Sand (ii) a nonnegative benet funtion B whose domain is t (Ut Ut ), that denotes, for eah time t, the benet that is arued (at time t + 1) by the transition from a state in Ut to a state in Ut . The goal is to hoose a P state st for eah time t so as to maximize the total benet t B (st; st ). The initial state is xed by letting that U = fs g. In the oine version of the problem all the state sets and the benet funtion are known in advane. In the online version with lookahead L, the state st 20 Ut should be omputed based on knowing only Ut for t t + L, and the restrition of the funtion B to pairs of these sets of states. Observe that the web server farm problem an be ast in this setting by identifying eah possible alloation of servers to sites at time t with a state Si;t, and dening the benet funtion B (Si;t ; Sj;t ) to be the benet gained by (serving some number of requests while) hanging the alloation at time t from the one represented by Si;t to the alloation at time t +1 represented by Sj;t . (In a sense, the set of states for all times are the same.) The number of states is exponential in the number of servers k, so the states and the benet funtion are impliit and follow from the more suint representation of the web server farm problem. For example, the values B (Si;t; Sj;t ) are not listed expliitly, and any single value an be eÆiently omputed when neessary. 1 =1 =1 =1 0 0 THE PROBLEMS The web server farm problem: Suppose that we are given s web sites that are to be served by k web servers. (For simpliity, we assume that all servers are idential.) Time is divided into units (a.k.a. steps). It is assumed that the demand of a web site is uniform in eah time unit. Eah 0 0 +1 +1 1 =0 0 +1 +1 +1 0 0 +1 2. =1 1 =1 Benet maximization variants of well known problems an also be ast in this setting of a benet task system. Consider the benet version of the k-server problem. This version of the k-server is similar to the lassial k-server problem [16℄ with one dierene. Instead of minimizing the ost of satisfying all requests, we dene for eah time t and any possible pair of server ongurations, one at time t 1 and one at time t, a net benet gained by satisfying the request starting from the onguration at time t 1 and ending at the onguration at time t. (Note that the onguration at time t must inlude at least one server at the point of the request.) This benet has to be nonnegative and is omposed of a xed positive omponent that is redued by the ost to move from the onguration at time t 1 to the onguration at time t. The goal in this ase is to maximize the total benet. It is not diÆult to see that this problem an also be modeled by the benet task system dened above and thus all our results apply to the benet version of the k-server problem. Similarly, onsider the benet version of a metrial task system. This version is similar to the lassial metrial task system [10℄, with the dierene that eah task is assoiated with a vetor of benets, one for eah state, suh that the net benet after subtrating the transition ost is nonnegative. This model as well an be ast as a benet task system and our results apply. 3. OFFLINE ALGORITHM FOR THE WEB SERVER FARM PROBLEM In this setion we show that the oine web server farm problem an be solved in polynomial-time. Note that an algorithm that solves this oine problem is also a omponent in the deterministi online algorithms of Setion 4, as these online algorithms rely on an ability to nd an optimal sequene of alloations in the limited future given by the lookahead (i.e., the next L + 1 time units). We redue the web server farm problem to the well-known minimum-ost network ow problem, whih an be solved in polynomial time; see for example [1, 11℄. We remark that when sk is polynomial in the input size, the web server farm problem an be solved in polynomial time also using dynami programming. However, in general k might be exponential in the input size. 1. The oine web server farm problem an be Theorem redued in polynomial time to a minimum-ost network ow problem. Hene, it an be solved in polynomial time. Reall that the input for the minimum ost network ow problem is a direted network, two speial verties alled the soure vertex and the sink vertex, an amount of ow to be injeted into the soure vertex, and a nonnegative apaity and a ost for eah edge. The goal is to nd from all the ows from s to t that respet the edge apaities and are of size k, one that has a minimal ost, where the ost of a ow is the sum, over all edges, of the produt of the ow on this edge and its ost. In fat, we desribe below a redution from the web server farm problem to the analogous maximum-ost network ow problem. The latter problem is essentially the same as the minimum-ost network ow problem (and thus an be solved in polynomial time), sine the edge osts are not restrited Proof. in sign, i.e., are allowed to be negative. We remark that in our network, all the paths from s to t are of equal length, and therefore another way to guarantee that all osts are nonnegative is to inrease the osts of all the edges by the same suÆiently large number. The outline of the redution is as follows. Given an instane of the web server farm problem, we onstrut a (direted) network with s \rails", one per site. Eah rail is a hain of edges, eah representing one time step. (Atually, we will split these edges into three parallel edges, for reasons whih will beome lear shortly.) Flow along a rail represents the alloation of servers to the orresponding site. In addition, we onstrut a set of \free pool" nodes, one per time step, through whih ow will pass when servers are realloated from one site to another. Let fdi;t g with i 2 [1::s℄ and t 2 [1:: ℄ be the demand matrix. We onstrut nodes ni;t for i 2 [1::s℄ and t 2 [1:: ℄, along with nodes ft for t 2 [1:: ℄. For eah site s and eah time step t, we onstrut three edges from ni;t to ni;t . The rst has apaity bdi;t and ost bi;t . The seond has apaity one and ost bi;t (di;t bdi;t ). The last has innite apaity and ost 0. Flow along the rst edge represents the benet of alloating servers to site i during time step t, up to the integer part of di;t . Flow along the seond represents the remaining benet, bi;t times the frational part of di;t, to be olleted by one more server (that will be only partially produtive). Flow along the third represents the fat that extra servers an remain alloated to i, but do not ollet any benet. Clearly the rst edge will saturate before ow is present on the seond, and similarly the seond will saturate before ow is present on the third. We also onstrut edges of innite apaity and ost 0 from ni;t to ft and from ft to ni;t , for eah t 2 [1:: ℄ and i 2 [1::s℄. These represent the movement of servers from one site to another. (We use an intermediate node ft to keep the number of edges linear.) Finally, we onstrut a soure into whih we injet ow k, with innite apaity zero ost edges to eah ni; , and a sink with innite apaity zero ost edges from eah ni; . It is not hard to see that an integral ow of ost C in this network orresponds to an alloation fai;t g with benet equal to C , and vie versa. It is well known that sine all the edge apaities are integral, there is minimum-ost (or maximum-ost) ow in the network that is integral, and that, furthermore, suh a ow an be eÆiently found. This implies an eÆient algorithm that nds an optimal alloation fai;t g. Note that the size of the network (number of nodes and edges) is linear in the size of the demand matrix fdi;t g, and thus the oine web server farm problem an be solved within roughly the the same time as the best algorithm for minimum-ost network ow on a network with O(s ) nodes and edges. 1 1 1 4. DETERMINISTIC ONLINE ALGORITHMS FOR BENEFIT TASK SYSTEMS In this setion we desribe two deterministi algorithms for benet task systems with lookahead L. The rst algorithm is a future disountingp algorithm that ahieves a ompetitive ratio of (1 + 1=L) L L + 1. Asymptotially in L this ratio is 1 + (log L)=L. The seond algorithm is an intermittent reset algorithm that ahieves a ompetitive ratio of 1 + 4=(L 7), whih is better than the rst algorithm when L is suÆiently large. Eah algorithm requires that one an eÆiently nd a sequene of moves that is optimal (in a ertain sense) for the period of the lookahead (i.e. for the next L + 1 time steps). In the partiular ase of the web server farm problem, we an ahieve this requirement by using the oine algorithm of Setion 3. 4.1 The future discounting algorithm We present a deterministi p algorithm that ahieves ompetitive ratio (1 + 1=L) L L + 1 for the benet task system problem. The algorithm is based on disounting future benets in an exponential way, as follows. Consider a sequene of L +1 moves that ollets the benets b ; b ; : : : ; bL (in this order) in the next L +1 time steps. We dene the antiipated L (for a benet of this sequene to be b + b = + : : : + bL = p L parameter > 1 that we later hoose to be = L + 1). The disounting algorithm greedily follows at eah time step the largest antiipated benet possible at that time. Namely, at every time step the algorithm nds a sequene of L + 1 moves (for the next L + 1 time steps) whose antiipated benet is maximal, and performs the rst move in this sequene. We stress that a new sequene is alulated at every time step, and that the sequene found in the urrent time step does not have to agree with the one found in the previous time step. Note that this disounting algorithm requires eÆient omputation of a sequene of L + 1 moves with the maximum antiipated benet. The following lemma provides this requirement when the number of states at every time t is polynomial in the input size, e.g. when the states of the benet task system are given expliitly. In the web server farm problem, the number of (impliit) states is super-polynomial, but we an use the oine algorithm of Setion 3, with straightforward modiations for handling the initial state and the disount. 2. Suppose that the number of states possible for any one time is at most M . Then a sequene of L +1 moves 0 0 1 1 Lemma with the largest antiipated benet an be omputed in time that is polynomial in M (and L). Use dynami programming that goes iteratively over the time steps and aumulates disounted benets. As the additional benet of the next time step depends only on the urrent state, it suÆes to have for eah time step t a table of size M , and ompute the table for time step t + 1 from that of time step t. 3. The ompetitive ratio p of the above disounting algorithm is at most (1 + 1=L) L L + 1. Proof. Theorem Consider among the sequenes of L + 1 moves that are available for the online algorithm at time t, the sequene with the largest antiipated benet, and let b ; b ; : : : ; bL be the benets olleted by this sequene. Dene ONt = b and ONtL = b = + : : : + bL =L , and then ONt + ONtL is the largest antiipated benet over all sequenes of L + 1 moves that are available to the online algorithm at time t. The online algorithm performs the rst move in this sequene, and thus the benet it ollets at time t is ONt . Fixing an oine algorithm arbitrarily, let OF Ft denote the benet that this oine algorithm ollets at time t, and let OF FtL be a shorthand for OF Ft =+: : :+OF Ft L =L . Proof. 0 1 0 +1 1 +1 +1 + One sequene of moves that the online algorithm onsiders at time t is to rst join the oine algorithm, (i.e., move to the same state as the oine algorithm at time t), and then follow the oine algorithm for the next L steps. The antiipated benet of this sequene is at least OF FtL . Sine the online algorithm follows at time t the sequene of moves with the largest antiipated benet, we get that ONt + ONtL OF FtL (1) Another sequene of moves that is onsidered by the online algorithm at time t is to follow the sequene that had the largest antiipated benet at the previous time step t 1 (without the rst step of that sequene, whih was performed at time t 1, and with an arbitrary move added at the end of the sequene.) The ontribution of these benets to the antiipated benet at time t is larger by a fator of than their ontribution at time t 1, and so the antiipated benet of this sequene of moves is at least ONtL . Sine the online algorithm follows at time t the sequene of moves with the largest antiipated benet, we get that ONt + ONtL ONtL (2) Adding (1 ) times inequality (1) and times inequality (2), we get that +1 +1 +1 1 1 1 1 )OF F L : (3) t Adding up inequality (3) over all time steps t we get that (it is straightforward that we an assume, without loss of generality, that all the benets in the rst and last L + 1 time steps are zero regardless of the state): X X ONt (1 1 ) OF FtL L ON L + (1 ONt + ONt+1 t t +1 +1 t X = (1 1 ) 1 + : : : + 1L OF Ft : t The last equality follows sine every benet that the oine ollets ours in Pt OF FtL with eah of the disounts 1=; : : : ; 1=L . We onlude that the ompetitive ratio of L L + 1): the algorithm is (hoosing = p +1 P OF Ft Pt t ONt 1 1 L p = L 1 = (1 + 1=L) L L + 1 : +1 1 L+1 4.2 The intermittent reset algorithm We present a deterministi intermittent reset online algorithm that has ompetitive ratio 1 + O(1=L) for the benet task system problem. This algorithm is motivated by the randomized algorithm presented in Setion 7 that saries one out of every L +1 steps in order to gain the optimal benet between saried steps. Here, we sarie one out of every (L) steps, but the hoie of steps to sarie is done arefully in a deterministi fashion and the overall benet that we gain is lose to the expeted benet of the randomized algorithm. The algorithm works in iterations of length at least L=2 and at most L. Let si denote the start time of iteration i. Eah iteration i onsists of four steps, as follows. In a sense, this is a potential funtion analysis. See for example [9℄. 1 Consider all times t = si + L=2 + 1 : : : ; si + L. For eah suh time t, let xt denote the maximum benet of any transition from a state at time t to a state at time t + 1. Let T be the time t that minimizes xt, i.e., xT = minfxt : si + L=2 + 1 t si + Lg. Compute the optimal sequene of transitions that starts at any state at time si + 1 and ends at any state at time T . This an be done either by dynami programming similar to Lemma 2 or by applying the oine algorithm of Setion 3. (In the rst iteration the initial state is given and thus we may ompute the optimal sequene of transitions from the initial state to any state at time T . The next step has to be modied aordingly.) Move from the urrent state at time si to the state at time si + 1 that is the starting state of the optimal sequene omputed above, and ontinue with the optimal sequene of moves to the state at time T . Set the starting point si = T for the next iteration. 4. The ompetitive ratio of the above intermittent reset algorithm is at most 1 + L . Step 1: Step 2: Step 3: Step 4: +1 Theorem 4 7 We assume that L is a multiple of 4, and otherwise round it downwards to the nearest multiple of 4 (at the expense of inreasing the ompetitive ratio as explained later). We will all the starting times of the iterations \gaps." Denote the gaps by s ; s ; : : :. We divide the transitions taken by the algorithm into two omponents, the moves taken in the gaps and the steps taken in the rest of the times. Consider the path taken by the online algorithm. It may not ollet any benet in the gaps, but sine it omputes the optimal paths between gaps (allowing arbitrary initial and terminal states adjaent to the gaps), learly the benet of the optimal oine between gaps is no larger than the benet of the online algorithm between gaps. Now we bound the benet of the optimal oine algorithm in the gaps. Consider iteration i starting at si and omputing T = si . Consider the portion of the online path from si + L=2 + 1 to si . Denote the length of this portion by a, i.e., a = si (si + L=2 + 1). Consider the portion of the path omputed in the next iteration from si + 1 to si + L + 1. Denote the length of this portion by b, i.e., b = si + L + 1 (si + 1). By our hoie of L, L=2 is even and a + b = L=2 1. Thus one of a and b is even and the other is odd. Assume a is odd and b is even; the proof is similar in the opposite ase. (We note that ideally, we would like both a and b to be even, but hoosing a + b to be even may lead to a worse ase when both are odd.) We laim that the benet ahieved by the online algorithm in these portions of the path is at least xT (a + b 1)=2. This is true sine in every time step in the range there is a transition of benet xT and thus the online algorithm an ahieve benet at least xT on every other transition, even if it ollets no benet on the other half of the transitions. Sine a is odd, it an ollet at least xT (a 1)=2 in the rst portion, and sine b is even, it an ollet at least xT b=2 in the seond. Putting these together along with a + b = L=2 1 we have that the online benet is at least xT ( a 1 + b ) = x T L 4 : 2 2 4 Proof. 1 2 +1 +1 +1 +1 +1 Sine si + L + 1 is always less than si + L=2 + 1, these portions are disjoint among iterations. Summing over all iterations we have ON ( L ) Pi xTi , where ON denotes the total benet olleted by the online algorithm and xTi denotes the maximum benet possible in the ith gap. AountingPfor the portions outside the gaps we have ON OF F i xTi , where OF F denotes the benet of the optimal oine algorithm. Putting these together and allowing for values of L that are not multiples of 4 yields the desired bound of 1 + L . +1 4 4 4 7 5. LOWER BOUNDS FOR DETERMINISTIC ONLINE ALGORITHMS In this setion we prove three lower bounds on the ompetitive ratio of deterministi online algorithms for the web server farm problem with one server. The rst lower bound is for general lookahead, the seond is for lookahead 1 (and arbitrary number of sites), and the third is for lookahead 1 and two sites. 5.1 A lower bound for general lookahead We show a lower bound of 1+ L + L2 on the ompetitive ratio of a deterministi online algorithm for the web server farm problem with one server. The same lower bound then follows for the benet task system problem. Formally, we have the following theorem. 5. The ompetitive ratio of any deterministi 1 1 +1 Theorem online algorithm for the web server farm problem with one server (and hene for the benet task system problem) is larger than 1 + L1 + L21+1 . Consider a deterministi online algorithm whose input is a 3(L+3) demand table fdi;t g. Sine the algorithm has lookahead L, it is given at time t = 0 only the rst L +1 olumns, as illustrated below. Sine the rst olumn is all zeros, we may assume without loss of generality that the server is initially alloated to the rst site. We denote the sequene of loations of the server by triangles, and use a parameter a that will be determined later. 3 2 .0 1 a : : : a ? ? fdi;t g = 4 0 1 a : : : a ? ? 5 0 1 a ::: a ? ? Sine at time t = 0 all three rows look the same, we may assume without loss of generality that the algorithm deides to alloate the server at this time to the rst site, and it ollets a benet of 0. Next, at time t = 1 another olumn is revealed to the algorithm, and the situation is as follows. 3 2 .0 .1 a : : : a 0 ? fdi;t g = 4 0 1 a : : : a a ? 5 0 1 a ::: a a ? At time t = 1 the algorithm an either alloate the server to the rst site again or to another site. Consider rst the ase that the algorithm alloates the server to the rst site again, so the algorithm ollets a benet of 1. In this ase the last olumn is revealed (at time t = 2) to be all zeros, and the situation is the following. 3 2 .0 .1 .a : : : a 0 0 fdi;t g = 4 0 1 a : : : a a 0 5 0 1 a ::: a a 0 Proof. The total benet that the online an ollet in this ase is at most 1 + (L 1)a, while the oine ould have olleted the whole seond row, i.e., 1 + La. Therefore, the ompetitive ratio of the algorithm would be at least a r0 = 1 + La = 1 + 1 + (L 1)a 1 + (L 1)a : Consider now the ase that the algorithm alloates the server at time t = 2 to a site other than the rst one, so it ollets a benet of 0. Without loss of generality we may assume that the server is alloated to the seond site. At time t = 2, the last olumn is revealed to the algorithm, and the situation is the following. 3 2 .0 .1 a : : : a 0 0 fdi;t g = 4 0 1 .a : : : a a 0 5 0 1 a ::: a a a The total benet that the online an ollet in this ase is at most La, while the oine ould have olleted the whole third row, i.e., 1+(L +1)a. Therefore, the ompetitive ratio of the algorithm would be at least 1 + (L + 1)a = 1 + a + 1 : r00 = La La We onlude that the ompetitive ratio of any deterministi p algorithm is at least minfr0 ; r00 g. Choosing a = (L + L + 4)=2, we get that a = 1 + La and hene r0 = r00 = 1 + a + 1 = 1 + 1 + 1 : 2 2 La L aL 0 Sine a < L +1=L, we get that minfr ; r00 g > 1+ L1 + L21+1 , as laimed. This lower bound (slightly) improves over the 1+ L straightforward lower bound. As the latter bound is the ompetitive ratio threshold for randomized algorithms (see Setion 7), this proves that for any xed lookahead L, the thresholds of deterministi and randomized algorithms are dierent. 1 5.2 Lower bounds for lookahead one We prove two lower bound results for deterministi algorithms for the web server farm problem with one server and lookahead 1. The rst result shows that no algorithm an ahieve a ompetitive ratio better than 4 for this problem. This mathes our algorithm from Setion 4.1 that ahieves a ompetitive ratio 4. The seond result shows that in the ase where the number of sites is two,pno algorithm an ahieve a ompetitive ratio better than 3 3=2 2:598. This is almost tight with our algorithm from Setion 6.1 that ahieves a ompetitive ratio roughly 2.618. The proofs of the following two theorems are omitted due to spae onstraints. Theorem 6. Consider the web server farm problem with one server and lookahead 1. For every < 4, there exists an s > 0 suh that the ompetitive ratio of any deterministi online algorithm for the problem with s sites is at least . Theorem 7. Consider the web server farm problem with p two sites, one server and lookahead 1. For every < 3 3=2, the ompetitive ratio of any deterministi online algorithm for the problem is at least . 6. SPECIAL CASES In this setion we onsider two speial ases of the web server farm problem. The rst is the ase of one server and two sites with lookahead one. The seond is multiple servers with lookahead one. 6.1 One server, two sites, and lookahead one We devise a deterministi online algorithm for the web server farm problem with one server, two sites and lookahead L = 1. p The algorithm has ompetitive ratio r = 1+ where = 1:618 is the golden ratio. This ratio is nearly the best possible pin this ase, as we present (in Setion 5) a lower bound of 2:598 on the ompetitive ratio of any deterministi algorithm for this problem. We remark that the ompetitive ratio that we obtain in this ase is muh better than in the ase of arbitrary number of sites, where the best possible ompetitive ratio is 4. The algorithm is based on disounting future benets. It is similar to the algorithm presented in Setion 4.1 (speialized to the ase L = 1), exept that the disount fator is taken to be . The analysis for this ase adds some ompliation to that of the general ase, in order to take advantage of the limited number of sites. For example, a disount fator of 2 optimizes the analysis of Setion 4.1, and then the ompetitive ratio is shown to be at most 4. The atual ompetitive ratio in this ase is 3, whih an be shown by an analysis similar to the one that we give here. The following theorem states the improved ompetitive ratio for this ase. p 8. The disounting algorithm with disount fator = ahieves ompetitive ratio r = 1 + 2:618 1+ 5 2 3 2 3 Theorem 1+ 5 2 for the web server farm problem with one server and two sites. We rst desribe the algorithm in more detail. We assoiate with eah possible alloation its antiipated benet, whih ombines the immediate benet of this alloation and its future benet. To ompensate for the unertainty of a future benet (the algorithm might later deide not to ollet these benets), we disount it (with respet to an immediate benet) by a fator of . In other words, an ation that auses the algorithm to ollet0 a benet b and to have the potential to ollet a benet b in the future has antiipated benet of b + b0 . Suppose that the situation of the online algorithm at some time t is as illustrated below. Assume, without loss of generality, that the alloation of the server in the previous time unit is to the rst site, as denoted by the triangle. Sine the lookahead is L = 1, the algorithm knows only the demands at the urrent time t and at the next time t + 1. 0 fdi;t g = :: :: :: .xy xy0 ?? ?? :: :: :: Proof. The algorithm deides on the alloation of the server at time t as follows. If x + x0 y 0 then the previous alloation is kept, i.e., the online algorithm alloates the server at time t to the rst site. Otherwise, the algorithm hanges the alloation and the server is alloated to the seond site. Observe that this deision ahieves the largest antiipated benet for the algorithm. If it deides to stay with the alloation as before, it ollets a benet of x and will have the option to ollet at the next time t + 1 an additional benet x0 , yielding an antiipated benet x + x0 . If the algorithm deides to hange the alloation to the other site, then it ollets no immediate benet (at this point there is no way for the online algorithm to ollet the benet y), and in the0 next time t +1 it will have the option to0 ollet a benet y , yielding an antiipated benet 0 + y = y0. We will prove by indution on T that X X OF Ft + OF FT (4) r ONt + qT ONT 2 tT +1 +1 +1 tT where ONt is the atual benet olleted at time t by the online algorithm; ONt is the potential benet that the online algorithm will ollet at time t if it alloates the server to the same site as at time t 1; OF Ft and OF Ft are dened similarly for an arbitrary oine algorithm; and qt = if at time t 1 the online and the oine algorithms have alloate the server to the same site (i.e., if they have the same \starting position" for time t), and qt = 1 otherwise. (Note that ONt is either ONt in ase the potential benet is gained or 0.) Proving (4) would omplete the proof, sine we an assume, without loss of generality, that all the demands in the rst and last L + 1 time steps are zero, and thus obtain for the last time step T that r Pt ONt Pt OF Ft , as required. The base ase of the indution follows from padding the demand matrix with zeros from both sides. For the indutive step, i.e., that the indution hypothesis (4) for time T follows from that of time T 1, it suÆes to show that r ONT + qT ONT qT ONT (5) OF FT + OF FT OF FT We prove Equation (5) by verifying 0it over0 all ases. Denote the benets at times T; T +1 by x; x ; y; y as above. Assume without loss of generality that at time T 1 the server is alloated to the rst site. The total number of ases is eight, sine there are two possible deisions for the online, and four possible deisions for the oine. Consider rst the ases in whih the alloation of the ofine at times T and T + 1 are the same. Then at time T the oine ollets the benet OF FT , and hene OF FT = OF FT . In addition ONT = x, so inequality (5) simplies to r ONT + qT ONT qT x OF FT : 1. qT = ; qT = . Then both oine and online ollet x. We need to show that r x + x0 x x0 i.e., that x + ( 1)x0 0, whih learly holds. p 2. qT = 1; qT = 1. Then oine ollets y and online ollets x. We need to show that r x + x0 x y 0 i.e., that x + x0 y0, whih holds sine online keeps the previous alloation. p +1 +1 +1 +1 +1 +1 +1 +1 3. qT = ; qT = 1. Then oine ollets x and online does not ollet x. We need to show that r 0 + y 0 x x0 whih holds sine online hanges alloation. p In a sense, this is a potential funtion analysis. See [9℄. +1 2 4. qT = 1; qT = . Then oine ollets y and online does not ollet x. We need to show that r 0 + y0 x y0 i.e., that y0 xp= x, whih holds sine online hanges alloation. Consider now the ases in whih the alloation of the ofine at times T and T + 1 are dierent. Then the benet of the oine at time T is OF FT = 0. In addition ONT = x, so inequality (5) simplies to r ONT + qT ONT qT x OF FT OF FT 5. qT = ; qT = . Then oine and online both do not ollet x. We need to show that r 0 + y0 x y0 x i.e., that y0 p x, whih learly holds sine online hanges alloation. +1 1 +1 1 +1 +1 +1 6. qT = 1; qT = 1. Then oine does not ollet y and online does not ollet x. We need to show that r 0 + y 0 x x0 y 0 and sine0 online hanges palloation we indeed get y x + x x + x0 y . +1 7. qT = ; qT = 1. Then oine does not ollet x and online ollets x. We need to show that r x + x0 x y 0 x i.e., that 2x + x0 y0 , whih holds sine online keeps the previous alloation. 8. qT = 1; qT = . Then oine does not ollet y and online ollets x. We need to show that r x + x 0 x x0 y i.e., that x + ( 1)x0 + y 0, whih learly holds. +1 +1 6.2 Multiple servers with lookahead one We present an online algorithm for the web server farm problem with multiple servers and lookahead one, as stated in the following theorem. We omit the proof of the lower bound for lak of spae. 9. There is a deterministi algorithm for the Theorem web server farm problem that ahieves ompetitive ratio 2 when the number of servers k is even, and ompetitive ratio k = 2 + 2=(2k 1) when k 3 is odd. Furthermore, no online algorithm ahieves a lower ompetitive ratio. We distinguish between even and odd numbers of servers. For an even k, the algorithm splits the set of servers into two sets of equal size. The rst set of servers is alloated so as to always ollet the k=2 largest benets on the odd time steps. These servers spend the even time steps in realloation to those sites where they will be able to ollet in the following time step, whih is odd, the k=2 largest benets. On even time steps, these servers may ollet zero benet in the worst ase. The seond set of servers Proof. Workload ran-24 om1-15 om1-25 om2-15 om2-25 Avail. 9494 4634 4634 7265 7265 Opt. 7871 3904 4634 4227 6013 Dis. L = 1 7750 (98.5%) 3899 (99.9%) 4634 (100 %) 4217 (99.8%) 6007 (99.9%) Dis. L = 4 7803 (99.1%) 3901 (99.9%) 4634 (100%) 4218 (99.8%) 6009 (99.9%) Reset. L = 4 7484 (95.1%) 3875 (99.3%) 4629 (99.9%) 4163 (98.5%) 5966 (99.2%) Reset. L = 8 7753 (98.5%) 3894 (99.8%) 4634 (100%) 4183 (99.0%) 5990 (99.6%) Table 2: Experimental results is sheduled in a symmetri way. It ollets the k=2 largest benets on the even time steps and spends the odd time steps on realloation to the best sites for the following time step whih is even. We onlude that at eah time t, the total benet that the k servers ollet is at least as large as the k=2 largest benets at this time t, whih is learly at least half the benet that an optimal oine algorithm an ollet at this time t. Therefore, the ompetitive ratio of this algorithm is at most 2. For an odd k, the algorithm splits the servers into three groups. Two groups are of size (k 1)=2 eah, and the third group ontains one server. The rst group of servers ollets the (k 1)=2 largest benets on the odd time steps. The seond group ollets the (k 1)=2 largest benets on the even time steps. Let Ft denote the (k + 1)=2 largest benet in step t. The last server tries to ollet Ft on eah time step, as follows. On the step t the server either ollets Ft or it moves to the site q suh that dq;t = Ft . The server ollets Ft if 2Ft > Ft ; otherwise the server moves to site q . If the server ollets Ft on some step t, it saries the step t + 1 on a move to the k th best site q for step t + 2, i.e., dq;t = Ft . For the sake of analysis we split time into phases: the rst phase starts at time step 0 (by onvention we assume that benets at this time step are equal to zero). A phase ends at time step t + 1 if the server from the third group ollets Ft in step t. The next phase starts at step t +2, and so on. Notie that the server fromk the third group always starts the phase alloated to the th best site. Consider the rst phase. We laim that Ft 1=4 Pti Fi . Indeed, 2Fi Fi for i = 1; : : : ; t 1 and 2Ft > Ft . Therefore +1 +1 +1 +1 2 +2 +2 +1 2 +1 =1 +1 +1 t+1 X i=1 Fi < F t t+1 X i=1 1=2t i 2Ft 1 X j =0 1=2j = 4Ft : For p P k, if S (; p) is a sum P of the p largest benets in step , then S (; p) p=k OF F and t t X X k 1 S ; ON 2 + Ft t t X X 43 S ; k 2 1 + 14 S ; k +2 1 X t 3(k8k 1) + (k 8+k 1) OF F = 2k4k 1 OF F = k OF F : The same proof holds for any phase, and therefore we have proved that our algorithm is k -ompetitive for odd k 3. +1 +1 =1 =1 +1 +1 =1 =1 +1 =1 1 7. RANDOMIZED ONLINE ALGORITHMS In this setion we derive tight bounds on the ompetitive ratio of randomized online algorithms with lookahead L. These bounds are stated in the following theorem. We remark that our randomized algorithm requires only O(log L) random bits, independent of the input length. 10. There is a randomized online algorithm for the benet task system problem with ompetitive ratio 1 + 1=L. Furthermore, no randomized algorithm ahieves a Theorem lower ompetitive ratio, even for the web server farm problem with one server. The idea behind the algorithm is that with lookahead L, we an ompute an optimal path for L time steps. However, we may have to make a poor move, in whih we ollet little or no benet, in order to reah the rst state on this path. After following this path, we an again hoose the best state to move to during the next time step, possibly without olleting any benet at all, but ensuring the best starting point for the next L steps. We refer to this as the \resetting" algorithm, sine it operates in stages, after eah of whih it resets to an optimal state for the upoming stage. The online algorithm will ollet at least as muh benet as the optimal oine algorithm on every step exept the resetting steps. Notie that there are L + 1 possible \phases": phase j means (potentially) giving up all benet during steps i (L +1)+ j for eah i, where 0 j L. Sine the sets of steps whose benet is given up is these phases are mutually disjoint, the total benet lost in all phases is at most the oine benet. Randomizing over these hoies, the online algorithm loses in expetation only a 1=(L + 1) fration of the oine benet, and the ompetitive ratio is at most = L = 1 + 1=L. For any > 0, we show a lower bound of (L + 1)=(L + ) for the one-server problem. Our randomized adversary generates a demand matrix fdi;t g with d1=e rows and L +2 olumns (whih an be repeated indenitely), and a benet matrix of all ones. The rst olumn of the demand matrix ontains all zeroes, the next L olumns ontain all ones, and exatly one randomly hosen row in the last olumn ontains a one and the rest ontain zeroes. The optimal hoie is for the server to move during the rst step to the row ontaining the one in olumn L + 2, and to stay in that row for L + 1 steps, olleting a total benet of L + 1. Any randomized online strategy stands only an hane of hoosing this row, and with probability at least 1 must either miss the benet in this olumn, or forgo benet in some earlier olumn in order to ollet it. Thus the expeted benet olleted by the randomized online algorithm is at most L + . Proof. 1 1 1 ( +1) 8. EXPERIMENTAL RESULTS We have implemented the oine optimal, disount, and intermittent reset algorithms for the web server farm problem and measured their performane. We used a randomly generated input, and inputs generated from ommerial retail web server logs. The online algorithms perform very well on these inputs, both in ases of overloaded and underloaded servers. In fat, the disount algorithm with lookahead one and the intermittent reset algorithm with lookahead eight math the optimal oine performane in the ase of underloaded servers. (This is not surprising, sine it an be shown that if the optimal oine algorithm is able to ollet all the available benet, then the greedy algorithm with lookahead one ahieves this optimal benet.) The disount algorithm performs better, with less lookahead, than the intermittent reset algorithm, and is within 0:2% of optimal on all the ommerial trae instanes, even with lookahead one. We use the (untuned) value of 2 as the disount fator. The random problem instane has 3 ustomers and 400 time steps. Demands are generated uniformly between 0 and 16, and revenues uniform between 0 and 2. The ommerial traes were olleted from two dierent retail sites, whih will remain unnamed due to ondentiality onstraints. One of these is separated into \browse" and \buy" transations. We treat these separately (i.e., so that we have three dierent \ustomers"), and assign revenue three times as great to the \buy" transations sine they represent atual monetary transations. Eah trae represents the requests arriving at a web server over a 24-hour period. We separate these into 288 ve-minute bukets, i.e., our time unit is ve minutes. We sale the inputs using realisti server rates, whih results in demands ranging in the low tens of servers for two ustomers, and up to two servers for the third (the one that handles the \buy" transations). Table 2 shows the algorithms' performane. The olumn labeled \Avail." denotes the total available revenue for the problem instane, i.e., the revenue that would be olleted with an innite number of servers. The next olumn, labeled \Opt", shows the revenue olleted by the optimal oine algorithm. The next four olumns show the revenue olleted by the disount algorithm and the intermittent reset algorithm with diering amounts of lookahead (one and four for the disount algorithm, and four and eight for the intermittent reset algorithm). All values are rounded to the nearest integer. The \Workload" olumn indiates the trae used (random and the two ommerial traes, om1 and om2) and the number of servers. Acknowledgements. We thank Maria Minko for helpful disussions and insights. 9. REFERENCES [1℄ R.K. Ahuja, T.L. Magnanti and J.B. Orlin [2℄ B. Awerbuh, Y. Azar, A. Fiat and F.T. Leighton Flows: Theory, Algorithms, and Appliations. Hall, 1993. , Network Prentie , \Making Commitments in the Fae of Unertainty: How to Pik a Winner Almost Every Time". Pro. 28th ACM Symp. on Theory of Computing (STOC), pp. 519{530, 1996. [3℄ A. Bar-Noy, R. Bar-Yehuda, A. Freund, J. Naor and [4℄ A. Bar-Noy, R. Canetti, S. Kutten, Y. Mansour and B. Shieber, \A unied approah to approximating resoure alloation and sheduling". Pro. 32nd ACM Symp. on Theory of Computing (STOC), pp. 735{744, 2000. , \Bandwidth alloation with preemption". 28 (1999), pp. 1806{1828. [5℄ A. Bar-Noy, S. Guha, J. Naor and B. Shieber, \Approximating the throughput of multiple mahines under real-time sheduling". Pro. 31st ACM Symp. on Theory of Computing (STOC), pp. 622{631, 1999. [6℄ A. Bar-Noy, Y. Mansour and B. Shieber, \Competitive dynami bandwidth alloation". Pro. 17th B. Shieber SIAM Journal on Computing, [7℄ ACM SIGACT-SIGOPS Symp. on Priniples of Distributed Computing (PODC), pp. 31{39, 1998. S. Baruah, G. Koren, D. Mao, B. Mishra, A. Raghunathan, L. Rosier, D. Shasha and F. Wang [8℄ \On the ompetitiveness of online real-time task sheduling". Pro. 12th IEEE Symp. on Real Time Systems, pp. 106{115, 1991. , S. Baruah, G. Koren, B. Mishra, A. Raghunathan, , \Online sheduling in the L. Rosier and D. Shasha presene of overload". Pro. 32nd IEEE Symp. on Foundations of Computer Siene (FOCS), pp. 101{110, [9℄ 1991. , On-Line Computation and Cambridge University Press, 1998. [10℄ A. Borodin, N. Linial and M.E. Saks, \An optimal on-line algorithm for metrial task system". J. ACM, 39(1992), pp. 745{763. [11℄ W. J. Cook, W. H. Cunningham, W. R. Pulleyblank, and A. Shrijver, Combinatorial optimization. John Wiley & Sons In., New York, 1998. [12℄ J.A. Garay, I.S. Gopal, S. Kutten, Y. Mansour and M. Yung, \EÆient online all ontrol algorithms". Pro. 2nd Israel Conf. on Theory of Computing and Systems, pp. 285{293, 1993. [13℄ A.K. Iyengar, Mark S. Squillante and L. Zhang, \Analysis and Charaterization of Large-Sale Web Server Aess Patterns and Performane". World Wide Web, 2(1999), pp. 85{100. [14℄ G. Koren and D. Shasha, \D-over: An optimal on-line sheduling algorithm for overloaded real-time systems". SIAM Journal on Computing, 24 (1995), pp. 318{339. [15℄ R.J. Lipton and A. Tomkins, \On-line interval sheduling". Pro. 5th ACM-SIAM Symp. on Disrete Algorithms (SODA), pp. 302{311, 1994. [16℄ M.S. Manasse, L.A. MGeoh and D.D. Sleator, \Competitive algorithms for server problems". J. of Algorithms, 11 (1990), pp. 208{230. [17℄ C.N. Potts and L.N.Van Wassenhove, \Integrating sheduling with bathing and lot sizing: A review of algorithms and omplexity". J. of the Operational Researh Soiety, 43 (1992), pp. 395{406. [18℄ M.S. Squillante, D.D. Yao and L. Zhang, \Web TraÆ Modeling and Web Server Performane Analysis", Pro. 38th IEEE Conf. on Deision and Control, pp. 4432{4437, 1999. [19℄ http://www.ibm.om/servies/webhosting/A. Borodin and R. El-Yaniv Competitive Analysis. full servies.html [20℄ http://www.exodus.om/managed servies/ontent distribution/index.html