2. Outline of Presentation
• IoT World Forum Architecture
• IoT Protocol Stack Architecture
• Communication Models
• Communication API
• IoT levels and Deployment Templates
3. 3
IoT World Forum (IoTWF)
Standardized Architecture
• IoTWF architectural committee published 7-
layer IoT architectural reference model in 2014
• This committee was led by Cisco, IBM,
Rockwell Automation, and others
• While various IoT reference models exist, the
one put forth by the IoT World Forum offers
clean, simplified perspective on IoT
• Includes edge computing, data storage, and
access
5. 7
Layer 1: Physical Devices and
Controllers Layer
• This layer is home to the “things” in the IoT,
including various endpoint devices & sensors
• Size of these “things” can range from almost
tiny sensors to huge machines in factory
• Their primary function is generating data and
being capable of being controlled over
network
11. 1
3
IEEE802.15.4
• Provides framework for lower layers (MACand
PHY)for wirelessP
AN
• PHYdefines frequency band, transmission
power, and modulation schemeof thelink
• MACdefines issuessuchasmedium access
and flow control (frames)
• Usedfor low power, low cost and lowspeed
communication between devices (<~75m)
12. 1
4
Features of IEEE802.15.4
• Nature of transmission is line ofsight
• Standard range of transmission - 10 to75m
• Transmission of data usesCSMA-CA(carrier
sensemultiple accesswith collision avoidance)
• Star and peer-to-peer network topologyis
included
13. 1
5
IEEE802.15.4
Version Feature
802.15.4-
2003
Basicversion. Themodulation schemesand data rates were
fixed for different frequency band – 868, 915 MHz, and2.4
GHz.
802.15.4 -
2006
Also known as802.15.4b. Provides higher data rate even on the
lower frequency bands. In the 868 MHz, the data transmission
rate is up to 100 kb/s while in 915 MHz, the data transmission
rate is up to 250 kb/s. UsesOQPSKfor all the frequencybands.
802.15.4 a Increasesrange capability. Definestwo new physical layers–
Direct Sequenceultra-wideband (UWB)– 249.6 - 749.6 MHz
(sub-gigahertz band), 3.1 - 4.8 GHz(low band), and 6 - 10 GHz
(high band). Chirp spreadspectrum (CSS)approach in ISMband
at 2.4GHz.
802.15.4 c Thisversion provides 780 MHzband in China. It useseither
O-QPSKor MPSK(Multiple frequency-shift keying)using
data transmission rate 250kb/s.
14. 1
6
IEEE802.15.4
Version Feature
802.15.4 d Thisversion provides 950 MHzband in Japan.It useseither
GFSK(Gaussianfrequency-shift keying) using data rate 100
kb/s or BPSKusing data rate 20kb/s.
802.15.4e Defines MACdevelopments to IEEE802.15.4 towardsISA
SP100.11aapplication (industrial applications).
802.15.4f Defines fresh PHYsfor 433 MHz frequency band(RFID
applications), 2.4 GHzfrequency band andUWB.
802.15.4g Defines fresh PHYsfor smart utility networks for902 - 928
MHz band (smart grid applications, majorly for theenergy
industry).
16. 802.15.4
• IEEE 802.15.4 task group began to developa
standard for LR-WPAN.
• The goal of this group was to provide a
standard with ultra-low complexity, cost, and
power for low-data-rate wirelessconnectivity
among inexpensive fixed,portable, and
moving devices.
18. Approaches for Low Power
In order to achieve the low power and low cost goals
established by IEEE 802.15.4 the following approaches
are taken
• Reduce the amount of data transmitted
• Reduce the transceiver duty cycle and frequency of
data transmissions
• Reduce the frame overhead
• Reduce complexity
• Reduce range
• Implement strict power managementmechanisms
(power-down and sleep
19. IEEE 802.15.4
• IEEE 802.15.4 deals with only PHY layerand
portion of Data linklayer.
• The higher-layer protocols are left toindustry
and the individualapplications.
• The Zigbee Alliance is an association of
companies involved with building higher-layer
standards based on IEEE 802.15.4. This
includes network, security, and application
protocols.
20. IEEE 802.15.4
IEEE 802.15.4 draft standard supports multiple
network topologies including star and peer to peer
topology.
22. IEEE 802.15.4
• IEEE 802 splits DLL into MAC and LLC sublayers.
• LLC is standardized and is common in
802.3,802.11,802.15.1.
• Features of the IEEE 802.15.4 MAC are
– Association and disassociation
– acknowledged frame delivery
– Channel access mechanism
– Frame validation
– Guaranteed time slot management
– Beacon management.
23. IEEE 802.15.4 …MAC
• MAC provides data and management services
to upper layers
• 802.15.4 MAC is of very low complexity,
making it very suitable for its intended low-
end applications, albeit at the cost of a smaller
feature set than 802.15.1 (e.g., 802.15.4 does
not support synchronous voice links).
25. IEEE 802.15.4 …MAC
• Frame control field indicates the type of MAC
frame being transmitted, specifies the format of
the address field, and controls the
acknowledgment.
• Multiple address types : 64 bit physical address
and short 8 bit network assigned address are
provided.
• Address field size may vary from 0 to 20 bytes.
• Payload field is variable with condition size of
mac frame <= 127 bytes.
• FCS is used for integrity check using 16 bit CRC.
26. IEEE 802.15.4 …PHY
• This standard provides 2 PHY options with
frequency band as fundamental difference.
• 2.4 GHz band has worldwide availability and
provides a transmission rate of 250 kb/s.
• The 868/915 MHz PHY specifies operation in the
868 MHz band in Europe and 915 MHz ISM band
in the United States and offer data rates 20 kb/s
and 40 kb/s respectively.
• Different transmission rates can be exploited to
achieve a variety of different goals.
29. Parameter EtherNet WiFi WiMax LR-
WPAN(ZigBee)
Cellular
Used Inside
offices and
houses
Outside
offices and
houses
Outside
offices and
houses
Outside
offices and
houses
Outside
offices and
houses
IEEE
Standards:
802.3 802.11 802.16 802.15.4
Range 100mtrs 100 mrts 80-90kms 10-100 mtrs 1-5kms
Data
Transfer
Rate
10Mb
ps-
100M
bps
54Mbps 40Mbps 250kbit/s 100Kb
ps-
1MB
ps
Application Houses,
Offices,
Industries
Mobile
Applications
, Video
Conferenci
ng
MetroPolita
n Area
Network
Smart
Metering,
Home
Automation
(Alexa), Smart
Asset Tracking
Camera on
Traffic
Light,
Video on
Demand
30. Working of RPL [02][05][06][07]
• Follows distance-vector routing protocol based on IPv6
• Directed Acyclic Graph(DAG):No cycles
• Destination-Oriented DAG(DODAG):Single root
• Up: Towards root
• Down: Away from root
• Objective Function: Hop count, ETX(Expected Transmission Count)(OF0,MHROF)
• Rank : Distance from root using specified objective
• RPL Instance: One or more DODAGs.
A node may belong to multiple RPL instances.
• DODAG ID: IPv6 Adr. Of the root
• DODAG Version: Current version of DODAG.Every time a new DODAG is computed
with the same root,its version incremented(for global repair)
RPL concepts
32. Working of RPL
1. DODAG Information Object(DIO):
▫ Downward RPL instance multicasts
▫ Allows other nodes to discover an RPL instance and join it
2. DODAG Information Solicitation(DIS)
▫ Link-Local multicast request for DIO(neighbour discovery)
▫ Do you know of any DODAGs?
3. Destination Advertisement Object(DAO)
▫ From child to parents or root
▫ Can I join you as a child on DODAG #x?
4. DAO Ack:Yes,you can! Or Sorry,you cant!
5. Consistency Check: Challenge/response messages for security
RPL Control Messages
33. RPL Operation
0
1 1
3
2
2
2
1
DIO
DIO
DIO
DIO
DIO
DIO
DIO DIO
DIO
DIO
DIO
DIO
DIO
DIO
2
3 3 3
3
2
• Directed Acyclic Graph (DAG) Information Option (DIO) messages are
broadcast to build the tree; includes a node’s rank (its level), ETX, etc.
• ETX probe is sent periodically to probe neighboring ETX
35. Self Healing in RPL
• On a link failure a local repair mechanism tries to select a new parent or
path.
• If there are more local failures, RPL performs a complementary global
repair where the whole DODAG is rebuilt with different version number.
• The RPL protocol uses the link-layer metric as a parameter in the
calculation of a default route. The path is assumed to be good if link-layer
acknowledgements are received on it.
• RPL also uses a trickle timer to handle inconsistencies in the RPL
DODAG.
36. Summary of RPL [05]
Feature Description
Target Network LLN:IPv6/6LowPAN networks
Routing Type Source-routing,Distance-Vector
Topology Mesh,Hierarchical based on DAG
Traffic Flows MP2P,P2MP and P2P
Message update Trickle Timer
Control Messages DIO,DAO,DIS
Transmission Unicast and Multicast
Metrics and
Constraints
Dynamic, based on OF and Rank
Modes Storing and non-storing
37. RPL Implementation at various OS/Simulation Tools
Name OS Protocol Version Notes(Extensions…)
TinyRPL TinyOS Draft-ietf-roll-rpl-17 • Uses BLIP2.0
• Only Storing mode
• Only Single RPL instance ID
• Security options not supported
• Only telosb and epic platform
supported
ContikiRPL Contiki RFC 6550 By default enabled on Tmote sky platform
OpenWSN OpenWSN RFC 6550
NanoRK Nano-RK Draft-ietf-roll-rpl-07
NanoQplus NanoQplus Draft-ietf-roll-rpl-13
Operating System incorporating RPL [02]
Name Language Protocol Version Notes(Extensions…
)
Cooja C RFC 6550 MSPsim
NS-3 C++ and Python Draft-ietf-roll-rpl-19
Omnet++ C++ Draft-ietf-roll-rpl-19
J-SIM Tcl/Java Draft-ietf-roll-rpl-19 EU Funded Project
Simulators incorporating RPL [02]
38. IoT Protocols…Application
Layer…Hyper Text Transfer Protocol
• Forms foundation of World Wide Web(WWW)
• Includes commands such as GET,PUT, POST, HEAD, OPTIONS, TRACE..etc
• Follows a request-response model
• Uses Universal Resource Identifiers(URIs) to identify HTTP resources
39. IoT Protocols…Application Layer…CoAP
• Constrained Application Protocol
• Used for Machine to machine (M2M) applications meant for constrained
devices and n/w’s
• Web transfer protocol for IoT and uses request-response
model
• Uses client –server architecture
• Supports methods such as GET,POST, PUT and DELETE
• CoAP makes use of the UDP protocol for lightweight implementation.
• It also uses restful architecture, which is just like the HTTP protocol.
40.
41. IoT Protocols…Application Layer…WebSocket
• Allows full-duplex communication over single socket
• Based on TCP
• Client can be a browser, IoT device or mobile application
IoT Protocols…Application Layer…MQTT
• Message Queue Telemetry Transport , light-weight messaging protocol
• Based on publish-subscribe model
• Well suited for constrained environments where devices have limited processing, low
memory and n/w bandwith requirement
43. IoT Protocols…Application Layer…AMQP
• Advanced Messaging Queuing Protocol used for business messaging.
• Supports both point-to-point and publisher/subscriber models, routing
and queuing
• Broker here receives messages from publishers and route them over
connections to consumers through messaging queues.
44. IoT Protocols…Application Layer…XMPP
• Extensible messaging and presence protocol
• For Real time communication and streaming XML data between n/w
entities
• Used for Applications such as Multi-party chat and voice/video calls.
• Decentralized protocol and uses client server architecture.
45. IoT Protocols…Application Layer…DDS
• Data Distribution service is a data-centric middleware standard for
device-to-device or machine-to-machine communication.
• Publish subscribe model where publishers create topics to which
subscribers can use.
• Provides Quality-of-service control and configurable reliability.
46.
47. Parameter HTTP CoAP XMPP(Ope
n XML)
DDS AMQP MQTT
Protocol TCP UDP TCP TCP and
UDP
TCP TCP
Network
Layer
IP 6LowPAN IP IP IP IP
Architectu
re
Clie
nt-
Serv
er
Client-
Server and
Publish-
Subscribe
Client-
Server
Publish-
Subscribe
Client-
Server and
Publish-
Subscribe
Publish-
Subscribe
Synchroni
zation
Needed No Need Needed Sometimes
Needed,
Sometimes
Not
Needed Needed
Designed
for
Internet IoT/M2M IoT/M2M Real Time
SYstems
M2M IoT/M2M
Application WWW Retrieving
Sensor
Data
WhatsApp,
Gaming,
Google
Talk
Volswagen
Smart Cars
for Video
Assistance
Google
Cloud
Facebook
Messenger
60. Comparison Based on REST Websocket
State Stateless Stateful
Directional Unidirectional Bidirectional
Req-Res/Full Duplex Follow Request Response Model Exclusive Pair Model
TCP Connections Each HTTP request involves
setting up a new TCP
Connection
Involves a single TCP
Connection for all
requests
Header Overhead Each request carries HTTP Headers,
hence not suitable forreal-time
Does not involve overhead of
headers.
Scalability Both horizontal and vertical
are easier
Only Vertical is easier
Difference between REST and WebSocket-based
Communication APIs