Container Migration in the Fog: A Performance Evaluation †
<p>Container migration use cases: (<b>a</b>) mobility support; (<b>b</b>) platform management/orchestration.</p> "> Figure 2
<p>Hardware virtualisation (<b>a</b>) vs. containerisation (<b>b</b>).</p> "> Figure 3
<p>Cold migration.</p> "> Figure 4
<p>Pre-copy migration.</p> "> Figure 5
<p>Post-copy migration.</p> "> Figure 6
<p>Hybrid migration.</p> "> Figure 7
<p>Total migration times (s) with their components in evidence under: (<b>a</b>) configuration A; (<b>b</b>) configuration B; (<b>c</b>) configuration C; and (<b>d</b>) configuration D.</p> "> Figure 8
<p>Downtimes (s) with their components in evidence under: (<b>a</b>) configuration A; (<b>b</b>) configuration B; (<b>c</b>) configuration C; and (<b>d</b>) configuration D.</p> "> Figure 9
<p>Dump times (s) under: (<b>a</b>) configuration A; (<b>b</b>) configuration B; (<b>c</b>) configuration C; and (<b>d</b>) configuration D.</p> "> Figure 10
<p>Resume times (s) under: (<b>a</b>) configuration A; (<b>b</b>) configuration B; (<b>c</b>) configuration C; and (<b>d</b>) configuration D.</p> "> Figure 11
<p>Amounts of transferred data (MB) with their components in evidence under: (<b>a</b>) configuration A; (<b>b</b>) configuration B; (<b>c</b>) configuration C; and (<b>d</b>) configuration D.</p> ">
Abstract
:1. Introduction
- Fog environments are characterised by a high heterogeneity of nodes in terms of hardware capabilities, architectures, and operating systems. Hence, there is the need for a virtualisation technology that is generic and lightweight enough to run on as many different types of fog nodes as possible;
- Fog nodes are interconnected through a wide area network (WAN) and therefore experience higher latencies and lower throughputs than those present within a cloud data centre. Based on this, it is beneficial during migration to transmit the lowest possible amount of data;
- In the cloud, the total migration time is only a secondary consideration. In the fog, instead, limiting it may be of paramount importance as there are situations in which protracted total migration times may lead to overall degraded performances [14];
- Most fog services, especially those deployed and running at the network edge, typically perform transient data analysis and time-critical control and are thus not supposed to write to any persistent memory (e.g., the disk), unlike cloud services. As a consequence, it is in general not necessary to transfer any persistent data during migration; what typically happens is that only the runtime (i.e., volatile) state is migrated and applied at destination to an available base service image representing the default disk state.
2. Motivation and Use Cases
3. Virtualisation in the Fog
3.1. Virtualisation Approaches
3.2. Containerisations
4. Container Migration Techniques
4.1. Cold Migration
4.2. Live Migration
4.2.1. Pre-Copy Migration
4.2.2. Post-Copy Migration
4.2.3. Hybrid Migration
5. Performance Evaluation
5.1. Experiment Setup
- A—this configuration presents a page dirtying rate and a throughput of different orders of magnitude, with the throughput higher than the page dirtying rate. However, given the throughput, the size of the runtime state leads to a prolonged pre-copy phase and thus gives the service plenty of time to modify memory pages. Therefore, this configuration is mainly aimed at evaluating the effects of a considerable runtime state size on the migration techniques;
- B—this configuration resembles configuration A in terms of runtime state size but features a page dirtying rate of the same order of magnitude of the available throughput. As such, this configuration is mainly aimed at investigating the effects of a high page dirtying rate on the migration techniques;
- C—this configuration shows a runtime state size that, considering the throughput, causes a shortened pre-copy phase and hence gives the service little time to modify memory pages. Besides, the page dirtying rate and the throughput are of different orders of magnitude, with the throughput higher than the page dirtying rate. Thus, the main objective of this configuration is to assess the migration techniques when both the factors are low, given the available throughput;
- D—this configuration resembles configuration C. The only difference is that the page dirtying rate in C and in D are of different orders of magnitude, with the former lower than the latter. However, the page dirtying rate in D is still lower than the throughput and of a different order of magnitude. The main purpose of this configuration is to estimate whether there are evident effects on the migration techniques when the page dirtying rate increases, though still being considerably lower than the throughput.
- Pre-dump time—taken in the pre-copy phase to dump the whole state on the source node while the service is still running;
- Pre-dump transfer time—needed in the pre-copy phase to transfer the generated pre-dump from the source to the destination node. It is not to be confused with the pre-dump time;
- Dump time—necessary in the dump phase to stop the container and dump its (modified) state on the source node. As described in Table 1, each migration technique presents a different concept of state dump;
- Dump transfer time—needed in the dump phase to transfer the generated dump from the source to the destination node. It is not to be confused with the dump time;
- Resume time—taken to restore the container at destination based on the state that was transferred up to that moment;
- Faulted pages transfer time—required in the last phase to transfer the faulted pages from the source to the destination node. Table 1 presents the different meanings that the term “faulted pages” assumes for post-copy and hybrid migrations;
- Pre-dump size—transferred during the pre-dump transfer time;
- Dump size—sent from the source to the destination node during the dump transfer time;
- Faulted pages size—transferred during the faulted pages transfer time.
5.2. Results
5.2.1. Total Migration Times
5.2.2. Downtimes
5.2.3. Transferred Data
5.2.4. Lessons Learnt
- Cold migration is to be avoided under all conditions because it always causes downtimes that are considerably higher than those of the other techniques;
- In situations where the throughput between nodes and the page dirtying rate are of different orders of magnitude, with the former higher than the latter, and the pre-copy phase does not have a prolonged duration (e.g., under configurations C and D), pre-copy migration may be the best option. Indeed, it has similar performances to those of post-copy and hybrid migrations, but it is not afflicted by the issues characterising these other two techniques (see Section 4.2.2);
- In situations where the page dirtying rate is of the same order of magnitude of the throughput and/or the pre-copy phase has a prolonged duration (e.g., under configurations A and B), pre-copy is to be avoided mainly because of rather long downtimes. Post-copy could be the best alternative, considering that it provides downtimes comparable to those of hybrid migration but performs better in terms of total migration time and amount of transferred data. It is worth noting, though, that post-copy presents a couple of non-negligible issues, which are explained in Section 4.2.2.
6. Conclusions
Author Contributions
Funding
Conflicts of Interest
References
- Atzori, L.; Iera, A.; Morabito, G. The Internet of Things: A Survey. Comput. Netw. 2010, 54, 2787–2805. [Google Scholar] [CrossRef]
- Al-Fuqaha, A.; Guizani, M.; Mohammadi, M.; Aledhari, M.; Ayyash, M. Internet of Things: A Survey on Enabling Technologies, Protocols, and Applications. IEEE Commun. Surv. Tutor. 2015, 17, 2347–2376. [Google Scholar] [CrossRef]
- Manyika, J.; Chui, M.; Bisson, P.; Woetzel, J.; Dobbs, R.; Bughin, J.; Aharon, D. The Internet of Things: Mapping the Value Beyond the Hype; Technical Report; McKinsey Global Institute: New York, NY, USA, 2015; Available online: http://www.mckinsey.com/business-functions/digital-mckinsey/our-insights/the-internet-of-things-the-value-of-digitizing-the-physical-world (accessed on 20 March 2019).
- Delicato, F.C.; Pires, P.F.; Batista, T. The Resource Management Challenge in IoT. In Resource Management for Internet of Things; Springer International Publishing: Cham, Switzerland, 2017; pp. 7–18. [Google Scholar] [CrossRef]
- Chen, M.; Mao, S.; Liu, Y. Big Data: A Survey. Mob. Netw. Appl. 2014, 19, 171–209. [Google Scholar] [CrossRef]
- Bonomi, F.; Milito, R.; Zhu, J.; Addepalli, S. Fog Computing and its Role in the Internet of Things. In Proceedings of the 1st Workshop on Mobile Cloud Computing (MCC), Helsinki, Finland, 17 August 2012; pp. 13–16. [Google Scholar] [CrossRef]
- Puliafito, C.; Mingozzi, E.; Longo, F.; Puliafito, A.; Rana, O. Fog Computing for the Internet of Things: A Survey. ACM Trans. Internet Tech. 2019, 19, 2. [Google Scholar] [CrossRef]
- Satyanarayanan, M.; Lewis, G.; Morris, E.; Simanta, S.; Boleng, J.; Ha, K. The Role of Cloudlets in Hostile Environments. IEEE Pervasive Comput. 2013, 12, 40–49. [Google Scholar] [CrossRef]
- Satyanarayanan, M. The Emergence of Edge Computing. Computer 2017, 50, 30–39. [Google Scholar] [CrossRef]
- Shi, W.; Dustdar, S. The Promise of Edge Computing. Computer 2016, 49, 78–81. [Google Scholar] [CrossRef]
- Cisco. Fog Computing and the Internet of Things: Extend the Cloud to Where the Things Are. Technical Report. 2015. Available online: https://www.cisco.com/c/dam/en_us/solutions/trends/iot/docs/computing-overview.pdf (accessed on 14 January 2019).
- Zhang, F.; Liu, G.; Fu, X.; Yahyapour, R. A Survey on Virtual Machine Migration: Challenges, Techniques, and Open Issues. IEEE Commun. Surv. Tutor. 2018, 20, 1206–1243. [Google Scholar] [CrossRef]
- Choudhary, A.; Govil, M.C.; Singh, G.; Awasthi, L.K.; Pilli, E.S.; Kapil, D. A Critical Survey of Live Virtual Machine Migration Techniques. J. Cloud Comput. 2017, 6, 1–41. [Google Scholar] [CrossRef]
- Ha, K.; Abe, Y.; Eiszler, T.; Chen, Z.; Hu, W.; Amos, B.; Upadhyaya, R.; Pillai, P.; Satyanarayanan, M. You Can Teach Elephants to Dance: Agile VM Handoff for Edge Computing. In Proceedings of the ACM/IEEE 2nd Symposium on Edge Computing (SEC), San Jose, CA, USA, 28 July 2017; pp. 1–14. [Google Scholar] [CrossRef]
- Morabito, R.; Cozzolino, V.; Ding, A.Y.; Beijar, N.; Ott, J. Consolidate IoT Edge Computing with Lightweight Virtualization. IEEE Netw. 2018, 32, 102–111. [Google Scholar] [CrossRef]
- Wang, N.; Varghese, B.; Matthaiou, M.; Nikolopoulos, D.S. ENORM: A Framework For Edge NOde Resource Management. IEEE Trans. Serv. Comput. 2018. [Google Scholar] [CrossRef]
- Tang, Z.; Zhou, X.; Zhang, F.; Jia, W.; Zhao, W. Migration Modeling and Learning Algorithms for Containers in Fog Computing. IEEE Trans. Serv. Comput. 2018. [Google Scholar] [CrossRef]
- Ma, L.; Yi, S.; Carter, N.; Li, Q. Efficient Live Migration of Edge Services Leveraging Container Layered Storage. IEEE Trans. Mob. Comput. 2018. [Google Scholar] [CrossRef]
- Puliafito, C.; Mingozzi, E.; Vallati, C.; Longo, F.; Merlino, G. Companion Fog Computing: Supporting Things Mobility Through Container Migration at the Edge. In Proceedings of the IEEE 4th International Conference on Smart Computing (SMARTCOMP), Taormina, Italy, 18–20 June 2018; pp. 97–105. [Google Scholar] [CrossRef]
- Nadgowda, S.; Suneja, S.; Bila, N.; Isci, C. Voyager: Complete Container State Migration. In Proceedings of the IEEE 37th International Conference on Distributed Computing Systems (ICDCS), Atlanta, GA, USA, 5–8 June 2017; pp. 2137–2142. [Google Scholar] [CrossRef]
- Puliafito, C.; Mingozzi, E.; Vallati, C.; Longo, F.; Merlino, G. Virtualization and Migration at the Network Edge: An Overview. In Proceedings of the IEEE 4th International Conference on Smart Computing (SMARTCOMP), Taormina, Italy, 18–20 June 2018; pp. 368–374. [Google Scholar] [CrossRef]
- Kakakhel, S.R.U.; Mukkala, L.; Westerlund, T.; Plosila, J. Virtualization at the Network Edge: A Technology Perspective. In Proceedings of the IEEE 3rd International Conference on Fog and Mobile Edge Computing (FMEC), Barcelona, Spain, 23–26 April 2018; pp. 87–92. [Google Scholar] [CrossRef]
- Puliafito, C.; Mingozzi, E.; Anastasi, G. Fog Computing for the Internet of Mobile Things: Issues and Challenges. In Proceedings of the IEEE 3rd International Conference on Smart Computing (SMARTCOMP), Hong Kong, China, 29–31 May 2017; pp. 1–6. [Google Scholar] [CrossRef]
- Jiang, Y.; Huang, Z.; Tsang, D.H.K. Challenges and Solutions in Fog Computing Orchestration. IEEE Netw. 2018, 32, 122–129. [Google Scholar] [CrossRef]
- Zhu, C.; Tao, J.; Pastor, G.; Xiao, Y.; Ji, Y.; Zhou, Q.; Li, Y.; Ylä-Jääski, A. Folo: Latency and Quality Optimized Task Allocation in Vehicular Fog Computing. IEEE Internet Things J. 2018. [Google Scholar] [CrossRef]
- Fernández-Caramés, T.M.; Fraga-Lamas, P.; Suárez-Albela, M.; Vilar-Montesinos, M. A Fog Computing and Cloudlet Based Augmented Reality System for the Industry 4.0 Shipyard. Sensors 2018, 18, 1798. [Google Scholar] [CrossRef]
- Du, J.; Zhao, L.; Feng, J.; Chu, X. Computation Offloading and Resource Allocation in Mixed Fog/Cloud Computing Systems With Min-Max Fairness Guarantee. IEEE Trans. Commun. 2018, 66, 1594–1608. [Google Scholar] [CrossRef] [Green Version]
- Puthal, D.; Obaidat, M.S.; Nanda, P.; Prasad, M.; Mohanty, S.P.; Zomaya, A.Y. Secure and Sustainable Load Balancing of Edge Data Centers in Fog Computing. IEEE Commun. Mag. 2018, 56, 60–65. [Google Scholar] [CrossRef]
- Nan, Y.; Li, W.; Bao, W.; Delicato, F.C.; Pires, P.F.; Dou, Y.; Zomaya, A.Y. Adaptive Energy-Aware Computation Offloading for Cloud of Things Systems. IEEE Access 2017, 5, 23947–23957. [Google Scholar] [CrossRef]
- Dastjerdi, A.V.; Gupta, H.; Calheiros, R.N.; Ghosh, S.K.; Buyya, R. Fog Computing: Principles, Architectures, and Applications. In Internet of Things; Elsevier: Amsterdam, The Netherlands, 2016; pp. 61–75. [Google Scholar]
- Habib, I. Virtualization with KVM. Linux J. 2008, 2008, 8. Available online: http://dl.acm.org/citation.cfm?id=1344209.1344217 (accessed on 15 January 2019).
- Asvija, B.; Eswari, R.; Bijoy, M.B. Security in Hardware Assisted Virtualization for Cloud Computing—State of the Art Issues and Challenges. Comput. Netw. 2019, 151, 68–92. [Google Scholar] [CrossRef]
- Desai, A.; Oza, R.; Sharma, P.; Patel, B. Hypervisor: A Survey on Concepts and Taxonomy. Int. J. Innov. Technol. Explor. Eng. 2013, 2, 222–225. [Google Scholar]
- Soltesz, S.; Pötzl, H.; Fiuczynski, M.E.; Bavier, A.; Peterson, L. Container-based Operating System Virtualization: A Scalable, High-performance Alternative to Hypervisors. ACM SIGOPS Oper. Syst. Rev. 2007, 41, 275–287. [Google Scholar] [CrossRef]
- Morabito, R. Virtualization on Internet of Things Edge Devices with Container Technologies: A Performance Evaluation. IEEE Access 2017, 5, 8835–8850. [Google Scholar] [CrossRef]
- Bellavista, P.; Zanni, A. Feasibility of Fog Computing Deployment Based on Docker Containerization over RaspberryPi. In Proceedings of the 18th International Conference on Distributed Computing and Networking (ICDCN), Hyderabad, India, 5–7 January 2017; pp. 1–10. [Google Scholar] [CrossRef]
- Ismail, B.I.; Goortani, E.M.; Ab Karim, M.B.; Tat, W.M.; Setapa, S.; Luke, J.Y.; Hoe, O.H. Evaluation of Docker as Edge Computing Platform. In Proceedings of the IEEE Conference on Open Systems (ICOS), Melaka, Malaysia, 24–26 August 2015; pp. 130–135. [Google Scholar] [CrossRef]
- Kozhirbayev, Z.; Sinnott, R.O. A Performance Comparison of Container-based Technologies for the Cloud. Future Gen. Comput. Syst. 2017, 68, 175–182. [Google Scholar] [CrossRef]
- Biederman, E.W.; Networx, L. Multiple Instances of the Global Linux Namespaces. In Proceedings of the Linux Symposium, Ottawa, ON, Canada, 19–22 July 2006; Volume 1, pp. 101–112. [Google Scholar]
- Ali Babar, M.; Ramsey, B. Understanding Container Isolation Mechanisms for Building Security-Sensitive Private Cloud; Technical Report. 2017. Available online: https://www.researchgate.net/publication/316602321_Understanding_Container_Isolation_Mechanisms_for_Building_Security-Sensitive_Private_Cloud (accessed on 25 March 2019).
Technique | Pre-Dump | Dump | Faulted Pages |
---|---|---|---|
Cold | Memory pages and execution state | ||
Pre-copy | Memory pages and execution state | Dirty pages and changes in execution state | |
Post-copy | Execution state | Memory pages | |
Hybrid | Memory pages and execution state | Changes in execution state | Dirty pages |
Use Case | Throughput (Mbps) | RTT (ms) |
---|---|---|
Mobility | ||
Management/Orchestration |
Throughput and RTT | Page Dirtying Rate | Configuration |
---|---|---|
Mobility | Low | A |
Mobility | High | B |
Management/Orchestration | Low | C |
Management/Orchestration | High | D |
Technique | Total Migration Time | Downtime | Transferred Data |
---|---|---|---|
Cold | Always the lowest. | Always the highest. Coincides with the total migration time. | Always the least. Comparable to those of post-copy. |
Pre-copy | Comparable or lower than that of post- copy when page dirtying rate and throughput are of different orders of magnitude, with page dirtying rate lower than throughput. Higher than that of post-copy when page dirtying rate is of the same order of magnitude of throughput. | Higher than those of post-copy and hybrid when page dirtying rate is of the same order of magnitude of throughput and/or pre-copy phase has a prolonged duration. | Much more than cold or post-copy when page dirtying rate is of the same order of magnitude of throughput. |
Post-copy | Higher than that of cold, especially with a very high RTT between nodes. Comparable or higher than that of pre- copy when page dirtying rate and throughput are of different orders of magnitude, with page dirtying rate lower than throughput. Lower than that of pre-copy when page dirtying rate is of the same order of magnitude of throughput. | Always low and comparable to that of hybrid. | Always the least. Comparable to those of cold. |
Hybrid | Always the highest. | Always low and comparable to that of post-copy. | Much more than cold or post-copy when page dirtying rate is of the same order of magnitude of throughput. |
© 2019 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/).
Share and Cite
Puliafito, C.; Vallati, C.; Mingozzi, E.; Merlino, G.; Longo, F.; Puliafito, A. Container Migration in the Fog: A Performance Evaluation. Sensors 2019, 19, 1488. https://doi.org/10.3390/s19071488
Puliafito C, Vallati C, Mingozzi E, Merlino G, Longo F, Puliafito A. Container Migration in the Fog: A Performance Evaluation. Sensors. 2019; 19(7):1488. https://doi.org/10.3390/s19071488
Chicago/Turabian StylePuliafito, Carlo, Carlo Vallati, Enzo Mingozzi, Giovanni Merlino, Francesco Longo, and Antonio Puliafito. 2019. "Container Migration in the Fog: A Performance Evaluation" Sensors 19, no. 7: 1488. https://doi.org/10.3390/s19071488
APA StylePuliafito, C., Vallati, C., Mingozzi, E., Merlino, G., Longo, F., & Puliafito, A. (2019). Container Migration in the Fog: A Performance Evaluation. Sensors, 19(7), 1488. https://doi.org/10.3390/s19071488