Introduction to IoT Architectures and Protocols

68
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

Transcript of Introduction to IoT Architectures and Protocols

Page 1: Introduction to IoT Architectures and Protocols

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

Page 2: Introduction to IoT Architectures and Protocols

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

Page 3: Introduction to IoT Architectures and Protocols

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

Page 4: Introduction to IoT Architectures and Protocols

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

Page 5: Introduction to IoT Architectures and Protocols

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

Page 6: Introduction to IoT Architectures and Protocols

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

Page 7: Introduction to IoT Architectures and Protocols

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

Page 8: Introduction to IoT Architectures and Protocols

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

Page 9: Introduction to IoT Architectures and Protocols

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

Page 10: Introduction to IoT Architectures and Protocols

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

Page 11: Introduction to IoT Architectures and Protocols

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

Page 12: Introduction to IoT Architectures and Protocols

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

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

Page 13: Introduction to IoT Architectures and Protocols

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

Page 14: Introduction to IoT Architectures and Protocols

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

Page 15: Introduction to IoT Architectures and Protocols

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

Page 16: Introduction to IoT Architectures and Protocols

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

Page 17: Introduction to IoT Architectures and Protocols

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

Page 18: Introduction to IoT Architectures and Protocols

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

Page 19: Introduction to IoT Architectures and Protocols

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

Page 20: Introduction to IoT Architectures and Protocols

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

Generic Security Capabilities: authorization, authentication, dataconfidentiality 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

Page 21: Introduction to IoT Architectures and Protocols

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

Page 22: Introduction to IoT Architectures and Protocols

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

Page 23: Introduction to IoT Architectures and Protocols

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

Page 24: Introduction to IoT Architectures and Protocols

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

Page 25: Introduction to IoT Architectures and Protocols

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

Page 26: Introduction to IoT Architectures and Protocols

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

Page 27: Introduction to IoT Architectures and Protocols

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

Page 28: Introduction to IoT Architectures and Protocols

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

Page 29: Introduction to IoT Architectures and Protocols

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

Page 30: Introduction to IoT Architectures and Protocols

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

Page 31: Introduction to IoT Architectures and Protocols

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

Page 32: Introduction to IoT Architectures and Protocols

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

Page 33: Introduction to IoT Architectures and Protocols

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

Page 34: Introduction to IoT Architectures and Protocols

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

Page 35: Introduction to IoT Architectures and Protocols

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

Page 36: Introduction to IoT Architectures and Protocols

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

Page 37: Introduction to IoT Architectures and Protocols

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

Page 38: Introduction to IoT Architectures and Protocols

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

Page 39: Introduction to IoT Architectures and Protocols

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

Page 40: Introduction to IoT Architectures and Protocols

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

Page 41: Introduction to IoT Architectures and Protocols

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

Page 42: Introduction to IoT Architectures and Protocols

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

Page 43: Introduction to IoT Architectures and Protocols

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

Page 44: Introduction to IoT Architectures and Protocols

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

Page 45: Introduction to IoT Architectures and Protocols

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

Page 46: Introduction to IoT Architectures and Protocols

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

Page 47: Introduction to IoT Architectures and Protocols

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

Page 48: Introduction to IoT Architectures and Protocols

IoT Protocols

IoT Protocols - Discovery

Searching in a directory:I A central directory is used

for discovery of things andresources

I Discovery requests aresent to the directory

CoRE ResourceDirectoryXMPP IoT DiscoverySPARQL 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

Page 49: Introduction to IoT Architectures and Protocols

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

Page 50: Introduction to IoT Architectures and Protocols

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

Page 51: Introduction to IoT Architectures and Protocols

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

Page 52: Introduction to IoT Architectures and Protocols

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

Page 53: Introduction to IoT Architectures and Protocols

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

Page 54: Introduction to IoT Architectures and Protocols

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

Page 55: Introduction to IoT Architectures and Protocols

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

Page 56: Introduction to IoT Architectures and Protocols

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

Page 57: Introduction to IoT Architectures and Protocols

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

Page 58: Introduction to IoT Architectures and Protocols

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

Page 59: Introduction to IoT Architectures and Protocols

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

Page 60: Introduction to IoT Architectures and Protocols

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

Page 61: Introduction to IoT Architectures and Protocols

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

Page 62: Introduction to IoT Architectures and Protocols

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

Page 63: Introduction to IoT Architectures and Protocols

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

Page 64: Introduction to IoT Architectures and Protocols

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

Page 65: Introduction to IoT Architectures and Protocols

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

Page 66: Introduction to IoT Architectures and Protocols

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

Page 67: Introduction to IoT Architectures and Protocols

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

Page 68: Introduction to IoT Architectures and Protocols

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