<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>From Cloud Computing to Fog Computing and IoT Development</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Eljona Proko</string-name>
          <email>eljona.proko@univlora.edu.al</email>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Dezdemona Gjylapi</string-name>
          <email>dezdemona.gjylapi@univlora.edu.al</email>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Alketa Hyso</string-name>
          <email>alketa.hyso@univlora.edu.al</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>University of Vlora</institution>
          ,
          <addr-line>Vlore</addr-line>
          ,
          <country country="AL">Albania</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Internet of Things is considered one of the most trending topic in the world of Information Technology. The Internet of Things is a dynamic global network infrastructure with selfconfiguring capabilities based on standard and interoperable communication protocols where physical and virtual “things” have identities, physical attributes and virtual personalities, use intelligent interfaces and are seamlessly integrated into the information network. While Cloud Computing can today be considered well established, modern application domains such as IoT, autonomous driving, or even mobile applications trying to tap the full potential of future 5G networks require an extension of the cloud towards the edge, thus, naturally leading to the new Fog Computing paradigm. Fog computing is enhancement of the cloud-based network and computing services. Fog Computing extends the Cloud Computing paradigm to the edge of the network, thus enabling a new breed of applications and services. This paper presents the current state-of-the-art in the field of fog computing and aims to provide detailed survey. It also includes challenges and opportunities in the fog computing and various possible solutions to overcome those challenges.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>
        New emerging digital technologies such as
artificial intelligence, virtual reality, augmented
reality, cloud computing, blockchain,
robotization, the Internet of Things, big data,
etc. have produced a powerful disruptive effect
in almost all areas of our existence and have
radically changed the way we live, work, learn
or relax. Without consciously realizing it,
everyone is adapting to the digital era. The
potential benefits of Internet of Things are
limitless and IoT applications are changing the
way we work and live, opening new
opportunities for growth, innovation and
knowledge creation. Internet of Things [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] is a
concept and a paradigm that considers
pervasive presence in the environment of a
variety of things that through wireless and
wired connections and unique addressing
schemes are able to interact with each other and
cooperate with other things to create
applications or services. The goal of the Internet
of Things (IoT) is to enable things to be
connected anytime, anyplace, with anything
and anyone using any network and any service.
This new technology has a major influence on
the economic [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] and social fields, and also on
education, healthcare systems, energy
management, environment monitoring, and
smart cities by associating everyday objects
with Internet capabilities and Big Data
analytics. IoT is developing in two directions:
increasingly smarter physical devices and
environments and ubiquitous interconnection.
Fog computing [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ] is a methodology of network
that transfer the data from the location, where it
is actually created to where it has to be stored,
whether that’s a cloud or any customer operated
data centre. It creates a distributed network
which connects different environment and
make association between cloud computing and
IoT. This paper begins by introducing and
describing the internet of things definition and
characteristics. Section III discusses cloud
computing and IoT and Section IV presented all
the aspects of Fog Computing as definitions,
architectures and discusses fog computing
characteristics and IoT development. In Section
V we conclude this study.
      </p>
    </sec>
    <sec id="sec-2">
      <title>2. Internet of Things-IoT, Definition and Characteristics</title>
      <p>
        The internet today is getting
