Order of Presentations Team Topic 205 IoT Data Flows - Save the - - PowerPoint PPT Presentation

order of presentations
SMART_READER_LITE
LIVE PREVIEW

Order of Presentations Team Topic 205 IoT Data Flows - Save the - - PowerPoint PPT Presentation

Order of Presentations Team Topic 205 IoT Data Flows - Save the ISS! 201 Risks & REST with CoAP 202 LoRaWAN - The backbone of LoRa Networks 208 IoT orchestration with RabbitMQ 203 Sending a picture from a Raspberry Pi/Arduino via


slide-1
SLIDE 1

Order of Presentations

Team Topic 205 IoT Data Flows - Save the ISS! 201 Risks & REST with CoAP 202 LoRaWAN - The backbone of LoRa Networks 208 IoT orchestration with RabbitMQ 203 Sending a picture from a Raspberry Pi/Arduino via MQTT - Am I Safe in the Lab? 204 Becoming a beekeeper of ZigBee 207 The What, The How and The Why of Data 206 IoT - the ’S’ stands for security Break (into) your smart home

slide-2
SLIDE 2

create your own exercise

IoT Data Flows - Save the ISS!

Neural Networks, Autoencoder, Tensorflow, Node-RED

Dominik Winter & Vadim Goryainov

1

slide-3
SLIDE 3

Agenda

1. Machine Learning 2. Linear Regression / Linear Classification 3. Neural Networks a. Gradient Descent b. Backpropagation 4. Autoencoder 5. Tensorflow 6. Node-RED 7. Summary

2

slide-4
SLIDE 4

Machine Learning

  • Unsupervised learning

○ No labeled training data ○ Finds hidden data structure

  • Supervised learning

○ Completely labeled data

  • Reinforcement learning

○ Trial and error search with rewards

3

[1] [2] [3]

slide-5
SLIDE 5

Linear Regression

  • Supervised learning
  • Find linear model that

explains a target y given the inputs X

  • Prediction of continuous

values

4

[4]

slide-6
SLIDE 6

Linear Classification

  • Prediction of discrete

values

  • Different classes

(e.g. cat or dog)

  • The underlying problem

hast to be linear separable

5

[10]

slide-7
SLIDE 7

How to obtain the model?

6

Data points X Model parameters Optimization Estimation Labels (ground truth) y Loss function

slide-8
SLIDE 8

Linear Regression - Optimization

  • Loss function: measures how

good the estimation is and tells the optimization method how to make it better

  • Optimization: changes the

weights of the model in order to improve the loss function

7

[4]

  • ptimized prediction
slide-9
SLIDE 9

Neural Network

8

[5] here: a multilayer perceptron

weights nodes with activation functions

goal: update weights such that the chosen loss function is minimized

slide-10
SLIDE 10

Gradient descent

9

Follow the slope of the DERIVATIVE Not guaranteed to reach the optimum if not convex [4]

slide-11
SLIDE 11

Backpropagation

10

  • Backpropagate loss

derivative updates to weights

  • Repeat until good

enough minimum is reached

[6]

slide-12
SLIDE 12

Neural Network

Train fw(x) on data X w.r.t. optimizing some loss function Lw(x):

  • 1. take m samples from data (batch)
  • 2. calculate the gradient for every sample of the batch and

take the mean

  • 3. update weights w w.r.t minimizing the loss function

(usually by a gradient descent based optimizing method)

  • 4. rinse and repeat until the results are satisfactory

(e.g. by evaluating the prediction accuracy)

11

slide-13
SLIDE 13

Autoencoder

12

linear reduction

[7]

slide-14
SLIDE 14

Autoencoder

13

  • Learns to recreate input
  • Loss distribution as

“fingerprint” for nonanomalous data

  • Anomaly detection when

input data can not be recreated

[8] anomaly [9]

slide-15
SLIDE 15

Tensorflow

import tensorflow as tf mnist = tf.keras.datasets.mnist (x_train, y_train),(x_test, y_test) = mnist.load_data() x_train, x_test = x_train / 255.0, x_test / 255.0 model = tf.keras.models.Sequential([ tf.keras.layers.Flatten(input_shape=(28, 28)), tf.keras.layers.Dense(512, activation=tf.nn.relu), tf.keras.layers.Dropout(0.2), tf.keras.layers.Dense(10, activation=tf.nn.softmax) ]) model.compile(optimizer='adam', loss='sparse_categorical_crossentropy', metrics=['accuracy']) model.fit(x_train, y_train, epochs=5) model.evaluate(x_test, y_test)

