0% found this document useful (0 votes)
75 views50 pages

Chapter-1 - IOT

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1/ 50

Chapter 1

Introduction to IoT
Outline

• Introduction
• IoT definition
• Characteristics of IoT
• Physical Design of IoT
• Logical Design of IoT
• IoT Protocols
• IoT Levels & Deployment Templates

Book website: http://www.internet-of-things-book.com Bahga & Madisetti, © 2015


Introduction

Internet of Things (IoT) comprises things that have unique identities and are connected to the internet.
• Existing devises , such as networked computers or 4G enabled mobile phones already have some form of unique
identities and are also connected to the internet, the focus on IoT in the configuration, control and networking via
the internet of devices or things , that are traditionally not associated with the Internet.
• These include devices such as thermostats, utility meters, a blue tooth- connected headset, irrigation pumps and
sensor or control circuits for an electric car’s engine
• Experts forecast that by the year 2020 there will be a total of 50 billion devices/ things connected to the internet.
• The scope of IoT is not limited to just connected things(Devices, appliance, machines) to the Internet.
• Applications on IoT networks extract and create information from lower level data by filtering, processing ,
categorizing, condensing and contextualizing the data.
• The information obtained is then organized and structured to infer knowledge about the system and or its user,
its environment and its operations and progress towards its objectives, allowing a smarter performance.
Definition of IoT

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 and use intelligent interfaces, and
are seamlessly integrated into the information network, often
communicate data associated with users and their environments.
Characteristics of IoT

• Dynamic & Self-Adapting


IoT devices and systems may have the capability to dynamically adapt with
the changing contexts and take actions based on their operating condition.
Ex: Surveillance cameras can adapt their modes based on whether it is day
or night
• Self-Configuring
IoT devices may have self-Configuring capability allowing a large number of
devices to work together to provide certain functionality .
Characteristics of IoT

• Interoperable Communication Protocols


IoT Devices may support a number of interoperable communication protocols and
can communicate with other devices and also with the infrastructure.
• Unique Identity
Each IoT devices has a unique identity and a unique identifier. IP address, URI).IoT
systems may have intelligent interfaces which adapt based on the context, allow
communication with users and the environment contexts
• Integrated into Information Network
IoT devices are usually integrated into the information network that allows them to
communicate and exchange data with other devices and systems.

Bahga & Madisetti, © 2015


Physical Design of IoT

• The "Things" in IoT usually refers to IoT devices which have unique
identities and can perform remote sensing, actuating and monitoring
capabilities.
• IoT devices can:
• Exchange data with other connected devices and applications (directly or
indirectly), or
• Collect data from other devices and process the data locally or
• Send the data to centralized servers or cloud-based application back-ends for
processing the data, or
• Perform some tasks locally and other tasks within the IoT infrastructure,
based on temporal and space constraints
Generic block diagram of an IoT Device

• An IoT device may consist of


