Cloud computing with its three key facets (i.e., IaaS, PaaS, and SaaS) and its inherent advantages (e.g., elasticity and scalability) still faces several challenges. The distance between the cloud and the end devices might be an issue for latencysensitive applications such as disaster management and content delivery applications. Service Level Agreements (SLAs) may also impose processing at locations where the cloud provider does not have data centers. Fog computing is a novel paradigm to address such issues. It enables provisioning resources and services outside the cloud, at the edge of the network, closer to end devices or eventually, at locations stipulated by SLAs. Fog computing is not a substitute for cloud computing but a powerful complement. It enables processing at the edge while still offering the possibility to interact with the cloud. This article presents a comprehensive survey on fog computing. It critically reviews the state of the art in the light of a concise set of evaluation criteria. We cover both the architectures and the algorithms that make fog systems. Challenges and research directions are also introduced. In addition, the lessons learned are reviewed and the prospects are discussed in terms of the key role fog is likely to play in emerging technologies such as Tactile Internet.
The study we have conducted of existing cloud platforms shows that their operating requires the use of specific and proprietary APIs. This PaaS providers' policy is hampering the interactions between different clouds. If appropriate solutions are not considered, this issue would for instance slow down the democratization of clouds federation and cooperation. In this paper, we propose (i) a unified description model that allows the representation of applications independently of the targeted PaaS for their hosting and (ii) a generic PaaS application provisioning and management API (called COAPS API). Our proposed solution applies the separation of concerns principle by separating the provisioning and the management API from the defined description model. We motivate our solution with real use case scenarios and an implementation to show its feasibility.
Internet of Things (IoT) is expected to enable a myriad of applications by interconnecting objects -such as sensors and robots -over the Internet. IoT applications range from healthcare to autonomous vehicles and include disaster management. Enabling these applications in cloud environments requires the design of appropriate IoT Infrastructure-as-a-Service (IoT IaaS) to ease the provisioning of the IoT objects as cloud services. This paper discusses a case study on search and rescue IoT applications in large-scale disaster scenarios. It proposes an IoT IaaS architecture that virtualizes robots (IaaS for robots) and provides them to the upstream applications as-a-Service. Node-and Network-level robots virtualization are supported. The proposed architecture meets a set of identified requirements, such as the need for a unified description model for heterogeneous robots, publication/discovery mechanism, and federation with other IaaS for robots when needed. A validating proof of concept is built and experiments are made to evaluate its performance. Lessons learned and prospective research directions are discussed.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.