AdHoc Assignment
AdHoc Assignment
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).
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.
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 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.
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.
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.
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
NFV Architecture