load & preprocess data build model fit & evaluate

14

slide-16
SLIDE 16

Node-RED

  • Flow-based programming for

the Internet of Things

  • Built on Node.js

○ Node’s package repository ○ 225,000 modules ○ Easy to extend

  • JavaScript functions to

manipulate the data flow

15

slide-17
SLIDE 17

Node-RED

16

slide-18
SLIDE 18

What you have learned

  • Basic principles of Machine Learning
  • Basics of Neural Networks

○ Gradient descent ○ Backpropagation

  • Autoencoders for anomaly detection
  • Tensorflow and Node-RED

17

slide-19
SLIDE 19

The lab

  • You are hired by the NASA to monitor

the health state of bearings in the ISS space station!

  • The NASA was clever so it installed IoT

sensors to record the vibration measurement signals of the bearings.

  • You must find a solution to detect

failures of a bearing in advance so that technicians on the ISS can change them

  • ut before they break!

18

slide-20
SLIDE 20

Setup

monitoring device training device test data training data

19

slide-21
SLIDE 21

Questions / Comments ?

References: Hai Qiu, Jay Lee, Jing Lin. “Wavelet Filter-based Weak Signature Detection Method and its Application on Roller Bearing Prognostics.” Journal of Sound and Vibration 289 (2006) 1066-1090

20

slide-22
SLIDE 22

References:

[1]https://www.freshfromflorida.com/Education/For-Educators/GALS-Junior-Detectives [2]https://www.kisspng.com/png-teacher-cartoon-blackboard-blackboard-cartoon-teac

  • 146987/download-png.html

[3]https://dzone.com/articles/reinforcement-learning-for-the-enterprise [4] Introduction to Deep Learning SS17/18 - Prof. Leal-Taixé, Prof. Niessner [5]https://towardsdatascience.com/applied-deep-learning-part-1-artificial-neural-netw

  • rks-d7834f67a4f6

[6]https://missinglink.ai/guides/neural-network-concepts/backpropagation-neural-net works-process-examples-code-minus-math/ [7]https://towardsdatascience.com/applied-deep-learning-part-3-autoencoders-1c083a f4d798 [8]https://www.anodot.com/blog/what-is-anomaly-detection/ [9] https://towardsdatascience.com/autoencoders-made-simple-6f59e2ab37ef [10]https://leonardoaraujosantos.gitbooks.io/artificial-inteligence/content/linear_class ification.html

21

slide-23
SLIDE 23

Order of Presentations

Team Topic 205 IoT Data Flows - Save the ISS! 201 Risks & REST with CoAP 202 LoRaWAN - The backbone of LoRa Networks 208 IoT orchestration with RabbitMQ 203 Sending a picture from a Raspberry Pi/Arduino via MQTT - Am I Safe in the Lab? 204 Becoming a beekeeper of ZigBee 207 The What, The How and The Why of Data 206 IoT - the ’S’ stands for security Break (into) your smart home

slide-24
SLIDE 24

create your own exercise

RISKS & REST WITH COAP

201 - Florian Bauer and Simon Schäffner

1

slide-25
SLIDE 25

Motivation

  • Middleware = software glue? [1]
  • M2M applications / Industrial IoT [2]

– Smart energy – Building automation (smart spaces!)

  • REST architecture

2

[1] https://web.archive.org/web/20120629211518/http://www.middleware.org/whatis.html [2] https://tools.ietf.org/html/rfc7252

slide-26
SLIDE 26

Summary/ Learning Goals

3

The Following Learning Goals are Covered in the Lecture PreLab Lab Understand what middleware is X X Understand architectural differences between CoAP and MQTT X X Understand what CoAP is and how it can be used X X Understand CoAP packet format X X Analyze security aspects of CoAP X X Setup CoAP server & client X X Communicate with smart device using CoAP X

slide-27
SLIDE 27

MQTT Architecture

4

Broker Clients publish subscribe

slide-28
SLIDE 28

REST Architecture

5

Clients Servers

slide-29
SLIDE 29

CoAP: REST Architecture

  • Client-Server
  • Stateless
  • Cache(able)
  • Uniform Interface
  • Layered System

