0% found this document useful (0 votes)
315 views32 pages

IoT Practical Protocols and Applications

The document summarizes several key protocols and technologies used in internet of things systems, including Wi-Fi, IPv4/IPv6, Bluetooth, ZigBee, 6LoWPAN, MQTT, AMQP, DDS, and LoRaWAN. It also describes two simple Arduino programs - one to blink an LED and another to simulate a basic traffic light using LEDs.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
315 views32 pages

IoT Practical Protocols and Applications

The document summarizes several key protocols and technologies used in internet of things systems, including Wi-Fi, IPv4/IPv6, Bluetooth, ZigBee, 6LoWPAN, MQTT, AMQP, DDS, and LoRaWAN. It also describes two simple Arduino programs - one to blink an LED and another to simulate a basic traffic light using LEDs.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Enrollment No.

:- 202003103520101

Practical – 1
Aim:-To study introduction to internet of things, general IoT architecture. To
study internet of things and its various protocols like Wi-Fi, IPv4/IPv6,
Bluetooth, ZigBee, 6LowPAN, MQTT, AMQP, DDS, LoRAWAN.

Wi-Fi:
Wi-Fi is a family of wireless network protocols, based on the IEEE 802.11 family of standards,
which are commonly used for local area networking of devices and Internet access, allowing
nearby digital devices to exchange data by radio waves.
Wi-Fi uses multiple parts of the IEEE 802 protocol family and is designed to interwork
seamlessly with its wired sibling, Ethernet. Compatible devices can network through wireless
access points to each other as well as to wired devices and the Internet. The different versions of
Wi-Fi are specified by various IEEE 802.11 protocol standards, with the different radio
technologies determining radio bands, and the maximum ranges, and speeds that may be
achieved. Wi-Fi most commonly uses the 2.4 gigahertz (120 mm) UHF and 5 gigahertz (60 mm)
SHF radio bands; these bands are subdivided into multiple channels. Channels can be shared
between networks but, within range, only one transmitter can transmit on a channel at a time.

IPv4/IPv6:
The Internet Protocol (IP) is one of the most important communication protocols in the Internet
Protocol Suite, which is used for routing and addressing packets for networking devices such as
computers, laptops and fiber switches across a single network or a series of interconnected
networks. There are currently two versions of Internet Protocol: IPv4 (IP version 4) and IPv6 (IP
version 6).
IPv4 is the fourth version of IP, which establishes the rules for computer networks functioning
on the principle of packet exchange. It can uniquely identify devices connected to the network
through an addressing system. Whenever a device gets access to the Internet, it is assigned a
unique, numerical IP address. The IPv4 uses a 32-bit address scheme allowing to store 2^32
addresses. The increasing end-users connected to the Internet leads to the exhaustion of IPv4
addresses. That’s also why the new Internet addressing system, IPv6, is being deployed to fulfill
the need for more Internet addresses.
IPv6 was deployed in 1999 concerning that the demand for IP addresses would exceed the
available supply. It allows communication and data transfer to take place over a network. IPv6 is
a 128-bit IP address which supports 2^128 Internet addresses in total. The use of IPv6 not only
solves the problem of limited network addresses resources but also resolves the barriers for
multiple access devices to connect to the Internet.

CGPIT/CE/SEM-7/INTERNET OF THINGS    1 
 
Enrollment No.:- 202003103520101

Bluetooth:
Bluetooth is a short-range wireless technology standard that is used for exchanging data between
fixed and mobile devices over short distances and building personal area networks (PANs). It
employs UHF radio waves in the ISM bands, from 2.402 GHz to 2.48 GHz. It is mainly used as
an alternative to wire connections, to exchange files between nearby portable devices and
connect cell phones and music players with wireless headphones. In the most widely used mode,
transmission power is limited to 2.5 milliwatts, giving it a very short range of up to 10 meters.

ZigBee:
Zigbee is an IEEE 802.15.4-based specification for a suite of high-level communication
protocols used to create personal area networks with small, low-power digital radios, such as for
home automation, medical device data collection, and other low-power low-bandwidth needs,
designed for small scale projects which need wireless connection. Hence, Zigbee is a low-power,
low data rate, and close proximity wireless ad hoc network.
Its low power consumption limits transmission distances to 10–100 meters line-of-sight,
depending on power output and environmental characteristics.[1] Zigbee devices can transmit
data over long distances by passing data through a mesh network of intermediate devices to
reach more distant ones. Zigbee is typically used in low data rate applications that require long
battery life and secure networking. Zigbee has a defined rate of 250 kbit/s, best suited for
intermittent data transmissions from a sensor or input device.

