=Paper=
{{Paper
|id=Vol-2889/PAPER_04
|storemode=property
|title=Fog Computing Architecture, Application and Resource Allocation: A Review
|pdfUrl=https://ceur-ws.org/Vol-2889/PAPER_04.pdf
|volume=Vol-2889
|authors=Satyakam Rahul,Rajni Aron
}}
==Fog Computing Architecture, Application and Resource Allocation: A Review==
Fog Computing Architecture, Application and Resource
Allocation: A Review
Satyakam Rahula, Rajni Aronb
a
Lovely Professional University, Department of Computer Applications, Jalandhar, Punjab, India
b
Lovely Professional University, Department of CSE, Jalandhar, Punjab, India
Abstract
Fog Computing, may be considered as Edge Computing which expands Cloud Computing
model while improving efficiency, and lowers latency. Fog computing is used to keep up day
by day growing need of IT related services with the alliance of cloud computing. Having fast
development of IT, the fog computing is arising as an appealing solution for retrieval and
transformation of the data related to IoT applications. This paper discusses the concept,
architecture of fog computing and its implementation with the existing and new applications.
Fog devices are very complex and heterogeneous. The resource allocation problem is one of
the core challenges in running the IoT application in the Fog area. The goal of this paper is to
examine recent work on the allocation of resources in the fog area. The rationale of this survey
is to realize the application of fog computing and make some improvements in the existing
technology. This study will help researchers to understand and utilize technology better.
Keywords 1
Fog Computing, Cloud Computing, Resource Allocation
1. Introduction
Nowadays, a large number of device objects are attached to the Internet to capture and exchange
data from the real world, which brings the new idea of the Internet of Things (IoT). As stated by Gartner,
around fifty percent of the Internet of Things (IoT) study that is related with industry will be carried out
at the edge by 2022. [1]. According to an estimation that about 50 billion appliances may get linked to
the IoT network by 2022[2][3]. This gives an idea that future computation will require a new and savvy
edge computing foundation. Earlier, Mobile cloud computing (MCC) was broadly utilized to deal with
tasks that require high efficiency, due to its large computation and storage assets to appease the fast
increasing and changing need from distant cloud data centers [4]. Nevertheless, it is not easy to deliver
relying efficiency for IoT devices which are delay sensitive at the end of the network because of the
considerable interval between arbitrarily scattered terminal devices and distant cloud data centers. As a
response, the concerns of energy consumption, heavy load, delay, congestion, and unreliable wireless
connections may be unavoidable, which would restrict cloud computing growth [5]. Edge computing,
therefore came into the existence to control the limitations of cloud computing. In contrast to
conventional cloud computing an Edge computing offers data offloading services which is distributed
and its near-to-terminal, which may enhance the accuracy of service and decrease the latent period. It
has recently come out as a feasible solution to coordinate the network architecture which is currently
existing and new network Architecture using large amounts of pliable fog deployed Nodes (FNs) for
mutual offloading of tasks from the IoT systems nearby.
WCNC-2021: Workshop on Computer Networks & Communications, May 01, 2021, Chennai, India.
EMAIL: satyakam_rahul@yahoo.co.in (Satyakam Rahul)
ORCID: 0000-0002-5043-4638 (Satyakam Rahul)
© 2021 Copyright for this paper by its authors.
Use permitted under Creative Commons License Attribution 4.0 International (CC BY 4.0).
CEUR Workshop Proceedings (CEUR-WS.org)
31
The goal of fog computing in IOT is, boosting its abilities and performance while decreasing the
scale of data transmitted for collection, storage and analysis too. The data obtained by the sensors is
transmitted to the edge appliances instead of being sent to the server, thereby reducing network traffic
and latency. A new framework for services is provided via Fog computing incorporation with the IOT,
This is classified as Fog as a Service (FaaS), in which supplier of the service creates the fog nodes
array around its geographical footprint and functions as a distributor for many who require different
services.
Each node of the fog hosts capabilities for local computation, networking and storage. All the fog
computing resources are referred to as the entangled fog nodes through the Internet to the edge network.
2. Contribution of this paper
In this research analysis, we tend to examine different resource allocation techniques and its
infrastructure that powers the components and server’s devices. The remaining part of the paper is
outlined as follows: In Section 2 it defines the related work done in the resource allocation technique.
Section 3 provides the background and definition of key terms used, it explains the key difference in
both the technologies that is Fog and Cloud Computing while discussing characteristics of Fog
Computing and its architecture and deployment models. It also presents taxonomy of Fog Computing.
Section 4 discusses related computing model and their differences. Section 5 discusses application of
Fog Computing. Finally, section 6 discusses different resource allocation techniques used by
researchers and presents their comparison.
2.1. Related Work
The instruments of cloud computing / Fog computing and resources of it may be either tangible
resources or virtual resources. The issue of resource allocation is a complex task in a Fog environment.
It determines the right task distribution, given in to be done on the fog junctions or nodes to satisfy the
QoS, at the side or edge of the network. Some criteria, such as latency, performance, energy use
reduction, cost allocation minimization and response time, must be viewed as the product of any optimal
resource allocation strategy. There are several experiments and studies of cloud/fog computing on
resource distribution [6] suggest a presumptive resource allocation model in which jobs come in
accordance with a stochastic process and call a number of virtual machines. To guarantee the user's
experience with the resource request, after a resource request has been sent by the user, a decision on
the allocation of the resource must be taken in due time to position the VM on the server responding to
this request, that involves making VM placement decisions without any potential information upon the
delivery of the resource request. To take better advantage of a server's multi-resource capability and
reduce the total number of active servers, VM placement should be developed. Some approaches
proposes the idea of offline VM placement problem. Stillwell et al [7] introduced algorithms to delegate
different types of resources for engaging services Working with virtual machines on distributed, diverse
systems. The key result of their input is, what he proposed as vector packing methods in a homogenous
case can be generalized to deliver valued solutions in a diversified case and merged to support a single,
effective algorithm. The online VM placement issue is taken into account by a few other strategies.
Tang et al. [8]used heuristic algorithm to achieve high resource utilization. But this couldn’t achieve
optimal resource utilization. Authors in [9] established an algorithm which is based on a predictive
control model for resource allocation. This model establishes the future workload depending on a
restricted horizon and addresses the problems of autoscaling in the cloud. Chandra et al. [10] suggested
a system architecture that integrates the properties of the workload and the current state of the system
with estimation and resource allocation techniques. The strategies for dynamic allocation of resources
on public web servers were discussed. The key objective of their strategies is to respond to temporary
system overburden by integrating online system frameworks.
In [11] authors used non-pre-emptive technique for load balance to schedule VM configurations.
Offloading decision making and Resource allocation for energy conservation.
32
2.2. Background and Definition
Fog Computing [12], can also be identified as Edge Computing which expands the Cloud Computing
model while improving efficiency, and lowers latency. It also improves location consciousness and
assures better support for portability. As a result of this, business capabilities increases. The word first
used by Cisco, It means that, instead of working on a centralized Cloud environment, it works at the
end of the network. This is done by adding some intelligence, processes, and resources at the boundary
of the Cloud, instead of initiating channels for Cloud storage and utilization. Fog computing technology
disseminates the assets and services attached to the communication storage near to gadgets or close to
the users. A fog computing paradigm analyses and runs applications on anything from the network
center to the edge -wherever it is required. It is a process of extending computation and storage services
almost immediately and near to the physical devices of an organization or at the boundary of the Cloud
network. It is also a technique through internet can be bypassed, whose speeds are more often depends
on bandwidth and carriers [13]. Because of the highly variable and unpredictable fog environment,
resource management is the difficult problems in the fog landscape that need to be taken into account.
3. Dissimilarities of Cloud Computing and Fog Computing
The amount of information is on the rise in overall networking. To deal with this, services such as
cloud storage and cloud computing are used to handle and distribute data easily to end users. However,
fog computing is a more feasible option for handling high levels of security updates and reducing
bandwidth issues. Table1 shows the dissimilarities between the two technologies.
Table 1: Differences between Cloud Computing and Fog Computing
FEATURE CLOUD COMPUTING FOG COMPUTING
Delay time It is of enhanced latency It is of less latency
It’s distributed and
Geographic Distribution It’s centralized.
decentralized.
Awareness of Location Moderately Supported completely Supported
High number of server nodes
Number of Server Nodes Less server nodes.
attached
It’s less secured than Fog Fog computing is of high
Security
Computing security
Mobility is provided by fog
Mobility limited mobility
computing.
Access speed is fast and it
Speed depends on the VM Higher than Cloud Computing.
connectivity.
Power source Battery/Direct
Power source Battery as well
Power source power/Green
as direct power
Failure management Strong
Failure management Strong
(Solid (VMs can be quickly
(VMs can be easily migrated
Failure management migrated from one node to
from one node to other)
another) Rescheduling of failed
Rescheduling of failed tasks
tasks
4. Taxonomy of Fog Computing
Qureshi et al. [40] has given the taxonomy of Fog Computing focused on platform specifications
application, technology.
33
Fog
computing
Application Infrastruture Platform Service
Application User Infrastructure Fog Network Service
Requirement requirement Requirement Device Requirement Requirement
Response ProcessingPowe IOT
Mobility r & Storage Resource
Time Device Allocation &
Scheduling
Scalability Processing
Accuracy Memory & Gateway
Device
Management
Hetrogenity Deadline
Figure 1: Taxonomy of Fog Computing [40]
4.1. Characterization of Fog Computing
It’s basically an augmentation of the cloud, but similar to the stuff which functions with IoT Data.
As seen in Figure 1 above, fog computing serves as mediator linking cloud and end devices, bringing
storage and networking resources and processing closer to the end devices respectively. It provides less
latency and location awareness due to the localization of fog nodes. It provides a dynamically
virtualized interface services for storage, computing and networking between end computers and typical
data centers for Cloud Computing. It has following characteristics [14]
Low latency- fog nodes are near to the devices attached that makes response time very less and
data processing faster. It supports awareness of locations in which fog In various locations,
nodes can be installed.
Mobility- Because of the state forward communication between fog and devices it provides
better mobility
Real-time Interaction - Because of the closeness of devices and fog nodes interactions may
occur in real time not like batch processing in case of cloud computing.
Geographical distribution- For computing works in a distributed environment so it is quick in
delivering high quality streaming services. The essence of fog computing is because of lack of
aid with Quality Services at the end of network [15]
Protection and Privacy-Because the data contains subtle information, IoT has a critical role in
defense Of that kind of detailsTo ensure defense from cyber hackers. It hase its own security
implementation. [16]
Content caching-content caching in fog platform is a technique to reduce network traffic and
improve response time by caching
34
Figure 2: Fog Computing is an extention to cloud
4.2. Architecture of Fog Computing
It is a connection between edge devices and the cloud. It's a combination of devices connected at
edge and cloud. Three-layered architecture is very common architecture. The layers are discussed below
Layer 1: This is lowermost level which consists of all IoT devices they are capable of storing and
transmitting raw data to its upper layer
Layer 2: The middle layer consists of different network devices like routers, switches which can process
and temporarily store information. These devices are linked to the cloud network and keep sending data
to the cloud at the regular intervals.
Layer 3: The uppermost layer has many servers and data centers. which are capable of storing a high
amount of data and have capacity to process it too.
Layered Architecture for Fog Computing
As per Mukherjee et al. [17], The architecture is made up of six layers. — Virtualization and
physical, control etc. Temporary storage, defense and transport layers—as seen in Figure 3.
Figure 3: Architecture of Fog Computing
The very first layer which is physical and virtualization includes multipule catogries of nodes, like
physical nodes and virtual nodes. Various kinds of sensors are categorized to moniter the environment
and transfer the acquired data to the higher layers through gateways for more preparation and refining.
Monitoring layer controls the task which is requested and keep tracks of energy usage concerns of the
35
fundamental physical devices. Preprocessing layer controls task related with the Data management like
filtering and trimming. The temporary storage layer holds the Data for a short duration only. The
security layer is concerned with the encryption/decryption of data. Additionaly, data integrity steps are
also implemented to defend them from tampering. At the end, in the transport layer, previously-
processed data is submitted to the cloud to make the cloud able to retrieve and generate more valuable
data [17].
4.3. Fog Deployment Models
We may distinguish fog models based on the ownership of the fog infrastructure and underlying
properties. We have four different types of fog models.
Private fog: A private fog is developed, purchased, maintained and controlled by an entity, a
third entity or a variation thereof. It can be installed on or off-site. Private fog services are sold
for absolute use by a single company.
Public fog: A public fog is owned, developed, and managed by, or a combination of, a
corporation, academic institution or government organization. It is deployed on the premises of
the fog suppliers. Public fog services are provided for open access by the common or general
public.
Community fog: Community fog is developed, maintained and controlled by different
community organizations, which may include a third party too, or a consolidation of them. It
can be installed on or off-premises and services are provided for exclusive use, typically by
customers in a particular group of organizations with common interests.
Hybrid fog: Hybrid fog is a type of cloud computing that incorporates the use of
public/private/community fog with public/private cloud computing (i.e., hybrid cloud). It may
be helpful due to the disadvantages of the physical resources in the fog. As a result, the platform
is applied to the hybrid cloud to scale performance. The hybrid cloud is flexible, modular, and
services are accessible on demand.
4.4. Disadvantages of Fog Computing
Complexity: Different modules from both the edge and the central network can make use of a
possible Fog computing framework. Usually, these modules are Equipped with different types
of processors but not us ed for general purpose computation. Owing to its ambiguity, it can be
difficult to grasp the principle of Fog computing. There are several computers placed at various
locations that store and evaluate their own data collection. This could bring more complexity
to the network. In addition, more advanced fog nodes exist in the fog infrastructure.
Security: Authentic entry to services and privacy in Fog computing are difficult to ensure. There
are various devices and different fog nodes in the fog computing environment. These fog nodes
are likely to be in a less secure environment. Hackers can conveniently use bogus IP addresses
to obtain access to the corresponding fog node.
Power Consumption: There are many fog nodes available in the fog environment that is directly
proportional to their energy consumption. That implies that these fog nodes need a high volume
of energy to work. If the fog infrastructure requires more fog nodes, there is even more power
usage.
Authentication: The service delivered by fog computing is on a wide scale. Fog networking is
made up of end-users, Internet service providers, and cloud providers. This will also pose
concerns about trust and authentication in the fog.
5. Related Computing Models
36
There are many similar computing models similar to Fog computing exist such as Edge computing,
Dew computing, Mobile Edge Computing (MEC), Mobile Cloud Computing (MCC). In Cloud
computing, there are many IoT appliances or devices attached face to face to the cloud and computing
relies entirely on the cloud.
Mobile Cloud Computing: Mobile cloud computing makes use of cloud computing to provide
services or required applications to mobile devices. This mobile application can be
implemented far away using pace, mobility and development software. MCC Overcomes
computing, energy, and storage capacity Restriction on smart mobile devices. At the edge of
the network, Cloudlet is used to solve these problems [19]. It increases the durability and
reliability of cloud-backed and stored content.
Mobile Edge Computing: It enlarges the effectiveness of cloud computing by taking it to the
edge of the network. Whereas conventional cloud computing takes place on remote servers
located far from users and computers, MEC allows processes to take place at base stations,
central offices and other aggregation points on the network. MEC supports the co-location of
storage and computation Resources at cellular network base stations. According to Klas [18],
The development of mobile base stations is the MEC. Various services could be offered by this
technique, including IoT, caching, location services, video analytics, and local Distribution of
material.
Edge Computing: It is a recent development in computing model that carry out transformation
of data at the “edge” of the network [19]. It’s a computing that is done at or near the data source,
instead of depending on the cloud at one of a dozen data centers to do all the work. All devices
attached with sensors will contain data sources, but the edges are different altogether. A
cloudlet, for example the edge of the mobile application is a micro data center. Likewise, if a
smart phone is running a cloud application, then the smartphone will be considered as edge
[24]. Its core principle is, it can be performed closer to the origins of data.
Dew Computing: Dew Computing is a model which makes use of programming that enables
the plug-in to be omnipresent, ubiquitous and simple, ready-to-go. It facilitates a single Super-
Hybrid-Peer P2P interaction link for personal networks. Its key objective is to access the raw
data pool that can be fitted with meta-data. Skala et al. [19] discussed that DC is largely
effective in daily life than Fog computing. IoT-based apps are sponsored by Fog, although DC
is a microservice idea and that’s why it doesn’t rely on any compact or centralized device,
server or cloud, it requires low waiting time, real-time capacity and active network
configuration.
In summary, IoT devices are linked to the cloud via Fog devices in the Fog computing paradigm.
Fog devices are linked via the core network to the cloud. These similar paradigms vary on the basis of
Internet and cloud access. Table 2 displays the features of the similar computing discussed above.
Table 2: Different Computing Models
MCC MEC EC DC Fog
The Cloud Link √ Both Both x √
variety of Users Ambulant Ambulant Ambulant/ Uses devices Ambulant/
Stationary which is Stationary
attached with
sensors
Technology It uses It uses Hypervisor or Container Hypervisor /
used hypervisor / Hypervisor / Container Container
Container Container
key Iis connected MEC Small Data Mobile phone devices which
component with the base Center can compute,
engaged in station server store and has
computation network
adapter
37
6. Applications of Fog Computing
It is useful in various IoT applications. A large range of sensors can be mounted in the sea, airline
fleets or a car, so it’s difficult to dispatch and reserve all data produced instantaneous in the cloud. A
few interim computing, analysis and processing will be provided by Fog Computing appliances.
Connected Vehicle: There are several useful qualities that rely on fog and Internet access which
is applied to vehicles, like automatic transmission and "hands-free" operation or vehicle that is
capable of parking itself, which means, no requirement for a human being to park a vehicle [8].
As part of the Intelligent Transport System, vehicle communication has been designed to
achieve protection and efficiency through intelligent transportation by incorporating a variety
of information. Connections in an intelligent transport system are accomplished by different
communications variations which is vehicle-to-vehicle (V2V) and many a times vehicle-to-
infrastructure (V2I). Fog computing is the highly capable approach for all Internet connections.
Vehicles, as they have a high degree of real-time interaction., it will encourage vehicles, traffic
lights and access points to exchange communication with each other in order to provide a
reliable service to users [24].
Smart Traffic Lights: Fog computing enables road signals to be opened based on the sensing
of blinking lights. It detects the appearance of bikes and pedestrians and monitors the speed and
distance between vehicles in the vicinity. Sensor lighting is turned on as it detects motions and
vice versa Fog computing enables traffic signals to clear roads based on the sensing of blinking
lights.
Augmented Reality: Augmented - reality technologies are highly delay sensitive; a minor
delay will result in significant errors in user interface. Therefore, Fog computing-based
technologies will have tremendous potential in this area [25]. Zao et al. [26] proposed an
improved interaction game for brain computers using Fog and cloud infrastructure.
Smart HealthCare: Because of pollution our surroundings have various kinds of bacteria and
viruses which causes various diseases. Smart healthcare includes smart IoT, which is capable
of tracking the activities of patients and keeps track of various parameters of their body and
uploads the data on the fog nodes, and these are being noticed by the medical staffs and then
appropriate measures are suggested by the doctors to the patients [27]
Waste management: The earth is getting polluted every day. To save the earth, we need to
focus on natural resources. Rising waste and water loss from the ground needs significant
consideration. Smart garbage management may be considered as one of the solutions for the
improvement of the environment [25].
7. Resource Allocation
From a consumer's viewpoint, the distribution of resources relates to how the dissemination of
products and services among users is done. The resource allocation problem is a major issues in the
management of IoT applications in the fog scenario. To decrease time delay in mobile and time sensitive
applications which works in real time, service allocation is crucial. Simultaneously, in order to control
the set of large numbers of nodes scattered globally, the computational and storage resources of the fog
layer should be used effectively. Fog computing must, in particular, manage resource allocations very
effectively by taking into account the quality of service (QoS)which has been requested. Assignment of
resources is generally carried out by choosing devices to provide the resources needed for the
application services, taking into account certain constraints. According to Ni et al. [28], He suggested
a Fog computing resource allocation policy based on priced Petri timed networks (PTPNs) that will
encourage users to select required resources individually from a category of pre-assigned resources.
The proposed solution regarded the time cost and factors to finish a task of creating the Petri nets task
model. Alsaffar et al [29] designed an algorithm which implements decision tree learning technique that
depends on the scale of resources, completion time, and power metrics of VMs to handle and assigns
user resource allocation requests in the fog environment. Quang et al.[30] suggested First Fit placement
38
algorithm to dispense IoT application modules in the Fog computing model. The algorithm
allocates several modules, which depends on the configuration of the module. Each device, taking into
account its processing capacity, bandwidth Capacity and RAM. Another method proposed in [31]
suggests a heuristic resource allocation algorithm for Fog Data Centers (FDC). The algorithm is
designed to decrease the energy consumption and the price evolved of connectivity on these devices.
Optimization-based resource allocation approaches provide an effective cost-effective estimation
domain for different cases, like, time-sensitive applications, real-time applications, vehicle network
applications, etc. Table 3 shows the comparison between different resource allocation approaches.
Table 3: Comparison between different Resource allocation approaches
Utilized Performance Goals Simulation
Author
Technique Metrics Achieved environment
Priced Timed Cost, Number Efficient and realistic
Ni et al.[28]
Petri net of completing task resource allocation
Effective distribution of
Alsaffar, Pham,
Number of VM, services on the basis of
Heuristic-based Hong, Huh CloudSim
Processing time fog-cloud computing
and Aazam[29]
partnership
heuristic
algorithms: Resource enhancement,
MBFD and heuristic number of chosen servers,
Zahra Pooranian et
MDC algorithm, MBFD electricity usage, and iFogSim
al[31]
(Maximum and MDC response time on various
Density FN scales
Consolidation)
Offloading and
Optimization
J. Du et. Al[33] Resource Performance increased Matlab
(MINLP)
Allocation
essential in solving
Edge cache-based
partnership
Optimization study of
2016, Peng and improvement in
(F-RAN) performance and
Zhang [34] different caching
distribution of
radio services
Minimizing delay and
Lyapunov A. Abouaomar et. System Docker
enhancing system
optimization Al[35] Performance containers
performance
Auction-based
resource Resource Minimizing latency and
Xu et.al[36] iFogSim
allocation Allocation enhancing performance
strategy
improvements
Energy
knapsack-based in the energy consumption
Rahbari et al.[37] consumption , iFogSim
scheduling by18%, network usage by
network usages
1.17%
Integer Non- Increased energy
Energy efficiency
linear Zahaf et al.[38] efficiency and reduced Matlab
,Response time
Programming response time
Latency ,
Decreased latency ,
bandwidth and
Fog Torch Tool Brogi et al.[39] efficient resource Monte Carlo
Resource
allocation
Allocation
The fog computing resource scheduling problem decides the best allocation of the various tasks
given in to be executed on the network edge fog nodes concerning to meet the QoS requirements signed
with the owner of the IoT system thereby decreasing the implementation time for the specified task
[32]. First, as users send tasks, that can be split into a number of smaller sub-tasks. These secondary
operations are then sent to the task scheduler where the task scheduling strategy and the QoS request
39
play an important role in the task scheduler. The job scheduler collects user scheduling data, resource
monitors and cloud gateways and assigns the corresponding fog resource to each mission. J. Du et al
[33] investigated cost conservation problem using min-max fairness while using the decision-making
method, to reduce system costs. Authors devised an algorithm and named it computation offloading and
resource allocation algorithm (CORA) which solves the articulated NP-hard optimization problem. In
[30] M. Peng et.Al analyzed latest events in performance measurement and radio resource allocation
for socially conscious mobile networking in fog radio access networks (F-RANs).Authors in [35] used
Lyapunov optimization problem to minimize the system latency. They also used containers as a
lightweight virtualization mechanism to simulate our proposed method. Xu et.al[36] implemented a
decoupled resource allocation technique called Zenith to handle the allocation of fog infrastructure
computing resources. Besides this, an auction-based resource allocation approach was designed to
ensure the service providers' truthfulness and utility maximization. Rahbari et al.[37] proposed a
knapsack-based schedule designed for symbiotic search.The contribution of their paper is reduction of
delay and energy consumption with the increase in network usages. Zahaf et al[38] presented the
efficiency and energy utilization model of a parallel real-time task conducted on the ARM bigLITTLE
architecture. In the second part of the paper, authors used this model, where they first describe the
optimization problem and then suggest heuristics for an efficient solution.In [39] Brogi et al. discussed
the impact of the Monte Carlo simulations in the FogTorch tool while keeping time delay, bandwidth
and resource usage in mind.
8. Discussion and Conclusion
Fog computing is a distributed processing system where computing, storage and software are placed
somewhere between the data source and the cloud. The resource allocation problem is a challenging
task in running the IoT application in the Fog scenario. The level Quality of service (QoS) efficiency in
cloud computing is primarily controlled by the resource allocation approach implemented. In this paper
we review several aspects of the resource allocation technique used in Fog computing area. A
comparison is done among different resource allocation techniques used by their performance matrix
and goals achieved. Besides reviewing different resource allocation techniques the architecture and
features of Fog computing is also discussed. The difference between Fog and cloud computing is
explained too. This work will give a chance to all nascent researchers.
9. Acknowledgements
The authors are thankful to the Lovely Professional University, Jalandhar for providing library and
all necessary supports for the research.
10.References
[1] Gartner Research. "Zero-touch, edge computing infrastructure for industrial environments",
https://www1.stratus.com/en-us/lp/gartner-research-zero-touch-edge-computing-issue-2/ 2019
[2] Cisco Systems, "Fog Computing and the Internet of Things: Extend the Cloud to Where the Things
Are”, www.Cisco.com, p. 6, 2020.
[3] S. Yi, C. Li, and Q. Li, “A survey of fog computing: Concepts, applications and issues”, Proc. Int.
Symp. Mob. Ad Hoc Netw. Comput.(2015) 37–42. doi:10.1145/2757384.2757397
[4] A. U. R. Khan, M. Othman, S. A. Madani, S. U. Khan,”A survey of mobile cloud computing
application models,” IEEE Communications Surveys and Tutorials, 16.1(2014) 393-
413.doi:10.1109/SURV.2013.062613.00160
[5] Cisco Systems,” Fog Computing and the Internet of Things: Extend the Cloud to Where the Things
Are”, www.Cisco.com, p. 6, 2016.
[6] S.B Akintoye, A Bagula. "Improving Quality-of-Service in Cloud/Fog Computing through Efficient
Resource Allocation. Sensors (Basel) "19.6(2019)1267, doi: 10.3390/s19061267
40
[7]M. Stillwell, F. Vivien, H. Casanova,” Virtual machine resource allocation for service hosting on
heterogeneous distributed platforms”, in: Proceedings of the IEEE International Parallel and Distributed
Processing Symposium (IPDPS), pp. 786–797, 2012. doi: 10.1109/IPDPS.2012.75
[8] X. Tang, Y. Li, R. Ren and W. Cai, "On First Fit Bin Packing for Online Cloud Server Allocation,"
2016 IEEE International Parallel and Distributed Processing Symposium (IPDPS), Chicago, IL, 2016,
pp. 323-332, doi: 10.1109/IPDPS.2016.42.
[9] N. Roy, A. Dubey and A. Gokhale, "Efficient Autoscaling in the Cloud Using Predictive Models
for Workload Forecasting," 2011 IEEE 4th International Conference on Cloud Computing, Washington,
DC, 2011, pp. 500-507, doi: 10.1109/CLOUD.2011.42.
[10] Chandra A., Gong W., Shenoy P. (2003) Dynamic Resource Allocation for Shared Data
Centers Using Online Measurements. In: Jeffay K., Stoica I., Wehrle K. (eds) Quality of Service
— IWQoS 2003. IWQoS 2003. Lecture Notes in Computer Science, vol 2707. Springer, Berlin,
Heidelberg. https://doi.org/10.1007/3-540-44884-5_21
[11]M. H. Chen, M. Dong, B. Liang, et al., “Joint Offloading Decision and Resource Allocation for
Mobile Cloud With Computing Access Point,”in Proc. IEEE ICASSP, 2016, pp. 3516-3520
[12] Evans D, “The internet of things how the next evolution of the internet is changing everything.,”
Cisco White Pap., 2011
[13] B. Varghese, C. Reano, and F. Silla, “Accelerator Virtualization in Fog Computing: Moving from
the Cloud to the Edge,” IEEE Cloud Comput., vol. 5, no. 6, pp. 28–37, 2018
[14] S. Yi, C. Li, and Q. Li, “A survey of fog computing: Concepts, applications and issues,” Proc. Int.
Symp. Mob. Ad Hoc Netw. Comput., vol. 2015-June, pp. 37–42, 2015.
[15] Y. Sankara Rao, K. Bhavya Sree, and A. Professor, “A Review on Fog Computing : Conceptual
Live Vm Migration Framework, Issues, Applications and Its Challenges,” Int. J. Sci. Res. Comput. Sci.
Eng. Inf. Technol. © 2018 IJSRCSEIT, vol. 1, no. 10, pp. 1175–1184, 2018.
[16] H. Wadhwa and R. Aron, "Fog Computing with the Integration of Internet of Things: Architecture,
Applications and Future Directions," IEEE Intl Conf on Parallel & Distributed Processing with
Applications, Ubiquitous Computing & Communications, Big Data & Cloud Computing, Social
Computing & Networking, Sustainable Computing & Communications
(ISPA/IUCC/BDCloud/SocialCom/SustainCom), Melbourne, Australia, pp. 987-994,2018
[17] M. Mukherjee, L. Shu and D. Wang, "Survey of Fog Computing: Fundamental, Network
Applications, and Research Challenges," in IEEE Communications Surveys & Tutorials, vol. 20, no. 3,
pp. 1826-1857, thirdquarter 2018, doi: 10.1109/COMST.2018.2814571.
[18] Liu, Y, Fieldsend, J.E, Min, G.” A Framework of Fog Computing: Architecture, Challenges and
Optimization” IEEE Access 2017, 4, 1–10
[19] M. Satyanarayanan, G. Lewis, E. Morris, S. Simanta, J. Boleng, and K. Ha, “The role of cloudlets
in hostile environments,” IEEE Pervasive Computing, vol. 12, no. 4, pp. 40–49, 2013.
[20] G. I. Klas, “Fog computing and mobile edge cloud gain momentum open fog consortium etsi mec
and cloudlets,” 2015
[21] W. Shi, J. Cao, Q. Zhang, Y. Li and L. Xu, "Edge Computing: Vision and Challenges," in IEEE
Internet of Things Journal, vol. 3, no. 5, pp. 637-646, Oct. 2016, doi: 10.1109/JIOT.2016.2579198.
[22] M. Satyanarayanan, P. Bahl, R. Caceres, and N. Davies, “The case for vm-based cloudlets in
mobile computing,” IEEE pervasive Computing, vol. 8, no. 4, 2009.
[23] K. Skala, D. Davidovic, E. Afgan, I. Sovic, and Z. Sojat, “Scalable distributed computing
hierarchy: Cloud, fog and dew computing,” Open Journal of Cloud Computing (OJCC), vol. 2, no. 1,
pp. 16–24, 2015.
[24] Atlam, Hany & Walters, Robert & Wills, Gary ”Fog Computing and the Internet of Things: A
Review” Big Data and Cognitive Computing., 2018, 2. 10.3390/bdcc2020010.
[25] A. V. Dastjerdi, H. Gupta, R. N. Calheiros, S. K. Ghosh, and R. Buyya, “Fog computing: Principles,
architectures, and applications,” in Internet of Things: Principle & Paradigms, M. Kaufmann, Ed., USA,
2016
41
[26] J. K. Zao, T. T. Gan, C. K. You, S. J. R. Méndez, C. E. Chung, Y. TeWang, T. Mullen, and T. P.
Jung, “Augmented brain computer interaction based on fog computing and linked data,” in Proceeding
of the International Conference on Intelligent Environments (IE). IEEE, 2014, pp. 374–377.
[27] S. Khan, S. Parkinson, and Y. Qin, “Fog computing security: a review of current applications and
security solutions,” J. Cloud Comput., vol. 6, no. 1, 2017
[28] L. Ni, J. Zhang, C. Jiang, C. Yan and K. Yu, "Resource Allocation Strategy in Fog Computing
Based on Priced Timed Petri Nets," in IEEE Internet of Things Journal, vol. 4, no. 5, pp. 1216-1228,
Oct. 2017, doi: 10.1109/JIOT.2017.2709814.
[29] Alsaffar, A.A., Pham, H.P., Hong, C.S., Huh, E.N., Aazam, M.,” An architecture of IoT service
delegation and resource allocation based on collaboration between fog and cloud computing. Mob. Inf.
Syst”.vol. 2016, pp 1–15, 2016
[30] Q. Nguyen and T. Truong Pham, "Studying and Developing a Resource Allocation Algorithm in
Fog Computing," 2018 International Conference on Advanced Computing and Applications (ACOMP),
Ho Chi Minh City, 2018, pp. 76-82, doi: 10.1109/ACOMP.2018.00020.
[31] Zahra Pooranian, Mohammad Shojafar, Paola Gabriela Vinueza Naranjo, Luca Chiaraviglio, and
Mauro Conti.” A novel distributed fog-based networked architecture to preserve energy in fog data
centers.” In 14th IEEE International Conference on Mobile Ad Hoc and Sensor Systems,MASS 2017,
Orlando, FL, USA, October 22-25, pages 604–609, 2017
[32] Ghobaei-Arani, M., Khorsand, R., Ramezanpour, M.” An autonomous resource provisioning
framework formassively multiplayer online games in cloud environment”. J. Netw. Comput. Appl.
142(18), 76–97 (2019)
[33] J. Du, L. Zhao, J. Feng and X. Chu, "Computation Offloading and Resource Allocation in Mixed
Fog/Cloud Computing Systems With Min-Max Fairness Guarantee," in IEEE Transactions on
Communications, vol. 66, no. 4, pp. 1594-1608, April 2018, doi: 10.1109/TCOMM.2017.2787700.
[34] M. Peng and K. Zhang, "Recent Advances in Fog Radio Access Networks: Performance Analysis
and Radio Resource Allocation," in IEEE Access, vol. 4, pp. 5003-5009, 2016, doi:
10.1109/ACCESS.2016.2603996.
[35] A. Abouaomar, S. Cherkaoui, A. Kobbane and O. A. Dambri, "A Resources Representation for
Resource Allocation in Fog Computing Networks," 2019 IEEE Global Communications Conference
(GLOBECOM), Waikoloa, HI, USA, 2019, pp. 1-6, doi: 10.1109/GLOBECOM38437.2019.9014146.
[36] Xu, Jinlai & Palanisamy, Balaji & Ludwig, Heiko & Wang, Qingyang. (2017). Zenith: Utility-
Aware Resource Allocation for Edge Computing. 10.1109/IEEE.EDGE.2017.15.
[37] Dadmehr Rahbari and Mohsen Nickray. Scheduling of fog networks with optimized knapsack by
symbiotic organisms search. In 21st Conference of Open Innovations Association, FRUCT 2017,
Helsinki,Finland, November 6-10, pages 278–283, 2017
[38] H.-E. Zahaf, A. E. H. Benyamina, R. Olejnik, and G. Lipari, “Energyefficient scheduling for
moldable real-time tasks on heterogeneous computing platforms,” Journal of Systems Architecture, vol.
74, pp. 46–60, 2017.
[39] Antonio Brogi, Stefano Forti, and Ahmad Ibrahim. How to best deploy your fog applications,
probably. In 1st IEEE International Conference on Fog and Edge Computing, ICFEC 2017, Madrid,
Spain, May 14-15, pages 105–114, 2017
[40] Qureshi MS, Qureshi MB, Fayaz M, et al. A comparative analysis of resource allocation schemes
for real-time services in high-performance computing systems. International Journal of Distributed
Sensor Networks. August 2020
42