Iot Unit 1&2
Iot Unit 1&2
INTERNET OF THINGS
(IoT)
IoT and M2M - Deference between Iot and M2M - SDN and NFV for lot - IoT systems
management - SNMP - YANG - NETOPEER
IoT physical servers & cloud computing - WAMP - Xively cloud for IoT - python Web
application frame work - Amazon web services for IoT.
•Characteristics of IoT
•IoT Protocols
Definition of IoT
A dynamic global network infrastructure with self-configuring capabilities based on standard
and interoperable communication protocols where physical and virtual "things" have identities,
physical attributes, and virtual personalities and use intelligent interfaces, and are seamlessly
integrated into the information network, often communicate data associated with users and their
environments.
Characteristics of IoT
• Dynamic & Self-Adapting
• Self-Configuring
• Unique Identity
• 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.
Generic block diagram of an IoT Device
An IoT device may consist of several interfaces for connections to other devices, both wired and
wireless.
• Audio/video interface
IoT Protocols
Link Layer
• 802.3 – Ethernet
• 802.11 – WiFi
• 802.16 – WiMax
• 802.15.4 – LR-WPAN
• 2G/3G/4G
• Network/Internet Layer
• IPv4
• IPv6
• 6LoWPAN
• Transport Layer
• TCP • UDP
• Application Layer
• HTTP
• CoAP
• WebSocket
• MQTT
• XMPP
• DDS
• AMQ
Logical Design of IoT
Logical design of an IoT system refers to an abstract representation of the entities and processes
without going into the low-level specifics of the implementation.
An IoT system comprises of a number of functional blocks that provide the system the capabilities
for identification, sensing, actuation, communication, and management.
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.
• 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.
• When the broker receives data for a topic from the publisher, it sends the data to all the
subscribed consumers.
Push-Pull communication model
Push-Pull is a communication model in which the data producers push the data to queues and the
consumers pull the data from the queues. Producers do not need to be aware of the consumers.
• Queues help in decoupling the messaging between the producers and consumers.
• Queues also act as a buffer which helps in situations when there is a mismatch between the rate
at which the producers push data and the rate rate at which the consumers pull data.
• Once the connection is setup it remains open until the client sends a request to close the connection.
• Client and server can send messages to each other after connection setup.
REST-based Communication APIs
Representational State Transfer (REST) is a set of architectural principles by which you can design
web services and web APIs that focus on a system’s resources and how resource states are addressed
and transferred.
• The REST architectural constraints apply to the components, connectors, and data elements, within
a distributed hypermedia system.
• WebSocket APIs allow bi- directional, full duplex communication between clients and servers.
• Once the connection is setup it remains open until the client sends a request to close the connection.
• Client and server can send messages to each other after connection setup.
• Device: An IoT device allows identification, remote sensing, actuating and remote monitoring
capabilities. You learned about various examples of IoT devices in section.
• Resource: Resources are software components on the IoT device for accessing, processing, and
storing sensor information, or controlling actuators connected to the device. Resources also include
the software components that enable network access for the device.
• Controller Service: Controller service is a native service that runs on the device and interacts with
the web services. Controller service sends data from the device to the web service and receives
commands from the application (via web services) for controlling the device.
• Database: Database can be either local or in the cloud and stores the data generated by the IoT
device.
• Web Service: Web services serve as a link between the IoT device, application, database and
analysis components. Web service can be either implemented using HTTP and REST principles
(REST service) or using WebSocket protocol (WebSocket service).
• Analysis Component: The Analysis Component is responsible for analyzing the IoT data and
generate results in a form which are easy for the user to understand.
• Application: IoT applications provide an interface that the users can use to control and monitor
various aspects of the IoT system. Applications also allow users to view the system status and view
the processed data.
IoT LevelS
A level-1
• IoT system has a single node/device that performs sensing and/or actuation, stores data,
performs analysis and hosts the application.
•Level-1 IoT systems are suitable for modeling low- cost and low-complexity solutions where
the data involved is not big and the analysis requirements are not computationally intensive.
IoT Level-2
• A level-2 IoT system has a single node that performs sensing and/or actuation and local analysis.
•Level-2 IoT systems are suitable for solutions where the data involved is big, however, the primary
analysis requirement is not computationally intensive and can be done locally itself.
IoT Level-3
•A level-3 IoT system has a single node. Data is stored and analyzed in the cloud and application is
cloud- based.
• Level-3 IoT systems are suitable for solutions where the data involved is big and the analysis
requirements are computationally intensive.
IoT Level-4
• A level-4 IoT system has multiple nodes that perform local analysis. Data is stored in the cloud and
application is cloud-based.
• Level-4 contains local and cloud- based observer nodes which can subscribe to and receive
information collected in the cloud from IoT devices.
•Level-4 IoT systems are suitable for solutions where multiple nodes are required, the data involved
is big and the analysis requirements are computationally intensive.
IoT Level-5
•A level-5 IoT system has multiple end nodes and one coordinator node.
•Coordinator node collects data from the end nodes and sends to the cloud.
•Level-5 IoT systems are suitable for solutions based on wireless sensor networks, in which the data
involved is big and the analysis requirements are computationally intensive.
IoT Level-6
•A level-6 IoT system has multiple independent end nodes that perform sensing and/or actuation and
send data to the cloud.
• The analytics component analyzes the data and stores the results in the cloud database.
•The centralized controller is aware of the status of all the end nodes and sends control commands to
the nodes.
Domain Specific IoT
• Home Automation
• Cities
• Environment
• Energy
• Retail
• Logistics
• Agriculture
• Industry
• Health & Lifestyle
Home Automation
• Smart Lighting
•Control lighting by remotely (mobile or web applications)
• Smart Appliances
•Provide status information to the users remotely
• Intrusion Detection
•Use security cameras and sensors (PIR sensors and door sensors)
•Detect intrusions and raise alerts
• The alerts form: an SMS or an email sent to the user
• Smoke/Gas Detectors
•Use optical detection, ionization, or air sampling techniques to detect the smoke
•Gas detectors can detect harmful gases
•Carbon monoxide (CO)
•Liquid petroleum gas (LPG)
•Raise alerts to the user or local fire safety department
Cities
• Smart Parking
•Detect the number of empty parking slots
•Send the information over the internet and accessed by smartphones
• Smart Roads
•Provide information on driving conditions, traffic congestions, accidents
•Alert for poor driving conditions
• Structural Health Monitoring
•Monitor the vibration levels in the structures (bridges and buildings)
•Advance warning for imminent failure of the structure
• Surveillance
•Use the large number of distributed and internet connected video surveillance cameras
•Aggregate the video in cloud-based scalable storage solutions
• Emergency Response
•Used for critical infrastructure monitoring
•Detect adverse events
Environment
Weather Monitoring
• Collect data from several sensors (temperature, humidity, pressure, etc.)
• Send the data to cloud-based applications and storage back-ends
• Air Pollution Monitoring
• Monitor emission of harmful gases (CO2, CO, NO, NO2 , etc.)
• Factories and automobiles use gaseous and meteorological sensors
• Integration with a single-chip microcontroller, several air pollution sensors, GPRS-modem, and a
GPS module
• Noise Pollution Monitoring
• Use a number of noise monitoring stations
• Generate noise maps from data collected
• Forest Fire Detection
• Use a number of monitoring nodes deployed at different locations in a forests
• Use temperature, humidity, light levels, etc.
• Provide early warning of potential forest fire
• Estimates the scale and intensity
• River Floods Detection
• Monitoring the water level (using ultrasonic sensors) and flow rate (using the flow velocity sensors)
• Raise alerts when rapid increase in water level and flow rate is detected.
Energy
• Smart Grids
• Collect data regarding electricity generation, consumption, storage (conversion of energy into
other forms), distribution, equipment health data
• Control the consumption of electricity
• Remotely switch off supply
• Renewable Energy Systems
• Measure the electrical variables
• Measure how much the power is fed into the grid
• Prognostics
• Predict performance of machines or energy systems
• By collect and analyze the data from sensors.
Retail
• Inventory Management
• Monitoring the inventory by the RFID readers
• Tracking the products
• Smart Payments
• Use the NFC
• Customers store the credit card information in their NFC-enabled
• Smart Vending Machines
• Allow remote monitoring of inventory levels
• Elastic pricing of products
• Contact-less payment using NFC
• Send the data to the cloud for predictive maintenance
• The information of inventory levels
• The information of the nearest machine in case a product goes out of stock in a machine
Logistics
• Route Generation & Scheduling
• Generate end-to-end routes using combination of route patterns
• Provide route generation queries
• Can be scale up to serve a large transportation network
• Fleet Tracking
• Track the locations of the vehicles in real-time
• Generate alerts for deviations in planned routes
• Shipment monitoring
• Monitoring the conditions inside containers
• Using sensors (temperature, pressure, humidity)
• Detecting food spoilage
• Remote Vehicle Diagnostics
• Detect faults in the vehicle
• Warn of impending faults
• IoT collects the data on vehicle (speed, engine RPM, coolant temperature)
• Generate alerts and suggest remedial actions
Agriculture
• Smart Irrigation
• Use sensors to determine the amount of moisture in the soil
• Release the flow of water
• Using predefined moisture levels
• Water Scheduling
• Green House Control
• Automatically control the climate logical conditions inside a green house
• Using several sensors to monitor
• Using actuation devices to control
• Valves for releasing water and switches for controlling fans
• Maintenance of agricultural production
Industry
• Machine Diagnosis
• Sensors in machine monitor the operating conditions
• For example: temperature & vibration levels
• Collecting and analyzing massive scale machine sensor data
• For reliability analysis and fault prediction in machines
• Indoor Air Quality Monitoring
• Use various gas sensors
• To monitor the harmful and toxic gases (CO, NO, NO2 , etc.)
• Measure the environmental parameters to determine the indoor air quality
• Temperature, humidity, gaseous pollutants, aerosol
Machine-to-Machine (M2M)
• An M2M area network comprises of machines (or M2M nodes) which have embedded hardware
modules for sensing, actuation and communication.
• Various communication protocols can be used for M2M local area networks such as ZigBee,
Bluetooh, ModBus, M-Bus, Wirless M-Bus, Power Line Communication (PLC), 6LoWPAN, IEEE
802.15.4, etc.
• The communication network can use either wired or wireless networks (IP- based).
•While the M2M area networks use either proprietary or non-IP based communication protocols, the
communication network uses IP-based networks.
M2M gateway
• Since non-IP based protocols are used within M2M area networks, the M2M nodes within one
network cannot communicate with nodes in an external network.
• To enable the communication between remote M2M area networks, M2M gateways are used
Difference between IoT and M2M
Communication Protocols
• M2M and IoT can differ in how the communication between the machines or devices happens.
• M2M uses either proprietary or non-IP based communication protocols for communication within
the M2M area networks.
• The "Things" in IoT refers to physical objects that have unique identifiers and can sense and
communicate with their external environment (and user applications) or their internal physical states.
• M2M systems, in contrast to IoT, typically have homogeneous machine types within an M2M area
network.
• While the emphasis of M2M is more on hardware with embedded modules, the emphasis of IoT is
more on software.
• M2M data is collected in point solutions and often in on-premises storage infrastructure.
• In contrast to M2M, the data in IoT is collected in the cloud (can be public, private or hybrid cloud).
• Applications
• M2M data is collected in point solutions and can be accessed by on-premises applications such as
diagnosis applications, service management applications, and on- premisis enterprise applications.
• IoT data is collected in the cloud and can be accessed by cloud applications such as analytics
applications, enterprise applications, remote diagnosis and management applications, etc..
• Software-based SDN controllers maintain a unified view of the network and make confi guration,
management and provisioning simpler.
• The underlying infrastructure in SDN uses simple packet forwarding hardware as opposed to
specialized hardware in conventional networks.
•NFV is complementary to SDN as NFV can provide the infrastructure on which SDN can run.
• VNF is a software implementation of a network function which is capable of running over the
NFV Infrastructure (NFVI).
• NFVI includes compute, network and storage resources that are virtualized.
• 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.
• Managed Device
Limitations of SNMP
• SNMP is stateless in nature and each SNMP request contains all the information to process the
request. The application needs to be intelligent to manage the device.
• SNMP is a connectionless protocol which uses UDP as the transport protocol, making it unreliable
as there was no support for acknowledgement of requests.
• MIBs often lack writable objects without which device configuration is not possible using SNMP.
• Retrieving the current configuration from a device can be difficult with SNMP.
NETOPEER
⮚ Netopeer is a set of NETCONF tools built on the libnetconf library.
⮚ It allows operators to connect to their NETCONF-enabled devices as well as developers to
allow control their devices via NETCONF.
⮚ With the experiences from Netopeer, we have moved our activities to work on next
generation of this NETCONF toolset based on libyang library.
⮚ Netopeer is mature enough to be used as a replacement of the original Netopeer tools.
Therefore, the Netopeer is no more developed neither maintained.