Both cloud computing and fog computing provide storage, applications, and data to end-users. However, fog computing has a closer proximity to end-users and bigger geographical distribution.23
Cloud Computing – the practice of using a network of remote servers hosted on the Internet to store, manage, and process data, rather than a local server or a personal computer.24 Cloud Computing can be a heavyweight and dense form of computing power.citation needed
Fog computing – a term created by Cisco that refers to extending cloud computing to the edge of an enterprise's network. Also known as Edge Computing or fogging, fog computing facilitates the operation of compute, storage, and networking services between end devices and cloud computing data centers. While edge computing is typically referred to the location where services are instantiated, fog computing implies distribution of the communication, computation, and storage resources and services on or close to devices and systems in the control of end-users.2526 Fog computing is a medium weight and intermediate level of computing power27. Rather than a substitute, fog computing often serves as a complement to cloud computing.28
Mist computing – a lightweight and rudimentarycitation needed form of computing power that resides directly within the network fabric at the extreme edge of the network fabric using microcomputers and microcontrollers to feed into Fog Computing nodes and potentially onward towards the Cloud Computing platforms.29
National Institute of Standards and Technology in March, 2018 released a definition of the Fog computing adopting much of Cisco's commercial terminology as NIST Special Publication 500-325, Fog Computing Conceptual Model that defines Fog computing as an horizontal, physical or virtual resource paradigm that resides between smart end-devices and traditional cloud computing or data center. This paradigm supports vertically-isolated, latency-sensitive applications by providing ubiquitous, scalable, layered, federated, and distributed computing, storage, and network connectivity. Thus Fog Computing is most distinguished by distance from the Edge. Fog Computing is physically and functionally intermediate between Edge nodes and centralized Clouds. Much of the terminology is not defined including key architectural terms like "smart" and the distinction between Fog Computing from Edge Computing does not have generally agreed acceptance.
Fog computing is a term for an alternative to cloud computing that puts some kinds of transactions and resources at the edge of a network, rather than establishing channels for cloud storage and utilization. Proponents of fog computing argue that it can reduce the need for bandwidth by not sending every bit of information over cloud channels, and instead aggregating it at certain access points, such as routers. This allows for a more strategic compilation of data that may not be needed in cloud storage right away, if at all. By using this kind of distributed strategy, project managers can lower costs and improve efficiencies.