The slides defines IoT and show the differnce between M2M and IoT vision. It then describes the different layers that depicts the functional architecture of IoT, standard organizations and bodies and other IoT technology alliances, low power IoT protocols, IoT Platform components, and finally gives a short description to one of IoT low power application protocols (MQTT).
How to Troubleshoot Apps for the Modern Connected Worker
Introduction to IoT Architectures and Protocols
1. Introduction to Internet of Things Architectures and
Protocols
Dr. Abdullah Alfadhly
KACST
National Center for Computer Technology and Applied Mathematics
(CTAM)
Riyadh, Saudi Arabia
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and Protocols July 31, 2017 1 / 57
2. Outline
1 IoT overview
2 From M2M to IoT
3 IoT Architecture
4 IoT Ecosystem
5 IoT Standards
6 IoT Protocols
7 IoT Platforms
8 An Example: MQTT
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and Protocols July 31, 2017 2 / 57
3. IoT overview
IoT Overview - Definition
The term ”Internet of Things” (IoT) denotes a trend where a large
number of embedded devices employ communication services offered
by the Internet protocols. Many of these devices, often called ”smart
objects, are not directly operated by humans, but exist as components
in buildings or vehicles, or are spread out in the environment. (The
Internet Architecture Board)
A global infrastructure for the information society, enabling advanced
services by interconnecting (physical and virtual) things based on
existing and evolving interoperable information and communication
technologies (ITU)
The Internet of things (noun): The interconnection via the Internet of
computing devices embedded in everyday objects, enabling them to
send and receive data (Oxford Dictionary)
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and Protocols July 31, 2017 3 / 57
4. IoT overview
IoT Overview - Enablers
Ubiquitous Connectivity: Low cost, high speed, and pervasive network
connectivity
Widespread adoption of IPbased networking.
Moores law continues to deliver greater computing power at lower
price points and lower power consumption. Manufacturing advances
allow cutting-edge computing and communications technology to be
incorporated into very small objects
Rise of Cloud Computing and big data analytics.
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and Protocols July 31, 2017 4 / 57
5. IoT overview
IoT Overview - Challenges
Security
Privacy
Interoperability / Standards
Legal, Regulatory and Rights
Emerging Economy and Development Issues
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and Protocols July 31, 2017 5 / 57
6. From M2M to IoT
From M2M to IoT
In the 1990s, advances in wireless technology allowed
machinetomachine (M2M) enterprise and industrial solutions to
become widespread.
Many of these early M2M solutions, however, were based on closed
purposebuilt networks and proprietary or industryspecific standards
The recent open M2M solutions are usually vertically centric which
mean it serves a particular domain application (Health, Home,
Industrial , etc.)
The concept of IoT is to build a horizontal layer that overlap all
domains creating one big platform.
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and Protocols July 31, 2017 6 / 57
7. From M2M to IoT
From M2M to IoT
The IoT Horizontal Layer
Source: Hller, Jan, Vlasios Tsiatsis, Catherine Mulligan, et al. 2014 - Chapter 2 - M2M to IoT The Vision.
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and Protocols July 31, 2017 7 / 57
8. From M2M to IoT
From M2M to IoT
A use case example: Stress measurement M2M solution
Source: Hller, Jan, Vlasios Tsiatsis, Catherine Mulligan, et al. 2014 - Chapter 2 - M2M to IoT The Vision.
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and Protocols July 31, 2017 8 / 57
9. From M2M to IoT
From M2M to IoT
A use case example: Stress measurement IoT solution
Source: Hller, Jan, Vlasios Tsiatsis, Catherine Mulligan, et al. 2014 - Chapter 2 - M2M to IoT The Vision.
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and Protocols July 31, 2017 9 / 57
10. IoT Architecture
IoT Architecture
Device Layer
Network Layer
Application Support
Layer
Application Layer
ManagementLayer
SecurityLayer
DC
GC
NC
TC
IOTA
GSC SSC
GMC
SMC
GSEC
SSEC
DC: Device Capabilities
GC: Gateway Capabilities
NC: Network Capabilities
TC: Transport Capabilities
GSC: Generic Support Capabilities
SSC: Specific Support Capabilities
IOTA: IOT Applications
GMC: Generic Management Capabilities
SMC: Specific Management Capabilities
GSEC: Generic Security Capabilities
SSEC: Specific Security Capabilities
Source: ITU (redrawn)
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 10 / 57
11. IoT Architecture
IoT Architecture
Device Layer
Network Layer
Application Support
Layer
Application Layer
ManagementLayer
SecurityLayer
DC
GC
NC
TC
IOTA
GSC SSC
GMC
SMC
GSEC
SSEC
DC: Device Capabilities
GC: Gateway Capabilities
NC: Network Capabilities
TC: Transport Capabilities
GSC: Generic Support Capabilities
SSC: Specific Support Capabilities
IOTA: IOT Applications
GMC: Generic Management Capabilities
SMC: Specific Management Capabilities
GSEC: Generic Security Capabilities
SSEC: Specific Security Capabilities
Device Capabilities: Sensing and actuating, sleeping and waking up,
ad-hoc networking, communicating directly or indirectly with upper layers
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 10 / 57
12. IoT Architecture
IoT Architecture
Device Layer
Network Layer
Application Support
Layer
Application Layer
ManagementLayer
SecurityLayer
DC
GC
NC
TC
IOTA
GSC SSC
GMC
SMC
GSEC
SSEC
DC: Device Capabilities
GC: Gateway Capabilities
NC: Network Capabilities
TC: Transport Capabilities
GSC: Generic Support Capabilities
SSC: Specific Support Capabilities
IOTA: IOT Applications
GMC: Generic Management Capabilities
SMC: Specific Management Capabilities
GSEC: Generic Security Capabilities
SSEC: Specific Security Capabilities
Gateway Capabilities: Multiple interfaces support, protocol conversion,
some of application logic, execution environment
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 10 / 57
13. IoT Architecture
IoT Architecture
Device Layer
Network Layer
Application Support
Layer
Application Layer
ManagementLayer
SecurityLayer
DC
GC
NC
TC
IOTA
GSC SSC
GMC
SMC
GSEC
SSEC
DC: Device Capabilities
GC: Gateway Capabilities
NC: Network Capabilities
TC: Transport Capabilities
GSC: Generic Support Capabilities
SSC: Specific Support Capabilities
IOTA: IOT Applications
GMC: Generic Management Capabilities
SMC: Specific Management Capabilities
GSEC: Generic Security Capabilities
SSEC: Specific Security Capabilities
Network Capabilities: Network connectivity, mobility management, AAA
(authentication, authorization, and accounting)
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 10 / 57
14. IoT Architecture
IoT Architecture
Device Layer
Network Layer
Application Support
Layer
Application Layer
ManagementLayer
SecurityLayer
DC
GC
NC
TC
IOTA
GSC SSC
GMC
SMC
GSEC
SSEC
DC: Device Capabilities
GC: Gateway Capabilities
NC: Network Capabilities
TC: Transport Capabilities
GSC: Generic Support Capabilities
SSC: Specific Support Capabilities
IOTA: IOT Applications
GMC: Generic Management Capabilities
SMC: Specific Management Capabilities
GSEC: Generic Security Capabilities
SSEC: Specific Security Capabilities
Transport Capabilities: Transport services for data and control
information
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 10 / 57
15. IoT Architecture
IoT Architecture
Device Layer
Network Layer
Application Support
Layer
Application Layer
ManagementLayer
SecurityLayer
DC
GC
NC
TC
IOTA
GSC SSC
GMC
SMC
GSEC
SSEC
DC: Device Capabilities
GC: Gateway Capabilities
NC: Network Capabilities
TC: Transport Capabilities
GSC: Generic Support Capabilities
SSC: Specific Support Capabilities
IOTA: IOT Applications
GMC: Generic Management Capabilities
SMC: Specific Management Capabilities
GSEC: Generic Security Capabilities
SSEC: Specific Security Capabilities
Generic Support Capabilities: Data processing, Data storage, etc.
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 10 / 57
16. IoT Architecture
IoT Architecture
Device Layer
Network Layer
Application Support
Layer
Application Layer
ManagementLayer
SecurityLayer
DC
GC
NC
TC
IOTA
GSC SSC
GMC
SMC
GSEC
SSEC
DC: Device Capabilities
GC: Gateway Capabilities
NC: Network Capabilities
TC: Transport Capabilities
GSC: Generic Support Capabilities
SSC: Specific Support Capabilities
IOTA: IOT Applications
GMC: Generic Management Capabilities
SMC: Specific Management Capabilities
GSEC: Generic Security Capabilities
SSEC: Specific Security Capabilities
Specific Support Capabilities: Provide different support functions for
different IoT applications
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 10 / 57
17. IoT Architecture
IoT Architecture
Device Layer
Network Layer
Application Support
Layer
Application Layer
ManagementLayer
SecurityLayer
DC
GC
NC
TC
IOTA
GSC SSC
GMC
SMC
GSEC
SSEC
DC: Device Capabilities
GC: Gateway Capabilities
NC: Network Capabilities
TC: Transport Capabilities
GSC: Generic Support Capabilities
SSC: Specific Support Capabilities
IOTA: IOT Applications
GMC: Generic Management Capabilities
SMC: Specific Management Capabilities
GSEC: Generic Security Capabilities
SSEC: Specific Security Capabilities
IoT Application: The Internet of things application written by an IoT
developer and executed by the user
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 10 / 57
18. IoT Architecture
IoT Architecture
Device Layer
Network Layer
Application Support
Layer
Application Layer
ManagementLayer
SecurityLayer
DC
GC
NC
TC
IOTA
GSC SSC
GMC
SMC
GSEC
SSEC
DC: Device Capabilities
GC: Gateway Capabilities
NC: Network Capabilities
TC: Transport Capabilities
GSC: Generic Support Capabilities
SSC: Specific Support Capabilities
IOTA: IOT Applications
GMC: Generic Management Capabilities
SMC: Specific Management Capabilities
GSEC: Generic Security Capabilities
SSEC: Specific Security Capabilities
Generic Management Capabilities: Device management such as
activation/deactivation and firmware/software upgrades, Network topology
and congestion management
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 10 / 57
19. IoT Architecture
IoT Architecture
Device Layer
Network Layer
Application Support
Layer
Application Layer
ManagementLayer
SecurityLayer
DC
GC
NC
TC
IOTA
GSC SSC
GMC
SMC
GSEC
SSEC
DC: Device Capabilities
GC: Gateway Capabilities
NC: Network Capabilities
TC: Transport Capabilities
GSC: Generic Support Capabilities
SSC: Specific Support Capabilities
IOTA: IOT Applications
GMC: Generic Management Capabilities
SMC: Specific Management Capabilities
GSEC: Generic Security Capabilities
SSEC: Specific Security Capabilities
Specific Management Capabilities: coupled with application-specific
requirements
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 10 / 57
20. IoT Architecture
IoT Architecture
Device Layer
Network Layer
Application Support
Layer
Application Layer
ManagementLayer
SecurityLayer
DC
GC
NC
TC
IOTA
GSC SSC
GMC
SMC
GSEC
SSEC
DC: Device Capabilities
GC: Gateway Capabilities
NC: Network Capabilities
TC: Transport Capabilities
GSC: Generic Support Capabilities
SSC: Specific Support Capabilities
IOTA: IOT Applications
GMC: Generic Management Capabilities
SMC: Specific Management Capabilities
GSEC: Generic Security Capabilities
SSEC: Specific Security Capabilities
Generic Security Capabilities: authorization, authentication, data
confidentiality and integrity protection, privacy protection
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 10 / 57
21. IoT Architecture
IoT Architecture
Device Layer
Network Layer
Application Support
Layer
Application Layer
ManagementLayer
SecurityLayer
DC
GC
NC
TC
IOTA
GSC SSC
GMC
SMC
GSEC
SSEC
DC: Device Capabilities
GC: Gateway Capabilities
NC: Network Capabilities
TC: Transport Capabilities
GSC: Generic Support Capabilities
SSC: Specific Support Capabilities
IOTA: IOT Applications
GMC: Generic Management Capabilities
SMC: Specific Management Capabilities
GSEC: Generic Security Capabilities
SSEC: Specific Security Capabilities
Specific Security Capabilities: coupled with application-specific
requirements
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 10 / 57
22. IoT Architecture
IoT Architecture - Communication Models
1-Device to Device Model
2-Device to Cloud Model
Source: Internet Society
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 11 / 57
23. IoT Architecture
IoT Architecture - Communication Models
3-Device to Gateway Model
Source: Internet Society
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 12 / 57
24. IoT Architecture
IoT Architecture - Communication Models
4-Back End Data Sharing Model
Source: Internet Society
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 13 / 57
25. IoT Ecosystem
IoT Ecosystem - Overview
The IoT ecosystem is composed of a variety of business players. Each
business player plays at least one business role, but more roles are possible
Application Provider
Application Customer
Platform Provider
Network Provider
Device Provider
Source: ITU (redrawn)
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 14 / 57
26. IoT Ecosystem
IoT Ecosystem - Business Models
Platform
Provider
Device
Provider
Network
Provider
Application
Provider
Application
Customer
Player A
Model-1
Platform
Provider
Device
Provider
Network
Provider
Application
Provider
Application
Customer
Player A
Model-2
Player B
Source: ITU (redrawn)
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 15 / 57
27. IoT Ecosystem
IoT Ecosystem - Business Models
Platform
Provider
Device
Provider
Network
Provider
Application
Provider
Application
Customer
Player A Player BPlayer B
Platform
Provider
Device
Provider
Network
Provider
Application
Provider
Application
Customer
Player A Player BPlayer B
Model-3
Model-4
Source: ITU (redrawn)
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 16 / 57
28. IoT Ecosystem
IoT Ecosystem - Business Models
Platform
Provider
Device
Provider
Network
Provider
Application
Provider
Application
Customer
Player A Player BPlayer C Player C
Model-5
Source: ITU (redrawn)
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 17 / 57
29. IoT Standards
IoT Standards - Benefits
Reduced deployment and operation costs
Costeffective products thanks to focused R&D efforts
Easier application development
Easier integration between solution components
Ability to share and reuse infrastructure and field devices
Sustainable investments
No vendor lockin
Ability to benefit from further evolutions of the standard as it grows
Improved opportunities
Ability to share and reuse data across vertical applications
Ability to interconnect with other IoT/M2M systems
Fostering of new applications and new business models
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 18 / 57
30. IoT Standards
IoT Standards - Overview
Source: Intel
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 19 / 57
31. IoT Standards
IoT Standards - Organizations
Internet Engineering Task Force (IETF)
Constrained RESTful Environments Working Group (CoRE)
IPv6 over Low power WPAN Working Group (6lowpan)
Routing Over Low power and Lossy networks Working Group (ROLL)
OneM2M : The purpose and goal of oneM2M is to develop technical
specifications which address the need for a common M2M Service
Layer that can be readily embedded within various hardware and
software.
World Wide Web Consortium (W3C)
Web of thing Community Group
Semantic Sensor Net Ontology
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 20 / 57
32. IoT Standards
IoT Standards - Organizations
Organization for the Advancement of Structured Information
Standards (OASIS)
MQTT Technical Committee
Eclipse Paho Project: The scope of the Paho project is to provide
open source implementations of open and standard messaging
protocols that support current and emerging requirements of IoT
International Telecommunication Union (ITU-T)
Internet of Things Global Standards Initiative (IoT-GSI)
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 21 / 57
33. IoT Standards
IoT Standards - Alliances
Allseen Alliance : The AllSeen Alliance is dedicated to the widespread
adoption of products, systems and services that support the Internet
of Things
AllJoyn Framework: A universal IoT Development Framework
Open Connectivity Foundation (OCF)
The successor to Open Interconnect Consortium (OIC)
Provides IoTivity Framework and data models based on RESTful API
Modeling Language (RAML)
Allseen alliance has recently merged in one alliance with OCF
Open Mobile Alliance (OMA): OMA is the Leading Industry Forum
for Developing Market Driven Interoperable Mobile Service Enablers
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 22 / 57
34. IoT Standards
IoT Standards - Alliances
IP Smart Object Alliance (IPSO): A global non-profit organization
serving the various communities seeking to establish the Internet
Protocol as the network for the connection of Smart Objects by
providing coordinated marketing efforts available to the general public
Industrial Internet Consortium: Founded in 2014 to further
development, adoption and wide-spread use of interconnected
machines, intelligent analytics and people at work
Internet of Things Global Standards Initiative (IoT-GSI)
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 23 / 57
35. IoT Standards
IoT Standards - Semantics
Industry specific groups are in best position to define metadata for each
vertical.
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 24 / 57
36. IoT Standards
IoT Standards - OneM2M
Source: OneM2M
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 25 / 57
37. IoT Protocols
IoT Protocols - Overview
Low Power communication protocols : COAP, MQTT, RPL, 6LoWPAN,
802.15.4, Low Power Wide Area Network (3GPP and others)
Source: OneM2M
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 26 / 57
38. IoT Protocols
IoT Protocols - Data Communication
Constrained Application Protocol (COAP)
RESTful protocol design minimizing the complexity of mapping with
HTTP
Low header overhead and parsing complexity
URI and content-type support
Support for the discovery of resources provided by known CoAP services
Simple subscription for a resource, and resulting push notifications
Message Queuing Telemetry Transport (MQTT)
invented by IBM in 2000 for telemetry applications using low power
data rates
enables a publish/subscribe messaging model in an extremely
lightweight way
requires Small Code footprint and low bandwidth
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 27 / 57
39. IoT Protocols
IoT Protocols - Local Network Communication
IEEE 802.15.4
IEEE 802.15.4 is a standard which specifies the physical layer and
media access control for low-rate wireless personal area networks
(LR-WPANs).
It is maintained by the IEEE 802.15 working group
It is the basis for the ZigBee,ISA100.11a, WirelessHART, and MiWi
specifications, each of which further extends the standard by
developing the upper layers which are not defined in IEEE 802.15.4
it is used with 6LoWPAN and standard Internet protocols to build a
wireless embedded Internet.
Zigbee
Uses the 802.15.4 standard and operates in the 2.4 GHz frequency
range with 250 kbps
The maximum number of nodes in the network is 1024 with a range up
to 200 meter. ZigBee can use 128 bit AES encryption.
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 28 / 57
40. IoT Protocols
IoT Protocols - Local Network Communication
Bluetooth Low Energy
designed and marketed by the Bluetooth Special Interest Group
Different Profiles for Different applications
Provide the same range as classic bluetooth with considerable low
energy consumption
the technology used in beacons used to send contextual information
based on locations (Google beacon platform , Google Physical web,
Apple ibeacon)
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 29 / 57
41. IoT Protocols
IoT Protocols - Low Power Wide Area Network (LPWAN)
Weightless is a proposed proprietary open wireless technology
standard for exchanging data between a base station and thousands
of machines around it (using wavelength radio transmissions in
unoccupied TV transmission channels) with high levels of security.
NB-IoT (Narrow-Band IoT) A technology being standardized by
the 3GPP standards body
LTE-MTC (LTE-Machine Type Communication) -
Standards-based family of technologies supports several technology
categories, such as Cat-1 and CatM1, suitable for the IoT.
EC-GSM-IoT (Extended Coverage-GSM-IoT) - Enables new
capabilities of existing cellular networks for LPWA (Low Power Wide
Area) IoT applications. EC-GSM-IoT can be activated through new
software deployed over a very large GSM footprint, adding even more
coverage to serve IoT devices.
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 30 / 57
42. IoT Protocols
IoT Protocols - Low Power Wide Area Network (LPWAN)
Sigfox is a French company that build Low Power wide network for
connected devices using its proprietary protocol.
LoRaWAN - Network protocol intended for wireless battery operated
Things in regional, national or global network. It is managed by Lora
Alliance.
RPMA (Random phase multiple access) A technology
communication system employing direct-sequence spread spectrum
(DSSS) with multiple access.
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 31 / 57
43. IoT Protocols
IoT Protocols - Low Power Wide Area Network (LPWAN)
Source: indigoo.com
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 32 / 57
44. IoT Protocols
IoT Protocols - Low Power Wide Area Network (LPWAN)
Source: indigoo.com
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 33 / 57
45. IoT Protocols
IoT Protocols - Routing Protocols
IPv6 over Low power
Wireless Personal Area
Networks (6LoWPAN)
An adaption layer for IPv6
over IEEE802.15.4 links
Operates only in the 2.4
GHz frequency range with
250 kbps transfer rate
Routing Protocol for low
Power and Lossy Networks
(RPL)
Developed by IETF ROLL
Working Group
Ideal for N to 1 links
(meters reading)
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 34 / 57
46. IoT Protocols
IoT Protocols - Discovery
Search around me: This
category of discovery
includes technologies that
allow to discover things
around me (in a spatial
sense)
NFC
UriBeacon (Formerly
known as Physical Web
from Google)
iBeacon (from Apple)
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 35 / 57
47. IoT Protocols
IoT Protocols - Discovery
Search on my network: It covers technologies enabling discovery of
things on the network.
mDNS
SSDP
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 36 / 57
48. IoT Protocols
IoT Protocols - Discovery
Searching in a directory:
A central directory is used
for discovery of things and
resources
Discovery requests are
sent to the directory
CoRE Resource
Directory
XMPP IoT Discovery
SPARQL Endpoints
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 37 / 57
49. IoT Protocols
IoT Protocols - Discovery
Search Across Peers:
In P2P style discovery, the directory is essentially distributed across the
peers
Distributed hash tables (DHT) is often used to map the search space
into a numeric range and then allocates servers to parts of that range
Observation: the technique works well for scale free networks
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 38 / 57
50. IoT Protocols
IoT Protocols - Discovery
Search for Thing Metadata:
Once a thing” has been
discovered with
mentioned mechanisms
next ”resources”
(thing metadata)
access at thing level
needs to be performed
Examples
CoAP + CoRE Link
Format (for thing
metadata)
Sensor Observation
Service (SOS): it is a
web service which
allows querying sensor
metadata.
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 39 / 57
51. IoT Platforms
IoT Platforms - Overview
IoT platforms are the central piece in the Internet of Things
architecture that connect the real and the virtual worlds and enable
communication between objects
It is The backbone system to manage IoT business cases. The real
value of IoT is done there (Analytics)
There are hundreds of them and number is growing.
Platforms Types:
Based on Technological depth: The connectivity Platform, The action
Platform, and The scale Platform
Based on the segment focus: Smart Home, Connected card, Smart city,
Smart retail, Industrial, and other.
Based on Integration approach : One stop-shop platform and
customizable white-label platforms
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 40 / 57
52. IoT Platforms
IoT Platform - Components
Source: IoT Analytics
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 41 / 57
53. An Example: MQTT
MQTT - Overview
MQTT was invented by IBM back in 1999.
The goal is to create a protocol for minimal battery loss and minimal
bandwidth connecting oil pipelines over satellite connection
After MQTT had been used by IBM internally for quite some times,
version 3.1 was released royalty free in 2010
The protocol hand-overed to OASIS organization for The
standardization process which took around 1 year and on October
29th 2014 MQTT was officially approved as OASIS Standard.
MQTT 3.1.1 is now the newest version of the protocol.
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 42 / 57
54. An Example: MQTT
MQTT - Features
Client Server publish/subscribe messaging transport protocol
Simple to implement
Lightweight and Bandwidth Efficient
small code footprint
Provide a Quality of Service Data Delivery
Data Agnostic
Continuous Session Awareness
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 43 / 57
55. An Example: MQTT
MQTT - Publish and Subscribe Model
Source: HiveMQ.com
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 44 / 57
56. An Example: MQTT
MQTT - Publish and Subscribe Model
The Pub/Sub model decouples the sender (Publisher) from the
receiver (Subscriber) by a third party called the broker
Space decoupling: Publisher and subscriber do not need to know
each other (by ip address and port for example)
Time decoupling: Publisher and subscriber do not need to run at the
same time
Synchronization decoupling: Operations on both components are
not halted during publish or receiving
The broker filters all incoming messages coming from publishers and
distributes them to subscribers accordingly
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 45 / 57
57. An Example: MQTT
MQTT - Publish and Subscribe Model
Pub/Sub also provides a greater scalability than the traditional
client-server approach because operations on the broker can be highly
parallelized and processed event-driven
To scale publish/subscribe to millions of connections, cluster of
brokers are used .
The broker filter then forward messages to subscribers based on three
criteria :
Subject-based filtering
Content-based filtering
Type-based filtering
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 46 / 57
58. An Example: MQTT
MQTT Connection
Source: HiveMQ.com
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 47 / 57
59. An Example: MQTT
MQTT Publish and Subscribe
Source: HiveMQ.com
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 48 / 57
60. An Example: MQTT
MQTT Topics
Source: HiveMQ.com
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 49 / 57
61. An Example: MQTT
MQTT Quality of Service (QoS)
Qos is a major feature of MQTT because it handles retransmission
and guarantees the delivery of the message
Mostly used for unreliable networks.
Three levels: 0, 1, and 2.
QoS 0 at most once: A
message wont be acknowledged
by the receiver or stored and
redelivered by the sender. This
is often called fire and forget
and provides the same
guarantee as the underlying
TCP protocol.
Source: HiveMQ.com
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 50 / 57
62. An Example: MQTT
MQTT Quality of Service (QoS)
QoS 1 at least once
When using QoS level 1, it is
guaranteed that a message will be
delivered at least once to the
receiver. But the message can also
be delivered more than once.
The sender will store the message
until it gets an acknowledgement in
form of a PUBACK command
message from the receiver.
If the PUBACK isnt received in a
reasonable amount of time the sender
will resend the PUBLISH message
Source: HiveMQ.com
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 51 / 57
63. An Example: MQTT
MQTT Quality of Service (QoS)
It is the lowest level
If a receiver gets a QoS 2 PUBLISH it will process the message and
send PUBREC message.
When the sender receives the PUBREC it can safely discard the initial
publish, then store the PUBREC and respond with a PUBREL.
After the receiver gets the PUBREL it can discard every stored state
and answer with a PUBCOMP. The same is true when the sender
receives the PUBCOMP.
Source: HiveMQ.com
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 52 / 57
64. An Example: MQTT
MQTT - Simple Expirment
We will use two applications running on your mobile phones. One
acts as a publisher and the other as a subscriber. You can also work
in pairs.
For Android use mymqtt (publisher) and MQTT Dash (subscriber)
applications. Download them from Google play and install them in
your phone
For iphone, go to the website service
http://www.hivemq.com/demos/websocket-client/
First configure the clients with the following minimal parameters :
Address : iot.eclipse.org Port : 1884
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 53 / 57
65. An Example: MQTT
MQTT - Simple Expirment
Use one client to subscribe to the following topic:
kacst/b36/xxxx/temp (xxxx is a random number)
Use the other client to publish a message using the same topic
Publish a different value and make sure it is received by the subscriber
You could also try the wild-card feature
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 54 / 57
66. An Example: MQTT
Summary
The IoT vision is to build a horizontal layer across different vertical
domains to facilitate data sharing and enable innovative applications
The IoT functional architecture includes from top to bottom
application, application support, network, and device layers.
Management and security span all layers.
Four IoT communication models: Device to device , Device to cloud,
Device to gateway , and Back end sharing data models
The IoT ecosystem has four Business roles : Device provider, Network
provider, Platform provider, and application providers. One player
could have more than one business roles.
The IoT standardization is paramount for cost reduction and
interoperability among different devices and applications. The efforts
happen everywhere
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 55 / 57
67. An Example: MQTT
Summary
New protocols are designed in each functional layer.
OneM2M works to standardize the horizontal layer of the IoT
Rich metadata is needed to describe things and their actions, events,
and relations
IoT platform is the back end system where the real work is done. It is
composed of different components that facilitate device management,
data storage and processing , events handling, data analysis,
visualization, and API to connect to devices or other platforms or
systems
Finally we describe the publish and subscribe communication model
and how MQTT protocol and why it is suitable for IoT applications
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 56 / 57
68. An Example: MQTT
Thank you
Thank you
Q & A
Dr. Abdullah Alfadhly KACST National Center for Computer Technology and Applied Mathematics (CTAM) Riyadh, Saudi ArabiaIntroduction to Internet of Things Architectures and ProtocolsJuly 31, 2017 57 / 57