Upload
marcelo-clare
View
220
Download
0
Tags:
Embed Size (px)
Citation preview
Architectures and Architectures and Applications for Applications for Wireless Sensor Wireless Sensor
Networks (01204525)Networks (01204525)
Medium Access ControlMedium Access Control
Chaiporn JaikaeoChaiporn [email protected]@ku.ac.th
Department of Computer EngineeringDepartment of Computer EngineeringKasetsart UniversityKasetsart University
Materials taken from lecture slides by Karl and Willig
2
OverviewOverview Principal options and difficultiesPrincipal options and difficulties Contention-based protocolsContention-based protocols Schedule-based protocolsSchedule-based protocols IEEE 802.15.4IEEE 802.15.4
3
DifficultiesDifficulties Medium access in wireless networks Medium access in wireless networks
is difficult, mainly because ofis difficult, mainly because of Half-duplex communicationHalf-duplex communication High error ratesHigh error rates
RequirementsRequirements As usual: high throughput, low As usual: high throughput, low
overhead, low error rates, …overhead, low error rates, … Additionally: energy-efficient, handle Additionally: energy-efficient, handle
switched off devices!switched off devices!
4
Requirements for Energy-Requirements for Energy-Efficient MAC ProtocolsEfficient MAC Protocols RecallRecall
Transmissions are costlyTransmissions are costly Receiving about as expensive as transmittingReceiving about as expensive as transmitting Idling can be cheaper but is still expensive Idling can be cheaper but is still expensive
Energy problemsEnergy problems CollisionsCollisions OverhearingOverhearing Idle listeningIdle listening Protocol overhead Protocol overhead
Always wanted: Low complexity solutionAlways wanted: Low complexity solution
5
Main OptionsMain OptionsWireless medium access
Centralized Distributed
Contention-based
Schedule-based
Fixedassignment
Demandassignment
Contention-based
Schedule-based
Fixedassignment
Demandassignment
6
Centralized Medium Centralized Medium AccessAccess A central station controls when a A central station controls when a
node may access the mediumnode may access the medium E.g., Polling, computing TDMA schedulesE.g., Polling, computing TDMA schedules Advantage: Simple, efficientAdvantage: Simple, efficient
Not directly feasible for non-trivial Not directly feasible for non-trivial wireless network sizeswireless network sizes
But: Can be quite useful when But: Can be quite useful when network is somehow divided into network is somehow divided into smaller groupssmaller groups
Distributed approach still preferableDistributed approach still preferable
7
Schedule- vs. Schedule- vs. Contention-BasedContention-Based Schedule-basedSchedule-based protocols protocols
FDMA, TDMA, CDMAFDMA, TDMA, CDMA Schedule can be Schedule can be fixed fixed or computed or computed on on
demanddemand Usually mixedUsually mixed
Collisions, overhearing, idle listening no issuesCollisions, overhearing, idle listening no issues Time synchronization neededTime synchronization needed
Contention-basedContention-based protocols protocols Hope: coordination overhead can be savedHope: coordination overhead can be saved Mechanisms to handle/reduce Mechanisms to handle/reduce
probability/impact of collisions required probability/impact of collisions required Randomization used somehowRandomization used somehow
8
OverviewOverview Principal options and difficultiesPrincipal options and difficulties Contention-based protocolsContention-based protocols
MACAMACA S-MAC, T-MACS-MAC, T-MAC Preamble sampling, B-MACPreamble sampling, B-MAC PAMASPAMAS
Schedule-based protocolsSchedule-based protocols IEEE 802.15.4IEEE 802.15.4
9
A
Distributed, Contention-Distributed, Contention-Based MACBased MAC Basic ideasBasic ideas
Receivers need to tell surrounding Receivers need to tell surrounding nodes to shut upnodes to shut up
Listen before talk Listen before talk (CSMA) (CSMA) Suffers from Suffers from sendersender not knowing what is not knowing what is
going on at going on at receiverreceiver
B C D
Hidden terminal
scenario: Also: recall exposed terminal scenario
10
How To Shut Up How To Shut Up Senders Senders Inform potential interferers Inform potential interferers duringduring
receptionreception Cannot use the same channelCannot use the same channel So use a different oneSo use a different one
Busy tone Busy tone protocolprotocol
Inform potential interferers Inform potential interferers before before receptionreception Can use same channelCan use same channel Receiver itself needs to be informed, by Receiver itself needs to be informed, by
sender, about impending transmission sender, about impending transmission Potential interferers need to be aware of such Potential interferers need to be aware of such
information, need to store itinformation, need to store it
11
MACAMACA MMultiple ultiple AAccess with ccess with
CCollision ollision AAvoidancevoidance Sender B issues Sender B issues
Request to Send Request to Send (RTS)(RTS)
Receiver C agrees with Receiver C agrees with Clear to Send Clear to Send ((CTSCTS))
Potential interferers Potential interferers learns from RTS/CTSlearns from RTS/CTS Store this information Store this information
in a in a Network Network Allocation Vector Allocation Vector (NAV)(NAV)
B sends, C acksB sends, C acks Used in Used in IEEE 802.11IEEE 802.11
A B C D
RTS
CTS
Data
Ack
NAV indicates busy medium
NAV indicates busy medium
12
RTS/CTS RTS/CTS RTS/CTS helps, but do not solve RTS/CTS helps, but do not solve
hidden/exposed terminal problemshidden/exposed terminal problemsA B C D
RTS
CTS
Data
A B C D
RTS
RTS
CTS
RTS
RTSCTS
CTSData
Data
Ack
13
MACA Problem: Idle MACA Problem: Idle listeninglistening Need to sense carrier for RTS or CTS Need to sense carrier for RTS or CTS
packetspackets In some form shared by many CSMA In some form shared by many CSMA
variants; but e.g. not by busy tonesvariants; but e.g. not by busy tones Simple sleeping will break the protocolSimple sleeping will break the protocol
IEEE 802.11 solution: ATIM windows IEEE 802.11 solution: ATIM windows & sleeping& sleeping Idea: Nodes that have data buffered for Idea: Nodes that have data buffered for
receivers send receivers send traffic indicatorstraffic indicators at at prearranged points in timeprearranged points in time
Receivers need to wake up at these Receivers need to wake up at these points, but can sleep otherwisepoints, but can sleep otherwise
14
Sensor-MAC (S-MAC)Sensor-MAC (S-MAC) MACA unsuitable if average data rate is MACA unsuitable if average data rate is
lowlow Most of the time, nothing happensMost of the time, nothing happens
Idea: Switch off, ensure that neighboring Idea: Switch off, ensure that neighboring nodes turn on simultaneously to allow nodes turn on simultaneously to allow packet exchangepacket exchange Need to also exchange Need to also exchange
wakeup schedule wakeup schedule between neighborsbetween neighbors
When awake, When awake, perform RTS/CTSperform RTS/CTS
Wakeup period
Active period
Sleep period
For SYNCH For RTS For CTS
15
Listen for SYNC
td
Schedule AssignmentSchedule Assignment Synchronizer
Listen for a mount of time
If hear no SYNC, select its own SYNC
Broadcasts its SYNC immediately
Follower Listen for amount
of time Hear SYNC from
A, follow A’s SYNC
Rebroadcasts SYNC after random delay td
Sleep
Listen
Go to sleep after time t
Sleep
Listen
Broadcasts
A
B
Broadcasts
Go to sleep after time t- td
16
S-MAC Synchronized S-MAC Synchronized IslandsIslands Nodes learn schedule from other nodesNodes learn schedule from other nodes Some node might learn about two Some node might learn about two
different schedules from different nodesdifferent schedules from different nodes ““Synchronized islands”Synchronized islands”
To bridge this gap, it has to follow both To bridge this gap, it has to follow both schemesschemes
Time
A A A A
C C C C
A
B B B B
D D D
A
C
B
D
E E E EE E E
17
Timeout-MAC (T-MAC)Timeout-MAC (T-MAC) In S-MAC, active In S-MAC, active
period is of constant period is of constant lengthlength
Idea: Prematurely Idea: Prematurely go back to sleep go back to sleep mode after timeoutmode after timeout Adaptive duty cycleAdaptive duty cycle
One ensuing One ensuing problem: Early problem: Early sleepingsleeping C wants to send to C wants to send to
D, but is hindered by D, but is hindered by transmission Atransmission ABB
A B C DRTS
CTS
DATA
May not send
Timeout, go back tosleep asnothing
happened
ACK
RTS
18
Preamble SamplingPreamble Sampling Alternative option: Don’t try to explicitly Alternative option: Don’t try to explicitly
synchronize nodessynchronize nodes Have receiver sleep and only periodically Have receiver sleep and only periodically
sample the channelsample the channel Use Use long preambleslong preambles to ensure that to ensure that
receiver stays awake to catch actual receiver stays awake to catch actual packet packet Example: B-MAC, WiseMAC Example: B-MAC, WiseMAC
Check channel
Check channel
Check channel
Check channel
Start transmission:Long preamble Actual packet
Stay awake!
19
B-MACB-MAC Very simple MAC protocolVery simple MAC protocol EmploysEmploys
Clear Channel Assessment (CCA) and Clear Channel Assessment (CCA) and backoffs for channel arbitrationbackoffs for channel arbitration
Link-layer acknowledgement for Link-layer acknowledgement for reliabilityreliability
Low-power listening (LPL)Low-power listening (LPL) I.e., preamble sampling I.e., preamble sampling
Currently: Often considered as the Currently: Often considered as the default WSN MAC default WSN MAC protocolprotocol
20
B-MACB-MAC B-MAC does not haveB-MAC does not have
SynchronizationSynchronization RTS/CTSRTS/CTS Results in simpler, leaner Results in simpler, leaner
implementation implementation Clean and simple interfaceClean and simple interface
21
Clear Channel Clear Channel AssessmentAssessment "Carrier Sensing" in wireless "Carrier Sensing" in wireless
networksnetworks
Thresholding Thresholding CCA algorithmCCA algorithm
Outlier detection Outlier detection CCA algorithmCCA algorithm
22
PAMAS PAMAS PPower ower AAware ware MMulti-ulti-AAccess with ccess with
SSignalingignaling Idea: combine busy tone with Idea: combine busy tone with
RTS/CTSRTS/CTS Avoid overhearingAvoid overhearing Does not address idle listeningDoes not address idle listening Uses separate Uses separate data data and and control control
channelschannels Time
Controlchannel
Datachannel
RTS A B
CTS B A
Data A B
Busy tone sent by B
23
PAMASPAMAS Suppose a node C in vicinity of A is Suppose a node C in vicinity of A is
already receiving a packet when A already receiving a packet when A initiates RTS initiates RTS
A
BC
?
Time
Controlchannel
Datachannel
RTS A B
CTS B A
No data!
Busy tone by C
24
OverviewOverview Principal options and difficultiesPrincipal options and difficulties Contention-based protocolsContention-based protocols Schedule-based protocolsSchedule-based protocols
LEACHLEACH SMACSSMACS TRAMATRAMA
IEEE 802.15.4IEEE 802.15.4
25
LEACHLEACH LLow-ow-EEnergy nergy AAdaptive daptive CClustering lustering
HHierarchyierarchy AssumptionsAssumptions
Dense network of nodesDense network of nodes Direct communication with central sinkDirect communication with central sink Time synchronizationTime synchronization
Idea: Group nodes into “Idea: Group nodes into “clustersclusters”” Each cluster controlled by Each cluster controlled by clusterheadclusterhead About 5% of nodes become clusterhead About 5% of nodes become clusterhead
(depends on scenario)(depends on scenario) Role of clusterhead is rotatedRole of clusterhead is rotated
26
LEACH ClusterheadLEACH Clusterhead Each CH organizesEach CH organizes
CDMA code for its clusterCDMA code for its cluster TDMA schedule to be used within a TDMA schedule to be used within a
clustercluster In steady state operationIn steady state operation
CHs collect & aggregate data from all CHs collect & aggregate data from all cluster memberscluster members
Report aggregated data to sink using Report aggregated data to sink using CDMACDMA
27
LEACH rounds LEACH rounds
Setup phase Steady-state phase
Fixed-length round
……….. ………..
Advertisement phase Cluster setup phase Broadcast schedule
Time slot 1
Time slot 2
Time slot n
Time slot 1
…..….. …..
Clusterheads compete with CSMA
Members compete with CSMA
Self-election of clusterheads
28
SMACSSMACS SSelf-Organizing elf-Organizing MMedium edium AAccess ccess
CControl for ontrol for SSensor Networksensor Networks AssumptionsAssumptions
Many radio channelsMany radio channels Most nodes are stationaryMost nodes are stationary Time synchronizationTime synchronization
Goal: set up Goal: set up directional links directional links between neighboring nodesbetween neighboring nodes
29
SMACS LinksSMACS Links Each link is directionalEach link is directional
A pair of nodes needs two links to A pair of nodes needs two links to exchange dataexchange data
Radio channel + time slot at both sender Radio channel + time slot at both sender and receiverand receiver
Free of collisions at receiverFree of collisions at receiver Channel picked randomly, slot is Channel picked randomly, slot is
searched greedily until a collision-free searched greedily until a collision-free slot is foundslot is found
Receivers only wake up in their Receivers only wake up in their assigned time slots, once per assigned time slots, once per superframe superframe
30
TRAMATRAMA TrTraffic affic AAdaptive daptive MMedium edium AAccess ccess
ProtocolProtocol Assume nodes are time synchronizedAssume nodes are time synchronized Time divided into cycles, divided intoTime divided into cycles, divided into
Random access periodRandom access period Scheduled access periodScheduled access period
Random Access PeriodRandom Access Period Scheduled-Access PeriodScheduled-Access Period
time cycletime cycle
• Exchange and learn two-hop Exchange and learn two-hop neighborsneighbors
• Exchange schedulesExchange schedules
• Used by winning nodes to Used by winning nodes to transmit datatransmit data
31
TRAMA – Adaptive TRAMA – Adaptive Election Election How to decide which slot (in scheduled How to decide which slot (in scheduled
access period) a node can use? access period) a node can use? For node id For node id xx and time slot and time slot tt, compute , compute p p == h h ((xx
tt)) hh is a global hash function is a global hash function
Compute Compute pp for next for next kk time slots for itself and time slots for itself and all two-hop neighborsall two-hop neighbors
Node uses those time slots for which it has the Node uses those time slots for which it has the highest priority highest priority
t = t = 00
t = t = 1 1
t = t = 22
t=3t=3 t = t = 44
t = t = 5 5
AA 1414 2323 99 5656 33 2626BB 3333 6464 88 1212 4444 66CC 5353 1818 66 3333 5757 22
32
Comparison: TRAMA, S-Comparison: TRAMA, S-MAC MAC Comparison between TRAMA & S-MACComparison between TRAMA & S-MAC
Energy savings in TRAMA depend on load Energy savings in TRAMA depend on load situationsituation
Energy savings in S-MAC depend on duty Energy savings in S-MAC depend on duty cycle cycle
TRAMA (as typical for a TDMA scheme) has TRAMA (as typical for a TDMA scheme) has higher delay but higher maximum higher delay but higher maximum throughput than contention-based S-MAC throughput than contention-based S-MAC
TRAMA disadvantage: substantial TRAMA disadvantage: substantial memory/CPU requirements for schedule memory/CPU requirements for schedule computationcomputation
33
OverviewOverview Principal options and difficultiesPrincipal options and difficulties Contention-based protocolsContention-based protocols Schedule-based protocolsSchedule-based protocols IEEE 802.15.4IEEE 802.15.4
34
IEEE 802.15.4IEEE 802.15.4 IEEE standard for low-rate WPAN (LR-WPAN) IEEE standard for low-rate WPAN (LR-WPAN)
applicationsapplications Low-to-medium bit ratesLow-to-medium bit rates Moderate delays without too strict requirements Moderate delays without too strict requirements Low energy consumption Low energy consumption
Physical layerPhysical layer 20 kbps over 1 channel @ 868-868.6 MHz20 kbps over 1 channel @ 868-868.6 MHz 40 kbps over 10 channels @ 905 – 928 MHz 40 kbps over 10 channels @ 905 – 928 MHz 250 kbps over 16 channels @ 2.4 GHz 250 kbps over 16 channels @ 2.4 GHz
MAC protocolMAC protocol Single channel at any one timeSingle channel at any one time Combines contention-based and schedule-based Combines contention-based and schedule-based
schemesschemes Asymmetric: nodes can assume different rolesAsymmetric: nodes can assume different roles
35
868MHz / 915MHz PHY
2.4 GHz
868.3 MHz
Channel 0 Channels 1-10
Channels 11-26
2.4835 GHz
928 MHz902 MHz
5 MHz
2 MHz
2.4 GHz PHY
IEEE 802.15.4 PHY IEEE 802.15.4 PHY OverviewOverview Operating frequency bandsOperating frequency bands
36
IEEE 802.15.4 MAC IEEE 802.15.4 MAC OverviewOverview Device classesDevice classes
Full function device (FFD)Full function device (FFD) Any topologyAny topology Network coordinator capableNetwork coordinator capable Talks to any other deviceTalks to any other device
Reduced function device (RFD)Reduced function device (RFD) Limited to star topologyLimited to star topology Cannot become a network coordinatorCannot become a network coordinator Talks only to a network coordinatorTalks only to a network coordinator Very simple implementationVery simple implementation
Slide 36 Joe Dvorak, Motorola 9/27/05
37
Network TopologiesNetwork Topologies
38
Cluster Tree NetworkCluster Tree Network A special case of peer-to-peer A special case of peer-to-peer
topologytopology
39
CoordinatorsCoordinators RolesRoles
Manage a list of associated devicesManage a list of associated devices Allocate a short address to each deviceAllocate a short address to each device Transmit beacons (in Transmit beacons (in beaconed modebeaconed mode)) Exchange data with devices and peer Exchange data with devices and peer
coordinatorscoordinators Devices Devices are associated with are associated with
coordinatorscoordinators Forming a PAN, identified by a PAN Forming a PAN, identified by a PAN
identifieridentifier
40
Beaconed ModeBeaconed Mode Superframe structureSuperframe structure
GTS assigned to devices upon request GTS assigned to devices upon request
Active period Inactive period
Contention access period
Guaranteed time slots (GTS)
Beacon
41
Data TransferData Transfer Device Device coordinator coordinator
If having allocated GTS, If having allocated GTS, wake up and sendwake up and send
Otherwise, send during Otherwise, send during CAPCAP Using slotted CSMAUsing slotted CSMA
Coordinator Coordinator device device If having allocated GTS, If having allocated GTS,
wake up and receivewake up and receive Otherwise, see pictureOtherwise, see picture
Coordinator Device
Beacon
Data request
Acknowledgement
Data
Acknowledgement
42
Slotted CSMASlotted CSMA
43
Further protocolsFurther protocols MAC protocols for ad hoc/sensor MAC protocols for ad hoc/sensor
networks is one the most active networks is one the most active research fields research fields Tons of additional protocols in the Tons of additional protocols in the
literatureliterature E.g., STEM, mediation device protocol, E.g., STEM, mediation device protocol,
many CSMA variants with different many CSMA variants with different timing optimizations, protocols for timing optimizations, protocols for multi-hop reservations (QoS for multi-hop reservations (QoS for MANET), protocols for multiple radio MANET), protocols for multiple radio channels, … channels, …
44
SummarySummary Many different ideas exist for medium access Many different ideas exist for medium access
control in MANET/WSN control in MANET/WSN Comparing their performance and suitability is Comparing their performance and suitability is
difficultdifficult Especially, clearly identifying interdependencies Especially, clearly identifying interdependencies
between MAC protocol and other between MAC protocol and other layers/applications is difficultlayers/applications is difficult Which is the best MAC for which application?Which is the best MAC for which application?
Nonetheless, certain “common use cases” existNonetheless, certain “common use cases” exist IEEE 802.11 DCF for MANETIEEE 802.11 DCF for MANET IEEE 802.15.4 for some early “commercial” WSN IEEE 802.15.4 for some early “commercial” WSN
variantsvariants B-MAC for WSN research not focusing on MAC B-MAC for WSN research not focusing on MAC