Media access control in wireless sensor networks must be small, efficient, and energy conscious. This presentation presented the findings of a paper from Berkley, "Versatile Low Power Media Access for Wireless Sensor Networks," where the authors present just such a MAC implementation called, BMAC. The presentation was delivered to a graduate students at Johns Hopkins University enrolled in Embedded Systems and Wireless Sensor Networks.
Versatile Low Power Media Access for Wireless Sensor Networks
1. Versatile Low Power Media Access
for Wireless Sensor Networks
Presented by: Michael Rushanan
Disclaimer: All figures and tables were shameless taken from
Joseph Polastre et al.’s work, “Versatile Low Power Media
Access for Wireless Sensor Networks. They are not my own.
2. Background
• Media access control – part of layer 2.
Provides addressing and channel access
control mechanisms such that multiple
devices can communicate on a shared
medium (e.g., Ethernet).
• Carrier sense media access – transmitter
uses feedback from receiver to detect
the presence of a carrier wave prior to
transmission.
• Duty cycle - % time spent in active state
as a fraction of total time. D = pulse
duration/period.
3. Discussion
• Why is the duty cycle important in wireless sensor networks?
• In the context of this paper, assuming we have all read it,
what is meant by versatility and low power?
4. Versatile, Low Power?
• Wireless sensor network deployments need to reliably report
data while consuming the least amount of power possible.
– If you consume too much power, than the data might never make it in
a multihop network. Vital sensing of the physical environment might
never happen.
5. Versatile, Low Power?
• Mainwaring et al. show that MAC mechanisms must support
duty cycles of 1% while efficiently transferring workloads and
adapting to changing network conditions.
– These are ad-hoc networks, where nodes come and go. Conditions are
going to physically change (e.g., Rain) thus affecting the topology of
the network. Network links are unpredictable.
6. Versatility, Low Power?
• Volatility in link quality in wireless sensor networks is
important. “Gray areas” represent nodes that exceed 90%
reception with neighboring nodes of <50% reception.
• Effectively estimating link quality is essential.
• Snooping on traffic over broadcast medium is crucial for
determining cycles, unreachable routes, collision avoidance,
and providing link quality information. However, this is at the
cost of power.
8. B-MAC
• To meet the demands of versatility and power, Polastre et al.
translate these high-level goals for B-MAC, their media access
protocol:
– Low Power Operation
– Effective Collision Avoidance
– Simple Implementation, Small Code/RAM Size
– Efficient Channel Utilization at varying Data Rates
– Reconfigurable By Network Protocols
– Tolerant to Changing RF/Networking Conditions
– Scalable to Large Number of Nodes
9. Discussion
• Can anyone list, at the item level, some of the related work
mentioned in the paper?
10. Previous Work
• Most MAC protocols for wireless sensor networks have been
based on conventional wireless protocols.
• This is unfortunate, however, as Intanagonwiwat et al. show
that 802.11 is inappropriate for low duty cycle sensor network
data deliver because it consumes as much energy when the
protocol is idle as it does when receiving data.
11. Previous Work
• DARPA Packet Radio Network (PRNET)
– One of the first ad-hoc multihop wireless networks.
– Packet-switched, store-and-forward radio communications to provide
reliable computer communications to
mobile hosts and terminals.
– PRNET had two media access protocols:
• Slotted Aloha: Pure ALOHA allowed each client
to send its data and collisions were handled with an
ack/retransmit. Slotted introduced discrete time- s
slots. Station could only send at the beginning.
• Carrier Sense Multiple Access.
– Much of MAC Functionality
(e.g., random delays, forwarding delays,
link quality estimation, and low duty cycle)
were first executed in PRNET.
12. Previous Work
• MAC Protocol Based On Workload
– Woo and Culler show that data, sent periodically in short packets in a
multihop network, achieve fairness and energy efficient transmission
via adaptive rate control protocol optimized for n-to-1 data reporting.
– Current MAC protocols are not suitable due to their inability to
support low-duty cycles.
• Preamble Sampling
– Hill and Culler present a low power technique by way of reduce idle
listening costs. The technique involves radio sampling for energy every
4s and then going back to sleep. This quick sample reduced duty cycle
of the radio to below 1%.
13. Previous Work
• S-MAC
– RTS/CTS (Ready-to-send, clear-to-send) scheme for wireless sensor
networks.
– Periodically sleeps, wakes up, listens to the channel, and then returns
to sleep.
– Active period static at 115ms, sleep period variable.
– The length of the sleep period dictates the duty cycle.
– At the beginning of each active period, nodes exchange sync info.
– Post SYNC, nodes can transfer data for remainder of active period
using RTS-CTS.
– Fragmentation uses the RTS-CTS scheme to reserve the channel, then
transmit packets in a burst.
14. Previous Work
• T-MAC
– Improves S-MAC’s energy usage by using a very short listening window
at the beginning of each active period.
– After SYNC, the short window allows send/receive RTS and CTS
packets. If no activity, the node simply returns to sleep.
– This adaptive duty cycle saves power at the cost of reduced
throughput and additional latency.
15. Discussion
• What is a major difference between S-MAC and B-MAC
mentioned in the paper?
16. B-MAC Implementation
• CSMA Protocol for low power wireless sensor networks.
• Flexible protocol for: target tracking, localization, triggered
event reporting, and multihop routing.
• Classical MAC protocols perform channel access arbitration
and tuned for a specific workload, such as S-MAC. B-MAC
contains a small core of media access functionality – clear
channel assessment (CCA).
• B-MAC is only a link protocol with network services (e.g.,
organization, synchronization, and routing built above it).
17. B-MAC Implementation
• Clear Channel Assessment and packet backoffs are used for
channel arbitration, link layer acknowledgements for
reliability, and low power listening (LPL) for low power
communication.
– For effective collision avoidance, determine if the channel is clear with
CCA.
– Ambient noise dependent upon the physical environment. Thus, signal
strength is sampled when the channel is clear (a noise floor is
computed).
18. B-MAC Implementation
• Handling Ambient Noise.
– Times when channel is clear: Right after sending a packet.
– Samples are entered into a queue. Median of queue is computed and
added to an exponentially weighted moving average with some decay
(glossing over details on purpose). This is used as a low pass filter.
• B-MAC searches for outliers in the received signal such that
the channel energy is significantly below the noise floor. If an
outlier exists, B-MAC declares the channel is clear since a valid
packet could never have an outlier significantly below the
noise floor.
20. Discussion
• Can you turnoff CCA?
• How are channel backoff times defined?
• What about channel congestion backoffs?
21. B-MAC Implementation
• B-MAC provides an optional link-layer ACK support.
– If ACK enabled, B-MAC immediately transfers an ACK code after
receiving a unicast packet.
– If transmitting node receives ACK, ACK bit is set in the sender’s
transmission message buffer.
• B-MAC duty cycles the radio through periodic channel
sampling called low power listening (LPL).
– Similar to sampling in Aloha.
– Each time a node wakes up, it turns on radio and checks for activity. If
activity: stays awake for time to receive. After reception, back to sleep.
If no activity: forced back to sleep based on timeout.
22. B-MAC Implementation
• Reliably receive data,
preamble length is matched
to the interval that the
channel is checked for activity.
• If channel checked every
100ms, then preamble must
be 100ms long for node to
wake up, detect activity,
receive preamble, and then
receive message.
24. B-MAC Implementation
• Modeling Lifetime
– I admit it, I am lazy. Rather than regurgitate formulas here… there is
only one important one:
NRG_Consumed = NRG(rx) + NRG(tx) + NRG(listen/idle) + NRG(sleep)
26. Discussion
• What did you think of the experimental method section?
– Was it necessary?
• What were some of the variables of the experimental setup?
33. Discussion
• What were your thoughts of this paper?
• Prior to this paper, had anyone considered the duty-cycle and
how important the physical environment is with respect to
adhoc networks of WSNs?
• Security Question: From an attackers perspective, how might
you thwart a vital WSN?
Editor's Notes
LLC logical link control. Interface between LLC and physical layer.
Preamble: signal used in network communication to synchronize transmission timing between two more more systems. Synonymous with introduction. Define a specific series of transmission criteria that says, hey I’m going to transmit.
Authors claim: Although S-MAC achieves low power operation, it does not meet our goals of simple implementation, scalability, and tolerance to changing network conditions. As size of network increases, S-MAC must maintain an increasing number of schedules of surrounding nodes or incur additional overhead through repeated rounds of resync.
Suffers from the same complexity and scaling problems of S-MAC.
S-MAC is a not only a link protocol but also a network and organization protocol. It does channel arbitration with RTS-CTS, hidden terminal avoidance, synchronization with its neighbors, and message fragmentation for efficiently transferring bulk data.Applications must rely on S-MAC policy to adjust nodes and network changes.
Berkley Media Access Control. Neither provides multi-packet mechanisms like hidden terminal support or message fragmentation nor enforces low power policy, it provides interfaces for tuning. Make local policy decisions to optimize power consumption, latency, throughput, fairness or reliability.
A filter that passes low-frequency signals and attenuates (reduces the amplitude of) signals with freqencies higher than the cuttoff frequency.
A filter that passes low-frequency signals and attenuates (reduces the amplitude of) signals with freqencies higher than the cuttoff frequency.Traditional threshold model takes one sample and compares to the noise floor. This leads to false negatives that lower the effective channel bandwidth.
Top one, packet. Middle, busy when low. Outlier detection algorithm.
Yes. MacControl interface. Can do this above B-MAC implementation. If CCA is enabled, B-MAC uses an intial channel backoff when sending a packet. That is, B-MAC does not set the backoff time, rather it uses an event to define the backoff. If none sent, random values will be used. After initial backoff, the outlier algorithm is ran to see if the channel is clear. If not clear, a cogestionbackoff event can be specified. Else Random.
Use noise floor estimation not only for finding a clear channel on transmission but also for determining if the channel is active during LPL.
You’re basically synchronizing all nodes on when to check for activity and thus reliably see activity when there is indeed activity.Idle listening is when sampling but no activity.Check interval can be adjusted per application and is supported via another B-MAC interface whereas S-MAC is not.
These devices have limited ROM/RAM code size support. Plus you’re running TinyOS on there already. So to have B-MAC with additional protocol support, you’re going to use more space. However, this space is smaller than that of S-MAC.
For the left one: Activity Check Interval and Node Size can be adjusted to increase node lifetime.For the right one both network density and LPL check interval affect duty cycle.
The authors wanted to illustrate the effectiveness of B-MAC compared to other MACs. Mostly S-MAC. I didn’t feel much like regurgitating their context – so instead, lets just have a look at the pictorial data representations otherwise known as graphs.
First table – different protocol overheads. B-MAC smaller in bytes of stuff sent. However, this isn’t fair.
Duty cycle isn’t considered here at all. Throughput is basically a function of nodes contending for the channel. Because B-MAC has a smaller overhead, higher throughput is achievable than S-MAC.
10-node network. Power consumption of maintaining a given throughput (average # of bytes sent in 10sec). As throughput increases overhead of S-MAC’s SYNC causes power consumption to increase linearly.
Small period data packets are most common… but can arise where large transfers are needed. S-MAC supports large fragmentation using RTS/CTS for channel reservation. Transmit from A and B to D and E through C routing.Interested in energy consumption per byte at C.
Latency is directly affected by the overhead of the protocol.
As latency increases, energy consumed decreases.
Introduce noise, a bad node to generate congestion.