IoT UNIT 1
IoT UNIT 1
IoT is an advanced automation and analytics system which deals with artificial intelligence,
sensor, networking, electronic, cloud messaging etc. to deliver complete systems for the product
or services.
Characteristics of the IoT: The Internet of Things (IoT) is characterized by the following key
features that are mentioned below.
1. Connectivity: Connectivity is an important requirement of the IoT infrastructure. Things of IoT
should be connected to the IoT infrastructure. Anyone, anywhere, anytime can connect, this should be
guaranteed at all times. For example, the connection between people through Internet devices likes
mobile phones, and other gadgets, also a connection between Internet devices such as routers,
gateways, sensors, etc.
2. Intelligence and Identity: The extraction of knowledge from the generated data is very important.
For example, a sensor generates data, but that data will only be useful if it is interpreted properly.
Each IoT device has a unique identity. This identification is helpful in tracking the equipment and at
times for querying its status.
3. Scalability: The number of elements connected to the IoT zone is increasing day by day. Hence, an
IoT setup should be capable of handling the massive expansion. The data generated as an outcome is
enormous, and it should be handled appropriately.
4. Dynamic and Self-Adapting (Complexity): IoT devices should dynamically adapt themselves to
changing contexts and scenarios. Assume a camera meant for surveillance. It should be adaptable to
work in different conditions and different light situations (morning, afternoon, and night).
5. Architecture: IoT Architecture cannot be homogeneous in nature. It should be hybrid, supporting
different manufacturers ‘products to function in the IoT network. IoT is not owned by anyone
engineering branch. IoT is a reality when multiple domains come together.
6. Safety: There is a danger of the sensitive personal details of the users getting compromised when
all his/her devices are connected to the internet. This can cause a loss to the user. Hence, data security
is the major challenge. Besides, the equipment involved is huge. IoT networks may also be at risk.
Therefore, equipment safety is also critical.
7. Self-Configuring: This is one of the most important characteristics of IoT. IoT devices are able to
upgrade their software in accordance with requirements with a minimum of user participation.
Additionally, they can set up the network, allowing for the addition of new devices to an already-
existing network.
8. Interoperability: IoT devices use standardized protocols and technologies to ensure they can
communicate with each other and other systems. Interoperability is one of the key characteristics of
the Internet of Things (IoT). It refers to the ability of different IoT devices and systems to
communicate and exchange data with each other, regardless of the underlying technology or
manufacturer.
DESIGN OF IoT
1. Physical Design of IoT: A physical design of an IoT system refers to the individual node devices
and their protocols that are utilized to create a functional IoT ecosystem. Each node device can
perform tasks such as remote sensing, actuating, monitoring, etc., by relying on physically connected
devices. It may also be capable of transmitting information through different types of wireless or
wired connections.
(i) Things/Devices: Things/Devices are used to build a connection, process data, provide interfaces,
provide storage, and provide graphics interfaces in an IoT system. All these generate data in a form
that can be analyzed by an analytical system and program to perform operations and used to improve
the system.
(a) Connectivity: Devices like USB hosts and ETHERNET are used for connectivity between the
devices and the server.
(b) Processor: A processor like a CPU and other units are used to process the data. these data are
further used to improve the decision quality of an IoT system.
(c) Audio/Video Interfaces: An interface like HDMI and RCA devices is used to record audio and
videos in a system.
(d) Input/output interface: To give input and output signals to sensors, and actuators we use things
like UART, SPI, CAN, etc.
(e) Storage Interfaces: Things like SD, MMC, and SDIO are used to store the data generated from an
IoT device.
(ii) IoT Protocols: These protocols are used to establish communication between a node device and a
server over the internet. It helps to send commands to an IoT device and receive data from an IoT
device over the internet. We use different types of protocols that are present on both the server and
client side and these protocols are managed by network layers like application, transport, network,
and link layer.
(A) Application Layer protocol: In this layer, protocols define how the data can be sent over the
network with the lower layer protocols using the application interface. These protocols include HTTP,
Web Socket, XMPP, MQTT, DDS, and AMQP protocols.
(a) HTTP: Hypertext transfer protocol is a protocol that presents in an application layer for
transmitting media documents. It is used to communicate between web browsers and servers. It makes
a request to a server and then waits till it receives a response and in between the request server does
not keep any data between the two requests.
(b) Web Socket: This protocol enables two-way communication between a client and a host that can
be run on an entrusted code in a controlled environment. This protocol is commonly used by web
browsers.
(c) MQTT: It is a machine-to-machine connectivity protocol that was designed as a publish/subscribe
messaging transport and it is used for remote locations where a small code footprint is required.
(B) Transport Layer: This layer is used to control the flow of data segments and handle error
control. Also, these layer protocols provide end-to-end message transfer capability independent of the
underlying network.
(a) TCP: The transmission control protocol is a protocol that defines how to establish and maintain a
network that can exchange data in a proper manner using the internet protocol.
(b) UDP: a user datagram protocol is a part of an internet protocol called the connectionless protocol.
This protocol is not required to establish the connection to transfer data.
(C) Network Layer: This layer is used to send datagrams from the source network to the destination
network. We use IPv4 and IPv6 protocols as host identification that transfers data in packets.
(a) IPv4: This is a protocol address that is a unique and numerical label assigned to each device
connected to the network. An IP address performs two main functions host and location addressing.
IPv4 is an IP address that is 32-bit long.
(b) IPv6: It is a successor of IPv4 that uses 128 bits for an IP address. it is developed by the IETF
task force to deal with long-anticipated problems.
(D) Link Layer: Link-layer protocols are used to send data over the network’s physical layer. It also
determines how the packets are coded and signaled by the devices.
(a) Ethernet: It is a set of technologies and protocols that are used primarily in LANs. It defines the
physical layer and the medium access control for wired Ethernet networks.
(b) WiFi: It is a set of LAN protocols and specifies the set of media access control and physical layer
protocols for implementing wireless local area networks.
2. Logical Design of IoT: A logical design for an IoT system is the actual design of how its
components (computers, sensors, and actuators) should be arranged to complete a particular function.
IoT logical design includes:
➢ IoT functional blocks
➢ IoT communications models
➢ IoT communication APIs
(i) IoT functional blocks: IoT systems include several functional blocks such as Devices,
communication, security, services, and application. The functional blocks provide sensing,
identification, actuation, management, and communication capability.
These functional blocks consist of devices that handle the communication between the server and the
host, enables monitoring control functions, manage the data transfer, secure the IoT system using
authentication and different functions, and provide an interface for controlling and monitoring various
terms. The Functional blocks are:
(a) Device: An IoT system comprises of devices that provide sensing, actuation, monitoring, and
control functions.
(b) Communication: Handles the communication for the IoT system.
(c) Services: services for device monitoring, device control service, data publishing services, and
services for device discovery.
(d) Management: this block provides various functions to govern the IoT system.
(e) Security: This block secures the IoT system and by providing functions such as authentication,
authorization, message and content integrity, and data security.
(f) Application: This is an interface that the users can use to control and monitor various aspects of
the IoT system. The application also allows users to view the system status and view or analyze the
processed data.
(ii) IoT Communication Models: There are multiple kinds of models available in an Internet of
Things system that is used for communicating between the system and server, such as:
(a) Request-Response Model: Request-response model 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 representation, prepares the
response, and then sends the response to the client.
(b) Publisher-Subscriber Model: This model comprises three entities: Publishers, Brokers, and
Consumers. Publishers are the source of data. It sends the data to the topic which is managed by the
broker. They are not aware of consumers. Consumers subscribe to the topics which are managed by
the broker.
Brokers' responsibility is to accept data from publishers and send it to the appropriate consumers. The
broker only has the information regarding the consumer to which a particular topic belongs which the
publisher is unaware.
(c) Push-Pull Model: The push-pull model constitutes data publishers, data consumers, and data
queues. Publishers and Consumers are not aware of each other. Publishers publish the message/data
and push it into the queue. The consumers, present on the other side, pull the data out of the queue.
Thus, the queue acts as the buffer for the message when the difference occurs in the rate of push or
pull of data on the side of a publisher and consumer.
Queues help in decoupling the messaging between the producer and consumer. Queues also act as a
buffer which helps in situations where there is a mismatch between the rate at which the producers
push the data and consumers pull the data.
(d) Exclusive Pair: Exclusive Pair is the bi-directional model, including full-duplex communication
between client and server. The connection is constant and remains open till the client sends a request
to close the connection.
The Server has the record of all the connections which has been opened. This is a state-full connection
model and the server is aware of all open connections. Web Socket-based communication API is fully
based on this model.
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.
(b) Web Socket-Based Communication APIs: Web Socket APIs allow bi-directional, full-duplex
communication between clients and servers. It follows the exclusive pair communication model. This
Communication API does not require a new connection to be set up for each message to be sent
between clients and servers.
Once the connection is set up the messages can be sent and received continuously without any
interruption. Web Socket APIs are suitable for IoT Applications with low latency or high throughput
requirements.
Difference between Physical and Logical design of IoT
A WSN consists of a number of end nodes, routers and coordinators. End nodes can also act as
routers. A coordinator collects data from all the nodes and is connected to Internet. Examples of
WSNs used in IoT systems:
➢ Weather monitoring systems
➢ Indoor air quality monitoring systems
➢ Soil moisture monitoring systems
➢ Surveillance systems
➢ Smart grids
➢ Structural health monitoring systems
2. Cloud Computing: Cloud computing is a computing model in which applications and services are
delivered over Internet. The resources provisioned by cloud can be compute, networking or storage.
Cloud allows the users to access resources based on utility model. The characteristics of cloud
computing are:
(i) On demand: The resources in the cloud are available based on the traffic. If the incoming traffic
increases, the cloud resources scale up accordingly and when the traffic decreases, the cloud resources
scale down accordingly.
(ii) Autonomic: The resource provisioning in the cloud happens with very less to no human
intervention. The resources scale up and scale down automatically.
(iii) Scalable: The cloud resources scale up and scale down based on the demand or traffic. This
property of cloud is also known as elasticity.
(iv) Pay-per-use: On contrary to traditional billing, the cloud resources are billed on pay-per-use
basis. You have to pay only for the resources and time for which you are using those resources.
(v) Ubiquitous: You can access the cloud resources from anywhere in the world from any device. All
that is needed is Internet. Using Internet you can access your files, databases and other resources in
the cloud from anywhere.
Cloud computing offers three basic service models using which users can subscribe to cloud
resources. These service models are:
➢ Infrastructure-As-A-Service (IAAS)
➢ Platform-As-A-Service (PAAS)
➢ Software-As-A-Service (SAAS)
3. Big Data Analytics: Big Data is a collection of data coming from various types of sources. The
data is often huge which cannot be handled by the traditional databases and data warehouses. Big
Data is often characterized by six Vs. They are:
(i) Volume: Refers to the huge volume of data aggregated from various sources.
(ii) Variety: Refers to different types of data. Data can be structured, semi-structured or unstructured.
(iii) Velocity: Refers to the speed at which the data is generated. Now-a-days the amount of data
available on the Internet per minute is several peta bytes or even more.
(iv) Veracity: Refers to the degree to which the data can be trusted. If the data collected is incorrect
or has manipulated or wrong values, the analysis of such data is useless.
(v) Value: Refers to the business value of the collected. Even though we have huge amount of data,
but it is not useful for gaining profits in the business, such data is useless.
(vi) Variability: Refers to the ways in which the big data can be used and formatted.
The data analytics framework consists of six steps namely: collection, cleaning, integration, analysis,
visualization and alerting. These six steps can be summarized as shown in the below figure.
4. Embedded System: Embedded system can be imagined as computing hardware with software
embedded in it. An embedded system can be an independent system or it can be a part of another
larger system.
IOTLEVELANDDEPLOYMENTTEMPLATES
1. IoTLevel-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.
➢ It is suitable for modeling low- cost and low- complexity solutions where the data involved is
not big and the analysis requirements are not computationally intensive.
2. IoTLevel-2
➢ It has a single node that performs sensing and/or actuation and local analysis (IoT Device
and collected data).
➢ In this IoT Level Database and application establish in Cloud.
➢ It is useful for solutions where the data involved is big; however, the primary analysis
requirement is not computationally intensive and can be done locally itself.
3. IoTLevel-3
➢ It has a single node. Database and application establish in the cloud.
➢ It is suitable for solutions where the data involved is big and the analysis requirements are
computationally intensive.
4. IoTLevel-4
➢ It has multiple nodes that perform local analysis. It has Cloud based application and
database. These IoT System contains local and cloud- based observer nodes which can
subscribe to and receive information collected in the cloud from IoT node devices.
➢ It is suitable for solutions where we are using multiple nodes, the data involved is big and
the analysis requirements are computationally intensive.
5. IoTLevel-5
➢ It has multiple end nodes and one coordinator node. The end nodes use for sensing and/or
actuation.
➢ In this model Coordinator node collects data from the end nodes and transfer to the cloud. In
this model we used Cloud-based Database for store and Analyze data.
➢ It is suitable for solutions based on wireless sensor networks, in which the data involved is
big and the analysis requirements are computationally intensive.
6. IoTLevel-6
➢ It has multiple independent end nodes that used for sensing and/or actuation and transfer data
to the cloud. We used Cloud-based database.
➢ The analytics component analyzes the data and stores the results in the cloud database and
results are visualized with the cloud-based application.
➢ The centralized controller is aware of the status of all the end nodes and sends control