Fog computing is a decentralized computing infrastructure in which data, compute, storage and applications are located somewhere between the data source and the cloud. Like edge computing, fog computing brings the advantages and power of the cloud closer to where data is created and acted upon. Many people use the terms fog computing and edge computing interchangeably, because both involve bringing intelligence and processing closer to where the data is created. This is often done to improve efficiency, though it may also be used for security and compliance reasons.
The metaphor fog comes from the meteorological term for a cloud close to the ground, just as fog concentrates on the edge of the network. The term is often associated with Cisco; the company's product line manager, Ginny Nichols, is believed to have coined term. "Cisco Fog Computing" is a registered name; fog computing is open to the community at large.
Fog computing vs. edge computing
According to the Fog Consortium started by Cisco, the key difference between edge and fog computing is where the intelligence and compute power is placed. In a strictly foggy environment, intelligence is at the local area network (LAN) and data is transmitted from endpoints to a fog gateway, where it is then transmitted to sources for processing and return transmission.
In edge computing, intelligence and power can be located in either the endpoint or a gateway. Proponents of edge computing praise its reduction of points of failure, because each device independently operates and determines which data to store locally and which data to send to a gateway or the cloud for further analysis. Proponents of fog computing over edge computing say it is more scalable and gives a better big-picture view of the network as multiple data points feed data into it.
It should be noted, however, that some network engineers consider fog computing to be simply a Cisco brand for one approach to edge computing.
How fog computing works
It is important to note that fog networking complements -- not replaces -- cloud computing; fogging allows for short-term analytics at the edge, and the cloud performs resource-intensive, longer-term analytics. While edge devices and sensors are where data is generated and collected, they sometimes don't have the compute and storage resources to perform advanced analytics and machine-learning tasks. Though cloud servers have the power to do these, they are often too far away to process the data and respond in a timely manner. In addition, having all endpoints connecting to and sending raw data to the cloud over the internet can have privacy, security and legal implications, especially when dealing with sensitive data subject to regulations in different countries. Popular fog computing applications include smart grid, smart city, smart buildings, vehicle networks and software-defined networks.
Fog computing advantages and disadvantages
Fog computing and the Internet of Things
Because cloud computing is not viable for many Internet-of-Things applications, fog computing is often used. Its distributed approach addresses the needs of IoT and industrial IoT, as well as the immense amount of data smart sensors and IoT devices generate, which would be costly and time-consuming to send to the cloud for processing and analysis. Fog computing reduces the bandwidth needed and reduces the back-and-forth communication between sensors and the cloud, which can negatively affect IoT performance.
Although latency may be annoying when sensors are part of a gaming application, delays in data transmission in many real-world IoT scenarios can be life-threatening -- for example, in vehicle-to-vehicle communications systems, smart grid deployments or telemedicine and patient care environments, where milliseconds matter. Fog computing and IoT use cases also include smart rail, manufacturing and utilities.
Hardware manufacturers, such as Cisco, Dell and Intel, are working with IoT analytics and machine-learning vendors to create IoT gateways and routers that support fogging. The OpenFog Consortium was founded in November 2015 by members from Cisco, Dell, Intel, Microsoft, ARM and Princeton University; its mission is to develop an open reference architecture and convey the business value of fog computing.