Dynamic Fog Computing
The emerging Internet of Things (IoT) systems enhance various mobile ubiquitous applications such as augmented reality, environmental analytics, etc. However, the common cloud-centric IoT systems face limitations on the agility needed for real-time applications. This motivates the Fog computing architecture, where IoT systems distribute their processes to the computational resources at the edge networks near data sources and end-users. Although fog computing is a promising solution, it also raises a challenge in mobility support for mobile ubiquitous applications. Lack of proper mobility support will increase the latency due to various factors such as package drop, re-assigning tasks to fog servers, etc. To address the challenge, this chapter proposes a dynamic and proactive fog computing approach, which improves the task distribution process in fog-assisted mobile ubiquitous applications and optimizes the task allocation based on runtime context information. The authors have implemented and validated a proof-of-concept prototype and the chapter discusses the findings.