Optimal Placement of Micro-services Chains in a Fog Infrastructure


Cited 0|Views7
No score
Fog computing emerged as a novel approach to deliver micro-services that support innovative applications. This paradigm is consistent with the modern approach to application development, that leverages the composition of small micro-services that can be combined to create value-added applications. These applications typically require the access from distributed data sources, such as sensors located in multiple geographic locations or mobile users. In such scenarios, the traditional cloud approach is not suitable because latency constraints may not be compatible with having time-critical computations occurring on a far away data-center; furthermore, the amount of data to exchange may cause high costs imposed by the cloud pricing model. A layer of fog nodes close to application consumers can host pre-processing and data aggregation tasks that can reduce the response time of latency-sensitive elaboration as well as the traffic to the cloud data-centers. However, the problem of smartly placing micro-services over fog nodes that can fulfill Service Level Agreements is far more complex than in the more controlled scenario of cloud computing, due to the heterogeneity of fog infrastructures in terms of performance of both the computing nodes and inter-node connectivity. In this paper, we tackle such problem proposing a mathematical model for the performance of complex applications deployed on a fog infrastructure. We adapt the proposed model to be used in a genetic algorithm to achieve optimized deployment decisions about the placement of micro-services chains. Our experiments prove the viability of our proposal with respect to meeting the SLA requirements in a wide set of operating conditions.
Translated text
Key words
Micro-services Placement, Fog Computing, Genetic Algorithms, Performance Evaluation
AI Read Science
Must-Reading Tree
Generate MRT to find the research sequence of this paper
Chat Paper
Summary is being generated by the instructions you defined