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) Introduction to Internet of Things Architectures and Protocols July 31, 2017 1 / 57
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Introduction to Internet of Things Architectures andProtocols
Dr. Abdullah AlfadhlyKACST
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
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
IoT overview
IoT Overview - Definition
The term ”Internet of Things” (IoT) denotes a trend where a largenumber of embedded devices employ communication services offeredby the Internet protocols. Many of these devices, often called ”smartobjects, are not directly operated by humans, but exist as componentsin buildings or vehicles, or are spread out in the environment. (TheInternet Architecture Board)
A global infrastructure for the information society, enabling advancedservices by interconnecting (physical and virtual) things based onexisting and evolving interoperable information and communicationtechnologies (ITU)
The Internet of things (noun): The interconnection via the Internet ofcomputing devices embedded in everyday objects, enabling them tosend 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
IoT overview
IoT Overview - Enablers
Ubiquitous Connectivity: Low cost, high speed, and pervasive networkconnectivity
Widespread adoption of IPbased networking.
Moores law continues to deliver greater computing power at lowerprice points and lower power consumption. Manufacturing advancesallow cutting-edge computing and communications technology to beincorporated 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
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
From M2M to IoT
From M2M to IoT
In the 1990s, advances in wireless technology allowedmachinetomachine (M2M) enterprise and industrial solutions tobecome widespread.
Many of these early M2M solutions, however, were based on closedpurposebuilt networks and proprietary or industryspecific standards
The recent open M2M solutions are usually vertically centric whichmean it serves a particular domain application (Health, Home,Industrial , etc.)
The concept of IoT is to build a horizontal layer that overlap alldomains 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
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
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
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
IoT Architecture
IoT Architecture
Device Layer
Network Layer
Application Support
Layer
Application LayerManagem
ent L
ayer
Security
Layer
DC
GC
NC
TC
IOTA
GSC SSC
GM
C
SM
C
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
IoT Architecture
IoT Architecture
Device Layer
Network Layer
Application Support
Layer
Application LayerManagem
ent L
ayer
Security
LayerDC
GC
NC
TC
IOTA
GSC SSC
GM
C
SM
C
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
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
IoT Architecture
IoT Architecture
Device Layer
Network Layer
Application Support
Layer
Application LayerManagem
ent L
ayer
Security
LayerDC
GC
NC
TC
IOTA
GSC SSC
GM
C
SM
C
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
IoT Architecture
IoT Architecture
Device Layer
Network Layer
Application Support
Layer
Application LayerManagem
ent L
ayer
Security
LayerDC
GC
NC
TC
IOTA
GSC SSC
GM
C
SM
C
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 controlinformation
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
IoT Architecture
IoT Architecture
Device Layer
Network Layer
Application Support
Layer
Application LayerManagem
ent L
ayer
Security
Layer
DC
GC
NC
TC
IOTA
GSC SSC
GM
C
SM
C
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
IoT Architecture
IoT Architecture
Device Layer
Network Layer
Application Support
Layer
Application LayerManagem
ent L
ayer
Security
LayerDC
GC
NC
TC
IOTA
GSC SSC
GM
C
SM
C
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 fordifferent 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
IoT Architecture
IoT Architecture
Device Layer
Network Layer
Application Support
Layer
Application LayerManagem
ent L
ayer
Security
LayerDC
GC
NC
TC
IOTA
GSC SSC
GM
C
SM
C
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 IoTdeveloper 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
IoT Architecture
IoT Architecture
Device Layer
Network Layer
Application Support
Layer
Application LayerManagem
ent L
ayer
Security
Layer
DC
GC
NC
TC
IOTA
GSC SSC
GM
C
SM
C
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 asactivation/deactivation and firmware/software upgrades, Network topologyand 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
IoT Architecture
IoT Architecture
Device Layer
Network Layer
Application Support
Layer
Application LayerManagem
ent L
ayer
Security
LayerDC
GC
NC
TC
IOTA
GSC SSC
GM
C
SM
C
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-specificrequirements
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
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
IoT Architecture
IoT Architecture
Device Layer
Network Layer
Application Support
Layer
Application LayerManagem
ent L
ayer
Security
LayerDC
GC
NC
TC
IOTA
GSC SSC
GM
C
SM
C
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-specificrequirements
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
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
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
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
IoT Ecosystem
IoT Ecosystem - Overview
The IoT ecosystem is composed of a variety of business players. Eachbusiness 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
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
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
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
IoT Standards
IoT Standards - Benefits
Reduced deployment and operation costsI Costeffective products thanks to focused R&D effortsI Easier application developmentI Easier integration between solution componentsI Ability to share and reuse infrastructure and field devices
Sustainable investments
I No vendor lockinI Ability to benefit from further evolutions of the standard as it grows
Improved opportunities
I Ability to share and reuse data across vertical applicationsI Ability to interconnect with other IoT/M2M systemsI 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
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
IoT Standards
IoT Standards - Organizations
Internet Engineering Task Force (IETF)
I Constrained RESTful Environments Working Group (CoRE)I IPv6 over Low power WPAN Working Group (6lowpan)I Routing Over Low power and Lossy networks Working Group (ROLL)
OneM2M : The purpose and goal of oneM2M is to develop technicalspecifications which address the need for a common M2M ServiceLayer that can be readily embedded within various hardware andsoftware.
World Wide Web Consortium (W3C)
I Web of thing Community GroupI 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
IoT Standards
IoT Standards - Organizations
Organization for the Advancement of Structured InformationStandards (OASIS)
I MQTT Technical Committee
Eclipse Paho Project: The scope of the Paho project is to provideopen source implementations of open and standard messagingprotocols that support current and emerging requirements of IoT
International Telecommunication Union (ITU-T)
I 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
IoT Standards
IoT Standards - Alliances
Allseen Alliance : The AllSeen Alliance is dedicated to the widespreadadoption of products, systems and services that support the Internetof Things
I AllJoyn Framework: A universal IoT Development Framework
Open Connectivity Foundation (OCF)
I The successor to Open Interconnect Consortium (OIC)I Provides IoTivity Framework and data models based on RESTful API
Modeling Language (RAML)I Allseen alliance has recently merged in one alliance with OCF
Open Mobile Alliance (OMA): OMA is the Leading Industry Forumfor 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
IoT Standards
IoT Standards - Alliances
IP Smart Object Alliance (IPSO): A global non-profit organizationserving the various communities seeking to establish the InternetProtocol as the network for the connection of Smart Objects byproviding coordinated marketing efforts available to the general public
Industrial Internet Consortium: Founded in 2014 to furtherdevelopment, adoption and wide-spread use of interconnectedmachines, intelligent analytics and people at work
I 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
IoT Standards
IoT Standards - Semantics
Industry specific groups are in best position to define metadata for eachvertical.
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
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
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
IoT Protocols
IoT Protocols - Data Communication
Constrained Application Protocol (COAP)
I RESTful protocol design minimizing the complexity of mapping withHTTP
I Low header overhead and parsing complexityI URI and content-type supportI Support for the discovery of resources provided by known CoAP servicesI Simple subscription for a resource, and resulting push notifications
Message Queuing Telemetry Transport (MQTT)
I invented by IBM in 2000 for telemetry applications using low powerdata rates
I enables a publish/subscribe messaging model in an extremelylightweight way
I 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
IoT Protocols
IoT Protocols - Local Network Communication
IEEE 802.15.4I 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).
I It is maintained by the IEEE 802.15 working groupI It is the basis for the ZigBee,ISA100.11a, WirelessHART, and MiWi
specifications, each of which further extends the standard bydeveloping the upper layers which are not defined in IEEE 802.15.4
I it is used with 6LoWPAN and standard Internet protocols to build awireless embedded Internet.
ZigbeeI Uses the 802.15.4 standard and operates in the 2.4 GHz frequency
range with 250 kbpsI 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
IoT Protocols
IoT Protocols - Local Network Communication
Bluetooth Low Energy
I designed and marketed by the Bluetooth Special Interest GroupI Different Profiles for Different applicationsI Provide the same range as classic bluetooth with considerable low
energy consumptionI 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
IoT Protocols
IoT Protocols - Low Power Wide Area Network (LPWAN)
Weightless is a proposed proprietary open wireless technologystandard for exchanging data between a base station and thousandsof machines around it (using wavelength radio transmissions inunoccupied TV transmission channels) with high levels of security.
NB-IoT (Narrow-Band IoT) A technology being standardized bythe 3GPP standards body
LTE-MTC (LTE-Machine Type Communication) -Standards-based family of technologies supports several technologycategories, such as Cat-1 and CatM1, suitable for the IoT.
EC-GSM-IoT (Extended Coverage-GSM-IoT) - Enables newcapabilities of existing cellular networks for LPWA (Low Power WideArea) IoT applications. EC-GSM-IoT can be activated through newsoftware deployed over a very large GSM footprint, adding even morecoverage 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
IoT Protocols
IoT Protocols - Low Power Wide Area Network (LPWAN)
Sigfox is a French company that build Low Power wide network forconnected devices using its proprietary protocol.
LoRaWAN - Network protocol intended for wireless battery operatedThings in regional, national or global network. It is managed by LoraAlliance.
RPMA (Random phase multiple access) A technologycommunication 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
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
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
IoT Protocols
IoT Protocols - Routing Protocols
IPv6 over Low powerWireless Personal AreaNetworks (6LoWPAN)
I An adaption layer for IPv6over IEEE802.15.4 links
I Operates only in the 2.4GHz frequency range with250 kbps transfer rate
Routing Protocol for lowPower and Lossy Networks(RPL)
I Developed by IETF ROLLWorking Group
I 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
IoT Protocols
IoT Protocols - Discovery
Search around me: Thiscategory of discoveryincludes technologies thatallow to discover thingsaround me (in a spatialsense)
I NFCI UriBeacon (Formerly
known as Physical Webfrom Google)
I 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
IoT Protocols
IoT Protocols - Discovery
Search on my network: It covers technologies enabling discovery ofthings on the network.
I mDNSI 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
IoT Protocols
IoT Protocols - Discovery
Searching in a directory:I A central directory is used
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
IoT Protocols
IoT Protocols - Discovery
Search Across Peers:I In P2P style discovery, the directory is essentially distributed across the
peersI Distributed hash tables (DHT) is often used to map the search space
into a numeric range and then allocates servers to parts of that rangeI 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
IoT Protocols
IoT Protocols - Discovery
Search for Thing Metadata:
I Once a thing” has beendiscovered withmentioned mechanisms
next ”resources”(thing metadata)access at thing levelneeds to be performed
I Examples
CoAP + CoRE LinkFormat (for thingmetadata)Sensor ObservationService (SOS): it is aweb service whichallows querying sensormetadata.
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
IoT Platforms
IoT Platforms - Overview
IoT platforms are the central piece in the Internet of Thingsarchitecture that connect the real and the virtual worlds and enablecommunication between objects
It is The backbone system to manage IoT business cases. The realvalue of IoT is done there (Analytics)
There are hundreds of them and number is growing.
Platforms Types:
I Based on Technological depth: The connectivity Platform, The actionPlatform, and The scale Platform
I Based on the segment focus: Smart Home, Connected card, Smart city,Smart retail, Industrial, and other.
I Based on Integration approach : One stop-shop platform andcustomizable 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
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
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 minimalbandwidth 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 Thestandardization process which took around 1 year and on October29th 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
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
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
An Example: MQTT
MQTT - Publish and Subscribe Model
The Pub/Sub model decouples the sender (Publisher) from thereceiver (Subscriber) by a third party called the broker
I Space decoupling: Publisher and subscriber do not need to knoweach other (by ip address and port for example)
I Time decoupling: Publisher and subscriber do not need to run at thesame time
I Synchronization decoupling: Operations on both components arenot halted during publish or receiving
The broker filters all incoming messages coming from publishers anddistributes 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
An Example: MQTT
MQTT - Publish and Subscribe Model
Pub/Sub also provides a greater scalability than the traditionalclient-server approach because operations on the broker can be highlyparallelized and processed event-driven
To scale publish/subscribe to millions of connections, cluster ofbrokers are used .
The broker filter then forward messages to subscribers based on threecriteria :
I Subject-based filteringI Content-based filteringI 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
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
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
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
An Example: MQTT
MQTT Quality of Service (QoS)
Qos is a major feature of MQTT because it handles retransmissionand 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
An Example: MQTT
MQTT Quality of Service (QoS)
QoS 1 at least once
I 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.I The sender will store the message
until it gets an acknowledgement in
form of a PUBACK command
message from the receiver.I 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
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 andsend PUBREC message.
When the sender receives the PUBREC it can safely discard the initialpublish, then store the PUBREC and respond with a PUBREL.
After the receiver gets the PUBREL it can discard every stored stateand answer with a PUBCOMP. The same is true when the senderreceives 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
An Example: MQTT
MQTT - Simple Expirment
We will use two applications running on your mobile phones. Oneacts as a publisher and the other as a subscriber. You can also workin pairs.
For Android use mymqtt (publisher) and MQTT Dash (subscriber)applications. Download them from Google play and install them inyour phone
For iphone, go to the website servicehttp://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
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
An Example: MQTT
Summary
The IoT vision is to build a horizontal layer across different verticaldomains to facilitate data sharing and enable innovative applications
The IoT functional architecture includes from top to bottomapplication, 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, Networkprovider, Platform provider, and application providers. One playercould have more than one business roles.
The IoT standardization is paramount for cost reduction andinteroperability among different devices and applications. The effortshappen 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
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 iscomposed 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 orsystems
Finally we describe the publish and subscribe communication modeland 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
An Example: MQTT
Thank you
Thank youQ & 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