6

https://www.ics.uci.edu/~fielding/pubs/dissertation/rest_arch_style.htm

slide-30
SLIDE 30

CoAP: REST Architectural Elements

  • Resources, Resource Identifier (URI)
  • Connectors
  • Components

7

https://www.ics.uci.edu/~fielding/pubs/dissertation/rest_arch_style.htm

slide-31
SLIDE 31

CoAP

  • REST for constrained nodes
  • Small message overhead
  • M2M: discovery, multicast, async
  • Methods: GET, POST, PUT, DELETE
  • Encryption (DTLS)

8

slide-32
SLIDE 32

Structure PreLab

  • You are developing a new monitoring system for a

factory of a large German car manufacturer

  • Comparison of MQTT & CoAP (REST) architecture
  • CoAP Proxies (HTTP)
  • Reliability features
  • CoAP client & server Java library: Californium

9

slide-33
SLIDE 33

Structure Lab

  • Setup: WiFi, port duplication
  • Part I

– Program ESP as CoAP Server (provided firmware) – get value (temperature), set value (LED) – Multicast (with another server)

  • Part II

– MITM attack / intercept and manipulate the communication between server and client

10

slide-34
SLIDE 34

Teaser Practical Part

11

https://icons8.com/icons/set/led-light

slide-35
SLIDE 35

Order of Presentations

Team Topic 205 IoT Data Flows - Save the ISS! 201 Risks & REST with CoAP 202 LoRaWAN - The backbone of LoRa Networks 208 IoT orchestration with RabbitMQ 203 Sending a picture from a Raspberry Pi/Arduino via MQTT - Am I Safe in the Lab? 204 Becoming a beekeeper of ZigBee 207 The What, The How and The Why of Data 206 IoT - the ’S’ stands for security Break (into) your smart home

slide-36
SLIDE 36

create your own exercise

LoRaWAN – The backbone of LoRa Networks

Kilian Schulte, Tobias Leibbrand | TEAM202

1

slide-37
SLIDE 37

What is LoRa?

BLE WIFI 2G 4G LoRa Range 10 m 20 m

  • max. 35 km
  • max. 35 km

Datarate 1 Mbit > 10 Mbit 256 kbit 500 MBit Energy consumption 15 mA 80 mA 1000 mA 2000 mA

2

slide-38
SLIDE 38

What is LoRa?

3

Properties:

  • High energy efficiency
  • Low Bandwidth
  • Long Range
  • License free

BLE WIFI 2G 4G LoRa Range (max) 10 m 20 m 15 km 10 km 15 km Datarate (max) 1 Mbit 100 Mbit 256 kbit 500 MBit 10 kbit Energy consumption 15 mA 80 mA 1000 mA 2000 mA 10 mA

slide-39
SLIDE 39

LoRa Layer Model

4

slide-40
SLIDE 40

LoRa Layer Model

5

slide-41
SLIDE 41

LoRa Layer Model

6

slide-42
SLIDE 42

LoRa Layer Model

7

LoRaWAN

slide-43
SLIDE 43

Definition

  • = Long Range Wide Area Network
  • MAC + Network Layer Protocol (2+3)
  • Wireless network for large scale IoT

Applications

8

slide-44
SLIDE 44

LoRaWAN Architecture

9

IoT Devices

  • need LoRa Chips
  • Sensors or Actuators
  • (mostly) battery powered
slide-45
SLIDE 45

LoRaWAN Architecture

10

Gateways

  • are connected to multiple

devices

  • nly forward packets between

device and server

  • are transparent
slide-46
SLIDE 46

LoRaWAN Architecture

11

Network Server

  • Only one per network
  • connected to all gateways
  • Knows all devices in the

network

  • Handles traffic from and

to the applications

slide-47
SLIDE 47

LoRaWAN Architecture

12

slide-48
SLIDE 48

LoRaWAN Architecture

13

IP Network LoRa

slide-49
SLIDE 49

14

slide-50
SLIDE 50

The Protocol

15

  • Protocol Header
  • Device Classes
  • Duty Cycle
slide-51
SLIDE 51

Security

  • Encryption on Network Level
  • Encryption on Application Level

16

slide-52
SLIDE 52

Learning Goals

17