several interfaces for
connections to other devices,
both wired and wireless.
• I/O interfaces for sensors
• Interfaces for Internet
connectivity
• Memory and storage
interfaces
• Audio/video
interfaces.
IoT Protocols
• Link Layer
• 802.3 – Ethernet
• 802.11 – WiFi
• 802.16 – WiMax
• 802.15.4 – LR-WPAN
• 2G/3G/4G
• Network/Internet Layer
• IPv4
• IPv6
• 6LoWPAN
• Transport Layer
• TCP
• UDP
• Application Layer
• HTTP
• CoAP
• WebSocket
• MQTT
• XMPP
• DDS
• AMQP
IoT Protocols
Link Layer:
Link Layer protocols determine how the data is physically sent over the networks physical
layer or medium(example copper wire, electrical cable, or radio wave).
The Scope of The Link Layer is the Last Local Network connections to which host is
attached. Host on the same link exchange data packets over the link layer using the link
layer protocol.
Link layer determines how the packets are coded and signaled by the hardware device
over the medium to which the host is attached.
802.3 Ethernet:
802.3 is a collections of wired Ethernet standards for the link layer.
For example 802.3 10BASE5 Ethernet that uses coaxial cable as a shared medium, 802.3.i is
standard for 10 BASET Ethernet over copper twisted pair connection, Standards provide
data rates from 10 Mb/s to 40 gigabits per second and the higher.
The shared medium in Ethernet can be a coaxial cable , twisted pair wire or and Optical
fiber.
IoT Protocols
802.1- WI-FI:
IEEE 802.3 is a collections of wireless Local area network.
(WLAN) communication standards, including extensive descriptions of the link layer.
For example 802.11a operate in the 5 GHz band, 802.11b and 802.11g operate in the 2.4 GHz band.
802.11ac operates in the 5G hertz band.
802.16 wiMAX:
IEEE 802.16 is a collection of wirless broadband and Standards, including extensive descriptions for
the link layer also called WiMAX wimax standard provides a data rates from from 1.5 Mb/s to 1Gb/s
the recent update provides data rates of hundred megabits per second for mobile station.
802.15.4 LR-WPAN:
IEEE 802.1 5.4 is a collections of standard for low rate wireless personal area network(LRWPAN).
These standard form the basis of specifications for high level communication Zigbee.
LR-WPAN standards provide data rates from 40 k b/ s.
These standards provide low cost and low speed Communications for power constrained devices.
These are the different generations of mobile communication standards including second
generation (2G including GSM and CDMA).
3rd Generation (3G including UMTS and CDMA2000) and 4th generation 4G including LTE
IoT Protocols
Network / internet layer :
The network layer are responsible for sending of IP datagrams from the source network to
the destination network.
This layer Performs the host addressing and packet routing.
The datagrams contains a source and destination address which are used to route them
from the source to the destination across multiple networks.
Host Identification is done using the hierarchy IP addressing schemes such as ipv4 or IPv6.
IPV4:
Internet protocol versions for open parents close (IPV4) is there most deployed internet
protocol that is used to identify the device is on a network using a hierarchy latest
schemes.
It uses 32 bit addresses scheme that allows total of 2 32 address. As more and more
devices got connected to the internet. The Ipv4 has succeeded by IPv6.
IPv6:
It is the newest versions of internet protocol and successor to IPv4.
IoT Protocols
6LoWPAN:
IPv6 over low power wireless personal area networks brings IP protocol to the low power
device which have limited processing capability it operate in the 2.4 GHz frequency range
and provide the data transfer rate off to 50 kb/s.
Transport layer :
The Transport layer protocols provides end-to-end message transfer capability
independent of the underlying network.
The message transfer capability can be set up on connections, either using handshake or
without handshake acknowledgements.
Provides functions such as error control , segmentation, flow control and congestion
control.
TCP:
Transmission control protocol is the most widely used to transport layer protocol that is
used by the web browsers along with HTTP , HTTPS application layer protocols email
program (SMTP application layer protocol) and file transfer protocol.
IoT Protocols
TCP is a connection Oriented and stateful protocol while IP protocol deals with sending
packets, TCP ensures reliable transmissions of packets in order.
TCP also provide error deduction capability so that duplicate packets can be discarded and
low packets are retransmitted .
The flow control capability ensures that the rate at which the sender since the data is now
to too to high for the receiver to process.
UDP:
unlike TCP, which requires carrying out an initial setup procedure, UDP is a connection less
protocol.
UDP is useful for time sensitive application they have very small data units to exchange and
do not want the overhead of connection setup.
UDP is a transactions oriented and stateless protocol. UDP does not provide guaranteed
delivery, ordering of messages and duplicate eliminations.
Application layer

Application layer protocol define how the application interfaces with


the lower layer protocols to send the data over the network.
Data are typically in files, is encoded by the application layer protocol
and encapsulated in the transport layer protocol .
Application layer protocol enable process-to-process connection using
ports.
Http

Hypertext transfer protocol is the application layer protocol that forms


the foundations of world wide web http includes, ,commands such as
GET, PUT, POST, DELETE, HEAD, TRACE, OPTIONS etc.
The protocol follows a request-response model where are client sends
request to server using the http, commands.
Http is a stateless protocol and each http request is independent father
request and http client can be a browser or an application running on
the client example and application running on an IoT device ,mobile
mobile applications or other software.
CoAP

Constrained application protocol is an application layer protocol for


machine to machine application M2M meant for constrained
environment with constrained devices and constrained networks.
Like http CoAP is a web transfer protocol and uses a request- response
model, however it runs on the top of the UDP instead of TCP.
CoAP uses a client –server architecture where client communicate with
server using connectionless datagrams.
It is designed to easily interface with http like http,CoAP supports
method such as GET, PUT, DELETE .
Websocket

Websocket protocol allows full duplex communication over a single socket