connected to a very large number of
devices or sensors of IOT. These numbers
were not envisaged previously. IoT or
Internet of Things, alternatively known as
IOE, Internet of Everything envisages
connecting more and more consumer
electronic devices, home appliances,
medical devices, cameras, all types of
sensors for temperature, pressure or
humidity, etc., in addition to mobile phones and
industrial IoT devices. The Internet of Things
[
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] is a dynamic global network infrastructure
with self-configuring capabilities based on
standard and interoperable communication
protocols where physical and virtual “things”
have identities, physical attributes and virtual
personalities, use intelligent interfaces and are
seamlessly integrated into the information
network. Things are "smart objects", meaning
they are capable to collect data from the
environment and communicate with the entire
system. At the first level there are sensors,
microprocessors and communication
equipment followed by the level containing the
operating system for these objects [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]. There are
rich variety of technologies which are covered
by the internet of things and they are industrial
internet of things IoT, internet of services,
customer IoT, Industry 4.0, and many more.
However, these technologies cannot completely
function on themselves without the assistance
of the technologies like the edge computing,
cloud computing, big data analytics, machine
learning and a few more and all this is for the
gathering and processing the data such that they
can be used for betterment of the operations.
The IoT [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] is considered as the future
evaluation of the Internet that realizes
machineto-machine learning. The basic idea of IoT is
to allow autonomous and secure connection and
exchange of data between real world devices
and applications. The IoT links real life and
physical activities with the virtual world. The
numbers of Internet connected devices are
increasing at the rapid rate. These devices
include personal computers, laptops, tablets,
smart phones, PDAs and other hand-held
embedded devices [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]. Most of the mobile
devices embed different sensors and
actuators that can sense, perform
computation, take intelligent decisions and
transmit useful collected information over
the Internet. According to data published by
Statista, at present IoT is spreading at a
rapid pace and as of 2019 the connected
devices throughout the world were 27
billion, and as of 2025 about 75 billion
connected devices will exist.
There are four essential characteristics for a
device to be considered a ‘thing’ in IoT terms:
1. The device must be capable of collecting and
transmitting data: IoT devices need to exist in
environments in which information can be
collected and either sent to another device or
directly to the Internet.
      </p>
      <p>2. The device must have the ability to
operate with action-based responses: IoT
devices can be programmed to act according to
particular conditions.</p>
      <p>3. The device must have the ability to
receive information: IoT devices must be able
to receive information from the network.</p>
      <p>4. The device must be able to support
communication: IoT devices by nature belong
to a network of devices that can communicate
with each other through other nodes in the same
network.</p>
      <p>Internet of Things is one of the most
revolutionary technologies developed in the
twenty first century which has seen rapid
growth and spread in various sectors of
livelihood. With more and more applications of
IoT getting developed day by day, its usage in
the industrial, healthcare, and manufacturing
and more recently in the field of education as
well.</p>
    </sec>
    <sec id="sec-3">
      <title>3. Cloud Computing and IoT</title>
      <p>
        At a basic level, cloud computing is a way
for businesses to use the internet to connect to
off-premise storage and compute infrastructure.
In the context of the Internet of Things, the
cloud provides a scalable way for companies to
manage all aspects of an IoT deployment
including device location and management,
billing, security protocols, data analysis and
more. Cloud services [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] also allow developers
to leverage powerful tools to create IoT
applications and deliver services quickly.
Ondemand scalability is key here given the grand
vision of IoT; a world saturated with smart,
connected objects. Many major technology
players have brought cloud-as-aservice
offerings to market for IoT. Microsoft has its
Azure suite, Amazon Web Services, a giant in
cloud services, has an IoT-specific play, IBM
offers access to the Watson platform via its
Bluemix cloud, and the list goes on and on.
      </p>
    </sec>
    <sec id="sec-4">
      <title>4. From Cloud to Fog Computing</title>
      <p>
        A new paradigm known as Fog
