You are on page 1of 17

AdHoc, IoT And Wireless Network

Assignment

Q1. What is IoT? What is meant by “Things” in IoT? What are the characteristics of IoT?
Ans.
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,use intelligent interfaces,
and are seamlessly integrated into the information network, often communicate data
associated with users and their environments.

“Things” in IoT: The "Things" in IoT usually refer to IoT devices that 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),
• Collect data from other devices and process the data locally
• Send the data to centralized servers or cloud-based application back-ends for
processing the data
• Perform some tasks locally and other tasks within the IoT infrastructure, based on
temporal and space constraints

Characteristics of IoT:
● Dynamic & Self Adapting: IoT devices and systems may have the capability to
dynamically adapt to the changing contexts and take actions based on their operating
conditions, user’s context, or sensed environment.
E.g.: the surveillance system is adapting itself based on context and changing
conditions.
● Self-configuring: allowing a large number of devices to work together to provide
certain functionality.
● Interoperable Communication Protocols: support many interoperable
communication protocols and can communicate with other devices and also with
infrastructure.
● Unique Identity: Each IoT device has a unique identity and a unique identifier (IP
address).
● Integrated into an Information Network: that allows them to communicate and
exchange data with other devices and systems.
Q2. List the various IoT protocols present in the link layer, transport layer, network layer and
application. Draw a suitable diagram.
Ans.
Protocols in Link Layer:
● 802.3-Ethernet: IEEE802.3 is a collection of wired Ethernet standards for the link
layer.
E.g.: 802.3 uses co-axial cable; 802.3i uses copper twisted pair connection; 802.3j
uses fiber-optic connection; 802.3ae uses Ethernet over fiber.
● 802.11-WiFi: IEEE802.11 is a collection of wireless LAN (WLAN) communication
standards including an extensive description of the link layer. eg.: 802.11a operates
in the 5 GHz bands, 802.11b and 802.11g operate in the 2.4 GHz band, 802.11n
operates in the 2.4/5 GHz band, 802.11ac operates in the 5 GHz band, 802.11ad
operates in the 60 GHz band.
● 802.16 - WiMax: IEEE802.16 is a collection of wireless broadband standards
including an exclusive description of the link layer. WiMax provides data rates from
1.5 Mb/s to 1 Gb/s.
● 802.15.4-LR-WPAN: IEEE802.15.4 is a collection of standards for low-rate wireless
personal area networks (LR-WPAN). The basis for high-level communication
protocols such as ZigBee. Provides data rate from 40 kb/s to 250 kb/s.
● 2G/3G/4G-Mobile Communication: Data rates from 9.6 kb/s (2G) to up to 100 Mb/s
(4G).

Protocols in the Network Layer:


● IPv4: Internet Protocol version 4 is used to identify the devices on a network using a
hierarchical addressing scheme. 32-bit address. Allows a total of 232 addresses.
● IPv6: The Internet Protocol version 6 uses a 128-bit address scheme and allows 2128
addresses.
● 6LOWPAN: (IPv6overLowpowerWirelessPersonalAreaNetwork) operates in a 2.4
GHz frequency range and data transfers 250 kb/s.

Protocols in the Transport Layer:


● TCP: Transmission Control Protocol used by web browsers (along with HTTP and
HTTPS), email (along with SMTP, and FTP). Connection-oriented and stateless
protocol. IP Protocol deals with sending packets, and TCP ensures reliable
transmission of protocols in order. Avoids n/w congestion and congestion collapse.
● UDP: User Datagram Protocol is a connectionless protocol. Useful in time-sensitive
applications, very small data units to exchange. Transaction-oriented and stateless
protocol. Does not provide guaranteed delivery.

Protocols in the Application Layer:


● HTTP: HyperText Transfer Protocol that forms the foundation of WWW. Follow
request response-model Stateless protocol.
● CoAP: Constrained Application Protocol for machine-to-machine (M2M) applications
with constrained devices, constrained environment, and constrained n/w. Uses
client-server architecture.
● WebSocket: allows full-duplex communication over a single socket connection.
● MQTT: Message Queue Telemetry Transport is a lightweight messaging protocol
based on the publish-subscribe model. Uses client-server architecture. Well suited for
the constrained environment.
● XMPP: Extensible Message and Presence Protocol for real-time communication and
streaming XML data between network entities. Support client-server and
server-server communication.
● DDS: Data Distribution Service is a data-centric middleware standard for
device-to-device or machine-to-machine communication. Uses the publish-subscribe
model.
● AMQP: Advanced Message Queuing Protocol is an open application layer protocol
for business messaging. Supports both point-to-point and publish-subscribe models.
Q3. What are the IoT Functional Blocks? Explain the following with a suitable diagram:

a. Request-Response Model
b. Publish-Subscribe Model
Ans.
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.

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.
Q4. Discuss REST-based communication APIs (Request-Response Based Model).
Ans.
Representational State Transfer (REST) is a set of architectural principles by which we
can design web services and web APIs that focus on a system’s resources and have
resource states 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.
RESTful web service is a collection of resources that are represented by URIs. RESTful web
API has a base URI (e.g.: http://example.com/api/tasks/). The clients and requests to these
URIs using the methods defined by the HTTP protocol (e.g.: GET, PUT, POST or DELETE).
A RESTful web service can support various internet media types.
Q5. Discuss any five IoT-enabling technologies.
Ans.
1. Wireless Sensor Network (WSN): Comprises distributed devices with sensors that
are used to monitor environmental and physical conditions. Zig Bee is one of the
most popular wireless technologies used by WSNs.
WSNs used in IoT systems are described as follows:
● Weather Monitoring System: in which nodes collect temp, humidity, and other
data, which is aggregated and analyzed.
● Indoor air quality monitoring systems: to collect data on the indoor air quality
and concentration of various gases.
● Soil Moisture Monitoring Systems: to monitor soil moisture at various
locations.
● Surveillance Systems: use WSNs for collecting surveillance data (motion data
detection).
● Smart Grids: use WSNs for monitoring grids at various points.
● Structural Health Monitoring Systems: Use WSNs to monitor the health of
structures (buildings, bridges) by collecting vibrations from sensor nodes
deployed at various points in the structure.
2. Cloud Computing: Services are offered to users in different forms.
● Infrastructure-as-a-service (IaaS): provides users the ability to provision
computing and storage resources. These resources are provided to the users
as a virtual machine instance and virtual storage.
● Platform-as-a-Service (PaaS): provides users the ability to develop and
deploy the application in the cloud using the development tools, APIs,
software libraries and services provided by the cloud service provider.
● Software-as-a-Service (SaaS): provides the user with a complete software
application or the user interface to the application itself.
3. Big Data Analytics: Some examples of big data generated by IoT are
● Sensor data generated by IoT systems.
● Machine sensor data is collected from sensors established in industrial and
energy systems.
● Health and fitness data generated IoT devices.
● Data generated by IoT systems for location and tracking vehicles.
● Data generated by retail inventory monitoring systems.
4. Communication Protocols: form the backbone of IoT systems and enable network
connectivity and coupling to applications.
● Allow devices to exchange data over the network.
● Define the exchange formats, data encoding addressing schemes for devices
and routing of packets from source to destination.
● It includes sequence control, flow control and retransmission of lost packets.
5. Embedded Systems: a computer system that has computer hardware and software
embedded to perform specific tasks. Embedded systems range from low-cost
miniaturized devices such as digital watches to devices such as digital cameras,
POS terminals, vending machines, appliances, etc.
Q6. Discuss the IoT reference model with a diagram.
Ans.

Level 1: Physical Devices and Controllers


The IoT Reference Model starts with Level 1: physical devices and controllers that might
control multiple devices. These are the “things” in the IoT, and they include a wide range of
endpoint devices that send and receive information. Today, the list of devices is already
extensive. It will become almost unlimited as more equipment is added to the IoT over time.

Level 2: Connectivity
Communications and connectivity are concentrated in one level—Level 2. The most
important function of Level 2 is reliable, timely information transmission. This includes
transmissions:
● Between devices (Level 1) and the network
● Across networks (east-west)
● Between the network (Level 2) and low-level information processing occurring at
Level 3
Level 3: Edge (Fog) Computing
The functions of Level 3 are driven by the need to convert network data flows into
information that is suitable for storage and higher-level processing at Level 4 (data
accumulation). This means that Level 3 activities focus on high-volume data analysis and
transformation. For example, a Level 1 sensor device might generate data samples multiple
times per second, 24 hours a day, and 365 days a year. A basic tenet of the IoT Reference
Model is that the most intelligent system initiates information processing as early and as
close to the edge of the network as possible. This is sometimes referred to as fog
computing. Level 3 is where this occurs.

Level 4: Data Accumulation


Networking systems are built to reliably move data. The data is “in motion.” Before Level 4,
data is moving through the network at the rate and organization determined by the devices
generating the data. The model is event-driven. As defined earlier, Level 1 devices do not
include computing capabilities themselves. However, some computational activities could
occur at Level 2, such as protocol translation or application of network security policy.
Additional compute tasks can be performed at Level 3, such as packet inspection. Driving
computational tasks as close to the edge of the IoT as possible, with heterogeneous
systems distributed across multiple management domains represents an example of fog
computing. Fog computing and fog services will be distinguishing characteristics of the IoT.

Level 5: Data Abstraction


IoT systems will need to scale to a corporate—or even global—level and will require multiple
storage systems to accommodate IoT device data and data from traditional enterprise ERP,
HRMS, CRM, and other systems. The data abstraction functions of Level 5 are focused on
rendering data and its storage in ways that enable the development of simpler,
performance-enhanced applications.

Level 6: Application
Level 6 is the application level, where information interpretation occurs. Software at this level
interacts with Level 5 and data at rest, so it does not have to operate at network speeds.
The IoT Reference Model does not strictly define an application. Applications vary based on
vertical markets, the nature of device data, and business needs. For example, some
applications will focus on monitoring device data. Some will focus on controlling devices.
Some will combine device and non-device data. Monitoring and control applications
represent many different application models, programming patterns, and software stacks,
leading to discussions of operating systems, mobility, application servers, hypervisors,
multi-threading, multi-tenancy, etc. These topics are beyond the scope of the IoT Reference
Model discussion. Suffice it to say that application complexity will vary widely.

Level 7: Collaboration and Processes


One of the main distinctions between the Internet of Things (IoT) and IoT is that IoT includes
people and processes. This difference becomes particularly clear at Level 7: Collaboration
and Processes. The IoT system, and the information it creates, are of little value unless it
yields action, which often requires people and processes. Applications execute a business
logic to empower people. People use applications and associated data for their specific
needs. Often, multiple people use the same application for a range of different purposes. So
the objective is not the application—it is to empower people to do their work better.
Applications (Level 6) give business people the right data, at the right time, so they can do
the right thing.

Security in the IoT


Discussions of security for each level and the movement of data between levels could fill a
multitude of papers.
For the IoT Reference Model, security measures must:
● Secure each device or system
● Provide security for all processes at each level
● Secure movement and communication between each level, whether north- or
south-bound

Q7. Explain the IoT-Fog Architecture with the help of a suitable diagram.
Ans.
Fog computing is defined as a distributed
computing paradigm. It provides and
manages more simple computing, storing,
and networking services between data
centers and producers/consumers. Fig. 1
presents a three-layer architecture for fog
computing.
1) IoT services layer: This is the
bottom-most layer or the closest layer to the
end-user and physical environment. It
encompasses all various IoT devices such
as sensors, mobile phones, smart vehicles,
smartwatches, cameras, etc. They can use
several different types of connectivity like
Bluetooth, ZigBee, Wi-Fi, LoRa, MQTT,
3G/4G, LTE, etc. Raw data or events
collected from producers do not contain any
semantic annotation and demand extensive manual effort by using practical applications.
2) Fog services layer: The intermediate layer, also known as the fog computing layer. This
layer is located on the edge of the network. It comprises a distributed large number of fog
nodes which include routers, gateways, switches, access points, base stations, micro
datacentres, fog servers, etc. Producers act at the IoT services layer always equipped with
low processing capability and limited storage. The fog services layer provides a flexible and
easy way to analyze and process raw data at the edge of the network instead of the cloud.
Moreover, this layer can model processed data to make semantic contexts and provide
interoperability
at data annotation level through concepts, attributes and the definition of relationships
between data objects. These modeled data then are mapped into a triplestore (a triple is a
data entity composed of subject-predicate-object) or RDF (resource description framework)
store by taking advantage of a web ontology language
3) Cloud services layer: The cloud computing layer is the top layer in this architecture, this
layer consists of multiple high-performance servers, datacentres and network systems that
are capable of processing and storing an enormous amount of data and providing different
applications and services.

