Internet-of-Things (IoT)
Khondaker A. Mamun, PhD.
Director, AIMS Lab
Professor, CSE,UIU
Acknowledgement
University of Notre Dame
Course Overview
Lecture Lab
Fundamentals of IoT, basic Basic Python programming, meet
Week 1 concepts, applications your Raspberry Pi
Smart objects, user interfaces, Sensor programming, control
Week 2 sensing, actuation loops, digital/analog I/O
Fundamentals of computer and Wi-Fi and Bluetooth networks,
Week 3 wireless networks network measurements
Sensor networks, mesh ZigBee, WPANs, WBANs, routing,
Week 4 networks, routing, WPANs network measurements
Processing, IoT cloud, analytics, IoT cloud integration, sensor
Week 5 visualization fusion, analytics, visualization
IoT ecosystem, security, privacy, Final project
Week 6 ethics, trends, case studies
Wi-Fi
• Wi-Fi:
– name is NOT an abbreviation
– play on “Hi-Fi” (high fidelity)
• Wireless Local Area Network (WLAN)
technology
• WLAN and Wi-Fi often used synonymous
• Typically in 2.4 and 5 GHz bands
• Based on IEEE 802.11 family of standards
IEEE
• IEEE (Institute of Electrical and Electronics Engineers)
established the 802.11 Group in 1990. Specifications for
standard ratified in 1997.
• Initial speeds were 1 and 2 Mbps.
• IEEE modified the standard in 1999 to include:
– 802.11b
– 802.11a
– 802.11g
– 802.11n
– 802.11ac
WLAN (Wi-Fi)
Wi-Fi Channels
802.11 - Architecture of an Infrastructure Network
• Station (STA)
802.11 LAN – terminal with access mechanisms to
802.x LAN the wireless medium and radio
contact to the access point
• Basic Service Set (BSS)
STA1 – group of stations using the same
BSS1
Portal radio frequency
Access
Point
• Access Point
– station integrated into the wireless
Distribution System LAN and the distribution system
• Portal
Access
ESS Point
– bridge to other (wired) networks
• Distribution System
BSS2 – interconnection network to form one
logical network (ESS: Extended
Service Set) based on several BSS
STA2 802.11 LAN STA3
Wi-Fi (802.11)
BSS 1 BSS 2 BSS 1 BSS 2
AP 1 AP 2 AP 1 1 AP 2
1 1 2 2
2 3
3 4
H1 H1
Passive Scanning Active Scanning
(1) Beacons sent from APs (1) Probe Request (broadcast) sent from
(2) Association Request sent from H1 H1
to selected AP (2) Probe Response sent from APs
(3) Association Request sent from H1 to
(3) Association Response sent from
selected AP
AP to H1 (4) Association Response sent from AP
to H1
Wi-Fi Alliance Mission Statement
• Non-profit organization
• Certify the interoperability of products and
services based on IEEE 802.11 technology
• Grow the global market for Wi-Fi®
CERTIFIED products and services across all
market segments, platforms, and applications
• Rigorous interoperability testing requirements
Certificate & Logo
• Logo on product
packaging (mandatory)
Certificate inside packaging (optional) • Helps retailers and
consumers
Infrastructure vs. Ad-Hoc Networks
infrastructure
network
AP: Access Point
AP
AP wired network
AP
ad-hoc network
Infrastructure-Less (Ad-Hoc)
• Ad-hoc means ‘for this purpose’
• No need for infrastructure (like routers, cell
towers, etc.)
• MANET: Mobile Ad-Hoc Network
Routing
• Packets may need to traverse multiple links to
reach destination
• Mobility causes route changes
Ad-Hoc Routing Protocol
• An ad-hoc routing protocol is a convention that controls
how nodes decide which way to route packets between
computing devices in a mobile ad-hoc network
• Foundation in most protocols: neighbor discovery
– Nodes send periodic announcements as broadcast packets (beacon
messages, alive messages, …)
– Can embed “neighbor table” into such messages; allows nodes to
learn “2-hop neighborhood”
• Popular types of routing protocols:
– Proactive
– Reactive
– Geographic
Proactive: “Link-State” Algorithms
• Each node shares its link Link Link
information so that all A-B A-B
B-C B-C
nodes can build a map of
Link C-D C-D
the full network topology
A-B
A C D
B-C
C-D
• Assuming the topology is stable B
for a sufficiently long period, all Link
nodes will have the same A-B
topology information B-C
C-D
Proactive: “Link-State” Algorithms
Link
• Link information is A-B
updated when a link A-C
changes state (goes up or B-C
down) Link A-C C-D A-C Link
– by sending small “hello” A-B A-B
packets to neighbors A-C A C D A-C
B-C B-C
C-D C-D
• Nodes A and C propagate A-C
the existence of link A-C Link
B
to their neighbors and, A-B
eventually, to the entire A-C
network B-C
C-D
Reactive: DSR
• Dynamic Source Routing
• Search for route when needed only
– Search using Route Request (RREQ) broadcasts
– Response using Route Reply (RREP) message
• Every message along route contains entire path
to help intermediate nodes to decide what to do
with message
Route Discovery in DSR
Y
Z
S E
F
B
C M L
J
A G
H D
K
I N
Represents a node that has received RREQ for D from S
Route Discovery in DSR
Y
Broadcast transmission
[S] Z
S E
F
B
C M L
J
A G
H D
K
I N
Represents transmission of RREQ
[X,Y] Represents list of identifiers appended to RREQ
Route Discovery in DSR
Y
Z
S [S,E]
E
F
B
C M L
J
A [S,C] G
H D
K
I N
• Node H receives packet RREQ from two neighbors:
potential for collision
Route Discovery in DSR
Y
Z
S E
F [S,E,F]
B
C M L
J
A G
H D
[S,C,G] K
I N
• Node C receives RREQ from G and H, but does not forward
it again, because node C has already forwarded RREQ once
Route Discovery in DSR
Y
Z
S E
F [S,E,F,J]
B
C M L
J
A G
H D
K
I [S,C,G,K] N
• Nodes J and K both broadcast RREQ to node D
• Since nodes J and K are hidden from each other, their
transmissions may collide
Route Discovery in DSR
Y
Z
S E
[S,E,F,J,M]
F
B
C M L
J
A G
H D
K
I N
• Node D does not forward RREQ, because node D
is the intended target of the route discovery
Route Reply in DSR
Y
Z
S RREP [S,E,F,J,D]
E
F
B
C M L
J
A G
H D
K
I N
Represents RREP control message
Data Delivery in DSR
Y
DATA [S,E,F,J,D] Z
S E
F
B
C M L
J
A G
H D
K
I N
Packet header size grows with route length
Proactive vs Reactive
• Reactive:
– Only establish/maintain routes between nodes
needed them (in contrast: tables store ALL routes)
– Store entire route in each message; message size
grows with route length
– Route requests cause “flooding”
• Proactive:
– Route information always available; no need to search
for route (but route information can be outdated)
– Continuous exchange of route change updates
Geographic Routing
• Nodes use location information to make routing
decisions
– sender must know the locations of itself, the
destination, and its neighbors
– location information can be queried or obtained from a
location broker
– location information can come from GPS (Global
Positioning System) or some other form of positioning
technology
Unicast Location-Based Routing
• One single destination
• Each forwarding node makes localized decision based on the
location of the destination and the node’s neighbors (greedy
forwarding)
• Challenge: packet may arrive at a node without neighbors that could
bring packet closer to the destination (voids or holes)
Source Destination
Geocasting
• Packet is sent to all or some nodes
within specific geographic region
• Example: query sent to all sensors
within geographic area of interest
• Routing challenge:
– propagate a packet near the target
region (similar to unicast routing)
– distribute packet within the target
region (similar to flooding)
BREAK