Lecture - 14 IoT Cloud Computing - SLCTED
Lecture - 14 IoT Cloud Computing - SLCTED
A Cloud based IoT platform needs usually to select one from the three different service
models: IaaS, PaaS or SaaS.
• The initial success of the Cloud is due to the possibility to embed practically any
legacy applications within Virtual Machines (VMs), which are managed by an external
stakeholder.
• This permits to relieve the application owner from managing physical infrastructures.
• PaaS, on the other hand, provides a platform allowing customers to develop, run, and
manage applications.
• Finally, SaaS is a software licensing and delivery model in which software is licensed
on a subscription basis and is centrally hosted.
• SaaS is typically accessed by users using a thin client via a web browser.
• Cloud-based IoT platforms are usually based on the SaaS paradigm and provide IoT-
related services using a web interface on a pay-per-use basis.
• For example, a service such as Xively1 provides a web service with a database able to
store sensors data points. This data is then processed and displayed in various
graphics.
• The third V is referencing the heterogeneity of the data: structure and unstructured,
diverse data models, query language, and data sources.
• The LoRa Alliance has issued the LoRaWAN specification [3] in a tentative for standardization of
public, large-scale LoRa LPWAN infrastructures featuring multi-gateways and full
network/application servers’ architecture.
• This specification also defines the set of common channels for communications, the packet format,
Medium Access Control (MAC) commands.
• This architecture can however be greatly simplified for small, ad-hoc deployment scenarios where
the gateway can directly push data to some servers or IoT-specific cloud platforms if properly
configured.
• Cloud forms the virtual world in an IOT ecosystem, on the other hand the embedded
devices all together constitute the physical world of the IOT system. These two lies at
the extreme ends of IOT interconnected by the internet.
• Cloud is a remote server that host applications, services and platforms to provide
services and solutions within an IOT environment.
• The IOT devices producing this data may be located anywhere around the globe. So,
a cloud must be able to connect, communicate and direct data and information
on an “Any Time, Any Place & Any Thing " basis.
• The storage, processing and analysis of data on a cloud to derive useful insights are
collectively known as 'Cloud Computing’.
• The major activities in cloud Computing involve delivering data, applications,
photos, videos and much more things over the Internet to the cloud.
• Cloud computing acts as a paradigm for big data storage and analytics. The real
evolution comes from combining IoT with cloud computing. For example, sensory
data can be uploaded and stored with cloud computing, later to be used
intelligently for smart monitoring and actuation with other smart devices.
• Cloud computing in IoT features rapid elasticity which means that users can
readily scale the services to their needs. They can easily and quickly edit the
software setup, add or remove users, increase storage space, etc. These
characteristics further empower IoT by providing elastic computing power,
storage, and networking.
IoT cloud Challenges
Any cloud (server) must have the following
capabilities -
1. It must be capable to access, store, analyze, process and
monitor big data.
IOT services may be accessed by billions of devices which could
have lot of data to share and exchange over the network and
across the cloud. There can be many other real-life examples of
cloud-based services and applications. For example, even Gmail is
a cloud service that is utilized by computers, laptops and mobile
devices. A Gmail user can register an account, access his/her
account, send or receive emails from anywhere and any device.
There are billions of Gmail accounts and each account could have
hundreds and thousands of sent and received mails.
2. Data must remain secure and protected on a cloud.
The data stored on a cloud could be private or even confidential. It
must be securely stored over the cloud so that only an authentic
user or device could access it. Also, while communicating over the
network, it must remain secured so that it could not be hacked by
an attacker.
3. The cloud must be capable of providing inter-service and
inter-device communication.
The big data and big data analytics require abundant IT resources
and efficient softwares. A cloud must be able to optimize the
requirements of IT infrastructure, so that the purpose of an IOT
system is fulfilled in the most cost-effective manner.
Architecture of IOT cloud
The architecture underlines all the background processes that
usually remain hidden and abstracted. A typical cloud architecture
can be represented by the following block diagram
Data Ingestion: The first thing that a cloud needs to do is to collect data from
the network. The process of importing data from IOT devices to the cloud is
called Data Ingestion Process.
It aggregates the data from IOT devices and distributes the data for further
processing. It also works in reverse direction by distributing data over to the
IoT devices. Clouds use certain protocols when receiving the data from the
network as well as when transmitting the data to the devices.
Pipelining:
After the data has been collected, it is the responsibility of IOT cloud to
manage the data in a proper way. The process of pipelining includes several
tasks as follow
Device Registry:
To manage the data onto the cloud, there is a section for registration
of devices with their unique IDs so that both users and cloud can
uniquely identify the devices and access those devices.
Transforming Data:
When the data is arrived to cloud, it may need to be converted to other
formats. For example, the signal voltages acquired from a temperature and
humidity sensor may need to be converted to a calibrated unit of temperature
and humidity.
Data storage:
The Data from the physical world comes in various forms. Cloud Platforms
provide enough storage to store the data in a structured manner. The Cloud
platforms provide reliable, high-performance and secured storage space. The
bulk amount of data can be stored on a cloud and can be accessed remotely
at anytime from anywhere in the world.
Real Time Data Analytics:
After the data storage, cloud platforms can perform some kind of analytics on that
data and convert it into feasible actions for human use. Cloud Platforms analyze
information and process the information with some kind of mathematics or logic i.e.
converting the data into information in order to perform automated tasks.
The cloud after processing the data, can send the data to other IOT devices to
perform some tasks based on that or can provide the data to other computing
engines.
IOT Clouds as Service Providers
The clouds are the service providers in an IOT environment. There are many as-
a-Service roles of cloud computing. All these as-a-Service roles are cloud
services rendered by the cloud platforms.
• IaaS comes at the bottom of the cloud computing services stack in which IaaS
provider provides fundamental building blocks of computing resources to the
clients over the Internet such as networking resources, hardware, software,
storage and many other IT infrastructure components.
• IaaS provider grants access to all these resources to the clients and is responsible
for housing, operating and maintaining all these equipments.
• IaaS users pay on a per-use basis, typically by the hour, week or month. Some ISP
providers also charge users according to the storage space used by the users.
• Vendor/Provider is responsible for configuring and maintaining the
infrastructure. So, users or enterprises do not need to worry about infrastructure
upgrades and they can focus on the task or application instead.
• Some of the well-known IaaS providers are Amazon Web services, Windows Azure
and Google Compute Engine.
Platform as a service (PaaS):
• PaaS provides a platform to the users to develop, run and manage applications
without the complexity of building and dealing with the infrastructure of the
platform
• PaaS is typically associated with developing and launching an app in a constrained
environment.
• Some examples of PaaS solutions are the “Google App Engine” system, “Heroku”
which operates on top of the Amazon Web Services and “Force.com” built as part of
the SalesForce.com Software as a Service offering.
Software as a Service (SaaS):
• The top layer of the cloud computing is SaaS in which the end user
operates the software applications only like email, word
processing etc. Instead of installing and maintaining software, the
users simply access these softwares via Internet.
• They do not need to worry about complex software
development and hardware management.