Q8. What are the challenges faced in establishing an IoT network?


Ans.
1. Security:
Security is by far the greatest concern associated with IoT development. Since each
device is connected to a broader edge computing network, the overall attack surface
is much larger than a traditional network architecture. Many IoT devices have default
passwords left unchanged, unpatched software and other major security
vulnerabilities. To make matters worse, many devices travel between multiple
networks, potentially picking up malware along the way that helps cybercriminals
bypass some security measures. Many IoT edge devices are also autonomous,
which can cause them to behave in ways that traditional network security protocols
may not take into account when evaluating risks. Taken together, then, there are
quite a few IoT security issues to consider.

2. Connectivity Bottlenecks
The proliferation of IoT edge devices is already placing strain on many networks.
Without the right edge computing framework in place, company networks can be
bogged down by latency and subpar bandwidth. Centralized cloud networks create
significant bottlenecks, forcing devices to funnel data back to the main servers and
wait for a response. For devices like autonomous vehicles, these processing
bottlenecks are simply unacceptable.

3. Compatibility & Updates


Although there has been a great deal of standardization in the technology industry
over the last twenty years, device manufacturers still need to take compatibility
concerns into account when building their networks and addressing IoT problems.
Not only must networks be able to accommodate a wide variety of IoT edge devices,
but they also need to incorporate new functionality that allows their products to
deliver additional services. Pushing updates to these devices presents challenges in
terms of security and usability.
4. Regulation
Another common characteristic of technological innovations is that government
regulation often takes a long time to catch up with the current state of technology.
With the rapid evolution that’s happening every day in IoT, the government is taking
its time in catching up and businesses are often left without the crucial information
they need to make decisions.
The lack of strong IoT regulations is a big part of why the IoT remains a severe
security risk, and the problem is likely to get worse as the potential attack surface
expands to include ever more crucial devices. When medical devices, cars and
children’s toys are all connected to the Internet, it’s not hard to imagine many
potential disaster scenarios unfolding in the absence of sufficient regulation.