connections for sending message between client and server.
Websocket is based on TCP and Allows streams of messages to be sent back and
forth between the client and server while keeping the TCP connection open.
The client can be a browser, a mobile application and IoT device
MQTT : Message Queue Telemetry Transport it is a lightweight message protocol
based on public -subscribe model MQTT uses a client server Architecture by the
clients such as an IoT device connect to the server also called the MQTT broker and
publishers message to topic on the server.
The broker forward the message to the clients subscribed to topic MQTT is well
suited for constrained and environments.
XMPP

Extensible Messaging and Presence Protocol it is a protocol for real-time


communication and streaming XML data between network entities XMPP powers
wide range of applications including messaging, presence, data syndication, gaming
multiparty chat and voice / voice calls.
XMPP Allows sending small chunks of XML data from one network entity to another
in real time.
XMPP supports both client to server and server –client communication path.
DDS: Data distribution service is the date centric middleware standard for device
to-device machine to machine communication
DDS uses a publish subscribe model where publisher example device that generate
data create topics to which subscribers per can subscribe publisher is an object
responsible for data distributions and the subscriber responsible for receiving
published data.
AMQP

• AMQP: Advanced Message Queuing protocols.


• It is an open application layer protocol for business messaging.
• AMQP support point to point and publish - subscribe model routing
and queuing.
• AMQP broker receive message from publishers (example devices or
applications that generate data) and about them over connections
to consumers.
• Publishers publish the message to exchange which then distribute
message copies to queues.
Logical Design of IoT

• Logical design of an IoT system


refers to an abstract
representation of the entities
and processes without going
into the low-level specifics of
the implementation.

• An IoT system comprises of a


number of functional blocks
that provide the system the
capabilities for identification,
sensing, actuation,
communication, and
management.
Functional Blocks of IoT

• Communication: communication block handle the communication systems


• Services : An IoT system uses various types of IoT services such as services for
device monitoring ,device control services ,data publishing services and services
for device Discovery.
• Management: Functional blocks provide various functions to govern the IoT
system
• Security: Security functional block security IoT system and by providing functions
such as application authorization message and content integrity and data
security.
• Application: IoT application provides and interface that the user can used to
control and monitor various aspects of the IoT system. Application also allow
users to view the system status and view or analyze the processed to data.
IOT Communication Model: Request-
Response communication model
• Request-Response is a
communication model in which
the client sends requests to
the server and the server
responds to the requests.

• When the server receives a


request, it decides how to
respond, fetches the data,
retrieves resource
representations, prepares
the response, and then
sends the response to the
client.

Book website: http://www.internet-of-things-book.com Bahga & Madisetti, © 2015


Publish-Subscribe communication model

• Publish-Subscribe is a
communication model that
involves publishers, brokers and
consumers.
• Publishers are the source of data.
Publishers send the data to the
topics which are managed by the
broker. Publishers are not aware
of the consumers.
• Consumers subscribe to the topics
which are managed by the broker.
• When the broker receives data for
a topic from the publisher, it
sends the data to all the
subscribed consumers.
Push-Pull communication model

• Push-Pull is a communication
model in which the data
producers push the data to
queues and the consumers pull
the data from the queues.
Producers do not need to be
aware of the consumers.
• Queues help in decoupling the
messaging between the producers
and consumers.
• Queues also act as a buffer which
helps in situations when there is a
mismatch between the rate at
which the producers push data
and the rate rate at which the
consumers pull data.
Exclusive Pair communication model

• Exclusive Pair is a
bidirectional, fully duplex
communication model that
uses a persistent connection
between the client and
server.
• Once the connection is setup
it remains open until the
client sends a request to
close the connection.
• Client and server can send
messages to each other after
connection setup.
IoT Communication APIs:
REST-based Communication APIs
• Representational State Transfer
(REST) is a set of architectural
principles by which you can design
web services and web APIs that
focus on a system’s resources and
how resource states are
addressed and transferred.
• REST APIs follow the request-
response communication model.
• The REST architectural constraints
apply to the components,
connectors, and data elements,
within a distributed hypermedia
system.
WebSocket-based Communication APIs

• WebSocket APIs allow bi-


directional, full duplex
communication between
clients and servers.
• WebSocket APIs follow the
exclusive pair
communication model
Exclusive Pair communication model

• Exclusive Pair is a
bidirectional, fully duplex
communication model that
uses a persistent connection
between the client and
server.
• Once the connection is setup
it remains open until the
client sends a request to
close the connection.
• Client and server can send
messages to each other after
connection setup.
IoT enabling Technologies