6LowPAN:
6LoWPAN (acronym of "IPv6 over Low-Power Wireless Personal Area Networks") was a
working group of the Internet Engineering Task Force (IETF). It was created with the intention
of applying the Internet Protocol (IP) even to the smallest devices, enabling low-power devices
with limited processing capabilities to participate in the Internet of Things.
The 6LoWPAN group defined encapsulation, header compression, neighbor discovery and other
mechanisms that allow IPv6 to operate over IEEE 802.15.4 based networks. Although IPv4 and
IPv6 protocols do not generally care about the physical and MAC layers they operate over, the
low power devices and small packet size defined by IEEE 802.15.4 make it desirable to adapt to
these layers.

MQTT:
MQTT stands for Message Queuing Telemetry Transport. MQTT is a machine to machine
internet of things connectivity protocol. It is an extremely lightweight and publish-subscribe
messaging transport protocol.

CGPIT/CE/SEM-7/INTERNET OF THINGS    2 
 
Enrollment No.:- 202003103520101

This protocol is useful for the connection with the remote location where the bandwidth is a
premium. These characteristics make it useful in various situations, including constant
environment such as for communication machine to machine and internet of things contexts. It is
publish and subscribe system where we can publish and receive the messages as a client. It
makes it easy for communication between multiple devices.
It is a simple messaging protocol designed for the constrained devices and with low bandwidth,
so it's a perfect solution for the internet of things applications.

AMQP:
The Advanced Message Queuing Protocol (AMQP) is an open standard application layer
protocol for message-oriented middleware. The defining features of AMQP are message
orientation, queuing, routing (including point-to-point and publish-and-subscribe), reliability and
security.
AMQP mandates the behavior of the messaging provider and client to the extent that
implementations from different vendors are interoperable, in the same way as SMTP, HTTP,
FTP, etc. have created interoperable systems. Previous standardizations of middleware have
happened at the API level and were focused on standardizing programmer interaction with
different middleware implementations, rather than on providing interoperability between
multiple implementations. Unlike JMS, which defines an API and a set of behaviors that a
messaging implementation must provide, AMQP is a wire-level protocol. A wire-level protocol
is a description of the format of the data that is sent across the network as a stream of bytes.
Consequently, any tool that can create and interpret messages that conform to this data format
can interoperate with any other compliant tool irrespective of implementation language.

DDS:
Data Distribution Service (DDS) enables scalable, real-time, reliable, excessive-overall
performance and interoperable statistics change via submit-subscribe technique. DDS makes use
of brokerless architecture and of multicasting to convey high-quality QoS to applications. DDS
can deploy in platforms ranging from low-footprint devices to the cloud and supports green
bandwidth usage in addition to the agile orchestration of system additives.
The DDS — IoT protocols have fundamental layers: facts centric submit-subscribe (dcps) and
statistics-local reconstruction layer (dlrl). Dcps plays the task of handing over the facts to
subscribers, and the dlrl layer presents an interface to dcps functionalities, permitting the sharing
of distributed data amongst IoT enabled objects.

CGPIT/CE/SEM-7/INTERNET OF THINGS    3 
 
Enrollment No.:- 202003103520101

LoRAWAN:
LoRaWAN is a low-power, wide area networking protocol built on top of the LoRa radio
modulation technique. It wirelessly connects devices to the internet and manages communication
between end-node devices and network gateways. Usage of LoRaWAN in industrial spaces and
smart cities is growing because it is an affordable long-range, bi-directional communication
protocol with very low power consumption — devices can run for ten years on a small battery. It
uses the unlicensed ISM (Industrial, Scientific, Medical) radio bands for network deployments.
An end device can connect to a network with LoRaWAN in two ways:

 Over-the-air Activation (OTAA): A device has to establish a network key and an


application session key to connect with the network.
 Activation by Personalization (ABP): A device is hardcoded with keys needed to
communicate with the network, making for a less secure but easier connection.

CGPIT/CE/SEM-7/INTERNET OF THINGS    4 
 
Enrollment No.:- 202003103520101

Practical – 2
Aim:- To study Arduino UNO development board with pin specification and
perform the following programs on Arduino boards.
a) To develop an application of blinking LED using Arduino. (Simulator
Tinker cad)
Components:-
 Arduino UNO
 LED

