NIST sorts the fog from the cloud and mist
As fog computing has evolved to manage internet of things communications, the National Institute of Standards and Technology offers some definitions and context.
As the internet of things expands, cloud computing is showing its limitations for quickly processing the vast amounts of data associated with a wide variety of connected devices over disparate network. With so-called "fog computing" looking like a better match for IoT applications, the National Institute of Standards and Technology has provided some definitions and context for fog and mist computing that researchers and engineers can use to facilitate meaningful conversations.
According to NIST, fog computing decentralizes applications, management and data analytics into the network itself, minimizing the time between requests and responses by providing both local computing resources for devices and network connectivity to centralized services. "[It] runs applications in a multi-layer architecture that decouples and meshes the hardware and software functions, allowing for dynamic reconfigurations for different applications while performing intelligent computing and transmission services," NIST's March 19 document states.
Fog nodes are the primary features of a fog ecosystem. They can be physical or virtual components that are tightly coupled with smart end-devices and provide data management and communications services that connect edge-layer devices to the computing source. They can operate independently, support hierarchical structures and can easily be managed and programmed.
Although there are many similarities between cloud and fog computing – including as-a-service models and deployment options -- NIST outlines several characteristics of fog computing that make it better suited to IoT applications than a cloud platform:
Contextual location awareness and low latency. Because the nodes are often co-located with edge devices, they are aware of their physical and logical locations, making analysis and response faster than with cloud computing.
Geographical distribution. Fog computing can better handle the steaming services required by geographically distributed IoT devices.
Heterogeneity. Fog computing supports collection and processing of different data form factors acquired through multiple types of networks.
Real-time interactions. Fog computing applications involve real-time interactions rather than batch processing.
Scalability and agility. Fog computing supports elastic compute, resource pooling, data-load changes and variable network conditions.
Wireless access. Fog computing works well with wireless IoT access networks and mobile devices.
NIST further clarifies fog computing by comparing it to mist computing and edge computing. Mist computing is defined as a "lightweight" or sub-fog layer that resides in the network fabric, with its nodes placed closer to edge devices. It uses microcomputers and microcontrollers to feed data into fog computing nodes and potentially into centralized computing services.
Edge applications, by contrast, have fixed logical locations and directly transmit data between a small number of peripheral devices.
Read the full report, "Fog Computing Conceptual Model: Recommendations of the National Institute of Standards and Technology," here.