Q9. Explain the working of IoT device and WSN devices with the help of block diagrams.
Ans.
Basic elements of IoT architecture

Things: A “thing” is an object equipped with sensors that gather data which will be
transferred over a network and actuators that allow things to act (for example, to switch on or
off the light, to open or close a door, to increase or decrease engine rotation speed and
more). This concept includes fridges, street lamps, buildings, vehicles, production
machinery, rehabilitation equipment and everything else imaginable. Sensors are not in all
cases physically attached to things: sensors may need to monitor, for example, what
happens in the closest environment to a thing.
Gateways: Data goes from things to the cloud and vice versa through the gateways. A
gateway provides connectivity between things and the cloud part of the IoT solution, enables
data pre-processing and filtering before moving it to the cloud (to reduce the volume of data
for detailed processing and storing) and transmits control commands going from the cloud to
things. Things then execute commands using their actuators.
Cloud gateway facilitates data compression and secures data transmission between field
gateways and cloud IoT servers. It also ensures compatibility with various protocols and
communicates with field gateways using different protocols depending on what protocol is
supported by gateways.
Streaming data processor ensures effective transition of input data to a data lake and
control applications. No data can be occasionally lost or corrupted.
Data lake: A data lake is used for storing the data generated by connected devices in its
natural format. Big data comes in "batches" or in “streams”. When the data is needed for
meaningful insights it’s extracted from a data lake and loaded to a big data warehouse.
Big data warehouse: Filtered and pre-processed data needed for meaningful insights is
extracted from a data lake to a big data warehouse. A big data warehouse contains only
cleaned, structured and matched data (compared to a data lake which contains all sorts of
data generated by sensors). Also, the data warehouse stores context information about
things and sensors (for example, where sensors are installed) and the commands control
applications send to things.
Data analytics: Data analysts can use data from the big data warehouse to find trends and
gain actionable insights. When analyzed (and in many cases – visualized in schemes,
diagrams, and infographics) big data show, for example, the performance of devices, help
identify inefficiencies and work out the ways to improve an IoT system (make it more
reliable, more customer-oriented). Also, the correlations and patterns found manually can
further contribute to creating algorithms for control applications.
Machine learning and the models ML generates: With machine learning, there is an
opportunity to create more precise and more efficient models for control applications. Models
are regularly updated (for example, once a week or once a month) based on the historical
data accumulated in a big data warehouse. When the applicability and efficiency of new
models are tested and approved by data analysts, new models are used by control
applications.
Control applications send automatic commands and alerts to actuators, for example:
● Windows of a smart home can receive an automatic command to open or close
depending on the forecasts taken from the weather service.
● When sensors show that the soil is dry, watering systems get an automatic command
to water plants.
● Sensors help monitor the state of industrial equipment, and in case of a pre-failure
situation, an IoT system generates and sends automatic notifications to field
engineers.
The commands sent by control apps to actuators can be also stored in a big data
warehouse. This may help investigate problematic cases (for example, a control app sends
commands, but they are not performed by actuators – then connectivity, gateways and
actuators need to be checked). On the other side, storing commands from control apps may
contribute to security, as an IoT system can identify that some commands are too strange or
come in too big amounts which may evidence security breaches (as well as other problems
that need investigation and corrective measures).
Control applications can be either rule-based or machine-learning-based. In the first case,
control apps work according to the rules stated by specialists. In the second case, control
apps are using models that are regularly updated (once a week, once a month depending on
the specifics of an IoT system) with the historical data stored in a big data warehouse.
Although control apps ensure better automation of an IoT system, there should be always an
option for users to influence the behavior of such applications (for example, in cases of
emergency or when it turns out that an IoT system is badly tuned to perform certain actions).

