Foggy about “Fog Computing”?

Share This:

Share This:

Most people would be familiar with cloud computing, defined as “Internet-based computing that provides shared processing resources and data to computers and other devices on demand,  a model for enabling ubiquitous, on-demand access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications and services)”.  With IoT, you will

3 V's of Big Data
3 V’s of Big Data

have additional 6.4 billion “things” technically connected to the cloud worldwide by 2016.  With the huge amount of data, in some implementation cases, we will need to have a separate cloud for “things” only, to provide specific needs for IoT & optimize the bandwidth.  In the long run,  existing cloud models are not really designed for the 3 V‘s (volume, variety, and velocity of data ) that IoT devices generates (see  Cisco’s white paper )

That’s why we need “Fog Computing”  for IoT.  If we need to acquire dacloud-and-thingsta from sensors from a single commercial jet, we need to store & analyze 10 TB of data for every 30 minutes of flight. A wearable device that measures your heart beat, physiological & motion activities will probably generate GB’s of raw data in less than a week of continuous monitoring. In most cases, the data will be lost if not pushed to the cloud continuously for analytics & long term storage. Less than ideal bandwidth or infrastructure issues in connecting IoT edge nodes to the cloud further complicates the situation & accelerate the eventual loss of data or connectivity.

With fog computing or “fogging” , the analytics & storage usually provided by the cloud is moved closer to the data source or edge nodes. Other than providing a “local” storage to maintain continuous & real-time data acquisition, the fog can also solves the following:-

  • Redundancy – latest data or buffered data can be uploaded & synchronize with the cloud in the event of loss in connectivity. In some scenario where the earlier data (with time-stamp) is received later than the current data, the redundant data can be chronologically re-constructed.
  • Security – additional cryptography & multi-level authenthication can be executed at the fog without additional computation needed from the cloud
  • Data Compression – raw data from sensors & device statuses can be compress before sending to the cloud to reduce bandwidth requirements
  • Lower latency – provide immediate computing resources for less complex analytics & faster response
  • Offline configuration – Re-programming or configuration of edge nodes can be done through the cloud, however, network congestion & stability issues might cause failures during the updates & possibly rendering the edge nodes useless. The same tasks can be done more reliably through the fog.

cloud-fog-and-thingsSo, where does the “fog” resides? Any gateways, routers, switches &  edge nodes with powerful enough embedded processors can host a “fog”. As fog computing is still in it’s infancy, there’s still a lot of development that is on-going to realize it’s full-potential & adoption. At the core, the standardization or visualization of software that can run on tiny embedded edge nodes & protocols similar to what the cloud computing has to make the integration seamless. Nevertheless, more & more powerful edge hardware that can run complex algorithms or larger storage capabilities(see previous post ) & flexible embedded OS’s , makes setting-up “fog” easier & cost effective compared to “cloud” infrastructure.

So, will “fog computing” eventually takes over from “cloud computing”? At the present moment, both “cloud” & “fog” works hand-in-hand to deliver more robust & reliable IoT services & opening doors to solving other issues plaguing the adoption of IoT like security, QoS, redundancy etc.

Open WRT tiny gateway

The future of “fog computing” is not so foggy anymore & actually quite clear, key to implementing a successful IoT solution.

“Fog Computing” hardware, Intel compute stick

Leave a Reply

Your email address will not be published. Required fields are marked *