Content delivery networks (CDNs) deliver Web content to end-users from a large distributed platform of Web servers hosted in data centers belonging to thousands of Internet service providers (ISPs) around the world. The bandwidth cost incurred by a CDN is the sum of the amounts it pays each ISP for routing traffic from its servers located in that ISP out to end-users. A large enterprise may also contract with multiple ISPs to provide redundant Internet access for its origin infrastructure using technologies such as multihoming and mirroring, thereby incurring a significant bandwidth cost across multiple ISPs. This paper initiates the formal study of bandwidth cost minimization in the context of a large enterprise or a CDN, a problem area that is both algorithmically rich and practically very important. First, we model different types of contracts that are used in practice by ISPs to charge for bandwidth usage, including average, maximum, and 95th-percentile contracts. Then, we devise an optimal offline algorithm that routes traffic to achieve the minimum bandwidth cost, when the network contracts charge either on a maximum or on an average basis. Next, we devise a deterministic (resp., randomized) online algorithm that achieves cost that is within a factor of 2 (resp., e/(e - 1)) of the optimal offline cost for maximum and average contracts. In addition, we prove that our online algorithms achieve the best possible competitive ratios in both the deterministic and the randomized cases. An interesting theoretical contribution of this work is that we show intriguing connections between the online bandwidth optimization problem and the seemingly-unrelated but well-studied ski rental problem where similar optimal competitive ratios are known to hold. Finally, we consider extensions for contracts with a committed amount of spend (CIRs) and contracts that charge on a 95th-percentile basis
[1]
Claire Mathieu,et al.
Dynamic TCP acknowledgement and other stories about e/(e-1)
,
2001,
STOC '01.
[2]
Sally A. Goldman,et al.
TCP Dynamic Acknowledgment Delay: Theory and Practice
,
1998,
STOC 1998.
[3]
Bruce M. Maggs,et al.
Globally Distributed Content Delivery
,
2002,
IEEE Internet Comput..
[4]
Claire Mathieu,et al.
Dynamic TCP Acknowledgment and Other Stories about e/(e - 1)
,
2003,
Algorithmica.
[5]
Robert E. Tarjan,et al.
Amortized efficiency of list update and paging rules
,
1985,
CACM.
[6]
David S. Johnson,et al.
Computers and Intractability: A Guide to the Theory of NP-Completeness
,
1978
.
[7]
Yin Zhang,et al.
Optimizing cost and performance for multihoming
,
2004,
SIGCOMM '04.
[8]
Joseph Y.-T. Leung,et al.
On a Dual Version of the One-Dimensional Bin Packing Problem
,
1984,
J. Algorithms.
[9]
Anees Shaikh,et al.
A measurement-based analysis of multihoming
,
2003,
SIGCOMM '03.
[10]
Sally A. Goldman,et al.
TCP dynamic acknowledgment delay (extended abstract): theory and practice
,
1998,
STOC '98.
[11]
Allan Borodin,et al.
Online computation and competitive analysis
,
1998
.
[12]
Rudolf Fleischer.
On The Bahncard Problem
,
1998,
COCOON.