User applications are a software component of an IoT system that enables the connection
of users to an IoT system and gives the options to monitor and control their smart things
(while they are connected to a network of similar things, for example, homes or cars and
controlled by a central system). With a mobile or web app, users can monitor the state of
their things, send commands to control applications, and set the options for automatic
behavior (automatic notifications and actions when certain data comes from sensors).

Device management
To ensure sufficient functioning of IoT devices, it’s far not enough to install them and let
things go their way. There are some procedures required to manage the performance of
connected devices (facilitate the interaction between devices, ensure secure data
transmission and more):
● Device identification to establish the identity of the device to be sure that it’s a
genuine device with trusted software transmitting reliable data.
● Configuration and control to tune devices according to the purposes of an IoT
system. Some parameters need to be written once a device is installed (for example,
unique device ID). Other settings might need updates (for example, the time between
sending messages with data).
● Monitoring and diagnostics to ensure the smooth and secure performance of every
device in a network and reduce the risk of breakdowns.
● Software updates and maintenance to add functionality, fix bugs, and address
security vulnerabilities.

User management
Alongside device management, it’s important to provide control over the users having
access to an IoT system.
User management involves identifying users, their roles, access levels and ownership in a
system. It includes such options as adding and removing users, managing user settings,
controlling access of various users to certain information, as well as the permission to
perform certain operations within a system, controlling and recording user activities and
more.
Security monitoring
Security is one of the top concerns in the Internet of Things. Connected things produce huge
volumes of data, which need to be securely transmitted and protected from cyber-criminals.
Another side is that the things connected to the Internet can be entry points for villains. What
is more, cyber-criminals can get access to the “brain” of the whole IoT system and take
control of it.
To prevent such problems, it makes sense to log and analyze the commands sent by control
applications to things, monitor the actions of users and store all these data in the cloud. With
such an approach, it’s possible to address security breaches at the earliest stages and take
measures to reduce their influence on an IoT system (for example, block certain commands
coming from control applications).
Also, it’s possible to identify the patterns of suspicious behavior, store these samples and
compare them with the logs generated by an IoT system to prevent potential penetrations
and minimize their impact on an IoT system.

