1. Unit – 1
Introduction to IoT
Dr. Sashi Kanth Reddy A
Associate Professor
Department of MCA
NITTE Meenakshi Institute of Technology
2. Internet of Things
• 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.
4. Characteristics of IoT
• Dynamic & Self-Adapting
• Self-Configuring
• Interoperable Communication Protocols
• Unique Identity
• Integrated into Information Network
5. Characteristics of IoT
1. 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.
2. 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 like
mobile phones, and other gadgets, also a connection between Internet devices
such as routers, gateways, sensors, etc.
6. Characteristics of IoT
3. Dynamic and self-Adapting – 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).
4. 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.
5. Interoperability – Interoperability is critical for the success of IoT, as it enables different
devices and systems to work together seamlessly and provides a seamless user experience.
Without interoperability, IoT systems would be limited to individual silos of data and devices,
making it difficult to share information and create new services and applications. To achieve
interoperability, IoT devices, and systems use standardized communication protocols and data
formats. These standards allow different devices to understand and process data in a consistent
and reliable manner, enabling data to be exchanged between devices and systems regardless of
the technology used.
7. Characteristics of IoT
6. 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.
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. Security - Security is a critical concern for the Internet of Things (IoT), as IoT devices
and systems handle sensitive data and are connected to critical infrastructure. The
increasing number of connected devices and the amount of data being transmitted over
the Internet make IoT systems a prime target for cyberattacks. To secure IoT systems,
multiple layers of security are necessary, including physical security, network security
and data security.
8. IoT Architecture and Protocols
IoT is a 4-Stage Layered Architecture
• Sensing Layer
• Network Layer
• Data Processing Layer
• Application Layer
9. IoT Architecture and Protocols
1. Sensing Layer
• Responsible for collecting data from different sources.
• It includes sensors, actuators placed in environment.
• Collects information like temperature, humidity, sound, light, and other physical
parameters.
• The devices in this layer are connected to network layer either on wired or wireless
communication protocols.
10. IoT Architecture and Protocols
2. Network Layer
• Responsible for providing communication and connectivity between devices in the
IoT system.
• Includes protocols and technologies that enable devices to connect and
communicate with each other and with the wider internet.
• network technologies that are commonly used in IoT include Wi-Fi, Bluetooth,
Zigbee, and cellular networks such as 4G and 5G
11. IoT Architecture and Protocols
3. Data Processing Layer
• Refers to the software and hardware components that are responsible for
collecting, analyzing, and interpreting data from IoT devices.
• Responsible for receiving raw data from the devices, processing it, and making it
available for further analysis or action.
• The data processing layer includes a variety of technologies and tools, such as data
management systems, analytics platforms, and machine learning algorithms.
• These tools are used to extract meaningful insights from the data and make
decisions based on that data
12. IoT Architecture and Protocols
4. Application Layer
• Topmost layer that interacts directly with the end-user.
• It is responsible for providing user-friendly interfaces and functionalities that
enable users to access and control IoT devices.
• This layer includes various software and applications such as mobile apps, web
portals, and other user interfaces that are designed to interact with the underlying
IoT infrastructure.
• It also includes middleware services that allow different IoT devices and systems
to communicate and share data seamlessly.
• The application layer also includes analytics and processing capabilities that allow
data to be analyzed and transformed into meaningful insights
• This can include machine learning algorithms, data visualization tools, and other
advanced analytics capabilities.
14. Application Layer Protocols
• HTTP: Hypertext Transfer Protocol is the most widely used protocol for
navigating the Internet and to make data available over REST-APIs. The main
advantage of using HTTP for IoT is that web application developers can use the
same mechanism to send data to a Webserver - via an HTTP POST request. The
drawbacks are that HTTP uses a connectionless request-respond communication,
meaning every message needs to include authentication information—which
requires data and energy consumption. Nevertheless HTTP might be ideal for use
cases which have fewer data and battery constraints and where devices already
need to call existing REST-APIs. Like MQTT and MQTT over WebSocket, HTTP
is one of the protocols that is supported by standard IoT cloud services such as
AWS IoT and Azure IoT
15. Application Layer Protocols
• MQTT: MQTT is a lightweight communication protocol specifically designed for
IoT and M2M applications. It’s ideal for remote environments or applications with
limited bandwidth. MQTT uses a connection oriented publish/subscribe
architecture, where MQTT applications can either publish (transmit) or subscribe
to (receive) topics, and an MQTT broker passes information from the publishing
client to the subscribed client. So for instance, an oil rig may have a predictive
maintenance sensor that detects changes in vibrations and uses the MQTT
protocol. The sensor “publishes” the vibration level to the broker, which the
MQTT broker then passes to a software application that has subscribed to the topic
“vibrations,” which can then trigger an alert when the level is above a threshold.
16. Application Layer Protocols
• WebSockets: WebSocket is a bi-directional communication protocol designed to
quickly send large quantities of data in web applications. A WebSocket establishes
a connection between client and server and therefore after the initial connection
establishment—every single message only has small overhead. Devices and
servers can simultaneously transmit and receive data in real-time, making this
protocol best-suited for IoT applications where low latency is critical,
communication happens frequently, and data consumption is less important.
17. Application Layer Protocols
• CoAP (Constrained Application Protocol): Constrained Application
Protocol (CoAP) is designed for low-power, lossy networks, also known as
“constrained” networks. CoAP is usually paired with User Datagram Protocol
(UDP) which makes it highly efficient, making it appealing for IoT applications
where battery conservation is important. For example, it’s often used in smart
meter communications. CoAP can also use TCP or SMS as transport mechanism.
18. Application Layer Protocols
• XMPP (Extensive Messaging and Presence Protocol): Extensible
Messaging and Presence Protocol is a communications protocol built on
Extensible Markup Language (XML). XMPP was initially designed for instant
messaging (IM) – which also explains that it comes with an overhead for the
exchange of presence information and is not optimized for memory constrained
devices. Nevertheless XMPP allows for the definition of the message format and
therefore handles very well structured data, as well as establishes a device’s
identity and facilitates communications between different platforms. This open-
source technology is highly accessible and is still being enhanced with new IoT-
related developments
19. Application Layer Protocols
• AMQP (Advanced Message Queuing Protocol): AMQP is an open
source protocol for Message-Oriented Middleware (MOM). It’s designed to
facilitate communications between systems, devices, and applications from
multiple vendors and it was not directly designed for IoT. Opposed to MQTT it
supports more routing options than just publish / subscribe on topics – but this
flexibility comes with complexity on application setup and additional protocol
overhead. AMQP is also supported by Azure IoT for device communication.
20. Application Layer Protocols
• DDS (Data Distribution Service): Data Distribution Service protocol is a
real-time, interoperable communication protocol designed for solutions that
require significant coordination, reliable transmissions, and distributed processing
between the devices itself. Instead of sending data to a central hub or broker, data
can be directly been exchanged between peers making it more robust and efficient.
DDS uses a publish/subscribe mechanism where devices subscribe to a topic and
devices sending to the topic are then using multicast to distribute the information
to the subscribers. DDS can use TCP and UDP as transmission protocol
21. Microprocessor and Types
• A processing device that converts data into information based on some sets of
instructions.
• A processing device implemented on a single chip is called a microprocessor
• The “brain” of IoT devices and are responsible for executing the computer’s
instructions.
• A microprocessor is a type of CPU designed for use in embedded systems; they
are small, low-power units that are highly efficient for their size and can perform a
wide range of tasks.
22. Microprocessor vs Microcontroller
Parameter Microprocessor Microcontroller
Definition
Microprocessors can be understood as the heart of
a computer system.
Microcontrollers can be understood as the heart of
an embedded system.
What is it?
A microprocessor is a processor where the
memory and I/O component are connected
externally.
A microcontroller is a controlling device wherein the
memory and I/O output component are present
internally.
Circuit complexity
The circuit is complex due to external connection. Microcontrollers are present on chip memory. The
circuit is less complex.
Memory and I/O
components
The memory and I/O components are to be
connected externally.
The memory and I/O components are available.
Compact system
compatibility
Microprocessors can’t be used in compact system. Microcontrollers can be used with a compact
system.
Efficiency Microprocessors are not efficient. Microcontrollers are efficient.
Zero status flag Microprocessors have a zero status flag. Microcontroller doesn’t have a zero status flag.
Number of registers
Microprocessors have less number of registers. Microcontrollers have more number of registers.
Applications
Microprocessors are generally used in personal
computers.
Microcontrollers are generally used in washing
machines, and air conditioners.
24. Architecture Types
• Vectored Processor
• Array Processor or SIMD Processor
• Scalar Processor
• RISC and SISC Processor
• Digital Signal Processor
• Symbolic Processor
• Graphics Processor
25. Types of Microprocessors
• CISC –
• The instructions are in a complex form
• It means that a single instruction can contain many low-level instructions.
• Examples of CISC are Intel 386, Intel 486, Pentium, Pentium Pro, Pentium
II/III/IV, i3, i5, i7, i9, AMD, etc.
• RISC –
• The instructions are quite simple, and hence, they execute quickly.
• the instructions get complete in one clock cycle and also use a few
addressing modes only.
• Examples are IBM RS6000, DEC Alpha 21064, DEC Alpha 21164, etc.
26. Types of Microprocessors
• ARM – Advanced RISC Machine
• There are many reasons to choose ARM, three stand out as it relates to IIoT
device development:
• Low Power Consumption
• Integrated Components
• A global support community
27. Characteristics of CISC
• As the instructions are complex hence, the decoding of instructions is also
complex.
• The size of instructions is greater than the one-word size.
• Instruction can take more than one clock cycle to execute.
• The number of registers is less since most of the operations are performed in
memory itself.
• The address modes are also complex.
• Data types are more in number.
28. Characteristics of RISC
• As the instruction is simple hence, the decoding of instructions is also simple.
• The size of instructions is under the one-word size.
• Instruction takes one clock cycle to execute.
• The number of registers is more.
• The address modes are also simple.
• Data types are less in number.
• Can be used for pipelining.
29. Advantages of CISC & RISC
Advantages of CISC:
• Microprogramming in CISC is as easy as the assembly language implementation.
• The number of instructions for performing operations is less in number. Hence, the
memory usage is low. Moreover, time consumption is also less.
Advantages of RISC:
• Instructions are simple hence easy to understand and decode.
• The instructions complete in one clock cycle therefore, CPU can handle multiple
instructions at a time.
• Designing the RISC processors is easier in comparison to the CISC processors.