=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== https://ceur-ws.org/Vol-2889/PAPER_04.pdf
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