Title: Radio%20and%20Medium%20Access%20Control
1Radio and Medium Access Control
2Learning Objectives
- Understand important concepts about radio signals
- Understand radio properties of WSNs
- Understand schedule-based medium access protocols
in WSNs - Understand contention-based medium access
protocols in WSNs - Understand S-MAC, B-MAC, and X-MAC
3Prerequisites
- Module 2
- Basic concepts of wireless communications
- Basic concepts of computer networks
4Radio Properties
5Some Basic Concepts
- RSSI
- dbm
- Noise floor see wikipedia
- CCA thresholding algorithms
- Duty cycle
- LPL
6Signal Transmission
Ref Fig. 2.9 of Wireless Communications and
Networks by William Stallings
7Packet Reception and Transmission
8Signal
- An electromagnetic signal
- A function of time
- Also a function of frequency
- The signal consists of components of different
frequencies
9802.15.4 Physical Layer
10dB
- dB (Decibel)
- Express relative differences in signal strength
- dB 10 log10 (p1/p2)
- dB 0 no attenuation. p1 p2
- 1 dB attenuation 0.79 of the input power
survives 10 log10(1/0.79) - 3 dB attenuation 0.5 of the input power
survives 10 log10(1/0.5) - 10 dB attenuation 0.1 of the input power
survives 10 log10(1/0.1)
- http//en.wikipedia.org/wiki/Decibel
- http//www.sss-mag.com/db.html
11dBm
- The referenced quantity is one milliwatt(mW)
- dBm 10 log10 (p1/1mW)
- 0 dBm p1 is 1 mW
- -80 dBm p1 is 10-11W 10pW
- http//en.wikipedia.org/wiki/DBm
12Received Signal Strength Indicator (RSSI)
- The strength of a received RF signal
- Many current platforms provide hardware indicator
- CC2420, the radio chip of MicaZ and TelosB,
provides RSSI indicator and LQI (Link Quality
Indicator)
13LQI (Link Quality Indicator)
- A measure of chip error rate
- Error rate
- The rate at which errors occur
- Error
- 0 is transmitted while 1 is received
- 1 is transmitted while 0 is received
14Noise Floor
- The measure of the signal created from the sum of
all the noise sources and unwanted signals
15Signal Noise Ratio (SNR)
- The ratio of the power in a signal to the power
contained in the noise that is present - Typically measured at the receiver
- Take CC2420 as the example
- Noise Floor the RSSI register from the CC2420
chip when not receiving a packet - For example -98dBm
- The strength field from the received packet RSSI
of the received packet
16Radio Spectrum Frequency Allocation
- http//www.ntia.doc.gov/osmhome/allochrt.pdf
17Radio Irregularity
- Spherical radio range is not valid
- When an electromagnetic signal propagate, the
signal may be - Diffracted
- Reflected
- Scattered
- Radio irregularity and variations in packet loss
in different directions
18Radio Signal Property
- Anisotropic Signal Strength Different path
losses in different directions
19Radio Signal Property
- Anisotropic Packet Loss Ratio Packet Reception
Ratio (PRR) varies in different directions
20Radio Signal Property
- Anisotropic Radio Range The communication range
of a mote is not uniform
21Medium Access Control (MAC)
22Introduction
- A radio channel cannot be accessed simultaneously
by two or more nodes that are in a radio
interference range - Nodes may transmit at the same time on the same
channel - Medium Access Control
- On top of Physical layer
- Control access to the radio channel
23MAC Protocol Requirements
- Energy Efficiency
- Sources of energy waste
- Collision, Idle Listening, Overhearing, and
Control Packet Overhead - Effective collision avoidance
- When and how the node can access the medium and
send its data - Efficient channel utilization at low and high
data rates - Reflects how well the entire bandwidth of the
channel is utilized in communications - Tolerant to changing RF/Networking conditions
- Scalable to large number of nodes
Ref MAC_2 Section I, II
24Two Basic Classes of MAC Protocol Slotted and
Sampling
- Slotted Protocols (Synchronous Protocols)
- Nodes divides time into slots
- Radio can be in receive mode, transmit mode, or
powered off mode - Communication is synchronized
- Data transfers occur in slots
- TDMA, IEEE 802.15.4, S-MAC, T-MAC, etc.
- Also Ref J. Polastre Dissertation Section 2.4
http//www.polastre.com/papers/polastre-thesis-fin
al.pdf
25Two Basic Classes of MAC Protocol Slotted and
Sampling
- Sampling Protocols
- Nodes periodically wake up, and only start
receiving data if they detect channel activity - Communication is unsynchronized
- Data transfer wakes up receiver
- Must send long, expensive messages to wake up
neighbors - B-MAC, Preamble sampling, LPL, etc.
26Slotted Protocol Example 802.15.4
- Each node beacons on its own schedule
- Other nodes synchronize with the received Beacons
CSMA Contention Period
Beacon
Ack
Beacon
Data
Data
sleep
Superframe Duration
Beacon Frame Duration
27IEEE 802.15.4 Superframe
28Using 802.15.4
send done
SP
wake forbeacon period
beaconTX
packet received
send
Coordinator
15.4
stop radio superframe complete
start radio send beacon
Beacon
Data
Data
Ack
RF Channel
If yes,wake up
beacon RX
TX first packet
Ack received
15.4
Neighbors
are messagespending?
send donereliability set
Update schedule
TXdone
Stopradio
packet RX
SP
29Main MAC Protocols
Wireless medium access
Centralized
Distributed
Contention-based
Schedule-based
Contention-based
Schedule-based
Fixedassignment
Demandassignment
Fixedassignment
Demandassignment
30Scheduled Protocols
- TDMA divides the channel into N time slots
31Contention-based Protocols
- A common channel is shared by all nodes and it is
allocated on-demand - A contention mechanism is employed
- Advantages over scheduled protocols
- Scale more easily
- More flexible as topologies change
- No requirement to form communication clusters
- Do not require fine-grained time synchronization
- Disadvantage
- Inefficient usage of energy
- Node listen at all times
- Collisions and contention for the media
32CSMA
- Listening before transmitting
- Listening (Carrier Sense)
- To detect if the medium is busy
- Hidden Terminal Problem
33Hidden Terminal Problem
- Node A and C cannot hear each other
- Transmission by node A and C can collide at node
B - On collision, both transmissions are lost
- Node A and C are hidden from each other
34CSMA-CA
- CA
- Collision Avoidance to address the hidden
terminal problem - Basic mechanism
- Establish a brief handshake between a sender and
a receiver before transmission - The transmission between a sender and a receiver
follows RTS-CTS-DATA-ACK
35Centralized Medium Access
- Idea Have a central station control when a node
may access the medium - Example Polling, centralized computation of TDMA
schedules - Advantage Simple, quite efficient (e.g., no
collisions), burdens the central station - Not directly feasible for non-trivial wireless
network sizes - But Can be quite useful when network is somehow
divided into smaller groups - Clusters, in each cluster medium access can be
controlled centrally compare Bluetooth
piconets, for example - ! Usually, distributed medium access is
considered
36Schedule- vs. Contention-based MACs
- Schedule-based MAC
- A schedule exists, regulating which participant
may use which resource at which time (TDMA
component) - Typical resource frequency band in a given
physical space (with a given code, CDMA) - Schedule can be fixed or computed on demand
- Usually mixed difference fixed/on demand is
one of time scales - Usually, collisions, overhearing, idle listening
no issues - Needed time synchronization!
37Schedule- vs. Contention-based MACs
- Contention-based protocols
- Risk of colliding packets is deliberately taken
- Hope coordination overhead can be saved,
resulting in overall improved efficiency - Mechanisms to handle/reduce probability/impact of
collisions required - Usually, randomization used somehow
38Possible Solutions
- CSMA (Carrier Sense Multiple Access)
- Advantage
- No clock synchronization required
- No global topology information required
- Disadvantage
- Hidden terminal problem serious throughput
degradation - RTS/CTS can alleviate hidden terminal problem,
but incur high overhead
39Possible Solutions
- TDMA (Time-division multiple access)
- Advantage
- Solve the hidden terminal problem without extra
message overhead - Disadvantage
- It is challenging to find an efficient time
schedule - Need clock synchronization
- High energy overhead
- Handling dynamic topology change is expensive
- Given low contention, TDMA gives much lower
channel utilization and higher delay
40Effective Throughput CSMA vs. TDMA
CSMA
Sensitive to Time synch. errors, Topology
changes, Slot assignment errors.
Channel Utilization (The fraction of time that
the channel is transmitting data)
TDMA
Do not use any topology or time synch.
Info. Thus, more robust to time synch. errors and
changes.
of Contenders
41MAC Energy Usage
- Four important sources of wasted energy in WSN
- Idle Listening (required for all CSMA protocols)
- Overhearing (since RF is a broadcast medium)
- Collisions (Hidden Terminal Problem)
- Control Overhead (e.g. RTS/CTS or DATA/ACK)
42S-MAC
- During sleep, the node turns off its radio, and
sets a timer to awake itself
S-MAC Figure 2
43S-MAC
- Requires periodic synchronization among
neighboring node - Negotiate a schedule
- Prefer that neighboring nodes listen at the same
time and go to sleep at the same time - Use SYNC message
S-MAC
44S-MAC
- All senders perform CS (Carrier Sense) before
initiating a transmission - Broadcast packets are sent without using RTS/CTS
- Unicast packet follow RTS/CTS/DATA/ACK
- To avoid collision
S-MAC
45S-MAC Overhearing Avoidance
- To avoid overhearing let interfering nodes go to
sleep after they hear an RTS or CTS packet
S-MAC
46S-MAC Adaptive Listening
- To improve latency caused by the periodic sleep
of each node in the multi-hop network - Let each node who overhears its neighbors
transmissions (RTS and CTS) wake up a short
period of time at the end of transmission
S-MAC
47S-MAC with Adaptive Listening
Ref Figure 1 of DW-MAC
48B-MAC
- A set of primitives that other protocols may use
as building block - Provide basic CSMA access
- Optional link level ACK, no link level RTS/CTS
- CSMA backoffs configurable by higher layers
- Carrier Sensing using Clear Channel Assess (CCA)
- Sleep/Wake scheduling using Low Power Listening
(LPL)
- Ref Section 1, 3 of ref. MAC_1
- LPL See Section 2.1 of ref. Energy_1
49B-MAC
- Does not solve hidden terminal problem
- Duty cycles the radio through periodic channel
sampling Low Power Listening (LPL)
50B-MAC Clear Channel Assessment
- Before transmission take a sample of the
channel - If the sample is below the current noise floor,
channel is clear, send immediately. - If five samples are taken, and no outlier found
gt channel busy, take a random backoff - Noise floor updated when channel is known to be
clear e.g. just after packet transmission
- Ref Section 1, 3 of ref. MAC_1
51A Trace of Power Consumption
52B-MAC Low Power Listening
- Similar to ALOHA preamble sampling
- Wake up every Check-Interval
- Sample Channel using CCA
- If no activity, go back to sleep for
Check-Interval - Else start receiving packet
- Preamble gt Check-Interval
Goal minimize idle listening
53Low Power Listening
- Purpose
- Energy cost RX TX Listen
- Save energy
- How
- Duty cycle the radio while ensuring reliable
message delivery - Periodically wake up, sample channel, and sleep
- The duty cycling receiver node performs short and
periodic receive checks - If the channel is checked every 100ms
- The preamble must be at least 100 ms long for a
node to wake up, detect activity on the channel,
receive the preamble, and then receive the
message.
54X-MAC
- Asynchronous duty-cycled MAC protocol
- Provide the following advantages over B-MAC
- Avoid overhearing problem embedding the Target
ID in the Preamble - Reduce excessive preamble strobed preamble
- Ref Section 1, 3 of ref. MAC_4
55X-MAC and B-MAC
- Ref Section 1, 3 of ref. MAC_4
56802.15.4 Frame Format
- Page 36 of CC2420 Data Sheet
57TinyOS Implementation of CSMA o CC2420 - CCA
- Hardware
- CC2420 has CCA as a pin that can be sampled to
determine if another node is transmitting - See CC2420 Data Sheet Figure 1 CC2420 Pinout
- Software
- CC2420Transmit has the option to send the message
with or without CCA - See CC2420TransmitP.send()
58TinyOS Implementation of CSMA of CC2420 - Ack
- Hardware Ack
- If MDMCTRL0.AUTOACK of CC2420 is enabled
- Software Ack
- SACK strobe in CC2420ReceiveP can be used to set
software ack
59Lab
- Please add the Low Power Listening feature to the
PingPong application. That is, the packet from A
to B and from B to A should be received using
LPL. - Please follow TEP 126 - CC2420AckLplP /
CC2420NoAckLplP
60Assignment
- 1. In many research papers about wireless sensor
networks, spherical radio range is assumed. Is
this true or not? Please brief explain. - 2. What is the main idea of Low Power Listening
(LPL)? Why do we need LPL? - 3. What is the purpose of Clear Channel
Assessment? - 4. What are the main advantages of X-MAC over
B-MAC?
61Project
- This is a group project. Each group can have up
to 3 students - Project Description
- In this project, you will develop a multi-hop
data collection tree protocol based on TinyOS
2.x. - 1. Development of a multi-hop data collection
tree protocol - 1.1 The protocol to form a multi-hop data
collection tree - The base station locally broadcast a tree
construction message, which includes its own ID
and its depth to be 0 - a. When a node, say A, receives a tree
construction message from node B at its first
time (i.e., node A has not joined the data
collection tree yet), node A assigns its depth
to be the depth of node B plus one, and its
parent to be node B. After this, node A
rebroadcasts the tree construction message.
62Project - continue
- b. When a node, say A, already joins the data
collection tree and receives a tree construction
message from node B, node A just simply
disregards the tree construction message. - c. When a node, say A, already joins the data
collection tree (suppose that node As parent is
node B and node As depth is n) and receives a
tree construction message from node C - 1. suppose that if node A selects node C as its
parent, node As depth is m - 2. suppose m lt n
- node A will change its parent to node C.
63Project - continue
one example multi-hop data collection tree
64Project - continue
- Also see attached slide tree.ppt for a dynamic
view about how to construct a multi-hop data
collection tree. - 1.2 After the multi-hop data collection tree is
formed, each node senses and transmits its light
intensity to the base station every one second.
For each received message, the base station
displays the following information - Node ID which originates the message
- Tree depth of the Node
- Sensed light value
65Project - continue
- Basic Steps
- Please follow the steps listed below
- 1. Setting up TinyOS environment - XubunTOS
- XubunTOS can be downloaded here
- http//toilers.mines.edu/Public/XubunTOS
- 2. Go through the TinyOS tutorials at
http//docs.tinyos.net/index.php/TinyOS_Tutorials