It is enabled by several Technologies including wireless sensor


networks, cloud computing big Data Analytics, embedded system,
security protocols and architectures, communication protocols, web
service, mobile internet and semantic search engine .
wireless sensor network

• Wireless sensor network ( wsn) comprise of distributed devices with


the sensor which are used to monitor the environmental and
physical conditions.
• A WSN consists of a number of end nodes and routers and a
coordinator.
• End nodes have several sensors attached to them.
• End node can also act as a routers.
• Routers are responsible for routing the data packet from end nodes
to the coordinator.
• The coordinator node collect the data from all the notes.
coordinator also act as a Gateway that connects the WSN to the
internet.
wireless sensor network

IoT systems are described as follows


• Weather monitoring system using WSN in which the nodes collect temperature,
humidity and other data which is aggregated and analyzed .
• Indoor air quality monitoring system using WSN to collect data on the indoor air
quality and connections of various gases.
• Soil moisture monitoring system using WSN to monitor soil moisture at various
location.
• Surveillance systems use WSN for collecting surveillance data(motion detection
data)
• Smart grid use wireless sensor network for monitoring the grid at various point.
• Structural health monitoring systems use WSN to monitor the health of structure
by writing vibration data from sensor nodes deployed at various points in the
structure
Cloud computing

• Cloud Computing is a transformative computing paradigm that involves delivering applications


and services over the internet.
• Cloud Computing involves provisioning of computing networking and storage resources on
demand and providing these resources as metered services to the users, in a “ pay as you go”
model.
• cloud Computing resources can be provisioned on demand by the user without requiring
interactions with the Cloud Service Provider.
• The process of provisioning resources used automatic Cloud Computing resources can be
accessed then it worked using standard access mechanism that provide platform-independent
access through the use of heterogeneous client platforms such as workstations laptops tablets
and Smartphones.
• The computing and storage resources provided by Cloud Service Provider are pooled to serve
multiple user using multi Tenancy.
• Multi-tenant aspects on the multiple users to be served by the same physical hardware .
• Cloud Computing services are offered to user in different forms
Infrastructure as a service(IAAS)

• IaaS provides the user the ability provision computing and storage
resources.
• These resources are provided to the users as virtual machine
instances and virtual storage.
• Users can start, stop configure and manage the virtual machines
instance and virtual storage.
• User can deploy operating systems and applications on their choice
on the virtual resources provisions in the cloud .
• The Cloud Service Provider manages the underlying infrastructure.
Platform as a service(PaaS)

• Platform as a service provides the user the ability to develop and


deploy application in the cloud using the deployment tool
application programming interfaces (APIs), software libraries and
services provided by the Cloud Service Provider.
• The Cloud Service Provider manages the underlying cloud
infrastructure including servers, network, operating systems and
storage .
Software as a service(SaaS)

• Provide the user a complete software applications of the user


interface to the application itself .
• The Cloud Service Provider manage the underlying cloud
infrastructure including server, network storage and application
software, and the user is unaware of the underlying architecture of
the cloud.
• Applications are provided to the user through a thin client interface
example Browser application.
• SaaS applications are accessed from various client workstations,
tablets and smartphones running different operating system.
Big Data Analytics

Big data is defined as collections of data set whose volume, velocity in


terms of its temporal variations ) or variety, is so large that it is difficult
to store, manage, process and analyze the data using traditional
database and data processing tools.
Big Data Analytics involving several steps starting from Data cleaning
data munging data processing and visualization.
Big Data Analytics

Some examples of big data generated by IoT systems are described as


follows
1. Sensor data generated by IoT system such as weather monitoring
stations
2. Machine sensor data collected from sensor embedded in Industrial
and energy system for monitoring their health and detecting failure.
3. Health and fitness data generated by IoT devices such as wearable
fitness band.
4. Data generated by IoT system for Location and tracking of vehicle.
5. Data generated by retail inventory monitoring system.
Characteristics of big data

• Volume: Through there is no fixed threshold for volume of data to


be considered as big data, however the term big data is used for
massive scale data that is difficult to store, manage and process
using traditional data bases and data processing architecture.
• The volume of data generated by modern IT, industrial and
Healthcare systems for example is a growing exponentially driven by
the lowering cost of data storage and processing architectures and
the need to extract valuable insights from the data to improve
business processes, efficiency and services to consumer.
Characteristics of big data

• Velocity: Velocity is another important characteristics of big data