Code:-
void setup()
{
pinMode(13, OUTPUT);
}

void loop()
{
digitalWrite(13, HIGH);
delay(1000);
digitalWrite(13, LOW);
delay(1000);
}

CGPIT/CE/SEM-7/INTERNET OF THINGS    5 
 
Enrollment No.:- 202003103520101

Circuit:-

b) To develop an application of Traffic signal with LED's using Arduino Uno.


(Simulator Tinker cad)
Components:-
 Arduino UNO
 LEDs
 Resistor

Code:-
void setup()
{
pinMode(13, OUTPUT);

CGPIT/CE/SEM-7/INTERNET OF THINGS    6 
 
Enrollment No.:- 202003103520101

pinMode(12, OUTPUT);
pinMode(11, OUTPUT);
}

void loop()
{
digitalWrite(13, HIGH);
delay(1000);
digitalWrite(13, LOW);
delay(1000);

digitalWrite(12, HIGH);
delay(1000);
digitalWrite(12, LOW);
delay(1000);

digitalWrite(11, HIGH);
delay(1000);
digitalWrite(11, LOW);
delay(1000);
}

CGPIT/CE/SEM-7/INTERNET OF THINGS    7 
 
Enrollment No.:- 202003103520101

Circuit:-

CGPIT/CE/SEM-7/INTERNET OF THINGS    8 
 
Enrollment No.:- 202003103520101

Practical – 3
Aim:- Perform the following programs on Arduino boards.
a) To develop an application that measures the temperature of a room.
(Simulator Tinker cad)
Components:-
 Arduino UNO
 Temperature sensor

Code:-
float temp;
int tempPin = A0;

void setup() {
[Link](9600);
pinMode(tempPin,INPUT);
}

void loop() {
temp = analogRead(tempPin);
temp = temp * 0.48828125;
[Link]("TEMPERATURE = ");
[Link](temp);
[Link]("*C");
[Link]();
delay(1000);
}

CGPIT/CE/SEM-7/INTERNET OF THINGS    9 
 
Enrollment No.:- 202003103520101

Circuit:-

b) To develop an application that measures water level. (Simulator Tinker


cad)
Components:-
 Arduino UNO
 Water level sensor

Code:-
int lowerThreshold = 420;
int upperThreshold = 520;

// Sensor pins
#define sensorPower 7
#define sensorPin A0

// Value for storing water level


int val = 0;

CGPIT/CE/SEM-7/INTERNET OF THINGS    10 


 
Enrollment No.:- 202003103520101

void setup() {
[Link](9600);
pinMode(sensorPower, OUTPUT);
digitalWrite(sensorPower, LOW);
}

void loop() {
int level = readSensor();

if (level == 0) {
[Link]("Water Level: Empty");
}
else if (level > 0 && level <= lowerThreshold) {
[Link]("Water Level: Low");
}
else if (level > lowerThreshold && level <= upperThreshold) {
[Link]("Water Level: Medium");

}
else if (level > upperThreshold) {
[Link]("Water Level: High");
}
delay(1000);
}

//This is a function used to get the reading


int readSensor() {

CGPIT/CE/SEM-7/INTERNET OF THINGS    11 


 
Enrollment No.:- 202003103520101

digitalWrite(sensorPower, HIGH);
delay(10);
val = analogRead(sensorPin);
digitalWrite(sensorPower, LOW);
return val;
}

Circuit:-

CGPIT/CE/SEM-7/INTERNET OF THINGS    12 


 
Enrollment No.:- 202003103520101

Practical – 4
Aim:- Perform the following programs on Arduino boards
a) Blinking LED using Arduino Uno
Components:-
 Arduino UNO
 LED

Code:-
void setup()
{
pinMode(13, OUTPUT);
}

void loop()
{
digitalWrite(13, HIGH);
delay(1000);
digitalWrite(13, LOW);
delay(1000);
}

CGPIT/CE/SEM-7/INTERNET OF THINGS    13 


 
Enrollment No.:- 202003103520101

Circuit:-

b) Traffic signal with LED's using Ardiuno Uno


Components:-
 Arduino UNO
 LEDs
 Bread board