The Following Learning Goals are Covered in the Lecture PreLab Lab Understand the LoRaWAN Architecture + Components X X Learn about the LoRaWAN MAC layer protocol X Understand how LoRaWAN is used in the real world X Understand LoRaWAN device classes X X Understand important LoRaWAN mechanisms such as OTA Activation and Duty Cycle X X Setup an own complete LoRaWAN Network X

slide-53
SLIDE 53

Teaser Practical Part

18

Network Server Gateway

slide-54
SLIDE 54

Structure PreLab

  • Understand LoRaWAN Architecture Components in depth
  • Aspects of LoRaWAN:
  • Class A/B/C
  • Activation Methods: OTAA / ABP
  • Duty Cycle (with calculations)
  • Introduction to Tools: loraserver.io (Open Source software

components)

19

slide-55
SLIDE 55

Structure Lab

  • Setup an own LoRa Network with one / multiple devices using

loraserver.io

  • Send data over the network and see how it is routed to the

application

  • Play around with OTAA and the device classes learned in the

PreLab

20

slide-56
SLIDE 56

Order of Presentations

Team Topic 205 IoT Data Flows - Save the ISS! 201 Risks & REST with CoAP 202 LoRaWAN - The backbone of LoRa Networks 208 IoT orchestration with RabbitMQ 203 Sending a picture from a Raspberry Pi/Arduino via MQTT - Am I Safe in the Lab? 204 Becoming a beekeeper of ZigBee 207 The What, The How and The Why of Data 206 IoT - the ’S’ stands for security Break (into) your smart home

slide-57
SLIDE 57

iLab2 - Your own exercise IoT orchestration with RabbitMQ

208 — Victor Oancea — Jurek Olden

slide-58
SLIDE 58

Motivation

Purpose Middleware is the glue of any IoT system IoT systems are dynamic, devices might fail High performance network applications are fun How to organize the smart city of the future: Get to iLab5 by bus without delays

slide-59
SLIDE 59

Reasons for Middleware

Hetereogeneous System Message congestion Failures

