Abstract
Geo-distributed data-centers in cloud computing are becoming increasingly popular due to their lower end-user perceived latency and increased reliability in distributed applications. The important challenge of resource allocation in cloud management is more pronounced in geo-distributed data-centers compared to traditional data-centers. A geo-distributed cloud manager faces applications whose virtual machines (VMs) are far apart and need to interact with end users, access distributed data and communicate with each other. In such applications, the service level agreement is not met if the communication latency is not bounded. In this paper, we focus on the problem of finding data-centers for hosting VMs while the requested VMs are located in different geo-distributed data-centers and are sensitive to the communication latency. We propose an algorithm to minimize communication latency by taking into account the cloud network topology to be either a tree or that of the Internet. Moreover, our algorithm can utilize user’s locations to find better candidate solutions. In the case of tree topology, we prove that our algorithm finds a solution whose latency is minimum. In addition, we show that our algorithm performs well in the Internet topology, with simulation results indicating that it can reduce the communication latency up to \(92~\%\) compared to existing algorithms.
Similar content being viewed by others
References
Abraham I, Balakrishnan M, Kuhn F, Malkhi D, RamasubramanianV, Talwar K (2007) Reconstructing approximate tree metrics. In: The26th annual ACM symposium on principles of distributed computing, PODC 2007, Portland, 12–15 August 2007, pp 43–52
Aceto G, Botta A, De Donato W, Pescapè A (2013) Cloud monitoring: a survey. Comput Netw 57(9):2093–2115
Agarwal S, Dunagan J, Jain N, Saroiu S, Wolman A (2010) Volley: automated data placement for geo-distributed cloud services. In: The 7thUSENIX symposium on networked systems design and implementation,NSDI 2010, 28–30 April 2010, USENIX Association, San Jose,pp 17–32
Alicherry M, Lakshman TV (2012) Network aware resource allocation indistributed clouds. In: The IEEE INFOCOM 2012, Orlando, 25–30 March 2012, pp 963–971
Armbrust M, Fox A, Griffith R, Joseph AD, Katz RH, Konwinski A, LeeG, Patterson DA, Rabkin A, Stoica I, Zaharia M (2010) A view of cloudcomputing. Commun ACM 53(4):50–58
Beloglazov A, Abawajy JH, Buyya R (2012) Energy-aware resource allocation heuristics for efficient management of data centers for cloud computing. Futur Gener Comput Syst 28(5):755–768
Calero JMA, Aguado JG (2015) Comparative analysis of architectures for monitoring cloud computing infrastructures. Futur Gener Comput Syst 47:16–30
Chen K, Xu Y, Xi K, Chao HJ (2013) Intelligent virtual machine placement for cost efficiency in geo-distributed cloud systems. In: The IEEE international conference on communications, ICC 2013, IEEE, Budapest, 9–13 June 2013, pp 3498–3503
Chunlin L, Layuan L (2014) Multi-layer resource management in cloud computing. J Netw Syst Manag 22(1):100–120
Data center global expansion trend (2012) http://www.datacenterknowledge.com/archives/2012/05/15/google-data-center-faq/. Accessed 16 Oct 2015
Dhingra A, Paul S (2014) Green cloud: heuristic based BFO technique to optimize resource allocation. Indian J Sci Technol 7(5):685–691
Endo PT, de Almeida Palhares AV, Pereira NCVN, Gonçalves GE, Sadok D, Kelner J, Melander B, Mångs JE (2011) Resource allocation for distributed cloud: concepts and research challenges. IEEE Netw 25(4):42–46
Eriksson B, Crovella M (2013) Understanding geolocation accuracy using network geometry. In: The IEEE INFOCOM 2013, Turin, 14–19 April 2013, pp 75–79
Eriksson B, Dasarathy G, Barford P, Nowak R (2012) Efficient network tomography for internet topology discovery. IEEE/ACM Trans Netw 20(3):931–943
Gonçalves GE, Santos MA, Charamba G, Endo PT, Sadok D, Kelner J, Melander B, Mångs J (2012) D-CRAS: distributed cloud resource allocation system. In: The 2012 IEEE network operations and management symposium, IEEE, Maui, 16–20 April 2012, pp 659–662
Greenberg A, Hamilton J, Maltz DA, Patel P (2008) The cost of a cloud: research problems in data center networks. ACM SIGCOMM Comput Commun Rev 39(1):68–73
Gupta A, Kalé LV, Milojicic D, Faraboschi P, Balle SM (2013) HPC-aware VM placement in infrastructure clouds. In: 2013 IEEE international conference on cloud engineering (IC2E). IEEE, New York, pp 11–20
Han Y, Chan J, Alpcan T, Leckie C (2014) Virtual machine allocation policies against co-resident attacks in cloud computing. In: The IEEE international conference on communications, ICC 2014, Sydney, 10–14 June 2014, pp 786–792
Jennings B, Stadler R (2015) Resource management in clouds: survey and research challenges. J Netw Syst Manag 23(3):567–619. doi:10.1007/s10922-014-9307-7
Jiao L, Li J, Xu T, Fu X (2012) Cost optimization for online social networks on geo-distributed clouds. In: Proceedings of the 20th IEEE international conference on network protocols, ICNP 2012, IEEE, Austin, 30 October–2 November 2012, pp 1–10
Kesavan M, Ahmad I, Krieger O, Soundararajan R, Gavrilovska A, Schwan K (2013) Practical compute capacity management for virtualized datacenters. IEEE Trans Cloud Comput 1(1):1–14
Kuo J, Yang H, Tsai M (2014) Optimal approximation algorithm of virtual machine placement for data latency minimization in cloud systems. In: The IEEE INFOCOM 2014, Toronto, 27 April–2 May 2014, pp 1303–1311
Li J, Li D, Zheng J, Quan Y (2014) Location-aware multi-user resource allocation in distributed clouds. In: Wu J, Chen H, Wang X (eds) Advanced computer architecture. Communications in computer and information science, vol 451. Springer, Berlin, pp 152–162
Mell P, Grance T (2011) The nist definition of cloud computing. In: Technical report 800-145, National Institute of Standards and Technology (NIST), Gaithersburg. http://csrc.nist.gov/publications/nistpubs/800-145/SP800-145.pdf. Accessed 16 Oct 2015
Meng X, Pappas V, Zhang L (2010) Improving the scalability of data center networks with traffic-aware virtual machine placement. In: The IEEE INFOCOM 2010, San Diego, 15–19 March 2010, pp 1154–1162
de Oliveira F, Ledoux T, Sharrock R (2013) A framework for the coordination of multiple autonomic managers in cloud environments. In: 2013 IEEE 7th international conference on self-adaptive and self-organizing systems (SASO), pp 179–188
Papagianni CA, Leivadeas A, Papavassiliou S, Maglaris V, Cervello-Pastor C, Monje Á (2013) On the optimal allocation of virtual resources in cloud computing networks. IEEE Trans Comput 62(6):1060–1071
Ramasubramanian V, Malkhi D, Kuhn F, Balakrishnan M, Gupta A, Akella A (2009) On the treeness of internet latency and bandwidth. In: The 11th international joint conference on measurement and modeling of computer systems. ACM, Seattle, WA, pp 61–72
Ruan L, Peng J, Xiao L, Zhu M (2013) Distributed virtual machine monitor for distributed cloud computing nodes integration. In: Park J, Arabnia H, Kim C, Shi W, Gil JM (eds) Grid and pervasive computing. Lecture notes in computer science, vol 7861. Springer, Berlin, pp 23–31
Rygielski P, Kounev S (2013) Network virtualization for QoS-aware resource management in cloud data centers: a survey. Praxis Informationsverarbeitung Kommun 36(1):55–64
Valancius V, Laoutaris N, Massoulié L, Diot C, Rodriguez P (2009) Greening the internet with nano data centers. In: The 2009 ACM conference on emerging networking experiments and technology, CoNEXT 2009, Rome, 1–4 December 2009, pp 37–48
Wong B, Slivkins A, Sirer EG (2005) Meridian: a lightweight network location service without virtual coordinates. In: The ACM SIGCOMM 2005 conference on applications, technologies, architectures, and protocols for computer communications, Philadelphia, 22–26 August 2005. ACM, New York, pp 85–96
Yao Y, Cao J, Li M (2013) Network and parallel computing. In: Lecture notes in computer science, vol 8147. Springer, Berlin, pp 71–82
Yi X, Liu F, Liu J, Jin H (2014) Building a network highway for big data: architecture and challenges. IEEE Netw 28(4):5–13
Zhang Q, Cheng L, Boutaba R (2010) Cloud computing: state-of-the-art and research challenges. J Internet Serv Appl 1(1):7–18
Zhu J, Kang Y, Zheng Z, Lyu MR (2012) WSP: a network coordinate based web service positioning framework for response time prediction. In: The 2012 IEEE 19th international conference on web services, IEEE, Honolulu, 24–29 June 2012, pp 90–97
Author information
Authors and Affiliations
Corresponding author
Appendix
Appendix
Proof of Lemma 1:
Proof
Let Findset(u, v) return the set \(S \subset \mathcal {D}\). First, we prove that the latency of each two members of the set S is less than or equal to ltnc(u, v). Second, we prove that the set S is maximal.
Bound on the latency To prove a bound on the latency of the set S, it is enough to verify the latency between two optional leaves of the set S. It is clear from the definition of the set \(\mathcal {D}\) that all members of the set S are leaves of a given tree. Since the latency and distance between two nodes are equal in a tree, it suffices to verify the distance, rather than their latency, between two arbitrary nodes a and b of the set S.
Let us consider the nodes a, b, u, \(v \in S\) and the paths between them. The tree paths a–u, a–v and u–v have at least a common node. Because if these three paths do not meet at a common node, they build a cycle in the graph and contradict the assumption that the given graph is a tree. In the same way, three paths b–u, b–v and u–v have at least a common node. Let \(t_1\) be a common node on paths a–u, a–v and u–v and \(t_2\) be a common node on paths b–u, b–v and u–v.
Since there is a unique path between any two distinct nodes on the tree, the path a–u can split in two disjoint paths a–\(t_1\) and \(t_1\)–u such that the following equation on their distances is obtained:
Also, we have the following equations for other mentioned paths:
In addition, we have the following equations from the comparisons made in the FindSet function:
By knowing ltnc(i, j) equals to ltnc(j, i) and by substituting Eqs. (1) and (2) into Eq. (5), the following equation is obtained:
Again, by substituting Eqs. (3) and (4) in Eq. (7), the following equation is obtained:
We assume in the path from u to v, first we visit \(t_1\) and second we visit \(t_2\). If it is vice versa, it is enough to rewrite the proof by changing the notations.
The following equation is established by considering the unique path from u to v in the tree:
Adding up Eqs. (9)–(11) leads to
Following equation is derived for latencies between the nodes \(a\,,b\,,t_1\) and \(t_2\):
Finally, ltnc\( (v,u) \ge \mathrm{ltnc}(a,b)\) is concluded from Eqs. (12) and (13). Because we assume that a and b are two arbitrary nodes of the set S, we can conclude that the distance between any two nodes of the set S is less than or equal to ltnc(u, v). Consequently, ltnc(S) equals ltnc(u, v).
Maximality Let the node d be a member of the set \(\mathcal {D}\), which is not in the set S (\(d \notin S\,\) and \( d \in \mathcal {D}\)). According to the definition of the FindSet function, at least one of the inequalities ltnc\((d,u) > \mathrm{ltnc}(u,v)\) or ltnc\((d,v) > \mathrm{ltnc}(u,v)\) is satisfied. Therefore, if the node d is added to the set S, the latency of the set S is increased and is not equal to ltnc(u, v) anymore. Since each optional node \(d\notin S\,\) cannot be added to the set S, it is a maximal set.
Proof of Lemma 2:
Proof
Let the set S be the output of the FindSet(u, v) function. Suppose on the contrary that \(n_1\) and \(n_2\) are two members of the set S such that
Based on the comparisons were made in FindSet(u, v):
In addition, the triangle inequality between latencies states that
Adding up Eqs. (15), (16) and (17) leads to
Overall, the output latency of FindSet(u, v) cannot be more than \(2 \times \mathrm{ltnc}(u,v)\) because Eq. (18) contradicts the Eq. (14).
Rights and permissions
About this article
Cite this article
Malekimajd, M., Movaghar, A. & Hosseinimotlagh, S. Minimizing latency in geo-distributed clouds. J Supercomput 71, 4423–4445 (2015). https://doi.org/10.1007/s11227-015-1538-1
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11227-015-1538-1