Internet of Things
Lecture 3 - Communication Protocols
Internet of Things (IoT)
2
Internet-connected devices such as sensors, appliances, RFID devices, actuators, instruments etc.
Mainly works with IPv6 instead on IPv4
Powered mainly by sensors nodes (motes) which are low-cost, small-size and power-efficient
Every node has an address that can be accessed from (theoretically) anywhere
Real-time guarantee
Lecture 3 - Communication Protocols
IoT Network Stack
3
Source: https://www.mdpi.com/2079-9292/9/1/111/htm
Physical / Data Link Layer
4
Physical / Data Link Layer
5
Lecture 3 - Communication Protocols
802.11 - Wi-Fi
802.15.1 - BLE
RFID
802.15.4 – Low Data Rate WPAN
Physical / Data Link Layer
6
Source: K. Lounis, M. Zulkernine: Attacks and Defenses in Short-Range Wireless Technologies for IoT
IEEE 802.15.4
7
Lecture 3 - Communication Protocols
IEEE 802.15.4
8
Lecture 3 - Communication Protocols
IEEE 802.11 Wi-Fi
9
Source: https://www.usiglobal.com/en/blog/wifi7-future-of-wireless-connectivity
IEEE 802.11 Wi-Fi
10
Lecture 3 - Communication Protocols
IEEE 802.11 Wi-Fi - Infrastructure
11
Source: https://layerlogix.com/wireless-lan-terms-explained/
IEEE 802.11 Wi-Fi
12
Lecture 3 - Communication Protocols
Bluetooth
13
Lecture 3 - Communication Protocols
Bluetooth
14
Lecture 3 - Communication Protocols
BLE
15
Lecture 3 - Communication Protocols
BLE
16
Source: https://embeddedcentric.com/introduction-to-bluetooth-low-energy-bluetooth-5/
Lecture 3 - Communication Protocols
Network Layer
17
Network Layer Protocols
18
IPv4
Exhausted in 2011
32-bit address
IPv6
128-bit addresses
6LoWPAN*
Adaptation layer
Header compression
Fragmentation
Lecture 3 - Communication Protocols
*For 802.15.4 networks
Why IPv6?
19
Lecture 3 - Communication Protocols
IPv6 over IEEE 802.15.4
20
Lecture 3 - Communication Protocols
Main challenges - IPv6 over 802.15.4
21
Lecture 3 - Communication Protocols
6LoWPAN - IETF RFC 6282
22
Lecture 3 - Communication Protocols
RPL - RFC 6550
23
Lecture 3 - Communication Protocols
RPL - RFC 6550
24
Lecture 3 - Communication Protocols
Transport Layer
25
Transport Layer Protocols
26
TCP
UDP
Lecture 3 - Communication Protocols
UDP vs. TCP
27
Application Layer
28
Application Layer Protocol
29
HTTP – HyperText Transfer Protocol
CoAP – Constrained Application Protocol
WebSocket
MQTT – Message Queue Telemetry Transport
XMPP – eXtensible Messaging and Presence Protocol
DDS – Data Distribution Service
AMQP – Advanced Message Queuing Protocol
Lecture 3 - Communication Protocols
HTTP - Hypertext Transport Protocol
30
Lecture 3 - Communication Protocols
HTTP - Hypertext Transport Protocol
31
Lecture 3 - Communication Protocols
CoAP - Constrained Application Protocol
32
Lecture 3 - Communication Protocols
Source: Tariq, M.A.; Khan, M.; Raza Khan, M.T.; Kim, D. Enhancements and Challenges in CoAP—A Survey. Sensors 2020, 20, 6391.
CoAP - Constrained Application Protocol
33
Lecture 3 - Communication Protocols
Source: Seoane, Victor, et al. "Performance evaluation of CoAP and MQTT with security support for IoT environments." Computer Networks 197, 2021
Copper - CoAP
34
Lecture 3 - Communication Protocols
Source: https://www.opensourceforu.com/2016/09/coap-get-started-with-iot-protocols/
MQTT - Message Queue Telemetry Transport
35
Lecture 3 - Communication Protocols
MQTT - Message Queue Telemetry Transport
36
Lecture 3 - Communication Protocols
Source: https://www.electronicwings.com/nodemcu/nodemcu-mqtt-client-with-arduino-ide
Web Sockets
37
Source: https://www.pubnub.com/learn/glossary/what-is-websocket/
XMPP – eXtensible Messaging and Presence Protocol
38
Lecture 3 - Communication Protocols
Source: Alvear, Oscar & Calafate, Carlos & Cano, Juan-Carlos & Manzoni, Pietro. (2018). Crowdsensing in Smart Cities: Overview, Platforms, and Environment Sensing Issues. Sensors. 18. 460. 10.3390/s18020460.
DDS – Data Distribution Service
39
Source: https://www.researchgate.net/publication/293489014_Tailoring_DDS_to_Smart_Grids_for_Improved_Communication_and_Control
AMQP – Advanced Message Queuing Protocol
40
AMQP – Advanced Message Queuing Protocol
41
Source: https://support.smartbear.com/readyapi/docs/testing/amqp.html
The End
42
Lecture 3 - Communication Protocols