Code:-
void setup()
{
pinMode(13, OUTPUT);
pinMode(12, OUTPUT);
pinMode(11, OUTPUT);

CGPIT/CE/SEM-7/INTERNET OF THINGS    14 


 
Enrollment No.:- 202003103520101

void loop()
{
digitalWrite(13, HIGH);
delay(1000);
digitalWrite(13, LOW);
delay(1000);

digitalWrite(12, HIGH);
delay(1000);
digitalWrite(12, LOW);
delay(1000);

digitalWrite(11, HIGH);
delay(1000);
digitalWrite(11, LOW);
delay(1000);
}

CGPIT/CE/SEM-7/INTERNET OF THINGS    15 


 
Enrollment No.:- 202003103520101

Circuit:-

CGPIT/CE/SEM-7/INTERNET OF THINGS    16 


 
Enrollment No.:- 202003103520101

c) Measures temperature of a room using Ardiuno Uno


Components:-
 Arduino UNO
 Temperature sensor

Code:-
float temp;
int tempPin = A0;

void setup() {
[Link](9600);
pinMode(tempPin,INPUT);
}

void loop() {
temp = analogRead(tempPin);
temp = temp * 0.48828125;
[Link]("TEMPERATURE = ");
[Link](temp);
[Link]("*C");
[Link]();
delay(1000);
}

CGPIT/CE/SEM-7/INTERNET OF THINGS    17 


 
Enrollment No.:- 202003103520101

Circuit:-

Output:-

CGPIT/CE/SEM-7/INTERNET OF THINGS    18 


 
Enrollment No.:- 202003103520101

d) Measure water level using Ardiuno Uno


Components:-
 Arduino UNO
 Water level sensor

Code:-
int lowerThreshold = 420;
int upperThreshold = 520;

// Sensor pins
#define sensorPower 7
#define sensorPin A0

// Value for storing water level


int val = 0;

void setup() {
[Link](9600);
pinMode(sensorPower, OUTPUT);
digitalWrite(sensorPower, LOW);
}

void loop() {
int level = readSensor();

if (level == 0) {
[Link]("Water Level: Empty");
}

CGPIT/CE/SEM-7/INTERNET OF THINGS    19 


 
Enrollment No.:- 202003103520101

else if (level > 0 && level <= lowerThreshold) {


[Link]("Water Level: Low");
}
else if (level > lowerThreshold && level <= upperThreshold) {
[Link]("Water Level: Medium");

}
else if (level > upperThreshold) {
[Link]("Water Level: High");
}
delay(1000);
}

//This is a function used to get the reading


int readSensor() {
digitalWrite(sensorPower, HIGH);
delay(10);
val = analogRead(sensorPin);
digitalWrite(sensorPower, LOW);
return val;
}

CGPIT/CE/SEM-7/INTERNET OF THINGS    20 


 
Enrollment No.:- 202003103520101

Circuit:-

Output:-

CGPIT/CE/SEM-7/INTERNET OF THINGS    21 


 
Enrollment No.:- 202003103520101

Practical – 5
Aim:- To develop an application which sense motion of an object using
Arduino and display appropriate message on LCD display.
Components:-
 Arduino UNO
 16x2 LCD display
 Bread board

Code:-
#include "LiquidCrystal.h"
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
void setup() {
[Link](16,2);
[Link](0,0);
[Link](" Hello");
[Link](0,1);
[Link](" World");
}
void loop(){}

Circuit:-

CGPIT/CE/SEM-7/INTERNET OF THINGS    22 


 
Enrollment No.:- 202003103520101

Practical – 6
Aim:- To study NodeMCU development board with pin specification and
develop an application to send and receive data with NodeMCU using HTTP
request. (LED ON/OFF application)
Components:-
 NodeMCU
 LED
 Bread board

Code:-
#include <ESP8266WiFi.h>
#define LED D2 // LED at GPIO4 D2

const char* ssid = "ram"; //enter your wi-fi name


const char* password = "meet2602"; //enter the wifi password
unsigned char status_led=0;

WiFiServer server(80);

void setup() {

[Link](115200);
pinMode(LED, OUTPUT);
digitalWrite(LED, LOW);

// Connect to WiFi network


[Link]();
[Link]();

CGPIT/CE/SEM-7/INTERNET OF THINGS    23 


 
Enrollment No.:- 202003103520101

[Link]("Connecting to ");
[Link](ssid);

[Link](ssid, password);

while ([Link]() != WL_CONNECTED) {


delay(500);
[Link](".");
}

[Link]("");
[Link]("WiFi connected");

// Start the server


[Link]();
[Link]("Server started at...");
[Link]([Link]());
}

