Software-Defined Networking Based Request Allocation in Distributed Datacenters
Large-scale Internet applications, such as information retrieval or video streaming, are usually built on top of distributed datacenters. In these applications, the request allocation problem is a fundamental problem, aiming to efficiently allocate massive requests among distributed datacenters. Generally, there are two basic factors that should be considered. First, from an overall system perspective, service provider expects to achieve high bandwidth utilization and load balance. Second, from an individual perspective, end-users have a strong desire for good user experience and fair treatment. To the best of our knowledge, existing approaches solely focus on either the former or the latter. Software-defined networking (SDN) makes it possible to implement global optimization over an entire network consisting of distributed datacenters. Thus, an SDN controller can be used as the central portal to allocate requests, satisfying the needs of both service providers and end-users. To address this problem, we first develop a general formulation of the request allocation problem. Specifically, we guarantee the benefits of both the service providers and end-users, which are modeled by two Nash bargaining games. Then, we further present an efficient request allocation algorithm based on logarithmic smoothing. We theoretically prove that our request allocation algorithm significantly converges to a unique solution. Finally, we conduct a large number of experiments based on real-world traces. These simulation results demonstrate the efficiency of our request allocation algorithm.
KeywordsService Provider Load Balance User Experience Bandwidth Utilization Nash Bargaining Solution
- 2.A. Singh, M. Korupolu and D. Mohapatra. Server-storage Virtualization: Integration and Load Balancing in Data Centers. Proceedings of the 2008 ACM/IEEE conference on Supercomputing. ACM/IEEE, 2008: 1–12.Google Scholar
- 3.R. Buyya, R. Ranjan and R. N. Calheiros. Intercloud: Utility-oriented Federation of Cloud Computing Environments for Scaling of Application Services. Algorithms and Architectures for Parallel Processing. Springer Berlin Heidelberg, 2010: 13–31.Google Scholar
- 6.Z. Liu, M. Lin, A. Wierman, et al. Greening Geographical Load Balancing. Proceedings of the ACM SIGMETRICS Joint International Conference on Measurement and Modeling of Computer Systems. ACM, 2011: 233–244.Google Scholar
- 7.H. Xu and B. Li. Cost Efficient Datacenter Selection for Cloud Services. Proceedings of the 1st IEEE International Conference on Communications in China (ICCC 2012). IEEE, 2012: 51–56.Google Scholar
- 8.K. Boloor, R. Chirkova, Y. Viniotis, and T. Salo. Dynamic Request Allocation and Scheduling for Context Aware Applications Subject to A Percentile Response Time SLA in A Distributed Cloud. Proceedings of the 2nd International Conference on Cloud Computing Technology and Science (CloudCom). IEEE, 2010: 464–472.Google Scholar
- 10.H. Xu and B. Li. Joint Request Mapping and Response Routing for Geo-distributed Cloud Services. Proceedings of the IEEE INFOCOM. IEEE, 2013: 854–862.Google Scholar
- 11.S. Shenker, M. Casado, T. Koponen, et al. The Future of Networking, and the Past of Protocols. Open Networking Summit, Stanford University, USA, October 2011.Google Scholar
- 15.G. Bolch, S. Greiner, H. Meer, et al. Queueing Networks and Markov Chains: Modeling and Performance Evaluation with Computer Science Applications. John Wiley & Sons, 2006.Google Scholar
- 17.K. M. Ng. A Continuous Approach for Solving Nonlinear Optimization Problems with Discrete Variable. Stanford: Department of Management Science and Engineering of Stanford University, 2002.Google Scholar
- 20.Wikipedia Request Traces, http://www.wikibench.eu/.