A complex network approach to cloud computing

Gonzalo Travieso,Carlos Antonio Ruggiero,Odemir Martinez Bruno,Luciano da Fontoura Costa
DOI: https://doi.org/10.48550/arXiv.1504.02656
2015-04-10
Abstract:Cloud computing has become an important means to speed up computing. One problem influencing heavily the performance of such systems is the choice of nodes as servers responsible for executing the users' tasks. In this article we report how complex networks can be used to model such a problem. More specifically, we investigate the performance of the processing respectively to cloud systems underlain by Erdos-Renyi and Barabasi-Albert topology containing two servers. Cloud networks involving two communities not necessarily of the same size are also considered in our analysis. The performance of each configuration is quantified in terms of two indices: the cost of communication between the user and the nearest server, and the balance of the distribution of tasks between the two servers. Regarding the latter index, the ER topology provides better performance than the BA case for smaller average degrees and opposite behavior for larger average degrees. With respect to the cost, smaller values are found in the BA topology irrespective of the average degree. In addition, we also verified that it is easier to find good servers in the ER than in BA. Surprisingly, balance and cost are not too much affected by the presence of communities. However, for a well-defined community network, we found that it is important to assign each server to a different community so as to achieve better performance.
Physics and Society,Distributed, Parallel, and Cluster Computing,Social and Information Networks
What problem does this paper attempt to address?
The problem that this paper attempts to solve is how to select appropriate nodes as servers to execute users' tasks in a cloud - computing environment, thereby optimizing the performance of the system. Specifically, the paper models this problem through the method of complex networks, mainly focusing on the influence of different network topologies (such as the Erdős - Rényi model and the Barabási - Albert model) on the system performance. The goal of the research is to evaluate the communication cost and task - assignment balance under different configurations in order to determine the optimal server - placement strategy. The paper defines two key indicators to quantify performance: 1. **Average Cost**: \[ c=\frac{2}{N}\sum_{i}d(i, s(i)) \] where \( d(i, j) \) represents the shortest - path length between node \( i \) and node \( j \), and \( s(i) \) is the server closest to client \( i \). The factor 2 is to consider the communication cost of requests and responses. 2. **Balance**: \[ b = \frac{\min_j|A_j|}{\max_j|A_j|} \] where \( A_j \) is the set of clients associated with server \( j \), and \( |A_j| \) is the size of this set. The balance indicator reflects the uniformity of task assignment among servers. Through these indicators, the paper analyzes the influence of the location of server placement on system performance under different network topologies and explores the influence of community structure on performance. The research finds that different network topologies exhibit different characteristics in terms of communication cost and balance, and the optimal configuration depends on the specific structure of the network. For example, in an Erdős - Rényi network, the balance is better with a smaller average degree, while in a Barabási - Albert network, the communication cost is lower. In addition, for a network with an obvious community structure, placing servers in different communities can improve performance.