  As the Internet of Things (IoT) becomes a part of our daily life, there is a
rapid growth in connected devices. A well-established approach based on cloud
computing technologies cannot provide the necessary quality of service in such
an environment, particularly in terms of reducing data latency. Today, fog
computing technology is seen as a novel approach for processing large amounts
of critical and time-sensitive data. This article reviews cloud computing
technology and analyzes the prerequisites for the evolution of this approach
and the emergence of the concept of fog computing. As part of an overview of
the critical features of fog computing, we analyze the frequent confusion of
the concepts of fog and edge computing. We provide an overview of fog computing
technologies: virtualization, containerization, orchestration, scalability,
parallel computing environments, as well as a systematic analysis of the most
popular platforms that support fog computing. As a result of the analysis, we
offer two approaches to classification of the fog computing platforms: by the
principle of openness/closure of components and a three-level classification
based on the provided platform functionality (Deploy-, Platform- and Ecosystem
as a Service).

Distributed, Parallel, and Cluster Computing