mcmac: a power efficient, short preamble multi-channel mac
TRANSCRIPT
McMAC: a power efficient, short preambleMulti-Channel MAC protocol for wireless
sensor networks
Riccardo Bonetto, Michele Rossi, Nicola Bui, Michele Zorzi
Department of Information Engineering, University of PaduaVia Gradenigo 6/b, 35131, Padua, Italy
March 23, 2012
{bonettor, bui, rossi, zorzi}@dei.unipd.it WNS3 2012 March 23, 2012 1 / 21
OUTLINE
Outline
1 MAC protocols for WSNs
2 Preamble sampling based protocols
3 McMAC: basic idea
4 McMAC: CSMA-CA
5 Transmission algorithm
6 Synchronization
7 Buffering
8 NS-3 implementation
9 Results
10 Conclusions and future work
{bonettor, bui, rossi, zorzi}@dei.unipd.it WNS3 2012 March 23, 2012 2 / 21
MAC protocols for WSNs
MAC protocols for WSNs
Wireless nodes’ transceiver is the major responsible for energyconsumption.
MAC protocols for WSNs must be designed for an efficient use of thetransceiver in order to mitigate the three major causes of energy wastage:
Idle listening
Collisions
Overhearing
{bonettor, bui, rossi, zorzi}@dei.unipd.it WNS3 2012 March 23, 2012 3 / 21
MAC protocols for WSNs
MAC protocols for WSNs
Wireless nodes’ transceiver is the major responsible for energyconsumption.
MAC protocols for WSNs must be designed for an efficient use of thetransceiver in order to mitigate the three major causes of energy wastage:
Idle listening
Collisions
Overhearing
Phenomenon arising when one node keepsits transceiver in receiving mode while notreceiving useful data.
{bonettor, bui, rossi, zorzi}@dei.unipd.it WNS3 2012 March 23, 2012 3 / 21
MAC protocols for WSNs
MAC protocols for WSNs
Wireless nodes’ transceiver is the major responsible for energyconsumption.
MAC protocols for WSNs must be designed for an efficient use of thetransceiver in order to mitigate the three major causes of energy wastage:
Idle listening
Collisions
Overhearing
Tx1 Tx2Rx
radio wavesnode Rx experi-ences a collisioncaused by Tx1 andTx2 transmittingat the same time
{bonettor, bui, rossi, zorzi}@dei.unipd.it WNS3 2012 March 23, 2012 3 / 21
MAC protocols for WSNs
MAC protocols for WSNs
Wireless nodes’ transceiver is the major responsible for energyconsumption.
MAC protocols for WSNs must be designed for an efficient use of thetransceiver in order to mitigate the three major causes of energy wastage:
Idle listening
Collisions
OverhearingTx
Rx
I
radio waves
I receives an unde-sired transmissionfor Rx
{bonettor, bui, rossi, zorzi}@dei.unipd.it WNS3 2012 March 23, 2012 3 / 21
Preamble sampling based protocols
Preamble sampling based protocols
CSMA-CA based;
No synchronization required;
Can support mobility;
Scalable.
DutyCycling
Channelsensing
Preamble
BackoffTx data
Tx request
Channel busy
backoff expired
Backoff numberexceeded
Channel idle
End preamble
End tx
{bonettor, bui, rossi, zorzi}@dei.unipd.it WNS3 2012 March 23, 2012 4 / 21
Preamble sampling based protocols
BMAC vs XMAC
One of the first preamble sampling based protocols is BMAC [9].
Duty Cycling
Receiving preamble Rx Data
sleeping
active
Preamble Data
Tx Data
Rx side
Tx side
XMAC [2] breaks the long BMAC preamble into a sequence of shortstrobed preambles. Sensor nodes equipped with XMAC save energy andtime:
Strobed preambles
Data
Tx data
Rx Side
Tx Side
sleeping
active
Ack
{bonettor, bui, rossi, zorzi}@dei.unipd.it WNS3 2012 March 23, 2012 5 / 21
McMAC: basic idea
McMAC
McMAC is a novel protocol combining the flexibility of preamble samplingbased protocols with the efficiency of the strobed preamble technique andthe exploitation of the whole IEEE 802.15.4 spectrum.
Basic idea:
Assign to each node i a “base channel” chi , to do that:
Let I be the set of the nodes’ identifiers;
Let {11, 12, · · · , 26} be the set of IEEE 802.15.4 channels’ identifiers.
Then define the hash function h as:
h : I → {11, 12, · · · , 26}
and let:chi = h(i) ∀i ∈ I
{bonettor, bui, rossi, zorzi}@dei.unipd.it WNS3 2012 March 23, 2012 6 / 21
McMAC: basic idea
When node i wants to send a packet to node j , according to the mappinggiven by h, it has to perform the following actions:
Set the transceiver to channel h(j) = chj ;
Evaluate the state of the channel;
Start sending the preambles or abort transmission.
TxRequest for j
Select chj = h(j)
CSMA-CAmodule start transmissionreturn FAILURE
IDLEBUSY
{bonettor, bui, rossi, zorzi}@dei.unipd.it WNS3 2012 March 23, 2012 7 / 21
Transmission algorithm
Transmitting a packet
Starting transmission
Send Strobed preamble
Set TRX to RX mode
Ack received
Set TRX to TX mode
TX DATA
Ack required
Set TRX to RX mode
Ack received Return SUCCESS to upper layer
inter preambletime elapsed
preamble sendingtime elapsed
FAILURE
Ack time elapsedFAILURE
Yes
Yes
YesNoYes
No
No
Yes
No
Yes
No
No
{bonettor, bui, rossi, zorzi}@dei.unipd.it WNS3 2012 March 23, 2012 8 / 21
Synchronization
Synchronization
To reduce the number of preambles sent, a zero overhead synchronizationheuristic has been implemented.
Sleeping
Awake
Node i
Node j
Drift D Cycle period Cp
Tx Req
x
Then:
x = D + SleepingTimeLeft − CyclePeriod if i was sleeping when itreceived the transmission request;
x = D + AwakeTimeLeft − CyclePeriod if i was awake when itreceived the transmission request.
{bonettor, bui, rossi, zorzi}@dei.unipd.it WNS3 2012 March 23, 2012 9 / 21
Buffering
Buffering
A packets queue has also been implemented in order to handle hightransmission rates.
End Tx To node n
Buffer empty
Otherpackets for n
Take the firstpacket in queue,regardless of its
destination
Send the firstpacket in queue for
n immediately
Start a newtransmission
Start duty cycling
No
No Yes
Yes
{bonettor, bui, rossi, zorzi}@dei.unipd.it WNS3 2012 March 23, 2012 10 / 21
NS-3 implementation
Spectrum
Spectrum ([1]) is an NS-3 framework aimed at dynamically representingthe electromagnetic spectrum.
Frequency bands are represented as vectors;
Each cell of the vector represents a sub-band;
The number of cells forming the vector determines the precision ofthe representation;
The power level in each sub-band is assumed to be constant and isrepresented using a double;
The precision of the representation is user defined.
{bonettor, bui, rossi, zorzi}@dei.unipd.it WNS3 2012 March 23, 2012 11 / 21
NS-3 implementation
Transmission medium representation
The IEEE 802.15.4 spectrum has been represented using the Spectrumframework with a granularity of 1 MHz.
The PSD of the transmitted signals is shaped according to the standardIEEE 802.15.4 PSD mask:
IEEE 802.15.4PSD mask
logarithmic scale
[WHz
]
MHz
txPSDtxPSD · 0.5
txPSD · 0.1
txPSD · 0.0.1
Central frequency
Current channel1MHz resolution
{bonettor, bui, rossi, zorzi}@dei.unipd.it WNS3 2012 March 23, 2012 12 / 21
NS-3 implementation
McMAC implementation
McMAC is based on the IEEE 802.15.4 physical layer implementationprovided in [8].
{bonettor, bui, rossi, zorzi}@dei.unipd.it WNS3 2012 March 23, 2012 13 / 21
NS-3 implementation
To represent simultaneous transmissions over different channels:
Each node stores a private SpectrumValue object representing thespectrum in its sensing range.Each time a transmission is going on, for each node in the network,the local spectrum representation is updated according to the receivedpower.
Start Tx with Ptx on channel chtx
for each node n onchannel chi : 11 ≤
chi ≤ 26
compute:Prx = f (Ptx)
chi = chtxTrigger reception
to n
Update localspectrum
representation withinterference Prx
These steps areperformed by theSingleModelSpectrumChannel
Update per-formed callingLrWpanPhy:AddNoisePsd(
Ptr<SpectrumValue>)
YesNo
{bonettor, bui, rossi, zorzi}@dei.unipd.it WNS3 2012 March 23, 2012 14 / 21
Results
Simulations set up
To obtain statistically valid results, several simulations have been run.
Number of nodes forming the network: N = 64.The tunable parameters were:
The number of nodes allowed to transmit packets:
τi =
{2i 0 ≤ i ≤ 4
4 · i 5 ≤ i ≤ 16
The number of available channels: {1, 8, 16};The arrival time of transmission requests: Poisson process with rateλ ∈ {1, 1
2 ,14}.
It’s worth to point out that McMAC coincides to XMAC when restrictingthe number of available channels to 1.
{bonettor, bui, rossi, zorzi}@dei.unipd.it WNS3 2012 March 23, 2012 15 / 21
Results
Results
Percentage of successfully sent packets for XMAC (left) and McMAC with 16 channels (right).
20 24 28 32 36 40 44 48 52 56 60 64 68 72 76 80 84 88 92 96
100
4 8 12 16 20 24 28 32 36 40 44 48 52 56 60 64
Se
nt
Pa
cke
ts/T
x r
eq
ue
sts
[%
]
Number of transmitters
McMacsynchronized McMacMcMac with memory
20 24 28 32 36 40 44 48 52 56 60 64 68 72 76 80 84 88 92 96
100
4 8 12 16 20 24 28 32 36 40 44 48 52 56 60 64S
en
t P
acke
ts/T
x r
eq
ue
sts
[%
]Number of transmitters
McMacsynchronized McMacMcMac with memory
{bonettor, bui, rossi, zorzi}@dei.unipd.it WNS3 2012 March 23, 2012 16 / 21
Results
Results
Fraction of time during which the transceiver was active for XMAC (left) and McMAC with16 channels (right).
0
0.2
0.4
0.6
0.8
1
4 8 12 16 20 24 28 32 36 40 44 48 52 56 60 64
Active
tim
e/t
ota
l o
pe
ratio
na
l tim
e
Number of transmitters
McMacsynchronized McMacMcMac with memory
0
0.2
0.4
0.6
0.8
1
4 8 12 16 20 24 28 32 36 40 44 48 52 56 60 64
Active
tim
e/t
ota
l o
pe
ratio
na
l tim
e
Number of transmitters
McMacsynchronized McMacMcMac with memory
{bonettor, bui, rossi, zorzi}@dei.unipd.it WNS3 2012 March 23, 2012 17 / 21
Results
Results
Average number of preambles sent per packet for XMAC (left) and McMAC with 16 channels(right).
200
400
600
800
1000
1200
1400
1600
4 8 12 16 20 24 28 32 36 40 44 48 52 56 60 64
Se
nt
pre
am
ble
s/S
en
t p
acke
ts
Number of transmitters
McMacsynchronized McMacMcMac with memory
200
400
600
800
1000
1200
1400
1600
4 8 12 16 20 24 28 32 36 40 44 48 52 56 60 64
Se
nt
pre
am
ble
s/S
en
t p
acke
ts
Number of transmitters
McMacsynchronized McMacMcMac with memory
{bonettor, bui, rossi, zorzi}@dei.unipd.it WNS3 2012 March 23, 2012 18 / 21
Conclusions and future work
The presented results show that:
McMAC exhibits better performance in terms of throughput withrespect to the widely accepted protocol XMAC;
McMAC exhibits good energy saving skills;
The number of transmitted preambles is quite high when using 16channels .
Results motivate further work to:
Reduce the number of preambles sent;
Add a lightweight and efficient neighbor discovery procedure;
Provide a full integration of McMAC in ns-3;
Implement McMAC in a real testbed.
{bonettor, bui, rossi, zorzi}@dei.unipd.it WNS3 2012 March 23, 2012 19 / 21
Conclusions and future work
Questions?
QUESTIONS?
{bonettor, bui, rossi, zorzi}@dei.unipd.it WNS3 2012 March 23, 2012 20 / 21
Conclusions and future work
[1] N. Baldo and M. Miozzo.Spectrum-aware channel and PHY layer modeling for ns-3.In Proceedings of ICST NSTools 2009, Pisa, Italy, October 2009.
[2] M. Buettner, G. V. Yee, E. Anderson, and R. Han.X-MAC: a short preamble MAC protocol for duty-cycled wireless sensor networks.In Proceedings of the 4th international conference on Embedded networked sensorsystems, SenSys ’06, pages 307–320, New York, NY, USA, 2006. ACM.
[3] F. Chen and F. Dressler.A simulation model of IEEE 802.15.4 in Omnet.In In 6. GI/ITG KuVS Fachgesprach Drahtlose Sensornetze, Poster Session, pages 35–38,2007.
[4] L. Cheng, X. Zhang, and A. Bourgeois.IEEE 802.15.4 simulation module in network simulator gtnets.In IEEE 63rd, Vehicular Technology Conference, 2006. VTC 2006-Spring., volume 3,pages 1308 –1312, May 2006.
[5] P. Jurcık and A. Koubaa.The IEEE 802.15.4 OPNET Simulation Model: Reference Guide v2.0.Technical Report, May 2007.
[6] ns-2 Official Website.http://nsnam.isi.edu/nsnam/index.php/User Information.
[7] ns-3 Official Website.http://www.nsnam.org.
[8] ns-3 lr-wpan.http://www.nsnam.org/wiki/index.php/Lr-wpan.
[9] J. Polastre, J. Hill, and D. Culler.Versatile low power media access for wireless sensor networks.In Proceedings of the 2nd international conference on Embedded networked sensorsystems, SenSys ’04, pages 95–107, New York, NY, USA, 2004. ACM.
[10] P. L’Ecuyer, R. Simard, E. Jack Chen, and W. David Kelton.An object-oriented random-number package with many long streams and substreams.Oper. Res., 50:1073–1075, November 2002.
{bonettor, bui, rossi, zorzi}@dei.unipd.it WNS3 2012 March 23, 2012 21 / 21