Week 2
Week 2
EL
Allows for the smallest devices with limited processing ability
to transmit information wirelessly using an Internet protocol.
Allows low‐power devices to connect to the Internet.
PT
Created by the Internet Engineering Task Force (IETF) ‐ RFC
5933 and RFC 4919.
N
Source: T. Winter, P. Thubert, A. Brandt, J. Hui, R. Kelsey, P. Levis, K. Pister, R. Struik , JP. Vasseur, R. Alexander,
“RPL: IPv6 Routing Protocol for Low‐Power and Lossy Networks”, IETF, Standards Track, Mar. 2012
EL
Internet Protocol version 6 (IPv6).
Header compression and address translation techniques allow
the IEEE 802.15.4 radios to access the Internet.
PT
IPv6 packets compressed and reformatted to fit the IEEE
802.15.4 packet format.
Uses include IoT, Smart grid, and M2M applications.
N
Introduction to Internet of Things 4
Addressing in 6LoWPAN
• 64‐bit addresses: globally
Addressing
EL
unique
• 16 bit addresses: PAN specific;
64‐bit assigned by PAN coordinator
Extended
16‐bit
PT
• IPv6 multicast not supported by
802.15.4
• IPv6 packets carried as link
N
Short layer broadcast frames
Introduction to Internet of Things
6LowPAN Packet Format
1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8
Length Flags DSN
IEEE 802.15.4
EL
PAN ID
Destination (64 bit)
Ver
PT
Traffic Class
Payload Length
Flow Label
Next Header Hop Limit
IPv6
Source Address (128 bit)
N
Destination Length (128 bit)
1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8
EL
0 1 Dispatch Type Specific Header
1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8
EL
1 0 V F Hops Left Originator Address Final Address
•
address PT
V: ‘0’ if originator is 64‐bit extended address, ‘1’ if 16‐bit
1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8
EL
1 1 0 0 Datagram Size Datagram Tag
1 1 0 0
3 4 5 6
Datagram Offset
7 8
PT
1 2 3 4
Datagram Size
5 6 7 8 1 2 3 4 5 6 7 8 1 2
Datagram Tag
3 4 5 6 7 8
N
(b) Subsequent Fragment
EL
the PAN space.
Routing between IPv6
and the PAN domain
use:
LOADng
PT
Routing protocols in
N
RPL
EL
Basic operations of LOADng include:
Generation of Route Requests (RREQs) by a LOADng Router
(originator) for discovering a route to a destination,
Forwarding of such RREQs until they reach the destination LOADng
Router,
PT
Generation of Route Replies (RREPs) upon receipt of an RREQ by the
indicated destination, and unicast hop‐by‐hop forwarding of these
RREPs towards the originator.
N
Source: Clausen, T.; Colin de Verdiere, A.; Yi, J.; Niktash, A.; Igarashi, Y.; Satoh, H.; Herberg, U.; Lavenu, C. et al. (January 2016). The
Lightweight On‐demand Ad hoc Distance‐vector Routing Protocol ‐ Next Generation (LOADng). IETF. I‐D draft‐clausen‐lln‐loadng‐14
EL
Optimized flooding is supported, reducing the overhead incurred by
RREQ generation and flooding.
Only the destination is permitted to respond to an RREQ.
Intermediate LOADng Routers are explicitly prohibited from
sought destination. PT
responding to RREQs, even if they may have active routes to the
EL
Maintains routing topology using low rate beaconing.
Beaconing rate increases on detecting inconsistencies (e.g.
node/link in a route is down).
PT
Routing information included in the datagram itself.
Proactive: Maintaining routing topology.
N
Reactive: Resolving routing inconsistencies.
Source: T. Winter, P. Thubert, A. Brandt, J. Hui, R. Kelsey, P. Levis, K. Pister, R. Struik , JP. Vasseur, R. Alexander,
“RPL: IPv6 Routing Protocol for Low‐Power and Lossy Networks”, IETF, Standards Track, Mar. 2012
EL
RPL supports message confidentiality and integrity.
Supports Data‐Path Validation and Loop Detection
minimizing energy
minimizing latency
PT
Routing optimization objectives include
N
satisfying constraints (w.r.t node power, bandwidth, etc.)
Source: T. Winter, P. Thubert, A. Brandt, J. Hui, R. Kelsey, P. Levis, K. Pister, R. Struik , JP. Vasseur, R. Alexander,
“RPL: IPv6 Routing Protocol for Low‐Power and Lossy Networks”, IETF, Standards Track, Mar. 2012
EL
It is required that the reachability of a router be verified
before the router can be used as a parent.
PT
N
Source: T. Winter, P. Thubert, A. Brandt, J. Hui, R. Kelsey, P. Levis, K. Pister, R. Struik , JP. Vasseur, R. Alexander,
“RPL: IPv6 Routing Protocol for Low‐Power and Lossy Networks”, IETF, Standards Track, Mar. 2012
EL
Data digitally encoded in RFID tags, which can be read by a
reader.
Somewhat similar to barcodes.
PT
Data read from tags are stored in a database by the reader.
As compared to traditional barcodes and QR codes, RFID tag
N
data can be read outside the line‐of‐sight.
Source: “How does RFID work?” AB&R (Online)
EL
The tag is covered by a protective material which also acts as
a shield against various environmental effects.
Tags may be passive or active.
PT
Passive RFID tags are the most widely used.
Passive tags have to be powered by a reader inductively
before they can transmit information, whereas active tags
N
have their own power supply.
Source: “How does RFID work?” AB&R (Online)
EL
AIDC performs object identification, object data collection and
mapping of the collected data to computer systems with little or no
human intervention.
AIDC uses wired communication
PT
RFID uses radio waves to perform AIDC functions.
The main components of an RFID system include an RFID tag or
smart label, an RFID reader, and an antenna.
N
Source: “How does RFID work?” AB&R (Online)
EL
Asset tracking
Personnel tracking
Controlling access to restricted areas
ID badging
Supply chain management
PT
N
Counterfeit prevention (e.g. in the pharmaceutical industry)
Source: “How does RFID work?” AB&R (Online)
EL
Identification (EPC, uCode, IPv6, URIs)
Communication / Transport (WiFi, Bluetooth, LPWAN)
Discovery (Physical Web, mDNS, DNS‐SD)
PT
Data Protocols (MQTT, CoAP, AMQP, Websocket, Node)
Device Management (TR‐069, OMA‐DM)
Semantic (JSON‐LD, Web Thing Model)
N
Multi‐layer Frameworks (Alljoyn, IoTivity, Weave, Homekit)
Source: Internet of Things Protocols (Online)
PT
N
Introduction to Internet of Things 3
Introduction
Message Queue Telemetry Transport.
EL
ISO standard (ISO/IEC PRF 20922).
It is a publish‐subscribe‐based lightweight messaging protocol for
use in conjunction with the TCP/IP protocol.
MQTT was introduced by IBM in 1999 and standardized by OASIS in
2013.
PT
Designed to provide connectivity (mostly embedded) between
applications and middle‐wares on one side and networks and
N
communications on the other side.
Source: “MQTT”, Wikipedia (Online)
EL
of messages and distributed by the message broker.
Designed for:
Remote connections
Limited bandwidth
Small‐code footprint
PT
N
Source: “MQTT”, Wikipedia (Online)
EL
• Lightweight sensors
Publishers
• Applications interested in sensor data
Subscribers
PT
Brokers • Connect publishers and subscribers
• Classify sensor data into topics
N
Source: “MQTT”, Wikipedia (Online)
EL
Disconnect
Subscribe
Unsubscribe
Publish
PT
N
Source: “MQTT”, Wikipedia (Online)
EL
request/response paradigm).
Publish/subscribe is event‐driven and enables messages to be
pushed to clients.
The central communication point is the MQTT broker, which is in
rightful receivers. PT
charge of dispatching all messages between the senders and the
EL
Therefore the clients don’t have to know each other. They
only communicate over the topic.
PT
This architecture enables highly scalable solutions without
dependencies between the data producers and the data
consumers.
N
Source: “MQTT 101 – How to Get Started with the lightweight IoT Protocol”, HiveMQ (Online)
EL
which are separated by a slash.
A sample topic for sending temperature data of the living
room could be house/living‐room/temperature.
PT
On one hand the client (e.g. mobile device) can subscribe to
the exact topic or on the other hand, it can use a wildcard.
N
Source: “MQTT 101 – How to Get Started with the lightweight IoT Protocol”, HiveMQ (Online)
EL
The plus sign is a single level wild card and only allows arbitrary
values for one hierarchy.
If more than one level needs to be subscribed, such as, the entire
PT
sub‐tree, there is also a multilevel wildcard (#).
It allows to subscribe to all underlying hierarchy levels.
For example house/# is subscribing to all topics beginning with
N
house.
Source: “MQTT 101 – How to Get Started with the lightweight IoT Protocol”, HiveMQ (Online)
EL
Amazon Web Services use Amazon IoT with MQTT.
Microsoft Azure IoT Hub uses MQTT as its main protocol for
telemetry messages.
PT
The EVRYTHNG IoT platform uses MQTT as an M2M protocol
for millions of connected products.
Adafruit launched a free MQTT cloud service for IoT
N
experimenters called Adafruit IO.
EL
based on lightweight attribute based encryption.
The main advantage of using such encryption is the broadcast
encryption feature, in which one message is encrypted and
delivered to multiple other nodes, which is quite common in
IoT applications.
PT
In general, the algorithm consists of four main stages: setup,
encryption, publish and decryption.
N
Source: M. Singh, M. Rajan, V. Shivraj, and P. Balamuralidhar, "Secure MQTT for Internet of Things (IoT)," in Fifth International Conference on
Communication Systems and Network Technologies (CSNT 2015), April 2015, pp. 746‐751
EL
When the data is published, it is encrypted and published by the
broker which sends it to the subscribers, which is finally decrypted
at the subscriber end having the same master secret key.
PT
The key generation and encryption algorithms are not standardized.
SMQTT is proposed only to enhance MQTT security features.
N
Source: M. Singh, M. Rajan, V. Shivraj, and P. Balamuralidhar, "Secure MQTT for Internet of Things (IoT)," in Fifth International Conference on
Communication Systems and Network Technologies (CSNT 2015), April 2015, pp. 746‐751
EL
networks.
Designed for Machine to Machine (M2M) applications such
PT
as smart energy and building automation.
Based on Request‐Response model between end‐points
Client‐Server interaction is asynchronous over a datagram
N
oriented transport protocol such as UDP
Source: Z. Shelby , K. Hartke, C. Bormann, “The Constrained Application Protocol (CoAP)”, Internet Engineering Task Force (IETF), Standards Track,
2014
EL
interface.
Representational State Transfer (REST) is the standard
interface between HTTP client and servers.
PT
Lightweight applications such as those in IoT, could result in
significant overhead and power consumption by REST.
CoAP is designed to enable low‐power sensors to use RESTful
N
services while meeting their power constraints.
Source: Z. Shelby , K. Hartke, C. Bormann, “The Constrained Application Protocol (CoAP)”, Internet Engineering Task Force (IETF), Standards Track,
2014
EL
Request/response.
The messaging sub‐layer is responsible for reliability and duplication of
messages, while the request/response sub‐layer is responsible for
communication.
CoAP has four messaging modes:
Confirmable
Non‐confirmable
Piggyback
PT
N
Separate
Source: V. Karagiannis, P. Chatzimisios, F. Vazquez‐Gallego, and J. Alonso‐Zarate, "A survey on application layer protocols for the internet of
things," Transaction on IoT and Cloud Computing, vol. 3, no. 1, pp. 11‐17, 2015
EL
Application
Request
CoAP
PT Messages
UDP
N
Source: Z. Shelby , K. Hartke, C. Bormann, “The Constrained Application Protocol (CoAP)”, Internet Engineering Task Force (IETF), Standards Track,
2014
Message Types‐CoAP
Confirmable
EL
Non‐Confirmable
PT Piggyback
Separate
N
Source: Z. Shelby , K. Hartke, C. Bormann, “The Constrained Application Protocol (CoAP)”, Internet Engineering Task Force (IETF), Standards Track,
2014
EL
PT
N
Source: V. Karagiannis, P. Chatzimisios, F. Vazquez‐Gallego, and J. Alonso‐Zarate, "A survey on application layer protocols for the internet of
things," Transaction on IoT and Cloud Computing, vol. 3, no. 1, pp. 11‐17, 2015
EL
sends its response directly after receiving the message, i.e., within the
acknowledgment message.
On the other hand, the separate mode is used when the server response
Similar to HTTP, CoAP utilizes GET, PUT, PUSH, DELETE messages requests
to retrieve, create, update, and delete, respectively
N
Source: V. Karagiannis, P. Chatzimisios, F. Vazquez‐Gallego, and J. Alonso‐Zarate, "A survey on application layer protocols for the internet of
things," Transaction on IoT and Cloud Computing, vol. 3, no. 1, pp. 11‐17, 2015
EL
PT
N
Source: V. Karagiannis, P. Chatzimisios, F. Vazquez‐Gallego, and J. Alonso‐Zarate, "A survey on application layer protocols for the internet of
things," Transaction on IoT and Cloud Computing, vol. 3, no. 1, pp. 11‐17, 2015
EL
URL and content‐type support.
Support for the discovery of resources provided by known
CoAP services.
notifications. PT
Simple subscription for a resource, and resulting push
EL
A communication protocol for message‐oriented middleware
based on XML (Extensible Markup Language).
Real‐time exchange of structured data.
PT
It is an open standard protocol.
N
Source: “XMPP”, Wikipedia (Online)
EL
across a network, and the availability information of these
services.
Well‐suited for cloud computing where virtual machines,
PT
networks, and firewalls would otherwise present obstacles to
alternative service discovery and presence‐based solutions.
Open means to support machine‐to‐machine or peer‐to‐peer
N
communications across a diverse set of networks.
Source: “XMPP”, Wikipedia (Online)
EL
own XMPP server.
Open standards – No royalties or granted permissions are
required to implement these specifications
PT
Security – Authentication, encryption, etc.
Flexibility – Supports interoperability
N
Source: “XMPP”, Wikipedia (Online)
EL
Jingle
• multimedia signalling for voice, video, file transfer
Multi‐user Chat
PubSub PT
• flexible, multi‐party communication
EL
Text based communications induces higher network
overheads.
Binary data must be first encoded to base64 before
transmission. PT
N
Introduction to Internet of Things 18
Applications
Publish‐subscribe systems
EL
Signaling for VoIP
Video
File transfer
Gaming PT
Internet of Things applications
Smart grid
N
Social networking services
EL
Open standard for passing business messages between
applications or organizations.
Connects between systems and business processes.
PT
It is a binary application layer protocol.
Basic unit of data is a frame.
ISO standard: ISO/IEC 19464
N
Source: “Advanced Message Queuing Protocol”, Wikipedia (Online)
EL
Organizations Technologies Time Space
PT Connects across
N
Introduction to Internet of Things 5
Features
Security
EL
Reliability
Interoperability
PT
Routing
Queuing
Open standard
N
Introduction to Internet of Things 6
Message Delivery Guarantees
At‐most‐once
EL
each message is delivered once or never
At‐least‐once
each message is certain to be delivered, but may do so multiple times
Exactly‐once PT
message will always certainly arrive and do so only once
N
Reference: "OASIS AMQP version 1.0, sections 2.6.12‐2.6.13". OASIS AMQP Technical Committee
EL
tear down the transfer of messages between two peers:
Open (connection open)
Begin (session open)
Attach (initiate new link)
PT
Transfer (for sending actual messages)
Flow (controls message flow rate)
Disposition (Informs the changes in state of transfer)
Detach (terminate the link)
End (session close)
N
Close (connection close)
Source: O.S. Tezer, “An advanced messaging queuing protocol walkthrough ”, DigitalOcean (Online), 2013
EL
• Receives messages and routes them to Queues
Bindings
PT • Rules for distributing messages (who can access
what message, destination of the message)
N
Source: O.S. Tezer, “An advanced messaging queuing protocol walkthrough ”, DigitalOcean (Online), 2013
EL
Fan‐out
PT
Topic
Header
N
Source: O.S. Tezer, “An advanced messaging queuing protocol walkthrough ”, DigitalOcean (Online), 2013
EL
Persistence (Message delivery guarantees)
Delivery of messages to multiple consumers
PT
Possibility of ensuring multiple consumption
Possibility of preventing multiple consumption
High speed protocol
N
Source: O.S. Tezer, “An advanced messaging queuing protocol walkthrough ”, DigitalOcean (Online), 2013
EL
Connecting different systems and processes to talk to each other.
Allowing servers to respond to immediate requests quickly and
delegate time consuming tasks for later processing.
PT
Distributing a message to multiple recipients for consumption.
Enabling offline clients to fetch data at a later time.
Introducing fully asynchronous functionality for systems.
N
Increasing reliability and uptime of application deployments.
Source: O.S. Tezer, “An advanced messaging queuing protocol walkthrough ”, DigitalOcean (Online), 2013
EL
industrial IoTs:
IEEE 802.15.4
Zigbee
6LoWPAN
Wireless HART
Z‐Wave
ISA 100
Bluetooth
NFC
PT
N
RFID
EL
Developed for low‐data‐rate monitoring and control
applications and extended‐life low‐power‐consumption uses.
This standard uses only the first two layers (PHY, MAC) plus
PT
the logical link control (LLC) and service specific convergence
sub‐layer (SSCS) additions to communicate with all upper
layers
N
Operates in the ISM band.
Source: L.Fenzel, “What’s The Difference Between IEEE 802.15.4 And ZigBee Wireless?”, Electronic Design (Online), Mar. 2013
EL
Low‐speed versions use Binary Phase Shift Keying (BPSK).
High data‐rate versions use offset‐quadrature phase‐shift
keying (O‐QPSK).
EL
Transmission, for most cases, is Line of Sight (LOS).
Standard transmission range varies between 10m to 75m.
1000m. PT
Best case transmission range achieved outdoors can be upto
EL
C
• For China
D
• For Japan
E
PT
• Industrial applications
F
• Active RFID uses
N
G
• Smart utility networks (Smart Grids)
EL
Networks
FFD Router
Non‐Beacon
Enabled
Beacon
Enabled
PT
802.15.4
RFD
Device
Device
N
(a) (b)
EL
• Supports full protocol
EL
MAC
Frames Command
PT Acknowledgement
N
Data
EL
• Data‐frames sent via Slotted CSMA/CA with a super
frame structure managed by PAN coordinator
• Beacons used for synchronization & association of
PT
other nodes with the coordinator
• Scope of operation spans the whole network.
N
Introduction to Internet of Things
Non-Beacon Enabled Networks
• Data‐frames sent via un‐slotted CSMA/CA (Contention
Based)
EL
• Beacons used only for link layer discovery
• Requires both source and destination IDs.
PT
• As 802.15.4 is primarily, a mesh protocol, all protocol
addressing must adhere to mesh configurations
• De‐centralized communication amongst nodes
N
Introduction to Internet of Things
EL
Zigbee
PT
N
Introduction to Internet of Things 14
Features of ZigBee
Most widely deployed enhancement of IEEE 802.15.4.
EL
The ZigBee protocol is defined by layer 3 and above. It works with
the 802.15.4 layers 1 and 2.
The standard uses layers 3 and 4 to define additional
communication enhancements.
PT
These enhancements include authentication with valid nodes,
encryption for security, and a data routing and forwarding capability
that enables mesh networking.
The most popular use of ZigBee is wireless sensor networks using
N
the mesh topology.
Source: L.Fenzel, “What’s The Difference Between IEEE 802.15.4 And ZigBee Wireless?”, Electronic Design (Online), Mar. 2013
EL
• ZigBee Device Object
ZDO (Device management, Security, Policies)
EL
PT
N
Source: T. Agarwal, “ZigBee Wireless Technology Architecture and Applications”, Electronics Projects Focus (Online)
EL
communicate with any other
node within its range.
If nodes are not in range,
messages are relayed through
intermediate nodes.
This allows the network
PT
N
deployment over large areas.
Source: L.Fenzel, “What’s The Difference Between IEEE 802.15.4 And ZigBee Wireless?”, Electronic Design (Online), Mar. 2013
EL
reliability.
For example, if nodes C and F
are down, the message packets
from A can still be relayed to G
via B and E.
ZigBee mesh networks are self‐
PT
N
configuring and self‐healing.
Source: L.Fenzel, “What’s The Difference Between IEEE 802.15.4 And ZigBee Wireless?”, Electronic Design (Online), Mar. 2013
EL
The Coordinator forms the root of the ZigBee network tree and might
act as a bridge between networks.
There is a single ZigBee Coordinator in each network, which originally
initiates the network.
PT
It stores information about the network under it and outside it.
It acts as a Trust Center & repository for security keys.
N
Sources:
•"Wireless Sensor Networks Research Group". Sensor-networks.org. 2010-04-15.
•"Wireless Sensor Networks Research Group". Sensor-networks.org. 2009-02-05.
EL
Capable of running applications, as well as relaying information between
nodes connected to it.
ZigBee End Device (ZED):
It contains just enough functionality to talk to the parent node, and it
PT
cannot relay data from other devices.
This allows the node to be asleep a significant amount of the time thereby
enhancing battery life.
Memory requirements and cost of ZEDs are quite low, as compared to ZR
N
Sources: or ZC.
•"Wireless Sensor Networks Research Group". Sensor-networks.org. 2010-04-15.
•"Wireless Sensor Networks Research Group". Sensor-networks.org. 2009-02-05.
EL
routing.
To find the final destination, the AODV broadcasts a route request
to all its immediate neighbors.
PT
The neighbors relay the same information to their neighbors,
eventually spreading the request throughout the network.
Upon discovery of the destination, a low‐cost path is calculated and
N
informed to the requesting device via unicast messaging.
Source: “Zigbee”, Wikipedia (Online)
EL
Remote control (RF4CE or RF for consumer electronics)
Smart energy for home energy monitoring
Health care for medical and fitness monitoring
PT
Home automation for control of smart homes
Light Link for control of LED lighting
N
Telecom services
Source: L.Fenzel, “What’s The Difference Between IEEE 802.15.4 And ZigBee Wireless?”, Electronic Design (Online), Mar. 2013