void loop() {

// Check if a client has connected


WiFiClient client = [Link]();
if (!client) {
return;
}

CGPIT/CE/SEM-7/INTERNET OF THINGS    24 


 
Enrollment No.:- 202003103520101

// Wait until the client sends some data


[Link]("new client");
while (! [Link]())
{
delay (1);
}

// Read the first line of the request


String req = [Link]('\r');
[Link](req);
[Link]();

// Match the request


if ([Link]("/ledoff") != -1) {
status_led=0;
digitalWrite(LED, LOW);
[Link]("LED OFF");
}
else if([Link]("/ledon") != -1)
{
status_led=1;
digitalWrite(LED,HIGH);
[Link]("LED ON");
}

// Return the response


[Link]("HTTP/1.1 200 OK");

CGPIT/CE/SEM-7/INTERNET OF THINGS    25 


 
Enrollment No.:- 202003103520101

[Link]("Content-Type: text/html");
[Link]("Connection: close");
[Link]("");

[Link]("<!DOCTYPE HTML>");
[Link]("<HTML>");
[Link]("<H1> LED CONTROL </H1>");
[Link]("<br />");

[Link]("<a href=\"/ledon\"\"> <button style='FONT-SIZE: 50px; HEIGHT:


200px;WIDTH: 300px; 126px; Z-INDEX: 0; TOP: 200px;'> LED ON </button> </a>");
[Link]("<a href=\"/ledoff\"\"> <button style='FONT-SIZE: 50px; HEIGHT: 200px;
WIDTH: 300px; 126px; Z-INDEX: 0; TOP: 200px;'> LED OFF </button> </a>");
[Link]("</html>");
delay(1);
[Link]("Client disonnected");
[Link]("");
}

Circuit:-

CGPIT/CE/SEM-7/INTERNET OF THINGS    26 


 
Enrollment No.:- 202003103520101

Output:-

CGPIT/CE/SEM-7/INTERNET OF THINGS    27 


 
Enrollment No.:- 202003103520101

Practical – 7
Aim:- To develop an application that measures the room temperature and
post the temperature to Thingspeak platform.
Components:-
 NodeMCU
 Temperature sensor
 Bread board

Code:-
#include <ESP8266WiFi.h>
const char* ssid = "ram";
const char* password = "meet2602";
int LM35 = A0; //Analog channel A0 as used to measure temperature
WiFiServer server(80);

void setup()
{
[Link](115200);
delay(10);
[Link]();
[Link]();
[Link]("Connecting to ");
[Link](ssid);
[Link](ssid, password);
while ([Link]() != WL_CONNECTED) {
delay(500);
[Link](".");
}

CGPIT/CE/SEM-7/INTERNET OF THINGS    28 


 
Enrollment No.:- 202003103520101

[Link]("");
[Link]("WiFi connected");
[Link]();
[Link]("Server started");
[Link]("Use this URL to connect: ");
[Link]("[Link] //URL IP to be typed in mobile/desktop browser
[Link]([Link]());
[Link]("/");
}
void loop()
{
WiFiClient client = [Link]();
if (!client) {
return;
}
[Link]("new client");
while (![Link]()) {
delay(1);
}
String request = [Link]('\r');
[Link](request);
[Link]();

float temperatureC;
float temperatureF;
int value = LOW;
if ([Link]("/Tem=ON") != -1) {

CGPIT/CE/SEM-7/INTERNET OF THINGS    29 


 
Enrollment No.:- 202003103520101

float reading = analogRead(LM35); //Analog pin reading output voltage by Lm35


float temperatureC = LM35 / 3.1; //Finding the true centigrate/celsius temperature
[Link]("CENTI TEMP= ");
[Link](temperatureC); //Print centigrade temperature on Serial Monitor
float temperatureF = ((temperatureC ) * 9.0 / 5.0) + 32.0;
[Link]("FARE TEMP= ");
[Link](temperatureF); //Print farenheight temperature on Serial Monitor

value = HIGH;
}

[Link]("HTTP/1.1 200 OK");


[Link]("Content-Type: text/html");
[Link](""); // do not forget this one
[Link]("<!DOCTYPE HTML>");
[Link]("<html>");

[Link]("Celcius temperature =");


[Link](temperatureC);
[Link]("Farenheight temperature =");
[Link](temperatureF);

if (value == HIGH) {
[Link]("Updated");
} else {
[Link]("Not Updated");
}

CGPIT/CE/SEM-7/INTERNET OF THINGS    30 


 
Enrollment No.:- 202003103520101

[Link]("<br><br>");
[Link]("<a href=\"/Tem=ON\"\"><button>Update Temperature</button></a><br
/>");
[Link]("</html>");
delay(1);
[Link]("Client disonnected");
[Link]("");

Circuit:-

CGPIT/CE/SEM-7/INTERNET OF THINGS    31 


 
Enrollment No.:- 202003103520101

Output:-

CGPIT/CE/SEM-7/INTERNET OF THINGS    32 


 

Common questions

Powered by AI

IPv4, using a 32-bit addressing system, supports approximately 4.29 billion unique addresses, which has led to address exhaustion as the number of devices connected to the internet has increased . Conversely, IPv6, with its 128-bit addressing system, provides an exponentially larger number of addresses, ensuring future scalability and accommodating the growing demand due to the proliferation of IoT devices .

6LoWPAN facilitates the operation of IPv6 over low-power, low-bandwidth networks by providing header compression and encapsulation techniques that allow seamless integration with standard internet protocols . By enabling IPv6 capabilities in constrained networks, 6LoWPAN addresses interoperability challenges, ensuring low-power IoT devices can communicate effectively over diverse network technologies .

AMQP ensures interoperability by defining a wire-level protocol, meaning that it specifies the format of the data exchanged between systems, rather than just providing an API . Its core features include message orientation, queuing, robust routing (including both point-to-point and publish-subscribe models), reliability, and security . By standardizing the behavior of both messaging providers and clients, AMQP allows diverse systems to effectively interoperate, similar to how HTTP or SMTP facilitates web or email services .

LoRaWAN is designed for low-power, wide-area networking and is particularly beneficial in industrial and smart city environments due to its long-range and bi-directional communication capabilities, coupled with very low power requirements allowing devices to operate for long periods on small batteries . LoRaWAN supports two activation methods: Over-the-air Activation (OTAA), where devices establish network and application session keys on connection for a secure operation; and Activation by Personalization (ABP), where device keys are preset, offering simplicity but less security .

6LoWPAN enables the integration of low-power wireless personal area networks into the Internet by adapting the IPv6 protocol for constrained networks . It utilizes header compression and mesh networking to ensure efficient routing and addressing over limited bandwidth and power resources . This capability is pivotal in expanding the reach of IoT by allowing small, low-power devices, such as sensors and actuators, to participate in larger, global networks .

ZigBee optimizes energy efficiency in IoT applications by employing a low-power operation model, enabling nodes to go into a sleep mode to preserve battery life . Network formation is optimized by leveraging a mesh topology which facilitates robust, long-distance communication between devices as data can be relayed across multiple nodes to reach distant endpoints . This architecture not only conserves power but also enhances network reliability and scalability .

MQTT is a lightweight, publish-subscribe messaging protocol, ideal for IoT applications due to its low overhead, which requires minimal bandwidth and device power . It supports efficient communication through its simple message structure and subscribe-publish model, allowing devices with low processing capabilities to communicate effectively over networks where bandwidth is constrained . This makes MQTT particularly suited for IoT scenarios where multiple device intercommunications are critical .

The Data Distribution Service (DDS) protocol plays a vital role in ensuring real-time communication in distributed IoT environments by using a brokerless publish-subscribe model . This model allows for scalable and high-performance data exchange, meeting the stringent quality of service requirements typical of real-time applications . DDS ensures interoperability across different systems and devices, allowing applications to function seamlessly regardless of the underlying hardware or software differences .

IPv4 uses a 32-bit address scheme allowing for approximately 4.29 billion addresses (2^32), which has led to address exhaustion due to the increasing number of Internet-connected devices . In contrast, IPv6 utilizes a 128-bit addressing scheme which supports 2^128 unique addresses, providing a vastly larger address pool . This transition to IPv6 not only addresses the shortage of network addresses but also simplifies address assignment, increases routing efficiency, and enhances network security .

ZigBee, based on IEEE 802.15.4, is designed for creating low-power, low-data-rate personal area networks suited for applications like home automation and industrial applications . Its advantages include low power consumption, which leads to longer battery life in devices; scalability through a mesh network topology that extends coverage by relaying data through intermediate devices; and secure networking, which is paramount in IoT applications where data integrity and confidentiality are critical .

You might also like