On Distributed Algorithms for Cost-Efficient Data Center Placement in Cloud Computing
The increasing popularity of cloud computing has resulted in a proliferation of data centers. Effective placement of data centers improves network performance and minimizes clients' perceived latency. The problem of determining the optimal placement of data centers in a large network is a classical uncapacitated k-median problem. Traditional works have focused on centralized algorithms, which requires knowledge of the overall network topology and information about the customers' service demands. Moreover, centralized algorithms are computationally expensive and do not scale well with the size of the network. We propose a fully distributed algorithm with linear complexity to optimize the locations of data centers. The proposed algorithm utilizes an iterative two-step optimization approach. Specifically, in each iteration, it first partitions the whole network into k regions through a distributed partitioning algorithm; then within each region, it determines the local approximate optimal location through a distributed message-passing algorithm. When the underlying network is a tree topology, we show that the overall cost is monotonically decreasing between successive iterations and the proposed algorithm converges in a finite number of iterations. Extensive simulations on both synthetic and real Internet topologies show that the proposed algorithm achieves performance comparable with that of centralized algorithms that require global information and have higher computational complexity.
READ FULL TEXT