and the primary reasons for exponential growth of data.
• Velocity of the data refers to how fast the data is generated and how
frequently it varies.
• Modern IT Industrial and other systems are generating data at
increasing the highest speeds.
• Variety: Variety refers to the forms of the data.
• Big data comes in for different forms such as structured or
unstructured data including text data, audio, video and sensor data .
Communications protocol

• Communications protocols form the backbone of IoT system and


enable network connectivity and coupling to applications.
• Communications protocols allow device to exchange data over the
network.
• These protocols define the data exchange formats and data
encoding schemes for devices and routing of packets from source to
destination.
• Other function of the protocol include sequence control, flow
control and transmissions of Lost packet.
Embedded systems

An Embedded system is computer system that has computer hardware


and software embedded perform specific task.
In contrast to general purpose computers or personal computers which
can perform various types of tasks, embedded systems are designed to
perform a specific set of tasks.
Embedded system include Microprocessor and Microcontroller memory
(Ram, ROM, cache) networking units (Ethernet, WI-FI adaptor)
input/output unit (display, keyboard) and storage such as Flash
Memory.
Some embedded system have specialist processes such as digital signal
processor(DSP), graphic processor and application.
IoT Levels & Deployment Templates

An IoT system comprises of the following components:


• Device: An IoT device allows identification, remote sensing, actuating and
remote monitoring capabilities. You learned about various examples of IoT
devices in section
• Resource: Resources are software components on the IoT device for
accessing, processing, and storing sensor information, or controlling
actuators connected to the device. Resources also include the
software components that enable network access for the device.
• Controller Service: Controller service is a native service that runs on
the device and interacts with the web services. Controller service sends
data from the device to the web service and receives commands from
the application (via web services) for controlling the device.
IoT Levels & Deployment Templates

• Database: Database can be either local or in the cloud and stores the data
generated by the IoT device.
• Web Service: Web services serve as a link between the IoT device,
application, database and analysis components. Web service can be
either implemented using HTTP and REST principles (REST service) or using
WebSocket protocol (WebSocket service).
• Analysis Component: The Analysis Component is responsible for analyzing
the IoT data and generate results in a form which are easy for the user to
understand.
• Application: IoT applications provide an interface that the users can use to
control and monitor various aspects of the IoT system. Applications also
allow users to view the system status and view the processed data.
IoT Level-1

• A level-1 IoT system has a


single node/device that
performs sensing and/or
actuation, stores data,
performs analysis and hosts
the application
• Level-1 IoT systems are
suitable for modeling low-
cost and low-complexity
solutions where the data
involved is not big and the
analysis requirements are
not computationally
intensive.
IoT Level-2

• A level-2 IoT system has a


single node that performs
sensing and/or actuation and
local analysis.
• Data is stored in the cloud and
application is usually cloud-
based.
• Level-2 IoT systems are
suitable for solutions where
the data involved is big,
however, the primary analysis
requirement is not
computationally intensive and
can be done locally itself.
IoT Level-3

• A level-3 IoT system has a


single node. Data is
stored and analyzed in the
cloud and application is
cloud- based.
• Level-3 IoT systems are
suitable for solutions
where the data involved is
big and the analysis
requirements are
computationally intensive.
IoT Level-4

• A level-4 IoT system has multiple


nodes that perform local analysis.
Data is stored in the cloud and
application is cloud-based.
• Level-4 contains local and cloud-
based observer nodes which can
subscribe to and receive
information collected in the cloud
from IoT devices.
• Level-4 IoT systems are suitable
for solutions where multiple
nodes are required, the data
involved is big and the analysis
requirements are computationally
intensive.
IoT Level-5

• A level-5 IoT system has multiple end


nodes and one coordinator node.
• The end nodes that perform sensing
and/or actuation.
• Coordinator node collects data from
the end nodes and sends to the cloud.
• Data is stored and analyzed in the
cloud and application is cloud-based.
• Level-5 IoT systems are suitable for
solutions based on wireless sensor
networks, in which the data involved
is big and the analysis requirements
are computationally intensive.
IoT Level-6

• A level-6 IoT system has multiple


independent end nodes that
perform sensing and/or actuation
and send data to the cloud.
• Data is stored in the cloud and
application is cloud-based.
• The analytics component analyzes
the data and stores the results in
the cloud database.
• The results are visualized with the
cloud-based application.
• The centralized controller is aware
of the status of all the end nodes
and sends control commands to
the nodes.

You might also like