SlideShare a Scribd company logo
The Considerations for
Internet of Things
Jian-Hong Pan (StarNight)
@ 2017.02.14 TOSSUG
Who am I
潘建宏 / Jian-Hong Pan (StarNight)
You can find me at ~
http://www.slideshare.net/chienhungpan/
GitHub : starnight
Facebook : Jian-Hong Pan
Email : starnight [AT] g.ncu.edu.tw
Outline
● The purpose of IoT
● IoT Structure
● Communication Protocals
● Describe the Things
● Deploy / Update
● Threats & Weakness
● Summary
Machine
Factory
Power Plant
Farm
Healthcare
Environment
...
The Purpuse of IoT
SystemASet Output
Feedback
-
+
Physical,
Chemical
...
values
error
Controller
Internet
Remote
In General
Internet
Device
or
Internet
Gateway
Device #1 Device #2 Device #n
RS232/485/422
Bluetooth, Zigbee, LoRa
Ethernet, WiFi ...
Internet
N
N N
N
N
Gateway
IoT Services:
Data Collector
Commands
Deploy/Update
...
Business
Applications
Big Data
Data Mining
Analysis
Machine
Learning / AI
Decision
Making
...
Sensor Network
Do & Check
General Network
Plan & Analyze
Connectivity
Domain
Knowledge
What features do Nodes have?
● Connectivity
● Sensor
● Actuator
● Computing
● Others ...
Domain Knowledge
OSI 7 Layers
Reference: Wiki OSI model https://en.wikipedia.org/wiki/OSI_model
Physical
Data Link
Network
Transport
Session
Presentation
Application
Software Connections
Encodings
Applications
I/O port
Route
Link neighbors
Controlled
by
Application
Controlled
by OS
Electrics, Lines
Socket APIs
Nodes Could be Linked with
N
N
N
N
N
Gateway
Physical
Network
Data Link
Transport
Session
Presentation
Application
Simple wired,
Ethernet, Cable, Power Line
RS232/422/485,
CANbus,
Bluetooth,
WiFi,
LR-WPANs(802.15.4),
Mobile Telecom Series,
NB-IoT
…
PS. More IEEE 802.15
Constrained Environment
● Considering the size and power restrictions, most
embedded devices have limited resources. (MCU level)
○ Less processors: Usually has only one processor, single
thread.
○ Less memory: On-chip RAM < 1MB.
○ Less storage: On-chip flash < 1MB.
○ Lower speed grade: Clock rate < 1GHz.
○ The on chip OS may even not provide process, thread APIs.
● For getting long battery life and long distance with
wireless communication, there is the standard IEEE
802.15.4 which defines the operation of low-rate
wireless personal area networks (LR-WPANs)
IEEE 802.15.4 Topologies
FFD
FFD
RFD
CoN
RFD FFD
FFD
RFD
CoN
RFD
FFD RFD
● FFD: Full-function device node
● RFD: Reduced-function devices node
● CoN: One of FFD serves as the
coordinator of a PAN
Reference: Wiki IEEE 802.15.4
Nodes Could route & connect with
N
N
N
N
N
Gateway
Physical
Data Link
Session
Presentation
ApplicationIP / IPv6,
6LoWPAN,
Zigbee,
Thread,
LoRaWAN,
...
Transport
Network
Nodes Could communicate with
N
N
N
N
N
Gateway
Physical
Data Link
Presentation
Application
For sockets:
Custom Protocal,
Modbus,
HTTP,
CoAP,
MQTT,
…
Also communicate
with the IoT services
Transport
Network
Session
Modbus
● Master / Slave
● Query in loop
● It is a format for Application Data Unit (ADU)
○ ADU = Address + PDU + Error Check
○ PDU = Function code + Data
○ Error Check may be discard over some protocals
○ ASCII / RTU
● Over serial communication, TCP, UDP ...
Reference: Wiki Modbus
HTTP
● In general, it is over TCP/IP.
● IETF RFC 2616
● Nodes could be either server side or client
side. It is depended on the purpose.
○ Server is connected from
■ other nodes / internet
○ Client connects to
■ other nodes / internet
● Build a Micro HTTP Server for Embedded
System by Jian-Hong Pan
CoAP
Constrained Application Protocol (CoAP)
● IETF RFC 7252
● The goal of CoAP is not to blindly compress
HTTP [RFC2616], but rather to realize a
subset of REST common with HTTP but
optimized for M2M applications.
● Offers features for M2M such as built-in
discovery, multicast support, and
asynchronous message exchanges.
Reference: IETF RFC 7251
CoAP’s Main Features:
● Web protocol fulfilling M2M requirements in
constrained environments.
● UDP binding with optional reliability supporting
unicast and multicast requests.
● Asynchronous message exchanges.
● Low header overhead and parsing complexity.
● URI and Content-type support.
● Simple proxy and caching capabilities.
● Security binding to Datagram Transport Layer
Security (DTLS) [RFC 6347].
Reference: IETF RFC 7251
Requests with Responses
CON [0xbc90]
GET /temperature
(Token 0x71)
Client Server
ACK [0xbc90]
2.05 Content
(Token 0x71)
"22.5 C"
Reference: IETF RFC 7251 2.2. Request/Response Model
CoAP Recap
● Over UDP
● Request/Response Model
● RESTful Environments
● Data Model in payload
○ XML
○ JSON
○ CBOR (IETF RFC 7049 Concise Binary Object
Representation)
○ Other format
● DTLS
MQTT
Message Queuing Telemetry Transport
● ISO/IEC 20922:2016 (2016-06-15 publish)
● OASIS MQTT TC
● Over TCP/IP
● The publish/subscribe message pattern
provides one-to-many message distribution
and decoupling of applications.
● Three qualities of service for message
delivery: At most once, At least once,
Exactly once
Reference: ISO/IEC 20922:2016 Message Queuing Telemetry Transport (MQTT) v3.1.1
Broker
Publisher - Broker - Subscriber
Publisher
Publisher
Publisher
Topic
Topic
Subscriber
Subscriber
Subscriber
1. Subscribe
a topic
2. Publish a
message to
the topic
3. Publish the message
to whom has
subscribed the topic
Clients Clients
Server
Recap with a Picture
Apache Mynewt
ConnecGvity Layer
Apache Mynewt Overview
by Sterling Hughes & James Pace
Page 7
@ OpenIoT Summit Europe 2016
by Aaron Vernon
@ OpenIoT Summit Europe 2016
Avoid the Silos and Help
Build the True Internet of
Things
Reference: Wiki Silo https://en.wikipedia.org/wiki/Silo
All of the specifications and protocols
mentioned above are just the
communication protocol.
Still need a protocol to describe
the thing and it’s properties
and methods.
The “ Thing ” of IoT is not
only Object-oriented,
but also is a
“ Real Object ” !
● OIC SPECIFICATION 1.1
○ Core Framework, Security, Smart Home Device,
Resource Type
● OCF for resource-constrained environments
by Kishen Maloor @ OpenIoT Summit Europe 2016
● OIC Specification Overview
by OIC, Page 59 ~ 65
Open Connectivity Foundation (OCF)
Considering Maintenance
The Purpose of the Device
Assets’ Value
Device’s Life Time
Reference: 自由時報
Reference: 自由時報
Considerations of Deploy & Update
● OS Type:
○ RTOS
○ Bigger OS like Linux
● Management:
○ Version Control
○ Testing (before/after)
○ Code Review
○ Code Scanning
○ Separation of Duties
○ …
● Method:
○ Physical attachment
○ Remote with internet
■ Capability of the
internet
■ Integrity of
● The package
● The firmware
● The image
● The container
● ...
The Container Solution by resin.io
Deploy & Update are Popular Issues
Slides in OpenIoT Summit Europe 2016 :
● Creating Continuous Delivery for Yocto Based IoT Distribution
by Alexander Kanevskiy
● Software update for IoT: the current state of play
by Chris Simmonds
★ Software Updates for Connected Devices: Key Considerations
by Eystein Stenberg
● Gateways - The Center of Complexity for Update
by Ned Smith
● OSS Remote Firmware Updates for IoT-like Projects
by Silvano Cirujano Cuesta
IoT Security
● Security in IoT, more an attitude issue than a technical challenge
by Dominig ar Foll
● Securing the Connected Car
by Eystein Stenberg, also why do have to update
● IOT與系統安全
by Realtek Technical Project Manager, Neo Jou
● Securing Communications for SCADA and Critical Industrial Systems
by Tom Bartman and Kevin Carson, Schweitzer Engineering Laboratories,
Inc.
● P1711.2 - Standard for Secure SCADA Communications Protocol (SSCP)
● MISRA C facilitates code safety, security, portability and reliability.
● We have to bargain!
Security is on the opposite of side of Computing, Clock, Power, Cost …
Computing Clock CostPower ...
Security is
the
Marginal
Reference: 互动百科 边缘人[网语]
Reference: OWASP Top 10 Mobile Risks - Final List 2014
2014
Threats & Weakness Model
IoT Services
IoT Node
Other IoT Nodes
M1
M7
M3, M5,
M6, M9
Sensor Network General Network
M7, M8
APP
APP
Memory
M2, M4
M7, M8
M10
M8
There are more Issues
● DoS/DDoS
1. Cracked device
2. Mass deployed measuring devices connect at the
same time
Reference: 臺北.幸福領航:守山護水安全城市 / 林慶維等撰文-臺北市政府工務局 2013〔民102〕, P. 6~7
為了掌握汛情,臺北市建立了完整的
水情監測資訊系統,整合的資訊包含:
衛星氣象資訊、河川及雨水下水道水
位即時資訊、雨量即時資訊、雨水抽水
站及閘門即時運轉資訊
Mass deployed measuring devices
connect at the same time
Trend of the Flow in Emergency
Peace Time Peace TimeEmergency
Time
Flow
Time
There are more Issues
● DoS/DDoS
1. Cracked device
2. Mass deployed measuring devices connect at the
same time
● Interference
1. Noise
2. The square is crowded with devices (Wireless)
3. Leaky wave (Wireless)
4. Wrong command
It is really tough to be in the space that is crowded
with WiFi devices in a big conference like COSCUP
Leaky Wave
● It is just like “ Walls Have Ears ”
● Transmitted data and commands
● Send wrong commands
● Secured tunnel
● Same as the sniffered serial port lines
IEEE 802.15.4 Security
● Wiki IEEE 802.15.4 Reliability and security
● Security Considerations for IEEE 802.15.4 Networks
by Naveen Sastry & David Wagner, University of
California, Berkeley
● On evaluating the performance impact of the IEEE
802.15.4 security sub-layer
by Roberta Daidone, Gianluca Dini, Giuseppe Anastasi,
Department of Information Engineering, University of
Pisa, Pisa, Italy, Computer Communications 47 (2014)
65–76
● IETF Layer-2 security aspects for the IEEE 802.15.4e
MAC draft-piro-6tisch-security-issues-03 no longer active
Defense in Depth
Device
Firewall
APP
Sensor
Network
Guard
Unknow / Internet
Summary
● IoT = Connectivity + Domain Knowledge
● What is purpose of the IoT application?
● There is no best solution or template for all of the cases.
It is case by case.
● The amount of sensors is much more than actuators.
● Big difference between RTOS and big OS.
● How to deploy, maintain and update the devices?
● For the security, do as what general system has done
with the proper methods.
Reference: 聯合報 UDN
雷射驅鳥 在家顧田水…資
訊人帶科技下田
Reference: 數位時代
用科技收成!
新世代農夫下田,讓農業變得更性感
More Example in Taiwan ~
Location Aware Sensing System
Reference: LASS
Reference:
udn.com 經濟日報
智慧電表全民化 明年
啟動
港口自動化門哨系統
Reference: 臺北港導入RFID建置門禁管理系統 完成貨櫃通關全程自動化 辜雅蕾, iThome, 2011.12.16
● Slides in Open IoT Summit Europe 2016
http://events.linuxfoundation.org/events/openiot-summit-europe
● Wiki IEEE_802.15.4 https://en.wikipedia.org/wiki/IEEE_802.15.4
● Wiki IEEE_802.15 https://en.wikipedia.org/wiki/IEEE_802.15
● Wiki 6LoWPAN https://en.wikipedia.org/wiki/6LoWPAN
● RFC 4919 IPv6 over Low-Power Wireless Personal Area Networks
(6LoWPANs): Overview, Assumptions, Problem Statement, and
Goals
https://tools.ietf.org/html/rfc4919 Errata Exist
● Internet of Things: 802.15.4, 6LoWPAN, RPL, COAP
https://www.utwente.nl/ewi/dacs/colloquium/archive/2010/slides/20
10-utwente-6lowpan-rpl-coap.pdf
Reference
● Security Considerations for IEEE 802.15.4 Networks
by Naveen Sastry & David Wagner, University of California,
Berkeley
● Wiki ZigBee https://en.wikipedia.org/wiki/ZigBee
● ZigBee Alliance - Application Level Standardization
http://www.zigbee.org/zigbee-for-developers/applicationstandards/
● Security in 802.15.4 and ZigBee networks
http://www.libelium.com/security-802-15-4-zigbee/
● The New Wireless Thread Network Protocol
http://www.allaboutcircuits.com/technical-articles/thread-network-pr
otocol/
● Thread Overview
http://threadgroup.org/Portals/0/documents/whitepapers/Thread%2
0Stack%20Fundamentals_v2_public.pdf
Reference Cont.
Reference Cont.
● LoRaWAN
https://www.lora-alliance.org/portals/0/documents/whitepapers/LoR
aWAN101.pdf
● Wiki Modbus https://en.wikipedia.org/wiki/Modbus
● RFC 2616 HTTP 1.1 https://tools.ietf.org/html/rfc2616
● RFC 7252 CoAP https://tools.ietf.org/html/rfc7252
● ISO/IEC 20922:2016 MQTT v3.1.1
http://www.iso.org/iso/catalogue_detail.htm?csnumber=69466
Thank you ~
and
Q & A

