1 eeem048- internet of things lecture 10- summary and overview dr payam barnaghi, dr chuan h foh...
TRANSCRIPT
1
EEEM048- Internet of Things
Lecture 10- Summary and Overview
Dr Payam Barnaghi, Dr Chuan H Foh Centre for Communication Systems ResearchElectronic Engineering Department University of Surrey
Autumn Semester 2013/2014
2
Module Aims
− The main aim of this module is to introduce the fundamental concepts of the Internet of Things and its applications and architecture models;
− Introduction to the technologies and mechanisms for sensing, actuation, processing and cyber-physical data communication.
− Discussing semantic technologies, service oriented solutions and networking technologies that enable the integration of Internet of Things data and services into the cyber world (i.e. the Internet and the Web).
− To develop practical skills that can be transferred into a real-world environment.
Lecture 2: System Overview
3
− Understand what is a Cyber-Physical System and IoT− They are essentially the same
− The role of smart devices in IoT− Data collecting point, they can be sensors− Human interaction point, they offer convenient user interface− Data processing point, they have more powerful CPU to process data− Information storage point, they have adequate storage to hold data
− Key concepts in real-time system− Hard/Soft Time Constraints
− Periodic/Aperiodic tasks and their properties
− Scheduling
− System design, focusing on Mealy FSM
Lecture 3: Hardware Platform
4
− Sensors & Actuators− Understand their roles, technologies, and applications
− Node Architecture− Be able to read the specification of a mote (for example:
XM1000)− Be able to select an appropriate mote for a particular IoT
system (processing power, memory, sensor capability, etc)
Lecture 3: Hardware Platform
5
− Communication Architecture− Be able to describe IEEE 802.15.4 MAC operation, for
example:− Data rate, 250kbps− Topology: Star & Mesh− Node configuration: Full Function Device & Reduced
Function Device− Mode: Beacon & non-beacon− Channel access: slotted & unslotted CSMA/CA
Lecture 4: Network
6
− Understand the roles and functions of network module− Provide a solution (implemented in software) for end-to-
end packet delivery− Management:
− Packet: Adapting the packet sizes and formats− Address: Adapting and/or resolving addresses− Device: Joining/leaving of nodes− Service: Providing adds-on services such as security
− Operational:− Route discovery & maintenance− Packet forwarding
Lecture 4: Network
7
− Understand various routing technologies related to IoT applications− Be able to differentiate proactive and reactive approaches− Be able to describe the operation of some technologies:
− Flooding− Source routing− Distance vector− AODV (in ZigBee) and RPL (in ContikiOS, TinyOS)
− Understand the impact of nodes/gateway deployment on network performance− Identify bottleneck− Be able to suggest improvement for better performance
(lifetime, latency, throughput)
Lecture 8: Security
8
− Perform risk analysis on IoT systems− Identify asset value, threat, vulnerability, then analyse the
levels of risk, and finally suggest solutions− Understand the challenges (limited processing power,
limited power source, distributed system, etc)
− Understand various information security solutions which are applicable to securing IoT− One-way function− Symmetric & Asymmetric Cryptography− Digital signature− Digital certificate− Authentication procedure− Transport Layer Security
Wireless Sensor (and Actuator) Networks
Sinknode Gateway
Core networke.g. Internet
Core networke.g. InternetGateway
End-userEnd-user
Computer servicesComputer services
- The networks typically run Low Power Devices- Consist of one or more sensors, could be different type of sensors (or actuators)- The networks typically run Low Power Devices- Consist of one or more sensors, could be different type of sensors (or actuators)
Operating Systems?
Services?
Protocols?Protocols?
10
Lecture 5: Software platforms and services
− OS running on devices with restricted functionality− In the case of sensor nodes, there devices typically also
have limited processing capability− e.g. Contiki
− Restricted to narrow applications − industrial controllers, robots, networking gear, gaming
consoles, metering, sensor nodes…
− Architecture and purpose of embedded OS changes as the hardware capabilities change (i.e. mobile phones)
− Protothreads
Source: The Web of Things, Marko Grobelnik, Carolina Fortuna, Jožef Stefan Institute.
The Contiki OS
11
Kernel
Program Loader
Language runtime
Communication service
Loaded program
Core Service Core: single binary
Usually never modified
Loadable programsCan be easily updated
CoAP protocol stack and interactions
C. Bormann, A. P. Castellani, Z. Shelby, "CoAP: An Application Protocol for Billions of Tiny Internet Nodes," IEEE Internet Computing, vol. 16, no. 2, pp. 62-67, Feb. 2012, doi:10.1109/MIC.2012.29
Lecture 6: Intelligent Data
− The sensory data represents physical world observation and measurement and requires time and location and other descriptive attributes to make the data more meaningful.
− For example, a temperature value of 15 degree will be more meaningful when it is described with spatial (e.g. Guildford city centre) and temporal (e.g. 8:15AM GMT, 21-03-2013), and unit (e.g. Celsius) attributes.
− The sensory data can also include other detailed meta-data that describe quality or device related attributes (e.g. Precision, Accuracy).
13
Sensor Data
15, C, 08:15, 51.243057, -0.589444
14
15
In-network processing
− Depending on application, more sophisticated processing of data can take place within the network− Example edge detection: locally exchange raw data with
neighboring nodes, compute edges, only communicate edge description to far away data sinks
− Example tracking/angle detection of signal source: Conceive of sensor nodes as a distributed microphone array, use it to compute the angle of a single source, only communicate this angle, not all the raw data
− Exploit temporal and spatial correlation− Observed signals might vary only slowly in time; so no need to
transmit all data at full rate all the time− Signals of neighboring nodes are often quite similar; only try to
transmit differences (details a bit complicated, see later)
Source: Protocols and Architectures for Wireless Sensor Networks, Protocols and Architectures for Wireless Sensor NetworksHolger Karl, Andreas Willig, chapter 3, Wiley, 2005 .
Data Aggregation
− Reduce number of transmitted bits/packets by applying an aggregation function in the network
1
1
31
1
6
1
1
11
1
1
Source: Holger Karl, Andreas Willig, Protocols and Architectures for Wireless Sensor Networks, Protocols and Architectures for Wireless Sensor Networks, chapter 3, Wiley, 2005 .
MQTT Pub/Sub Protocol
− MQ Telemetry Transport (MQTT) is a lightweight broker-based publish/subscribe messaging protocol.
− MQTT is designed to be open, simple, lightweight and easy to implement. − These characteristics make MQTT ideal for use in constrained
environments, for example in IoT. − Where the network is expensive, has low bandwidth or is
unreliable − When run on an embedded device with limited processor or
memory resources;− A small transport overhead (the fixed-length header is just 2
bytes), and protocol exchanges minimised to reduce network traffic
− MQTT was developed by Andy Stanford-Clark of IBM, and Arlen Nipper of Cirrus Link Solutions.
Source: MQTT V3.1 Protocol Specification, IBM, http://public.dhe.ibm.com/software/dw/webservices/ws-mqtt/mqtt-v3r1.htmlSource: MQTT V3.1 Protocol Specification, IBM, http://public.dhe.ibm.com/software/dw/webservices/ws-mqtt/mqtt-v3r1.html
Sensor Data as time-series data
− Different representation method that introduced for time-series data can be applied.
− The goal is to reduce the dimensionality (and size) of the data, to find patterns, detect anomalies, to query similar data;
− Dimensionality reduction techniques transform a data series with n items to a representation with w items where w < n.− This functions are often lossy in comparison with solutions like
normal compression that preserve all the data. − One of these techniques is called Symbolic Aggregation
Approximation (SAX).− SAX was originally proposed for symbolic representation of time-
series data; it can be also used for symbolic representation of time-series sensor measurements.
− The computational foot-print of SAX is low; so it can be also used as a an in-network processing technique.
Semantic technologies and Connecting "Things" to the Web
Sinknode Gateway
Core networke.g. Internet
Core networke.g. InternetGateway
End-userEnd-user
Computer servicesComputer services
- The networks typically run Low Power Devices- Consist of one or more sensors, could be different type of sensors (or actuators)- The networks typically run Low Power Devices- Consist of one or more sensors, could be different type of sensors (or actuators)
Operating Systems?
Services?
Protocols?Protocols?
In-node Data
Processing
Data Aggregation/
Fusion
Inference/Processing of IoT data
Interoperable/Machine-
interpretablerepresentations
Interoperable/Machine-
interpretablerepresentations
“Web of Things”
Interoperable/Machine-
interpretablerepresentations
Observation and measurement data
15, C, 08:15, 51.243057, -0.589444
20
value
Unit of measurement
Time
Longitude
Latitude
How to make the data representations more machine-readable and machine-interpretable;
Observation and measurement data
15, C, 08:15, 51.243057, -0.589444
21
<value>
<unit>
<Time>
<Longitude>
<Latitude>
What about this?
<value>15</value><unit>C</unit><time>08:15</time><longitude>51.243057</longitude><latitude>-0.58944</latitude>
XML Document Example
<?xml version="1.0"?>
<measurement>
<value>15</value>
<unit>C</unit>
<time>08:15</time>
<longitude>51.243057</longitude>
<latitude>-0.58944</latitude>
</measurement>
22
XML Prolog- the XML declaration
XML elements
XML documents MUST be “well
formed”
Root element
RDF Graph
23
xsd:decimal
Measurement
hasValuehasTime
xsd:double
xsd:time
xsd:double
xsd:string
hasLongitude hasLatitude
hasUnit
RDF Graph- an instance
24
15
Measurement#0001
hasValuehasTime
-0.589444
08:15
51.243057
C
hasLongitude hasLatitude
hasUnit
RDF/XML
<rdf:RDF>
<rdf:Description rdf:about=“Measurment#0001">
<hasValue>15</hasValue>
<hasUnit>C</hasUnit>
<hasTime>08:15</hasTime>
<hasLongitude>51.243057</hasLongitude>
<hasLatitude>-0.589444</hasLatitude>
</rdf:Description>
</rdf:RDF>
25
Web of Things
WSNWSN
WSNWSN
WSNWSN
WSNWSN
WSNWSN
Network-enabled DevicesNetwork-enabled Devices
Semantically annotate data
26
GatewayCoAP
HTTP
CoAP
CoAP
HTTP
6LowPAN
Semantically annotate data
http://mynet1/snodeA23/readTemp?
WSNWSN
MQTT
MQTT
Gateway
How to create location tags?
− GeoHashing is one way to do this;− Geohash is a latitude/longitude geo-coding that
was invented by Gustavo Niemeyer.− GeoHashing function can encods/decods (lat,lon)
pairs in a compact form.− The Geohash algorithm can represent geographic
regions in a hierarchical structure.− A geohash is represented as a string:
− e.g. (-25.382708 and -49.265506) can be represented as:6gkzwgjzn820
− Or http://geohash.org/6gkzwgjzn820
GeoHash
Prefix similarity can be used to find close locations;But it can’t be directly converted to a metric distance measurePrefix similarity can be used to find close locations;But it can’t be directly converted to a metric distance measure
29
Lecture 10: System models, Applications, Standards, and Physical-Cyber-Social systems
• Smart grid and smart metering• Healthcare• Automotive (navigation, traffic control, vehicle safety, fleet
management, etc.)• Smart city (city automation, intelligent parking, ITS, etc.)• Industrial automation• Environmental monitoring• Connected consumers• Smart homes• …
What is special about IoT applications
− Application and requirements− Environment interaction− Heterogeneity and scale− Energy and resource constraints − Autonomous mechanisms that are often required; e.g. self-
configurability− Security and Privacy issues− Data-centric solutions and information
processing/knowledge extraction requirements− Actuation, feedback and control loop to interact with
physical objects/environment over distributed networks.− Mobility− Diversity of applications and areas
30
Required mechanisms
− Multihop wireless communication− Transmission range is often short and usually multi-hop communication
is required.
− Energy efficient operations− To save energy and/or increase the lifetime of the network/services.
− Auto-configuration− ability to configure (at least some of) the functional parameters
automatically.
− Collaboration and in-network processing− Several node collaborate − Parts of the process is performed on the node and/or in the network.
− Data-centric solutions− Conventional networks often focus on sending data between two
specific nodes each equipped with an address. − Here what is important is data and the observations and
measurements not the node that provides it.
− Security, Trust and Privacy
31
Exam
− Answer 3 questions out of 4− Answer Any THREE Questions
− Time: 2 Hours
− At least, one design question
− Preparation:− Lectures − Recommended material− Coursework experience
32
Some sample questions
Q#1
− What is the difference between active sensors and passive sensors?
− Provide an example for each− In what type of applications each type can be
used; provide one example for each.
34
Q#2
− Compare each of these concepts that are described for conventional networks and explain their difference in wireless sensor network
− General purpose design; used for many application− Usually the primary concern is performance and latency− Networked as designed and deployed according to a
pre-defined plan.− Devices and networks usually operate in controlled
environments− The networking is mainly based on addressing the nodes
35
Q#3
− Imagine you have a sensor network with 100 nodes in a 100 meters by 200 meters farm; the nodes are used to measure acidity and moisture levels; the nodes are wireless (equipped with IEEE802.15.4 radio);
− How would you arrange the sensors in the farm? Where would you place a gateway?
36
Q#4
We have a sensor data that might happen collect noisy data;
− What type of solutions do you suggest to detect the noise?
− How can the noise be eliminated?
37
Q5
Consider a home security IoT; How would you think the system can be attacked?
− Vulnerabilities in user/device/network/system?
38
Q#6
− You have been asked to design a sensor network to monitor and alert of fire hazards in a national park with an area around 10x15 miles; This is an area that gets very hot and dry in summer and people sometimes make fire during camping and lightning has been also source of fire in the past. − What type of sensors will you use− Provide an estimate of the equipment and networking
technologies that you might need− What will be your key design considerations
39
Q#7
− A smart home produce design company wants to make sure the data that is generated form their devices is interoperable with data repositories servers and products that are developed by other companies.
− They also want to design a gateway that can read and use data from smart home appliances that are developed by other companies. Assuming that networking technologies are compatible and devices can communicate, what type of solutions would you recommend to the company to increase their data interoperability.
40
Q#8
− Imagine the same company in Q#6 has a smart toaster that can send it status (ready, degree, on, off, …, ) to a gateway device;
− Design a semantic model that can make the information sent form the toaster interoperable (with those parties that share the same schema/model) and machine-readable.
41
Q#9
42
This figure shows a WSN design for volcano monitoring; -What issue will you consider to design/deploy such a network?-What could be technical issues?
Image source: Harvard Sensor Networks Lab, http://fiji.eecs.harvard.edu/Volcano
issues and some solutions: http://www.eecs.harvard.edu/~mdw/papers/volcano-ieeeic06.pdf
Q#10
− The Figure shows a medical sensor that uses an EKG sensor and a pulse oximeter sensor for monitoring vital body signals.
− What type of in-network processes do you think can be introduced for a patient control and monitoring system.
43
Medical sensors for monitoring patients Parkinson’s disease
− Akinesia means absence of movement.− Bradykinesia means slowness of movement.− Hypokinesia means decreased amplitude or range of
movement. − These three medical terms are commonly grouped together
for convenience and usually referred to under the term of bradykinesia. Bradykinesia is a prominent and important feature of parkinsonism.
− Bradykinesia is mild in early Parkinson's disease and becomes more severe in advanced Parkinson's disease as well as other forms of parkinsonism.
44Source: http://www.movement-disorders.org/learn/glossary.html
Q#11
Patel et al presented the results of a pilot study to assess the feasibility of using accelerometer data to estimate the severity of symptoms and motor complications in patients with Parkinson’s disease. A classifier was implemented to estimate the severity of tremor.−What type of information can be extracted from the collected data? −What should be the key design considerations?
45Shyamal Patel et al, “Monitoring Motor Fluctuations in Patients With Parkinson’s Disease Using Wearable Sensors”, ACTIONS ON INFORMATION TECHNOLOGY IN BIOMEDICINE, VOL. 13, NO. 6, NOVEMBER 2009
Q#12
− The figure shows a WSN architecture in which the nodes directly or via a gateway are connected to an IP network;
− What type of networking technologies can be proposed here?
46Image source: http://www.lacofa.es/index.php/general/english-virtualizing-sensor-network-vitro-practical-scenarios?lang=en
47
Questions?