Hierarchical and Autonomous Fog Architecture, Shaik and Baskiyar, ICPP 2018.
Fog computing has been a topic around for several years. Since the cloud computing is a centralized infrastructure, it is usually deployed at a fixed place. Thus, cloud computing lacks the ability to deal latency-critical and bandwidth-intensive scenarios taking its inflexible deployment into account. As the 5G is approaching, IoT devices are expected to explode. Those devices will be more mobile than they are now, and delivering time-critical information will be problems. Some such information may be handled in an infrastructure nearby to meet the latency requirement, yet this kind of information may not be hard to dealt with due to its smaller size. Cloud machines will not necessarily get involved. Some nearby computing resources could be utilized. This brings the question: how to organize the resources?
In this paper, the authors propose a new method, called Hierarchical and Autonomous Fog Architecture (HAFA) to organize heterogeneous fog nodes into a multi-layered connected hierarchy. It is based on:
several parameters such as physical location, distance from IoT devices and/or users, node resource configuration, privacy and security. Fog nodes are grouped to facilitate resource pooling and local control, and groups of fog nodes are linked to facilitate disaster readiness and autonomy.
First, the authors group nodes into several categories based on the factors of locality, mobility and capability of resources. . In a case of smart city, the resources are grouped into:
- Miniature fog nodes: mobile or stationary with low compute, storage and other network sources for quick computation or data transfer.
- Community fog nodes: with medium resource configurations.
- Edge Clouds: small clusters of relatively static fog nodes.
- Micro data center: mini cloud-like resources.
- Infrastructure cloud: powerful resources with huge number of nodes.
Second, these groups of nodes are organized into logically connected multi-layer hierarchy based on several parameters, such as location, distance, resource configuration, privacy and security, referring to Table 1. In this paper, the simulation nodes are organized based on location.
Then, bear the resource characteristics in mind, nodes with similar resources will form a Puddle, and similar Puddles will form a fog layers. Therefore, the nodes in a Puddle and Puddles in the same layer have similar characteristics.
There are two kinds of connections. Inter-layer connections and inter-layer connections. There is a PuddleHead in very Puddle managing all such things. PuddleHead is responsible for maintaining information, managing resources, monitoring topology, etc. Figure 2 shows how nodes are grouped and how Puddles are connected.
For inter-layer connection:
Each Puddle is logically connected only to a single Puddle in the vicinity belonging to immediately next higher layer and one or more Puddles in same and immediately next lower layer. Upon need, we can traverse up / down the hierarchy and find the Puddle that has nodes of sufficient resources to serve the given service request.
For intra-layer connection:
Intra-layer connections are leveraged to share information among PuddleHeads belonging to same layer regarding workload and resource availability, and can be primarily used for load sharing during workload overflow by lateral handoff of services to Puddles in neighborhood, failover during disaster scenarios, as well as for exchange of information regarding impending migration of services due to mobility of users / IoT devices, expected loss of fog nodes in current Puddle due to energy depletion, addition of new nodes in a neighboring Puddle resulting in a large amount of available resources, etc.
The tree-like structure is also easy to traverse to extract information.
HAFA (Hierarchical and Autonomous Fog Architecture) uses Agglomerative Complete Linkage Hierarchical Clustering algorithm to cluster nodes. The authors claim that this approach ensures that:
Nodes belonging to any group are collectively closer to each other as compared to those from a different group, thus ensuring that the members of same group are better candidates for load balancing and workload overflow as compared to members of different groups.
Compared with other algorithms, such as K-Means and Divisive algorithms, Agglomerative Complete Linkage Hierarchical Clustering (ACLHC) gives the best results in this scenario. K-Means requires specific number of cluster to be formed, which is not feasible or doable with this environment. Divisive clustering method cluster nodes from the top to bottom, while a bottom-up approach, ACLHC, fits this environment.
With the proposed approach and the results of experiments in this paper, the authors claim that their fog architecture, HAFA, is more scalable and more optimal comparing other approaches. Table 2 shows the comparison.