Unit-Ii Iot
Unit-Ii Iot
Topic1: M2M
In telemedicine, M2M devices can enable the real time monitoring of patients'
vital statistics, dispensing medicine when required or tracking healthcare assets.
The combination of the IoT, AI and ML is transforming and improving mobile
payment processes and creating new opportunities for different purchasing
behaviors. Digital wallets, such as Google Wallet and Apple Pay, will most likely
contribute to the widespread adoption of M2M financial activities.
Page | 2
Smart home systems have also incorporated M2M technology. The use of M2M in
this embedded system enables home appliances and other technologies to have real
time control of operations as well as the ability to remotely communicate.
M2M is also an important aspect of remote-control software, robotics, traffic
control, security, logistics and fleet management and automotive.
Page | 3
business performance across multiple groups. Another way to look at it is that M2M
affects how businesses operate, while IoT does this and affects end users.
For example, in the product restocking example above, M2M involves the
vending machine communicating to the distributor's machines that a refill is needed.
Incorporate IoT and an additional layer of analytics is performed; the vending
machine can predict when particular products will need refilling based on purchase
behaviors, offering users a more personalized experience.
M2M security
Machine-to-machine systems face a number of security issues, from
unauthorized access to wireless intrusion to device hacking. Physical security,
privacy, fraud and the exposure of mission-critical applications must also be
considered.
Typical M2M security measures include making devices and machines
tamper-resistant, embedding security into the machines, ensuring communication
security through encryption and securing back-end servers, among others.
Segmenting M2M devices onto their own network and managing device identity, data
confidentiality and device availability can also help combat M2M security risks.
M2M standards
Machine-to-machine technology does not have a standardized device platform,
and many M2M systems are built to be task- or device-specific. Several key M2M
standards, many of which are also used in IoT settings, have emerged over the
years, including:
OMA DM (Open Mobile Alliance Device Management), a device management
protocol
OMA LightweightM2M, a device management protocol
MQTT, a messaging protocol
TR-069 (Technical Report 069), an application layer protocol
HyperCat, a data discovery protocol
OneM2M, a communications protocol
Google Thread, a wireless mesh protocol
AllJoyn, an open source software framework
Page | 4
This means that network devices, such as routers and switches, are responsible for
forwarding packets and determining how the network should operate.
With SDN, the control plane is decoupled from the data plane and
implemented in software, allowing for centralized network control. The control plane,
also called the network controller, is responsible for making decisions about how
traffic should be forwarded, based on the overall network policy. The data plane, on
the other hand, is responsible for forwarding traffic based on the decisions made by
the control plane.
In SDN, network devices are called switches, and they are typically simple,
low-cost devices that forward traffic based on the instructions received from the
network controller. The controller communicates with the switches using a standard
protocol, such as Open Flow, which allows the controller to program the switches to
forward traffic in a particular way.
Page | 5
In traditional networking, network devices such as routers and switches have
a tightly coupled control plane and data plane. This means that the devices are
responsible for both forwarding packets and making decisions about how the
network should operate. However, in software-defined networking (SDN), the control
plane is separated from the data plane, allowing for centralized control of the
network.
In SDN, the data plane is implemented in network devices, such as switches,
and is responsible for forwarding packets based on the instructions received from the
centralized control plane. This allows for greater flexibility and scalability in the
network, as the data plane can be reprogrammed in real-time to accommodate
changing network conditions.
What is Control Plane?
In computer networking, the control plane is part of a network device or
system that is responsible for managing and controlling the flow of network traffic.
It is responsible for making decisions about how packets are forwarded
across the network based on factors such as network topology, routing protocols,
and network policies.
The control plane operates at a higher network stack level than the data
plane, typically at Layer 3 (the Network layer) and above in the OSI model. It is
responsible for routing, switching, and traffic engineering tasks.
In traditional networking, the control plane and data plane are tightly coupled,
meaning that network devices such as routers and switches are responsible for
forwarding packets and making decisions about how the network should operate.
However, in software-defined networking (SDN), the control plane is separated from
the data plane, allowing for centralized network control.
In SDN, the controller communicates with the network devices in the data
plane using a standard protocol, such as Open Flow, to program the devices to
forward packets in a particular way.
The benefits of a separate control plane in SDN include greater network
flexibility and scalability, as the network policy can be changed in real-time to meet
changing network conditions. It also allows for easier network management, as the
network can be managed from a centralized location.
SDN Architecture
The architecture of software-defined networking (SDN) consists of three main
layers: the application layer, the control layer, and the infrastructure layer. Each layer
has a specific role and interacts with the other layers to manage and control the
network.
Page | 6
1. Infrastructure Layer: The infrastructure layer is the bottom layer of the SDN
architecture, also known as the data plane. It consists of physical and virtual network
devices such as switches, routers, and firewalls that are responsible for forwarding
network traffic based on the instructions received from the control plane.
2. Control Layer: The control layer is the middle layer of the SDN architecture, also
known as the control plane. It consists of a centralized controller that communicates
with the infrastructure layer devices and is responsible for managing and configuring
the network. The controller interacts with the devices in the infrastructure layer using
protocols such as Open Flow to program the forwarding behaviour of the switches
and routers. The controller uses network policies and rules to make decisions about
how traffic should be forwarded based on factors such as network topology, traffic
patterns, and quality of service requirements.
3. Application Layer: The application layer is the top layer of the SDN architecture
and is responsible for providing network services and applications to end-users. This
layer consists of various network applications that interact with the control layer to
manage the network.
Examples of applications that can be deployed in an SDN environment
include network virtualization, traffic engineering, security, and monitoring. The
application layer can be used to create customized network services that meet
specific business needs.
The main benefit of the SDN architecture is its flexibility and ability to
centralize control of the network. The separation of the control plane from the data
plane enables network administrators to configure and manage the network more
Page | 7
easily and in a more granular way, allowing for greater network agility and faster
response times to changes in network traffic.
Advantages of SDN:
Software-defined networking (SDN) offers several advantages over traditional
networking architectures, including:
o Centralized Network Control: One of the key benefits of SDN is that it
centralizes the control of the network in a single controller, making it easier to
manage and configure the network. This allows network administrators to
define and enforce network policies in a more granular way, resulting in better
network security, performance, and reliability.
o Programmable Network: In an SDN environment, network devices are
programmable and can be reconfigured on the fly to meet changing network
requirements. This allows network administrators to quickly adapt the network
to changing traffic patterns and demands, resulting in better network
performance and efficiency.
o Cost Savings: With SDN, network administrators can use commodity
hardware to build a network, reducing the cost of proprietary network
hardware. Additionally, the centralization of network control can reduce the
need for manual network management, leading to cost savings in labor and
maintenance.
o Enhanced Network Security: The centralized control of the network in SDN
makes it easier to detect and respond to security threats. The use of network
policies and rules allows administrators to implement fine-grained security
controls that can mitigate security risks.
o Scalability: SDN makes it easier to scale the network to meet changing traffic
demands. With the ability to programmatically control the network,
administrators can quickly adjust the network to handle more traffic without
the need for manual intervention.
o Simplified Network Management: SDN can simplify network management
by abstracting the underlying network hardware and presenting a logical view
of the network to administrators. This makes it easier to manage and
troubleshoot the network, resulting in better network uptime and reliability.
Overall, SDN offers a more flexible, programmable, and centralized approach to
networking that can result in significant cost savings, enhanced network security,
and improved network performance and reliability.
Disadvantages of SDN
Page | 8
While software-defined networking (SDN) has several advantages over traditional
networking, there are also some potential disadvantages that organizations should
be aware of. Here are some of the main disadvantages of SDN:
o Complexity: SDN can be more complex than traditional networking because
it involves a more sophisticated set of technologies and requires specialized
skills to manage. For example, the use of a centralized controller to manage
the network requires a deep understanding of the SDN architecture and
protocols.
o Dependency on the Controller: The centralized controller is a critical
component of SDN, and if it fails, the entire network could go down. This
means that organizations need to ensure that the controller is highly available
and that they have a robust backup and disaster recovery plan in place.
o Compatibility: Some legacy network devices may not be compatible with
SDN, which means that organizations may need to replace or upgrade these
devices to take full advantage of the benefits of SDN.
o Security: While SDN can enhance network security, it can also introduce new
security risks. For example, a single point of control could be an attractive
target for attackers, and the programmability of the network could make it
easier for attackers to manipulate traffic.
o Vendor Lock-In: SDN solutions from different vendors may not be
interoperable, which could lead to vendor lock-in. This means that
organizations may be limited in their ability to switch to another vendor or
integrate new solutions into their existing network.
o Performance: The centralized control of the network in SDN can introduce
latency, which could impact network performance in certain situations.
Additionally, the overhead of the SDN controller could impact the performance
of the network as the network scales.
Page | 9
hardware, leading to greater flexibility, scalability, and cost-effectiveness. NFV
enables network operators to quickly and easily deploy and scale network functions
as needed, without the need for physical hardware installation or maintenance. By
virtualizing network functions, operators can also reduce their capital and operational
expenditures, and increase their network agility, flexibility, and scalability.
NFV is often used in conjunction with software-defined networking (SDN),
another approach to network architecture that separates the control plane and data
plane of the network, allowing for centralized network management and
orchestration. Together, NFV and SDN enable network operators to build more agile
and efficient networks that can adapt to changing business and user requirements.
How does network functions virtualization work?
Network functions virtualization (NFV) works by virtualizing network functions
that were traditionally performed by specialized hardware devices, such as routers,
switches, firewalls, and load balancers. These network functions are abstracted from
their underlying hardware and implemented as software-based virtual network
functions (VNFs) that run on standard servers, storage, and switches.
NFV is typically implemented using a virtualization layer that allows multiple VNFs to
run on the same physical infrastructure. This virtualization layer provides isolation
between the VNFs, enabling them to run independently of each other, and also
provides resource management and allocation, ensuring that each VNF gets the
resources it needs to operate effectively.
Components of NVF architecture:
The NFV architecture typically includes the following components:
Page | 10
1. Virtualization layer: This layer provides the virtualization environment that
enables multiple VNFs to run on the same physical infrastructure. It includes a
hypervisor or container-based virtualization platform that provides isolation,
resource allocation, and management for the VNFs.
2. Virtual network functions (VNFs): These are the software-based network
functions that perform specific network tasks, such as routing, switching,
firewalling, load balancing, and encryption. The VNFs are typically deployed
as virtual machines or containers and run on the virtualization layer.
3. NFV infrastructure (NFVI): This is the physical infrastructure that provides
the computing, storage, and networking resources needed to support the
VNFs. The NFVI can be located in the data centre, at the network edge, or in
the cloud.
4. Management and orchestration (MANO): This component provides the
management and orchestration functions needed to deploy, monitor, and
manage the VNFs running on the NFVI. It includes functions such as service
orchestration, resource allocation, fault management, and performance
management.
Overall, NFV enables organizations to deploy network functions more quickly and
cost-effectively while also providing greater flexibility, scalability, and agility. By
virtualizing network functions, operators can create a more dynamic and efficient
network architecture that can adapt to changing business and user requirements.
Benefits of Network Function Virtualization:
There are several benefits to using Network Function Virtualization (NFV) in
modern network architectures. Here are a few key reasons why organizations may
choose to adopt NFV:
1. Cost savings: NFV can help organizations reduce costs by replacing
dedicated hardware devices with software-based virtualized network functions
running on commodity hardware. This can help to reduce capital expenditures
and operational costs associated with purchasing, deploying, and maintaining
specialized hardware.
2. Agility and flexibility: NFV enables network operators to quickly and easily
deploy and scale network functions as needed, without the need for physical
hardware installation or maintenance. This can help to reduce the time to
market for new services and applications, and improve the agility and
flexibility of the network.
Page | 11
3. Scalability: NFV can help to improve network scalability by enabling
organizations to scale up or down the capacity of virtualized network functions
as needed, based on changing traffic patterns and demand.
4. Enhanced network security: NFV can help to improve network security by
enabling the deployment of virtualized network functions that can detect and
mitigate security threats, such as firewalls, intrusion detection systems, and
encryption services.
5. Service innovation: NFV can enable organizations to innovate and introduce
new network services and applications more quickly and easily since the
virtualized network functions can be easily deployed and scaled as needed.
Overall, NFV provides a flexible, scalable, and cost-effective approach to network
architecture, allowing organizations to build more agile, efficient, and innovative
networks that can adapt to changing business and user requirements.
Risk of Network Function Virtualization
While there are many benefits to network functions virtualization (NFV),
organizations should consider some risks and challenges before implementing NFV.
Here are a few potential risks of NFV:
1. Complexity: NFV can add complexity to network architecture, as it involves
deploying and managing multiple virtualized network functions on a shared
physical infrastructure. This can make troubleshooting issues more
challenging and ensure overall network performance.
2. Security: NFV introduces new security risks, as virtualized network functions
may be vulnerable to attacks that exploit vulnerabilities in the virtualization
software or the underlying hardware infrastructure. Proper security measures
must be put in place to mitigate these risks.
3. Integration with legacy systems: Integrating NFV with existing legacy
systems and network architectures can be challenging and may require
additional investment in new hardware and software to enable compatibility.
4. Performance and reliability: The performance and reliability of NFV may be
impacted by the virtualization layer and the underlying hardware
infrastructure. Organizations must ensure that they have the right resources in
place to support the VNFs and to deliver the desired performance and
reliability.
5. Vendor lock-in: Organizations that adopt NFV may become locked into a
particular vendor or technology, which can limit their flexibility and ability to
switch vendors or technologies in the future.
Page | 12
Overall, while NFV can offer significant benefits in terms of cost savings, agility,
and flexibility, organizations should carefully consider the potential risks and
challenges before implementing this technology in their networks. They should also
ensure that they have the right expertise, tools, and processes in place to
successfully deploy, manage, and secure their NFV environments.
Page | 13
Let’s discuss all the ten steps in the IoT design methodology with the help of a case
study: Home Automation System.
1. Purpose and Requirements Specification
First step is to define the purpose and requirements of the system. In this step,
the system purpose, behavior and requirements are captured. Requirements can be:
Data collection requirements
Data analysis requirements
System management requirements
Security requirements
User interface requirements
For home automation system the purpose and requirements specification is as
follows:
2. Process Specification
The use cases of the IoT system are formally described based on or derived
from the purpose and requirements specifications. The process specification for
home automation system is as shown below.
Page | 14
3. Domain Model Specification
The domain model describes the main concepts, entities and objects in the
domain of the IoT system to be designed. Domain model defines the attributes of the
objects and relationships between objects. The domain model is independent of any
specific technology or platform. Using domain model, system designers can get an
understanding of the IoT domain for which the system is to be designed. The
entities, objects and concepts defined in the domain model of home automation
system include the following:
Page | 15
• Network-resources include software components that are available on
the network (eg: database)
Page | 16
we first list the virtual entities. Later more details like attributes and relationships are added.
The information model specification for home automation system is as shown below:
5. Service Specifications
The service specification defines the following:
Services in the system
Service types
Service inputs/output
Service endpoints
Service schedules
Service preconditions
Service effects
For each state and attribute in the process specification and information model,
we define a service. Services either change the state of attributes or retrieve their
current values. The service specification for each state in home automation systems
are as shown below:
Page | 17
6. IoT Level Specification
Based on the requirements we will choose the IoT application deployment
level. The deployment level for home automation system is shown in the below
figure.
Page | 18
7. Functional View Specification
The functional view defines the functions of the IoT systems grouped into
various functional groups. Each functional group provides functionalities for
interacting with concepts in the domain model and information related to the
concepts. The functional groups in a functional view include: Device,
Communication, Services, Management, Security, and Application. The functional
view specification for home automation system is shown in the below figure:
Page | 19
8. Operational View Specification
In this step, various options related to the IoT system deployment and operations
are defined, such as:
Service hosting options
Storage options
Device options
Application hosting options
The options chosen for home automation system are as shown in the below figure.
Page | 20
10. Application Development
Using all the information from previous steps, we will develop the application
(code) for the IoT system. The application interface for home automation system is
shown below.
A model that is a base of any reference model, that creates a model for any
specific domain and in this case, it is an IoT domain.
Page | 21