More Related Content

PDF
Build a Micro HTTP Server for Embedded System
PDF
Micro HTTP Server Implemented in C @ COSCUP 2016
PDF
Find the bottleneck of your system
PDF
Node.js 1, 2, 3
PDF
DevConf 2014 Kernel Networking Walkthrough
PPTX
P4 to OpenDataPlane Compiler - BUD17-304
PPTX
2016 NCTU P4 Workshop
PDF
20170925 onos and p4
Build a Micro HTTP Server for Embedded System
Micro HTTP Server Implemented in C @ COSCUP 2016
Find the bottleneck of your system
Node.js 1, 2, 3
DevConf 2014 Kernel Networking Walkthrough
P4 to OpenDataPlane Compiler - BUD17-304
2016 NCTU P4 Workshop
20170925 onos and p4

What's hot (20)

PDF
SoC Idling for unconf COSCUP 2016
PDF
The Next Generation Firewall for Red Hat Enterprise Linux 7 RC
PDF
LinuxCon 2015 Stateful NAT with OVS
PDF
Howto createOpenFlow Switchusing FPGA (at FPGAX#6)
PDF
Sfo15 408- odp-dpdk platform performance
PDF
Linux-wpan: IEEE 802.15.4 and 6LoWPAN in the Linux Kernel - BUD17-120
PDF
Technical Overview of QUIC
PDF
Socket Programming using Java
PPTX
Network Socket Programming with JAVA
PDF
[Webinar Slides] Programming the Network Dataplane in P4
PDF
Run Your Own 6LoWPAN Based IoT Network
PDF
Open vSwitch - Stateful Connection Tracking & Stateful NAT
PDF
HKG15-301: OVS implemented via ODP & vendor SDKs
PDF
BUD17-300: Journey of a packet
PPTX
Building the Internet of Things with Thingsquare and Contiki - day 2 part 1
PDF
Switchdev - No More SDK
PDF
2015 FOSDEM - OVS Stateful Services
PDF
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Things
PDF
Sockets
PPTX
IPC SOCKET
SoC Idling for unconf COSCUP 2016
The Next Generation Firewall for Red Hat Enterprise Linux 7 RC
LinuxCon 2015 Stateful NAT with OVS
Howto createOpenFlow Switchusing FPGA (at FPGAX#6)
Sfo15 408- odp-dpdk platform performance
Linux-wpan: IEEE 802.15.4 and 6LoWPAN in the Linux Kernel - BUD17-120
Technical Overview of QUIC
Socket Programming using Java
Network Socket Programming with JAVA
[Webinar Slides] Programming the Network Dataplane in P4
Run Your Own 6LoWPAN Based IoT Network
Open vSwitch - Stateful Connection Tracking & Stateful NAT
HKG15-301: OVS implemented via ODP & vendor SDKs
BUD17-300: Journey of a packet
Building the Internet of Things with Thingsquare and Contiki - day 2 part 1
Switchdev - No More SDK
2015 FOSDEM - OVS Stateful Services
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Things
Sockets
IPC SOCKET
Ad

Viewers also liked (20)

PDF
Debug C/C++ Programs More Comfortably @ 2014.12.14 Trace Code Meetup
PDF
Make Your Own Developement Board @ 2014.4.21 JuluOSDev
PDF
Bind Python and C @ COSCUP 2015
PPTX
Milind Mishra OSI model
PPT
The OSI model and TCP/IP
PDF
Learn How to Develop Embedded System for ARM @ 2014.12.22 JuluOSDev
PDF
The Simple Scheduler in Embedded System @ OSDC.TW 2014
PDF
io t 聯網商務新創團隊實務分享_olis innovation
PDF
iot 聯網商務新創團隊實務分享_瑞德感知
PDF
恰如其分的 MySQL 設計技巧 [Modern Web 2016]
PDF
01 聯網商務趨勢報告 全通路時代的 m2_o 聯網趨勢浪潮_資策會創研所
PPTX
大型 Web Application 轉移到 微服務的經驗分享
PPTX
Functional Programming in JavaScript by Luis Atencio
PPTX
3 Software Stacks for IoT Solutions
PDF
Zinnov Zones for IoT Services 2017
PDF
[系列活動] 機器學習速遊
PDF
IoT Developer Survey 2016
PDF
AWS Black Belt Online Seminar 2017 IoT向け最新アーキテクチャパターン
PDF
Introduction to IOT & Smart City
PPTX
26 Disruptive & Technology Trends 2016 - 2018
Debug C/C++ Programs More Comfortably @ 2014.12.14 Trace Code Meetup
Make Your Own Developement Board @ 2014.4.21 JuluOSDev
Bind Python and C @ COSCUP 2015
Milind Mishra OSI model
The OSI model and TCP/IP
Learn How to Develop Embedded System for ARM @ 2014.12.22 JuluOSDev
The Simple Scheduler in Embedded System @ OSDC.TW 2014
io t 聯網商務新創團隊實務分享_olis innovation
iot 聯網商務新創團隊實務分享_瑞德感知
恰如其分的 MySQL 設計技巧 [Modern Web 2016]
01 聯網商務趨勢報告 全通路時代的 m2_o 聯網趨勢浪潮_資策會創研所
大型 Web Application 轉移到 微服務的經驗分享
Functional Programming in JavaScript by Luis Atencio
3 Software Stacks for IoT Solutions
Zinnov Zones for IoT Services 2017
[系列活動] 機器學習速遊
IoT Developer Survey 2016
AWS Black Belt Online Seminar 2017 IoT向け最新アーキテクチャパターン
Introduction to IOT & Smart City
26 Disruptive & Technology Trends 2016 - 2018
Ad

Similar to The Considerations for Internet of Things @ 2017 (20)

PDF
BKK16-500K2 CTO talk - The End to End Story
PPTX
Unit I _ Lecture PPT INTRODUCTION TO IOT PPT (2).pptx
PDF
DS-University-IOT COMPLETE NOTES.pdf FOR CIVIL
PDF
IOT COMPLETE NOTES.pdf Internet of Things
PDF
IOT COMPLETE NOTES.pdf jhdflhagflkajshfagslgfahflasgshlah
PDF
IOT_MODULE_3.pdf simple example notes for use
DOCX
IOT-Monograph .docx
PPTX
NGIoT standardisation workshops_Jens Hagemeyer presentation
PDF
COMPARATIVE STUDY BETWEEN VARIOUS PROTOCOLS USED IN INTERNET OF THING
PDF
Security And Privacy Issues Of Iots
PDF
IoT-CT internet of thing master séminaire cours.pdf
PDF
Mark Horowitz - Stanford Engineering - Securing the Internet of Things
PDF
IoT_IO1_1 Introduction to the IoT-1.pdf
PDF
INTERNWT OF THINGS KHiuahjqilkjhJU HAUI JHJKQB HJAGE IUH OLJQHNORJ BQJ
PDF
Iot architectures slides important.pdf
PPT
Cisco Certified Network Associate
PPTX
Lecture 01 {Introduction}.pptx
PPTX
IoT challenges for Smart Manufacturing
PPTX
INTERNET OF THINGS.pptx
PPTX
BKK16-500K2 CTO talk - The End to End Story
Unit I _ Lecture PPT INTRODUCTION TO IOT PPT (2).pptx
DS-University-IOT COMPLETE NOTES.pdf FOR CIVIL
IOT COMPLETE NOTES.pdf Internet of Things
IOT COMPLETE NOTES.pdf jhdflhagflkajshfagslgfahflasgshlah
IOT_MODULE_3.pdf simple example notes for use
IOT-Monograph .docx
NGIoT standardisation workshops_Jens Hagemeyer presentation
COMPARATIVE STUDY BETWEEN VARIOUS PROTOCOLS USED IN INTERNET OF THING
Security And Privacy Issues Of Iots
IoT-CT internet of thing master séminaire cours.pdf
Mark Horowitz - Stanford Engineering - Securing the Internet of Things
IoT_IO1_1 Introduction to the IoT-1.pdf
INTERNWT OF THINGS KHiuahjqilkjhJU HAUI JHJKQB HJAGE IUH OLJQHNORJ BQJ
Iot architectures slides important.pdf
Cisco Certified Network Associate
Lecture 01 {Introduction}.pptx
IoT challenges for Smart Manufacturing
INTERNET OF THINGS.pptx

More from Jian-Hong Pan (13)

PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
D-Bus Usage and Debug Introduction @ COSCUP 2024
PDF
國稅局,我也好想用電腦報稅
PDF
Share the Experience of Using Embedded Development Board
PDF
Package a PyApp as a Flatpak Package: An HTTP Server for Example @ PyCon APAC...
PDF
Launch the First Process in Linux System
PDF
Let's trace Linux Lernel with KGDB @ COSCUP 2021
PDF
A Journey to Boot Linux on Raspberry Pi
PDF
Have a Simple Modbus Server
PDF
Software Packaging for Cross OS Distribution
PDF
Nasa Hackthon 2018 Light Wonder - Go! Polar Bear!
PDF
LoRaWAN class module and subsystem
PDF
Let's Have an IEEE 802.15.4 over LoRa Linux Device Driver for IoT
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
D-Bus Usage and Debug Introduction @ COSCUP 2024
國稅局,我也好想用電腦報稅
Share the Experience of Using Embedded Development Board
Package a PyApp as a Flatpak Package: An HTTP Server for Example @ PyCon APAC...
Launch the First Process in Linux System
Let's trace Linux Lernel with KGDB @ COSCUP 2021
A Journey to Boot Linux on Raspberry Pi
Have a Simple Modbus Server
Software Packaging for Cross OS Distribution
Nasa Hackthon 2018 Light Wonder - Go! Polar Bear!
LoRaWAN class module and subsystem
Let's Have an IEEE 802.15.4 over LoRa Linux Device Driver for IoT

Recently uploaded (20)

PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PPTX
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PDF
NewMind AI Monthly Chronicles - July 2025
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Unlocking AI with Model Context Protocol (MCP)
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PPTX
Big Data Technologies - Introduction.pptx
PPT
Teaching material agriculture food technology
PPTX
MYSQL Presentation for SQL database connectivity
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PDF
Electronic commerce courselecture one. Pdf
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PPTX
Cloud computing and distributed systems.
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
CIFDAQ's Market Insight: SEC Turns Pro Crypto
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Dropbox Q2 2025 Financial Results & Investor Presentation
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
NewMind AI Monthly Chronicles - July 2025
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Unlocking AI with Model Context Protocol (MCP)
Understanding_Digital_Forensics_Presentation.pptx
Big Data Technologies - Introduction.pptx
Teaching material agriculture food technology
MYSQL Presentation for SQL database connectivity
Chapter 3 Spatial Domain Image Processing.pdf
Electronic commerce courselecture one. Pdf
Per capita expenditure prediction using model stacking based on satellite ima...
Cloud computing and distributed systems.
Diabetes mellitus diagnosis method based random forest with bat algorithm
The AUB Centre for AI in Media Proposal.docx
CIFDAQ's Market Insight: SEC Turns Pro Crypto
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
Agricultural_Statistics_at_a_Glance_2022_0.pdf

The Considerations for Internet of Things @ 2017

  • 1. The Considerations for Internet of Things Jian-Hong Pan (StarNight) @ 2017.02.14 TOSSUG
  • 2. Who am I 潘建宏 / Jian-Hong Pan (StarNight) You can find me at ~ http://www.slideshare.net/chienhungpan/ GitHub : starnight Facebook : Jian-Hong Pan Email : starnight [AT] g.ncu.edu.tw
  • 3. Outline ● The purpose of IoT ● IoT Structure ● Communication Protocals ● Describe the Things ● Deploy / Update ● Threats & Weakness ● Summary
  • 4. Machine Factory Power Plant Farm Healthcare Environment ... The Purpuse of IoT SystemASet Output Feedback - + Physical, Chemical ... values error Controller Internet Remote
  • 5. In General Internet Device or Internet Gateway Device #1 Device #2 Device #n RS232/485/422 Bluetooth, Zigbee, LoRa Ethernet, WiFi ...
  • 6. Internet N N N N N Gateway IoT Services: Data Collector Commands Deploy/Update ... Business Applications Big Data Data Mining Analysis Machine Learning / AI Decision Making ... Sensor Network Do & Check General Network Plan & Analyze Connectivity Domain Knowledge
  • 7. What features do Nodes have? ● Connectivity ● Sensor ● Actuator ● Computing ● Others ... Domain Knowledge
  • 8. OSI 7 Layers Reference: Wiki OSI model https://en.wikipedia.org/wiki/OSI_model Physical Data Link Network Transport Session Presentation Application Software Connections Encodings Applications I/O port Route Link neighbors Controlled by Application Controlled by OS Electrics, Lines Socket APIs
  • 9. Nodes Could be Linked with N N N N N Gateway Physical Network Data Link Transport Session Presentation Application Simple wired, Ethernet, Cable, Power Line RS232/422/485, CANbus, Bluetooth, WiFi, LR-WPANs(802.15.4), Mobile Telecom Series, NB-IoT … PS. More IEEE 802.15
  • 10. Constrained Environment ● Considering the size and power restrictions, most embedded devices have limited resources. (MCU level) ○ Less processors: Usually has only one processor, single thread. ○ Less memory: On-chip RAM < 1MB. ○ Less storage: On-chip flash < 1MB. ○ Lower speed grade: Clock rate < 1GHz. ○ The on chip OS may even not provide process, thread APIs. ● For getting long battery life and long distance with wireless communication, there is the standard IEEE 802.15.4 which defines the operation of low-rate wireless personal area networks (LR-WPANs)
  • 11. IEEE 802.15.4 Topologies FFD FFD RFD CoN RFD FFD FFD RFD CoN RFD FFD RFD ● FFD: Full-function device node ● RFD: Reduced-function devices node ● CoN: One of FFD serves as the coordinator of a PAN Reference: Wiki IEEE 802.15.4
  • 12. Nodes Could route & connect with N N N N N Gateway Physical Data Link Session Presentation ApplicationIP / IPv6, 6LoWPAN, Zigbee, Thread, LoRaWAN, ... Transport Network
  • 13. Nodes Could communicate with N N N N N Gateway Physical Data Link Presentation Application For sockets: Custom Protocal, Modbus, HTTP, CoAP, MQTT, … Also communicate with the IoT services Transport Network Session
  • 14. Modbus ● Master / Slave ● Query in loop ● It is a format for Application Data Unit (ADU) ○ ADU = Address + PDU + Error Check ○ PDU = Function code + Data ○ Error Check may be discard over some protocals ○ ASCII / RTU ● Over serial communication, TCP, UDP ... Reference: Wiki Modbus
  • 15. HTTP ● In general, it is over TCP/IP. ● IETF RFC 2616 ● Nodes could be either server side or client side. It is depended on the purpose. ○ Server is connected from ■ other nodes / internet ○ Client connects to ■ other nodes / internet ● Build a Micro HTTP Server for Embedded System by Jian-Hong Pan
  • 16. CoAP Constrained Application Protocol (CoAP) ● IETF RFC 7252 ● The goal of CoAP is not to blindly compress HTTP [RFC2616], but rather to realize a subset of REST common with HTTP but optimized for M2M applications. ● Offers features for M2M such as built-in discovery, multicast support, and asynchronous message exchanges. Reference: IETF RFC 7251
  • 17. CoAP’s Main Features: ● Web protocol fulfilling M2M requirements in constrained environments. ● UDP binding with optional reliability supporting unicast and multicast requests. ● Asynchronous message exchanges. ● Low header overhead and parsing complexity. ● URI and Content-type support. ● Simple proxy and caching capabilities. ● Security binding to Datagram Transport Layer Security (DTLS) [RFC 6347]. Reference: IETF RFC 7251
  • 18. Requests with Responses CON [0xbc90] GET /temperature (Token 0x71) Client Server ACK [0xbc90] 2.05 Content (Token 0x71) "22.5 C" Reference: IETF RFC 7251 2.2. Request/Response Model
  • 19. CoAP Recap ● Over UDP ● Request/Response Model ● RESTful Environments ● Data Model in payload ○ XML ○ JSON ○ CBOR (IETF RFC 7049 Concise Binary Object Representation) ○ Other format ● DTLS
  • 20. MQTT Message Queuing Telemetry Transport ● ISO/IEC 20922:2016 (2016-06-15 publish) ● OASIS MQTT TC ● Over TCP/IP ● The publish/subscribe message pattern provides one-to-many message distribution and decoupling of applications. ● Three qualities of service for message delivery: At most once, At least once, Exactly once Reference: ISO/IEC 20922:2016 Message Queuing Telemetry Transport (MQTT) v3.1.1
  • 21. Broker Publisher - Broker - Subscriber Publisher Publisher Publisher Topic Topic Subscriber Subscriber Subscriber 1. Subscribe a topic 2. Publish a message to the topic 3. Publish the message to whom has subscribed the topic Clients Clients Server
  • 22. Recap with a Picture Apache Mynewt ConnecGvity Layer Apache Mynewt Overview by Sterling Hughes & James Pace Page 7 @ OpenIoT Summit Europe 2016
  • 23. by Aaron Vernon @ OpenIoT Summit Europe 2016 Avoid the Silos and Help Build the True Internet of Things
  • 24. Reference: Wiki Silo https://en.wikipedia.org/wiki/Silo
  • 25. All of the specifications and protocols mentioned above are just the communication protocol. Still need a protocol to describe the thing and it’s properties and methods.
  • 26. The “ Thing ” of IoT is not only Object-oriented, but also is a “ Real Object ” !
  • 27. ● OIC SPECIFICATION 1.1 ○ Core Framework, Security, Smart Home Device, Resource Type ● OCF for resource-constrained environments by Kishen Maloor @ OpenIoT Summit Europe 2016 ● OIC Specification Overview by OIC, Page 59 ~ 65 Open Connectivity Foundation (OCF)
  • 28. Considering Maintenance The Purpose of the Device Assets’ Value Device’s Life Time
  • 31. Considerations of Deploy & Update ● OS Type: ○ RTOS ○ Bigger OS like Linux ● Management: ○ Version Control ○ Testing (before/after) ○ Code Review ○ Code Scanning ○ Separation of Duties ○ … ● Method: ○ Physical attachment ○ Remote with internet ■ Capability of the internet ■ Integrity of ● The package ● The firmware ● The image ● The container ● ...
  • 32. The Container Solution by resin.io
  • 33. Deploy & Update are Popular Issues Slides in OpenIoT Summit Europe 2016 : ● Creating Continuous Delivery for Yocto Based IoT Distribution by Alexander Kanevskiy ● Software update for IoT: the current state of play by Chris Simmonds ★ Software Updates for Connected Devices: Key Considerations by Eystein Stenberg ● Gateways - The Center of Complexity for Update by Ned Smith ● OSS Remote Firmware Updates for IoT-like Projects by Silvano Cirujano Cuesta
  • 34. IoT Security ● Security in IoT, more an attitude issue than a technical challenge by Dominig ar Foll ● Securing the Connected Car by Eystein Stenberg, also why do have to update ● IOT與系統安全 by Realtek Technical Project Manager, Neo Jou ● Securing Communications for SCADA and Critical Industrial Systems by Tom Bartman and Kevin Carson, Schweitzer Engineering Laboratories, Inc. ● P1711.2 - Standard for Secure SCADA Communications Protocol (SSCP) ● MISRA C facilitates code safety, security, portability and reliability. ● We have to bargain! Security is on the opposite of side of Computing, Clock, Power, Cost …
  • 35. Computing Clock CostPower ... Security is the Marginal Reference: 互动百科 边缘人[网语]
  • 36. Reference: OWASP Top 10 Mobile Risks - Final List 2014 2014
  • 37. Threats & Weakness Model IoT Services IoT Node Other IoT Nodes M1 M7 M3, M5, M6, M9 Sensor Network General Network M7, M8 APP APP Memory M2, M4 M7, M8 M10 M8
  • 38. There are more Issues ● DoS/DDoS 1. Cracked device 2. Mass deployed measuring devices connect at the same time
  • 39. Reference: 臺北.幸福領航:守山護水安全城市 / 林慶維等撰文-臺北市政府工務局 2013〔民102〕, P. 6~7 為了掌握汛情,臺北市建立了完整的 水情監測資訊系統,整合的資訊包含: 衛星氣象資訊、河川及雨水下水道水 位即時資訊、雨量即時資訊、雨水抽水 站及閘門即時運轉資訊 Mass deployed measuring devices connect at the same time
  • 40. Trend of the Flow in Emergency Peace Time Peace TimeEmergency Time Flow Time
  • 41. There are more Issues ● DoS/DDoS 1. Cracked device 2. Mass deployed measuring devices connect at the same time ● Interference 1. Noise 2. The square is crowded with devices (Wireless) 3. Leaky wave (Wireless) 4. Wrong command
  • 42. It is really tough to be in the space that is crowded with WiFi devices in a big conference like COSCUP
  • 43. Leaky Wave ● It is just like “ Walls Have Ears ” ● Transmitted data and commands ● Send wrong commands ● Secured tunnel ● Same as the sniffered serial port lines
  • 44. IEEE 802.15.4 Security ● Wiki IEEE 802.15.4 Reliability and security ● Security Considerations for IEEE 802.15.4 Networks by Naveen Sastry & David Wagner, University of California, Berkeley ● On evaluating the performance impact of the IEEE 802.15.4 security sub-layer by Roberta Daidone, Gianluca Dini, Giuseppe Anastasi, Department of Information Engineering, University of Pisa, Pisa, Italy, Computer Communications 47 (2014) 65–76 ● IETF Layer-2 security aspects for the IEEE 802.15.4e MAC draft-piro-6tisch-security-issues-03 no longer active
  • 46. Summary ● IoT = Connectivity + Domain Knowledge ● What is purpose of the IoT application? ● There is no best solution or template for all of the cases. It is case by case. ● The amount of sensors is much more than actuators. ● Big difference between RTOS and big OS. ● How to deploy, maintain and update the devices? ● For the security, do as what general system has done with the proper methods.
  • 47. Reference: 聯合報 UDN 雷射驅鳥 在家顧田水…資 訊人帶科技下田 Reference: 數位時代 用科技收成! 新世代農夫下田,讓農業變得更性感 More Example in Taiwan ~
  • 48. Location Aware Sensing System Reference: LASS
  • 51. ● Slides in Open IoT Summit Europe 2016 http://events.linuxfoundation.org/events/openiot-summit-europe ● Wiki IEEE_802.15.4 https://en.wikipedia.org/wiki/IEEE_802.15.4 ● Wiki IEEE_802.15 https://en.wikipedia.org/wiki/IEEE_802.15 ● Wiki 6LoWPAN https://en.wikipedia.org/wiki/6LoWPAN ● RFC 4919 IPv6 over Low-Power Wireless Personal Area Networks (6LoWPANs): Overview, Assumptions, Problem Statement, and Goals https://tools.ietf.org/html/rfc4919 Errata Exist ● Internet of Things: 802.15.4, 6LoWPAN, RPL, COAP https://www.utwente.nl/ewi/dacs/colloquium/archive/2010/slides/20 10-utwente-6lowpan-rpl-coap.pdf Reference
  • 52. ● Security Considerations for IEEE 802.15.4 Networks by Naveen Sastry & David Wagner, University of California, Berkeley ● Wiki ZigBee https://en.wikipedia.org/wiki/ZigBee ● ZigBee Alliance - Application Level Standardization http://www.zigbee.org/zigbee-for-developers/applicationstandards/ ● Security in 802.15.4 and ZigBee networks http://www.libelium.com/security-802-15-4-zigbee/ ● The New Wireless Thread Network Protocol http://www.allaboutcircuits.com/technical-articles/thread-network-pr otocol/ ● Thread Overview http://threadgroup.org/Portals/0/documents/whitepapers/Thread%2 0Stack%20Fundamentals_v2_public.pdf Reference Cont.
  • 53. Reference Cont. ● LoRaWAN https://www.lora-alliance.org/portals/0/documents/whitepapers/LoR aWAN101.pdf ● Wiki Modbus https://en.wikipedia.org/wiki/Modbus ● RFC 2616 HTTP 1.1 https://tools.ietf.org/html/rfc2616 ● RFC 7252 CoAP https://tools.ietf.org/html/rfc7252 ● ISO/IEC 20922:2016 MQTT v3.1.1 http://www.iso.org/iso/catalogue_detail.htm?csnumber=69466