Working of WSN
Wireless Sensor Network (WSN) is an infrastructure-less wireless network that is deployed
in a large number of wireless sensors in an ad-hoc manner that is used to monitor the
system, physical or environmental conditions.

The protocol stack used by the sink and the sensor nodes is given in Fig. This protocol stack
combines power and routing awareness, integrates data with networking protocols,
communicates power efficiently through the wireless medium and promotes the cooperative
efforts of sensor nodes. The protocol stack consists of the application layer, transport layer,
network layer, data link layer, physical layer, power management plane, mobility
management plane, and task management plane. Different types of application software can
be built and used on the application layer depending on the sensing tasks. This layer makes
the hardware and software of the lowest layer transparent to the end user. The transport
layer helps to maintain the flow of data if the sensor network application requires it. The
network layer takes care of routing the data supplied by the transport layer, specific
multi-hop wireless routing protocols between sensor nodes and sink. The data link layer is
responsible for the multiplexing of data streams, frame detection, Media Access Control
(MAC) and error control. Since the environment is noisy and sensor nodes can be mobile,
the MAC protocol must be power-aware and able to minimize collision with neighbors’
broadcasts. The physical layer addresses the needs of simple but robust modulation,
frequency selection, data encryption, transmission and receiving techniques.

In addition, the power, mobility, and task management planes monitor the power, movement,
and task distribution among the sensor nodes. These planes help the sensor nodes
coordinate the sensing task and lower the overall energy consumption.

Q10. What is Software-defined networking (SDN) and Network function virtualization (NFV)
for IoT?
Ans.
Software-Defined Networking (SDN):
● Software-defined networking (SDN) is a networking architecture that separates the
control plane from the data plane and centralizes the network controller.
● Software-based SDN controllers maintain a united view of the network
● The underlying infrastructure in SDN uses simple packet-forwarding hardware as
opposed to specialized hardware in conventional networks.

SDN Architecture

Key elements of SDN:


1. Centralized Network Controller
With decoupled control and data planes and a centralized network controller, the
network administrators can rapidly configure the network.
2. Programmable Open APIs
SDN architecture supports programmable open APIs for the interface between the
SDN application and control layers (Northbound interface).
3. Standard Communication Interface(OpenFlow)
SDN architecture uses a standard communication interface between the control and
infrastructure layers (Southbound interface). OpenFlow, which is defined by the Open
Networking Foundation (ONF) is the broadly accepted SDN protocol for the
Southbound interface.

Network Function Virtualization (NFV)


● Network Function Virtualization (NFV) is a technology that leverages virtualization to
consolidate heterogeneous network devices onto industry-standard high-volume
servers, switches and storage.
● NFV is complementary to SDN as NFV can provide the infrastructure on which SDN
can run.

NFV Architecture

Key elements of NFV:


1. Virtualized Network Function(VNF):
VNF is a software implementation of a network function that is capable of running
over the NFV Infrastructure (NFVI).
2. NFV Infrastructure(NFVI):
NFVI includes computing, network and storage resources that are virtualized.
3. NFV Management and Orchestration:
NFV Management and Orchestration focuses on all virtualization-specific
management tasks and covers the orchestration and life-cycle management of
physical and/or software resources that support the infrastructure virtualization and
the life-cycle management of VNFs.

You might also like