Computing was emerging, which
seamlessly integrates the edge devices on
one hand with the cloud resources on the
other, to overcome all the limitations of
Edge Computing as well. Fog computing [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]
has been initially introduced in the
telecommunication sector when researchers
and practitioners realized how the role of the
final users changed from consumers of
information to prosumers, producers and
consumers at the same time. In fact, the original
paradigm on which the Web is based assumes
that the core of the network is in charge of
providing information that will be consumed at
the edge. Cloud computing offers many
possibilities for prospective users; there are
however many different storage and compute
services to choose from between all the cloud
providers and their multiple datacenters. Fog
computing, an extension of cloud computing
services to the edge of the network to decrease
latency and network congestion, is a relatively
recent research trend. Although both cloud and
fog [19] offer similar resources and services,
the latter is characterized by low latency with a
wider spread and geographically distributed
nodes to support mobility and real-time
interaction. Prosumers with mobile devices or
IoT sensors, however, generate immense data
quantities at the edge of the network. So, what
precisely is Fog Computing and how can it be
distinguished from Edge Computing? Edge
Computing is exclusively about computation at
the edge of the network without any notion of
cloud services. Depending on the source, Fog
Computing [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ] is either the same as Edge
Computing or is defined as the amalgam of
cloud, edge, and any intermediary nodes in
between (this could be small- to medium-sized
data centers within the core network of the
network provider. Fog Computing must be
more than creating a data center in the box, i.e.,
Cloudlets, to bring the cloud closer to data
producers. Instead, Fog Computing must be
seen as a ―resource layer that fits between the
edge devices and the cloud data centers, with
features that may resemble either. The goal of
Fog computing is to decrease the involvement
of cloud by filtering out data, which is produced
by the rising number of sensors. Instead of
generating centralized data center, the
processing of computational task should be
performed on multiple devices in network [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ].
Since the latency calculation in fog computing
start from the end device to cloud, it reduces the
latency and bandwidth utilization in network. In
Fog computing, latency rate is calculated from
edge devices to fog nodes. This modified
utilization of edge resource provides faster
communication. This paradigm [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ] has to
provide the power of execution, monitoring and
analyzing IoT services. As also pointed out by
the Open Fog Consortium, the goal of Fog
Computing is to provide a set of methods and
tools to create a continuum between edge and
cloud. For this, Fog Computing [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ]
technologies especially need to enable fluid
data movement between cloud services and
edge, in both directions, while satisfying
application constraints in terms of quality of
service (QoS). Such data movement may also
be accompanied by movement of computation
– both in the same way and in a complimentary
fashion compared to data movement. In an IoT
environment, it is important to understand the
relationship between Fog and cloud computing
and assess the impact of fog computing on the
IoT service delay and quality of service. Fog
computing [22] paradigm offers several
features, which make it suitable for IoT enabled
systems. These include low latency due to close
proximity of the fog services near the network
edge, conservation of network bandwidth due
to transmission of selective and filtered data,
and increased response time due to shorter
physical distance between data source and fog
nodes relative to the cloud. Fog computing is a
heterogeneous [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ] hyper distributed cloud
infrastructure paradigm, ranging from small
compute nodes close to the end-users to
traditional distant data centres. With greater
proximity to the end users, delay and jitter in
the delay can be reduced, and intermediate
network reliability improved.
      </p>
    </sec>
    <sec id="sec-5">
      <title>4.1. Characterization</title>
    </sec>
    <sec id="sec-6">
      <title>Computing of Fog</title>
      <p>According to IDC, 45% of the data worldwide
will move closer to the network edge by 2025,
and 10% of the data will be produced by edge
devices such as phones, smart-watches,
connected vehicles, and so on. Fog computing
is believed to be the only technology that will
stand the test of time and even beat Artificial
Intelligence, IoT app development, and 5G in
the next five years. Cloud and fog computing
[17] share overlapping features, but fog
computing has additional attributes such as
location awareness, edge deployment and a
large number of geographically distributed
nodes in order to offer a mobile, low latency
and real-time interaction.</p>
      <p>It is a highly virtualized platform that offers
storage, compute, and networking services
between the traditional cloud computing data
centers and end devices. Fog computing can be
characterized by low latency, location
awareness, edge location, interoperability,
realtime interaction between data and cloud, and
support for online interplay with the cloud. Fog
applications [21] involve real-time interactions
instead of batch processing, and they often
communicate directly with mobile devices. Fog
nodes also come with different form factors,
deployed in various environments.</p>
    </sec>
    <sec id="sec-7">
      <title>4.2. Characteristics</title>
    </sec>
    <sec id="sec-8">
      <title>Computing of Fog</title>
      <p>Fog computing possess various characteristics,
some of them are listed below: Heterogeneity:
Fog Computing is a highly virtualized platform
that yields compute, storage, and networking
services between end devices and traditional
Cloud Computing Data Centers, typically, but
not elite located at the edge of network.
Compute, storage, and networking resources
are the building blocks of both the Cloud and
the Fog . Edge location: The origins of the Fog
can [18] be traced to early proposals to support
endpoints with rich services at the edge of the
network, including applications with low
latency requirements (e.g. gaming, video
streaming, augmented reality. Geographical
distribution: In sharp contrast to the more
centralized Cloud, the services and applications
targeted by the Fog demand widely distributed
deployments. The Fog, will play an active role
in delivering high quality streaming to moving
vehicles, through proxies along highways and
tracks.</p>
    </sec>
    <sec id="sec-9">
      <title>4.3. Architecture</title>
    </sec>
    <sec id="sec-10">
      <title>Computing of Fog</title>
      <p>
        In a traditional network, centralized hub
can’t maintain high volume data which is
created by different devices or transactions. Old
data warehouse model techniques can take
more response time and can’t get the low
latency rate as required by users [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]. Fog
computing delivers facilities with low latency
and less traffic congestion [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ]. The fog layer
contains geo- distributed fog servers those
process computations at the end point of
system. Each fog server has equivalent
computing capabilities to process a huge
amount of workload at the edge. Thus, a very
less amount of workload is moved to the cloud
for storage purpose and analytic processing.
Therefore, fog computing becomes a major
driver of the IoT in education systems. The
connected devices are increased which
produces a large amount of data and
connectivity of that data to a central cloud is
become possible [19]. Fog computing provides
the facility for analyzed the data locally and to
choose what kind of data needs to transfer to
centralized cloud.
      </p>
    </sec>
    <sec id="sec-11">
      <title>4.4. Fog computing and IoT app development the connection</title>
      <p>There are almost 31 billion IoT devices in
use as of today. No wonder we produce 2.5
quintillion bytes of data per day. It is obvious
we need an alternative to the traditional method
of handling data. That is where fog computing
enters the picture.</p>
      <p>When an application or a device collects
enormous volumes of information, efficient
data storage becomes a challenge, not to forget,
costly, and complicated. Heavy data puts a load
on the network bandwidth. Setting up large data
centers to store and organize this data is
expensive!</p>
      <p>Fog computing [20] gathers and distributes
storage, computing, and network connectivity
services, reduces energy consumption,
enhances the data’s performance and utility,
and minimizes space and time complexity.
While Fog nodes provide localization, therefore
enabling low latency and context awareness,
the Cloud provides global centralization. Many
applications require both Fog localization, and
Cloud globalization, particularly for analytics
and Big Data.</p>
    </sec>
    <sec id="sec-12">
      <title>4.4.1. Smart cities</title>
      <p>Data centers are not developed to handle the
growing demands of smart city apps. As
more and more people started using more
IoT devices, more data would be transmitted
and accessed. Fog computing can help such
illequipped smart grids to deliver the actual value
of IoT app development. Large-scale sensor
networks: To monitor the environment and the
Smart Grid are other examples of inherently
distributed systems, requiring distributed
computing and storage resources. Very large
number of nodes, as a consequence of the wide
geo-distribution, as evidenced in sensor
networks in general and the Smart Grid in
particular. Support for mobility: It is essential
for many Fog applications to communicate
directly with mobile devices, and therefore
support mobility techniques, such as the LISP
protocol, that decouple host identity from
location identity, and require a distributed
directory system. Real-time interactions:
Important Fog applications involve real-time
interactions rather than batch processing.</p>
    </sec>
    <sec id="sec-13">
      <title>4.4.2 Utilities</title>
      <p>The term “utilities” includes applications for
hospitals, transportation, law enforcement, and
so that need the latest technology to deliver data
to support their operations. For instance,
information about carbon emissions, potholes
on the road, and water leakages can be used to
update billing information, save lives, and
improve operations.</p>
    </sec>
    <sec id="sec-14">
      <title>4.5. How Fog computing enhances the value of the Internet of Things solutions</title>
      <p>IoT and end-users are becoming
increasingly powerful. A large amount of data
is now being processed directly on the cloud.
Adding to that, here are six benefits that fog
computing can deliver to the IoT app
development process:</p>
      <sec id="sec-14-1">
        <title>1. Greater business agility</title>
        <p>With the right tools, you can build fog
applications and deploy them as needed. Such
applications program the device to operate in
the way a user wants.</p>
      </sec>
      <sec id="sec-14-2">
        <title>2. Better security</title>
        <p>Fog computing acts as a proxy for
resourceconstrained devices and updates their software
and security credentials. It deploys fog nodes
using the same policy, procedures, and controls
used in other parts of the IT environment.
When data is processed by a large number of
nodes in a complicated distributed system, it is
easier to monitor nearby connected devices’
security status.</p>
      </sec>
      <sec id="sec-14-3">
        <title>3. Network bandwidth efficiency</title>
        <p>Fog computing enables fast and efficient
data processing based on application
demands, computing resources, and
available networking. Pieces of information
are combined at different points instead of
just sending them to one data via one
channel.</p>
        <p>This reduces the volumes of data required
to be transferred to the cloud, thus saving
network bandwidth and considerably
reducing costs.
4. Uninterrupted services
Fog computing can run on its own and ensure
uninterrupted services even when the network
connectivity to the cloud hampers. Moreover,
due to multiple interconnected channels, loss of
connection is almost impossible.</p>
      </sec>
      <sec id="sec-14-4">
        <title>5. Improved user experience</title>
        <p>Edge nodes run power-efficient protocols such
as Zigbee, Bluetooth, or Z-Wave. Fog
computing enables instant communication
between devices and end-users, irrespective of
network connectivity, thus enhancing user
experience.</p>
      </sec>
    </sec>
    <sec id="sec-15">
      <title>5. Conclusions</title>
      <p>In this survey we have comprehensively
presented all the aspects of Fog
Computing as definitions, characteristics and
architectures. In Fog Computing, application
services run on both edge nodes with low
latency access but very limited resource
capabilities and in the cloud with higher access
latency but practically unlimited resources as
well as on possible intermediary nodes. Fog
computing as a new paradigm is a yet virtually
unexplored field that offers a number of open
research challenges As demand for vast
compute and storage needs have arisen, very
nicely handled by public cloud providers. But
the cost of transport and speed of processing has
also increased, which is challenging for many
uses cases such as mission-critical service. As a
result, many IoT initiatives are now distributing
this computing power across the edge network,
data centers, and public cloud. Fog computing
has the facility to connect everything and
become a significate part of our environment.</p>
    </sec>
    <sec id="sec-16">
      <title>6. References</title>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <surname>Dr. Ovidiu Vermesan</surname>
            <given-names>SINTEF</given-names>
          </string-name>
          , Norway, Dr. Peter FriessEU, Belgium, “
          <article-title>Internet of Things-From Research</article-title>
          and Innovation to Market Deployment”, river publishers' series in communications,
          <source>2014</source>
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>Karen</given-names>
            <surname>Rose</surname>
          </string-name>
          , Scott Eldridge, Lyman Chapin, “
          <article-title>The Internet of Things: An Overview Understanding the Issues and Challenges of a More Connected World”</article-title>
          ,
          <source>The Internet Society (ISOC)</source>
          ,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>Pallavi</given-names>
            <surname>Sethi</surname>
          </string-name>
          and
          <string-name>
            <given-names>Smruti</given-names>
            <surname>Sarangi</surname>
          </string-name>
          ,
          <article-title>"Internet of things: architectures, protocols, and applications</article-title>
          .
          <source>" Journal of Electrical and Computer Engineering</source>
          vol
          <year>2017</year>
          , pages
          <fpage>1</fpage>
          -
          <lpage>20</lpage>
          ,
          <year>2017</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>Mohammed</given-names>
            <surname>Abdmeziem</surname>
          </string-name>
          , Djamel Tandjaoui and
          <string-name>
            <given-names>Imed</given-names>
            <surname>Romdhani</surname>
          </string-name>
          ,
          <article-title>"Architecting the internet of things: state of the art</article-title>
          .
          <source>"</source>
          , Springer Cham, vol
          <volume>36</volume>
          , pages
          <fpage>55</fpage>
          -
          <lpage>58</lpage>
          ,
          <year>2016</year>
          . https://www.researchgate.net/publication/2 75352749_Architecting_the_Internet_of_ Things_State_of_the_Art
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>Margaret</given-names>
            <surname>Rouse</surname>
          </string-name>
          , “
          <article-title>Internet of Things (IoT)”</article-title>
          ,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <surname>Agarwal</surname>
            ,
            <given-names>S.</given-names>
            and S.
          </string-name>
          <string-name>
            <surname>Pati</surname>
          </string-name>
          , Study of Internet of Things.
          <source>International Journal for Scientific Research &amp; Development</source>
          ,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>Martín</given-names>
            <surname>Serrano</surname>
          </string-name>
          , Payam Barnaghi, Francois Carrez, Philippe Cousin, Ovidiu Vermesan, Peter Friess, “Internet of Things Semantic Interoperability: Research Challenges, Best Practices, Recommendations and Next Steps”,
          <source>European research cluster on the internet of things, IERC</source>
          ,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <surname>Bonomi</surname>
          </string-name>
          ,
          <string-name>
            <surname>Flavio</surname>
          </string-name>
          , et al.
          <article-title>"Fog computing and its role in the internet of things."</article-title>
          <source>Proceedings of thefirst edition of the MCC workshop on Mobile cloud computing. ACM</source>
          ,
          <year>2012</year>
          , pp.
          <fpage>13</fpage>
          -
          <lpage>16</lpage>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <surname>Schauhan</surname>
            ,
            <given-names>Cs.</given-names>
          </string-name>
          (
          <year>2016</year>
          ).
          <article-title>A Shift from Cloud Computing Model to Fog Computing</article-title>
          .
          <source>Journal of Applied Computing</source>
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>H.</given-names>
            <surname>Gupta</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A. Vahid</given-names>
            <surname>Dastjerdi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S. K.</given-names>
            <surname>Ghosh</surname>
          </string-name>
          , and
          <string-name>
            <given-names>R.</given-names>
            <surname>Buyya</surname>
          </string-name>
          , “
          <article-title>iFogSim: A toolkit for modeling and simulation of resource management techniques in the Internet of Things, Edge and Fog computing environments</article-title>
          ,”
          <string-name>
            <surname>Softw</surname>
          </string-name>
          . - Pract. Exp., vol.
          <volume>47</volume>
          , no.
          <issue>9</issue>
          , pp.
          <fpage>1275</fpage>
          -
          <lpage>1296</lpage>
          ,
          <year>2017</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>R.</given-names>
            <surname>Mahmud</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Kotagiri</surname>
          </string-name>
          , and
          <string-name>
            <given-names>R.</given-names>
            <surname>Buyya</surname>
          </string-name>
          , “
          <article-title>Fog Computing: A Taxonomy, Survey</article-title>
          and Future Directions,” pp.
          <fpage>1</fpage>
          -
          <lpage>28</lpage>
          ,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>A. V.</given-names>
            <surname>Dastjerdi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.</given-names>
            <surname>Gupta</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R. N.</given-names>
            <surname>Calheiros</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S. K.</given-names>
            <surname>Ghosh</surname>
          </string-name>
          , and
          <string-name>
            <given-names>R.</given-names>
            <surname>Buyya</surname>
          </string-name>
          , “Fog Computing: Principles, architectures, and applications,” Internet Things Princ. Paradig., pp.
          <fpage>61</fpage>
          -
          <lpage>75</lpage>
          ,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>M.</given-names>
            <surname>Aazam</surname>
          </string-name>
          and
          <string-name>
            <given-names>E. N.</given-names>
            <surname>Huh</surname>
          </string-name>
          , “
          <article-title>Fog computing and smart gateway based communication for cloud of things</article-title>
          ,
          <source>” Proc. - 2014 Int. Conf. Futur. Internet Things Cloud, FiCloud</source>
          <year>2014</year>
          , pp.
          <fpage>464</fpage>
          -
          <lpage>470</lpage>
          ,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>M.</given-names>
            <surname>Chiang</surname>
          </string-name>
          and
          <string-name>
            <given-names>T.</given-names>
            <surname>Zhang</surname>
          </string-name>
          , “Fog and
          <string-name>
            <surname>IoT</surname>
          </string-name>
          : An Overview of Research Opportunities,” IEEE Internet Things J., vol.
          <volume>3</volume>
          , no.
          <issue>6</issue>
          , pp.
          <fpage>854</fpage>
          -
          <lpage>864</lpage>
          ,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <surname>Cisco</surname>
            <given-names>Systems</given-names>
          </string-name>
          , “
          <article-title>Fog Computing and the Internet of Things: Extend the Cloud to Where the Things Are</article-title>
          ,” Www.Cisco.Com, p.
          <fpage>6</fpage>
          ,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>