Radio and Medium Access Control

Document Sample
Radio and Medium Access Control Powered By Docstoc
					Radio and Medium Access
         Control




                          1
          Learning 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
                                              2
               Prerequisites
• Module 2
• Basic concepts of wireless communications
• Basic concepts of computer networks




                                              3
Radio Properties




                   4
            Some Basic Concepts
•   RSSI
•   dbm
•   Noise floor: see wikipedia
•   CCA thresholding algorithms
•   Duty cycle
•   LPL


                                  5
                 Signal Transmission




                                                                       6
Ref: Fig. 2.9 of “Wireless Communications and Networks” by William Stallings
  Packet Reception and Transmission




• Ref: [Hardware_1] Figure 5
                                      7
                         Signal
• An electromagnetic signal
  – A function of time
  – Also a function of frequency
     • The signal consists of components of different
       frequencies




                                                        8
802.15.4 Physical Layer




                          9
                                   dB
• 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
                                                        10
• http://www.sss-mag.com/db.html
                                  dBm
•    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              11
  Received 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)




                                                    12
      LQI (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




                                              13
                Noise Floor
• The measure of the signal created from the
  sum of all the noise sources and unwanted
  signals




                                               14
        Signal 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

                                                        15
Radio Spectrum Frequency Allocation
• http://www.ntia.doc.gov/osmhome/allochrt.pdf




                                             16
             Radio 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
                      ref: [radio_1]
           Radio Signal Property
• Anisotropic Signal Strength: Different path
  losses in different directions




        Figure 1: Signal Strength over Time in Four Directions



                          [Radio_1] Figure 1                     18
           Radio Signal Property
• Anisotropic Packet Loss Ratio: Packet Reception
  Ratio (PRR) varies in different directions




                     [Radio_1]: Figure 3            19
         Radio Signal Property
• Anisotropic Radio Range: The communication
  range of a mote is not uniform




                  [Radio_1]: Figure 4      20
Medium Access Control (MAC)




                              21
                  Introduction
• 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

                                                      22
       MAC 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
                                                                     23
                      Ref: [MAC_2] Section I, II
Two 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-
  final.pdf
                        [MAC_3]: Section 4                     24
Two 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.

                                                     25
Slotted Protocol Example: 802.15.4
• Each node beacons on its own schedule
• Other nodes synchronize with the received
  Beacons
                CSMA Contention Period
                   Beacon




                                                            Beacon
                            Data


                                   Data
                            Ack
                                                    sleep
                 Superframe Duration

                                   Beacon Frame Duration




                                                                     26
IEEE 802.15.4 Superframe




                           27
                                      Using 802.15.4




                                                                                                           Coordinator
     wake for beacon                       send                     packet                    SP
                                send
beacon period     TX                       done                     received
                                                                                              15.4
    start radio                                                                  stop radio
  send beacon                                                          superframe complete
                  Beacon




                                    Data




                                                       Data

                                                              Ack
                                                                                              RF Channel



        If yes,            beacon          TX first                 Ack




                                                                                                           Neighbors
      wake up              RX              packet                   received                  15.4

are messages                Update                      TX          send done          Stop
     pending?               schedule                  done          reliability set   radio

                                       packet                                                 SP
                                        RX                                                                 28
                  Main MAC Protocols
                             Wireless medium access


               Centralized
                                                       Distributed


      Schedule-           Contention-
       based                based             Schedule-           Contention-
                                               based                based
   Fixed      Demand
assignment   assignment                    Fixed      Demand
                                        assignment   assignment


                                                                         29
           Scheduled Protocols
• TDMA divides the channel into N time slots




                   [MAC_2]: Figure 1           30
          Contention-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
                              [MAC_2]: Section IV         31
                     CSMA
• Listening before transmitting
• Listening (Carrier Sense)
  – To detect if the medium is busy
• Hidden Terminal Problem




                     [MAC_2]: Section IV   32
        Hidden Terminal Problem
• Node A and C cannot
  hear each other
• Transmission by node A
  and C can collide at
  node B                                  A   B   C


• On collision, both
  transmissions are lost
• Node A and C are
  hidden from each other

                    [MAC_2]: Section IV               33
                  CSMA-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

                     [MAC_2]: Section IV            34
         Centralized 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
                                                             35
Schedule- 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!

                                                             36
Schedule- 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



                                                      37
              Possible 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

                                                            38
               Possible 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
                                                              39
  Effective Throughput CSMA vs. TDMA

                                IDEAL


                 CSMA
                                                 Sensitive to
Channel          Do not use               TDMA   Time synch.
Utilization      any topology
                 or time
                                                 errors,

(The fraction    synch. Info.
                                                 Topology
                                                 changes,
of time that     Thus, more
                                                 Slot
the channel is
                 robust to
                                                 assignment
                 time synch.
                                                 errors.
transmitting     errors and
                 changes.
data)


                        # of Contenders                  40
             MAC 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)




                     [MAC_2]: Section II.B          41
                    S-MAC




• During sleep, the node turns off its radio, and
  sets a timer to awake itself

                [S-MAC]: Figure 2
                                                    42
                     S-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]
                                                       43
                   S-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]
                                              44
S-MAC – Overhearing Avoidance
• To avoid overhearing: let interfering
  nodes go to sleep after they hear an RTS
  or CTS packet




                   [S-MAC]
                                             45
     S-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 neighbor’s
  transmissions (RTS and CTS) wake up a short
  period of time at the end of transmission




                  [S-MAC]
                                            46
S-MAC with Adaptive Listening




     Ref: Figure 1 of [DW-MAC]
                                 47
                           B-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]   48
                     B-MAC
• Does not solve hidden terminal problem
• Duty cycles the radio through periodic channel
  sampling – Low Power Listening (LPL)




                                                   49
 B-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 => channel
                                        busy, take a random backoff
                                        - Noise floor updated when
 A packet arrives between 22 and        channel is known to be clear
 54ms.                                  e.g. just after packet
 The middle graph shows the output
 of a thresholding CCA algorithm.
                                        transmission
 ( 1: channel clear, 0: channel busy)
                                                                     50
• Ref: Section 1, 3 of ref. [MAC_1]
A Trace of Power Consumption




          [MAC_1]: Figure 3    51
B-MAC Low Power Listening
                  Check      Carrier sense
                 Interval
 Receiver                                       Receive data

 Sender                         Long Preamble       Data Tx



      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 > Check-Interval
                                                               52
Goal: minimize idle listening
             Low 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.
                                                               53
                          X-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]                54
X-MAC and B-MAC


                  • Ref:
                    Section 1,
                    3 of ref.
                    [MAC_4]




                           55
         802.15.4 Frame Format




• Page 36 of CC2420 Data Sheet
                                 56
 TinyOS 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();


                        http://www.mail-
                      archive.com/tinyos-
 TinyOS 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




                 https://www.millennium.berkeley.e
                   du/pipermail/tinyos-help/2008-
                     Lab
• 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


                                              59
                  Assignment
• 1. In many research papers about wireless sensor
  networks, spherical radio range is assumed. Is this
  true or not? Please briefly 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?


                                                    60