[https://www.noction.com/]

slide-60
SLIDE 60

What will you learn?

The following learning goals are covered in the Lecture PreLab Lab What is Middleware in an IoT context x Understand why Middleware is needed x x Introduce the publisher-subscriber queueing model and RabbitMQ x x Learn about IoT communication protocols (MQTT, AMQP, STOMP) x x x Understand the RabbitMQ architecture x x Simulate some IoT devices x Configure RabbitMQ and set up an IoT system x Manage an IoT system x

slide-61
SLIDE 61

RabbitMQ

From rabbitmq.com

slide-62
SLIDE 62

MQTT: For a traffic light

Lightweight: few message types Minimum overhead: 2 byte header All necessary semantics for publish/subscribe

slide-63
SLIDE 63

AMQP: on a bus/autonomous vehicle

Not for lightweight devices Supports a lot more metadata More sophisticated semantics

slide-64
SLIDE 64

STOMP: for web apps

Similar to HTTP Text-based stream protocol Very simple, web socket compatible All necessary semantics for publish/subscribe

slide-65
SLIDE 65

Teaser practical part: Munich 2222 a.d.

slide-66
SLIDE 66

Structure PreLab

Deepen knowledge about the publish/subscribe model Work out differences and characteristics of IoT protocols Gain knowledge about the RabbitMQ architecture

slide-67
SLIDE 67

Structure Lab

Set up mock devices Set up RabbitMQ Program smart traffic software (Python) Program mock MVGnextgen mobile app (Python) Play around/gather metrics (RabbitMQ web UI)

slide-68
SLIDE 68

Order of Presentations

Team Topic 205 IoT Data Flows - Save the ISS! 201 Risks & REST with CoAP 202 LoRaWAN - The backbone of LoRa Networks 208 IoT orchestration with RabbitMQ 203 Sending a picture from a Raspberry Pi/Arduino via MQTT - Am I Safe in the Lab? 204 Becoming a beekeeper of ZigBee 207 The What, The How and The Why of Data 206 IoT - the ’S’ stands for security Break (into) your smart home

slide-69
SLIDE 69

create your own exercise

SENDING A PICTURE FROM A RASPBERRY PI/ARDUINO VIA MQTT - AM I SAFE IN THE LAB?

Mariano Hernandez & Birtan Gültekin Team 203

1

slide-70
SLIDE 70

Motivation

  • IoT sensors and actuators are becoming more and

more popular not just in industry sectors but also in smart home commercial sector. In this lab we intend to show some of the most important elements to consider when creating a smart space:

– Brief introduction to middleware. – Show and create one of the most popular patterns “publish-subscribe” model using MQTT.

2

slide-71
SLIDE 71

Summary/ Learning Goals

3

The Following Learning Goals are Covered in the Lecture PreLab Lab Understand the evolution of IoT middleware X X Understand the middleware architectures X X Understand how MQTT works X X X Understand the MQTT header X Configure a Raspberry Pi, an ESP32, a MQTT broker and a Subscriber X X Send different types of messages X

slide-72
SLIDE 72

Middleware Origin

  • Term first used in 1968, in the NATO science

committee, during the “Software Crisis”.

  • “This sensitivity of software can be understood

if we liken it to what I will call the inverted pyramid”… “At the bottom are the control programs, then the various service routines. Further up we have what I call middleware.” (Naur, P., & Randell, B., 1969)

4

slide-73
SLIDE 73

Middleware

  • “...we roughly characterize middleware as those services

found above the transport (i.e., over TCP/IP) layer set of services but below the application environment (i.e., below application-level APIs).” (RFC 2768)

5

slide-74
SLIDE 74

Middleware Key Objectives

  • Interoperability

– Complete interface design – Allow to work with other systems – Allow backwards compatibility

  • Interchangeability

– Using different brands of components

6

slide-75
SLIDE 75

Middleware types

  • RPC (Remote Procedure Call)

– Client – server architecture – Distributed functionality

  • MOM (Message oriented

middleware)

– Publish/Subscribe – Allows for asynchronous communication

7

slide-76
SLIDE 76

8

slide-77
SLIDE 77

MQTT

  • It is created by IBM engineers in 1999 to control a

pipeline system

  • Lightweight publish/subscribe messaging protocol

– Fixed length header is 2 bytes

  • It works on top of TCP/IP protocol

9

slide-78
SLIDE 78

How MQTT works?

  • Broker: receives/sends

messages

  • Client: publisher/subscriber

– persistent/transient

  • Topic: endpoint that clients

connect

– e.g. lab/sensor/temperature – e.g. subscribe to lab/sensor/#

10

slide-79
SLIDE 79

MQTT Cont‘d

  • Message Types: 14 messages

– CONNECT, PUBLISH, SUBSCRIBE, CONNACK, PUBACK, …

  • Security: 8883 secure port

– TLS Encryption – Username & password authentication

  • QoS:

– At most once – At least once – Exactly once

11

slide-80
SLIDE 80

Teaser Practical Part

12

This is your playground:

6x Quad Core fast PC with 3-4 usable LAN interfaces per machine. 2x Cisco 881 Router 2x Ethernet switch 2x Work Place with KVM

slide-81
SLIDE 81

Structure PreLab

  • Take a deeper look into the interoperability and

interchangeability problem in real time systems.

– Read about the joint committees that standardized the first protocols, that are still used today.

  • Present different kind patterns present in IoT environments.
  • Explain how MQTT works

– Explain the MQTT header

  • Introduce the tools (Mosquitto MQTT, etc.)
  • Introduce the programming languages that are used in the lab

13

slide-82
SLIDE 82

Structure Lab

  • Setup

– Setup a PIR sensor with an ESP32 – Setup a camera with a Raspberry Pi – Setup MQTT broker and clients

  • Create a publish-subscribe architecture
  • Send messages between the clients

14

slide-83
SLIDE 83

References

  • Naur, P., & Randell, B. (1969). Software Engineering: Report of a conference sponsored by the NATO

Science Committee, Garmisch, Germany, 7-11 Oct. 1968, Brussels, Scientific Affairs Division, NATO.

  • https://www.ietf.org/rfc/rfc2768.txt
  • MQTT V3.1Protocol Specification. (2010). Retrieved from

http://public.dhe.ibm.com/software/dw/webservices/ws-mqtt/MQTT_V3.1_Protocol_Specific.pdf

  • (2019). Retrieved from

https://www.ibm.com/podcasts/software/websphere/connectivity/piper_diaz_nipper_mq_tt_11182011.p df

  • Interchangeable parts. (2019). Retrieved from https://en.wikipedia.org/wiki/Interchangeable_parts
  • Interoperability. (2019). Retrieved from https://en.wikipedia.org/wiki/Interoperability
  • What is middleware? (2019). Retrieved from

https://www.ibm.com/podcasts/software/websphere/connectivity/piper_diaz_nipper_mq_tt_11182011.p df

15

slide-84
SLIDE 84

Order of Presentations

Team Topic 205 IoT Data Flows - Save the ISS! 201 Risks & REST with CoAP 202 LoRaWAN - The backbone of LoRa Networks 208 IoT orchestration with RabbitMQ 203 Sending a picture from a Raspberry Pi/Arduino via MQTT - Am I Safe in the Lab? 204 Becoming a beekeeper of ZigBee 207 The What, The How and The Why of Data 206 IoT - the ’S’ stands for security Break (into) your smart home

slide-85
SLIDE 85

iLab2 Becoming a beekeeper of ZigBee

Kaushik, and Cheng-Lun team 204

slide-86
SLIDE 86

Motivation

Make a wish! What do we need? Communication between a lot of end devices, sensors

slide-87
SLIDE 87

Motivation

Make a wish! What do we need? Communication between a lot of end devices, sensors Low data rate is sufficient

slide-88
SLIDE 88

Motivation

Make a wish! What do we need? Communication between a lot of end devices, sensors Low data rate is sufficient Limited battery size on sensors

slide-89
SLIDE 89

Motivation

Make a wish! What do we need? Communication between a lot of end devices, sensors Low data rate is sufficient Limited battery size on sensors Scalable to large cluster of devices for industrial use

slide-90
SLIDE 90

Motivation

Yes! ZigBee! Wireless network standard with low-speed, low-power and low-cost

250kb/s, 1mW, 1/10 of the Bluetooth’s price

Very popular for smart home gadgets

Amazon Echo, Philips Hue, power meters

Offers different topology setup enables scalability

Star, Tree, Cluster Tree, and Mesh

slide-91
SLIDE 91

Lecture Overview

ZigBee Alliance Comparing of WiFi, Bluetooth, and ZigBee Application Profiles Protocol layers Device Roles Different topologies Security

slide-92
SLIDE 92

ZigBee Alliance

The name ZigBee refers to the way honey bees use to

  • communicate. Bees dance in a zig-zag pattern.

Is established in 2002 with 100 member companies Announced ZigBee Specification 1.0 on June 13, 2005 Announced ZigBee 3.0 on 2015 (ZigBee PRO 2015) Over 400 member companies (Amazon, Telekom, Samsung,...)

slide-93
SLIDE 93

Comparing WiFi, Bluetooth, and ZigBee

WiFi 4 (802.11n) Bluetooth 4.0 ZigBee 3.0 Data Rate 72-600 Mb/s 25Mb/s 20-250 kb/s Battery Life Hours 1 week 18 months Frequency 2.4 GHz 2.4 GHz 868 MHz (Europe) 900- 928 MHz (NA) 2.4 GHz (Worldwide) Transmission Distance 100M 10M 10-100M Network Architecture Star Star Star, Tree, Mesh Application Focus Internet Personal gadgets Monitoring & Control

slide-94
SLIDE 94

Application Profiles

Home Automation Smart Home Hubs + Devices (Amazon Echo, Philips Hue) Security Systems HVAC Systems (Nest Thermostast) Industrial Monitoring Predictive Maintenance Environment Monitoring Asset Tracking

slide-95
SLIDE 95

Protocol Layers

IEEE 802.15.4 standard defines the PHY and MAC Layers. Zigbee provides Network Layer and Application Layer Framework.

slide-96
SLIDE 96

Protocol Layers

Application Framework consists of Application Support (APS) Sub-Layer, Zigbee Device Object (ZDO) and Application Objects Service Access Points (SAPs) bind the layers isolating their working from each other.

slide-97
SLIDE 97

Device Roles

IEEE 802.15.4 standard Full Function Devices (FFD) Reduced Function Devices (RFD) Zigbee standard Zigbee Coordinator Zigbee Router Zigbee End Devices

slide-98
SLIDE 98

Different Topologies

Star topology One Coordinator, n End Devices End Devices connect to Coordinator End Devices are isolated Mesh topology Peer-to-Peer topology One Coordinator, n Routers, n End Devices End Devices join network through Routers or Coordinators End Devices configured as a FFD or a RFD.

slide-99
SLIDE 99

Security

Zigbee offers robust security features Frame counter to stop replay attack 128-bit AES-based encryption Key secrecy is the sole foundation of Zigbee Security Architecture Initial key exchange is suseptible to being attacked Key sniffing attack

slide-100
SLIDE 100

Lab’s Learning Goals

The following learning goals are covered in the Lecture PreLab Lab Understand basics and usages of ZigBee x Comparing ZigBee with other wireless technologies x x Understand ZigBee device roles x x x Understand topology settings x x x Examine security aspects x x x Configure ZigBee devices x Configure a complex topology x Measure performance x

slide-101
SLIDE 101

Teaser practical part

slide-102
SLIDE 102

References

https://www.zigbee.org (For ZigBee logos in page 1 and 6) https://www.electronicshub.org/zigbee-technology- architecture-applications/ https://www.researchgate.net/figure/IEEE-and-ZigBee- protocol-stack fig1 283951808 (ZigBee layer figure) https://courses.csail.mit.edu/6.857/2017/project/17.pdf

slide-103
SLIDE 103

Order of Presentations

Team Topic 205 IoT Data Flows - Save the ISS! 201 Risks & REST with CoAP 202 LoRaWAN - The backbone of LoRa Networks 208 IoT orchestration with RabbitMQ 203 Sending a picture from a Raspberry Pi/Arduino via MQTT - Am I Safe in the Lab? 204 Becoming a beekeeper of ZigBee 207 The What, The How and The Why of Data 206 IoT - the ’S’ stands for security Break (into) your smart home

slide-104
SLIDE 104

create your own exercise

slide-105
SLIDE 105
slide-106
SLIDE 106

[1]

slide-107
SLIDE 107
  • [2]
slide-108
SLIDE 108

○ ○

slide-109
SLIDE 109
slide-110
SLIDE 110
slide-111
SLIDE 111
slide-112
SLIDE 112

Script.sh Script.sh Training Data Test Data

slide-113
SLIDE 113
slide-114
SLIDE 114

Order of Presentations

Team Topic 205 IoT Data Flows - Save the ISS! 201 Risks & REST with CoAP 202 LoRaWAN - The backbone of LoRa Networks 208 IoT orchestration with RabbitMQ 203 Sending a picture from a Raspberry Pi/Arduino via MQTT - Am I Safe in the Lab? 204 Becoming a beekeeper of ZigBee 207 The What, The How and The Why of Data 206 IoT - the ’S’ stands for security Break (into) your smart home

slide-115
SLIDE 115

iLab2 IoT - the ’S’ stands for security Break (into) your smarthome

Ghani a and David, Team 206

slide-116
SLIDE 116

Motivation

Which is your topic?

To enable secure communication among IoTdevices

slide-117
SLIDE 117

Lecture Overview

IoT Security vs. ConventionalSecurity Attack vectors on IoT communication CoAP and DTLS Evaluatesecurity

slide-118
SLIDE 118

IoT Security vs. ConventionalSecurity

Principles of InformationSecurity

Confidentiality Integrity Availability

Challenges

Constraint devices Key exchange Updates and patches Incompatible protocols

slide-119
SLIDE 119

Attack vectors on IoT communication

Attack vectors

Eavesdropping Man-in-the-middle attack Replay attacks Traffic amplification Spoofing Attacks

slide-120
SLIDE 120

CoAP

Constrained Application Protocol CoAP is a web protocol that runs over the UDP for the Internet of Things Required due to complex HTTP headers. Client/Server Architecture Intermediaries and Caching - Responses are cached for faster reply to requests, proxies may be used which help in reducing network traffic. Proposed standard: RFC 7252

slide-121
SLIDE 121

CoAP Security

Message reliability is handled at the application layer (UDP) Based on DTLS (Datagram Transport Layer Security) DTLS is between Application layer and Transport Layer Integrity, Authentication and Confidentiality DTLS solves packet loss and reordering. Additionally implements:

  • Packet retransmission
  • Assigning sequence number within the handshake
  • Replay Detection
slide-122
SLIDE 122

Practical Part: Setup

slide-123
SLIDE 123

Practical Part:Teaser

A norm al block

1 Attack:

Eavesdropping: Listen to traffic Replay attack / Spoofing Attacks (Traffic amplification)

2 Secure:

Deploy DTLS Use CoAP to patch insecure device Evaluate security