routing by liuqingyan

VIEWS: 10 PAGES: 51

									  CMPE 259
Sensor Networks

 Katia Obraczka

   Winter 2005

     Routing




                  1-1
Announcements




                1-2
Transport protocols: summary




                               1-3
Pump Slow Fetch Quickly PSFQ
          For sink-to-
             source
             communication
             (e.g. network
             reprogramming)

          Reliability via
             retransmissions

          Sequence-driven
             loss detection
C.Y. Wan, A.T. Campbell, and L. Krishnamurthy. PSFQ: A Reliable Transport Protocol for Wireless Sensor Networks. 1-4
WSNA'02, September 28, 2002, Atlanta, Georgia, USA.
 RMST
       End-to-end or hop-by-hop repair (the latter is
        generally better)
       Suggests that repair could be done at either MAC
        layer (ARQ retransmissions) or Transport Layer
        (requests based on fragment numbers etc.)
       Timer-driven loss detection and local data caches
       Fits with the Directed Diffusion API




F. Stann and J. Heidemann. RMST: Reliable Data Transport in Sensor Networks. IEEE SNPA'03.   1-5
   ESRT
       Aim for overall quality of service rather than node-to-node
          reliability




Sankarasubramaniam, Y., Akan, O.B., and Akyildiz, I.F., "ESRT: Event-to-Sink Reliable Transport in Wireless Sensor 1-6
Networks ", In Proc. ACM MobiHoc`03
CODA
       Receiver based congestion detection
       Open loop hop-by-hop backpressure
       Closed-Loop multi-source regulation




Sankarasubramaniam, Y., Akan, O.B., and Akyildiz, I.F., "ESRT: Event-to-Sink Reliable Transport in Wireless Sensor 1-7
Networks ", In Proc. ACM MobiHoc`03
Summarizing Transport Issues
     Because of harsh conditions and severe constraints, it
      may be better to implement reliability in a hop-by-hop
      rather than end-to-end manner at either the MAC or
      transport layer

     For energy efficiency, it is best to avoid congestion
      entirely, or have packet losses occur close to the
      source. Back pressure is a useful technique.

     Where possible, scheduled solutions are preferable.

s

                                                               1-8
Routing




          1-9
                 Issues/challenges

 Difficult to pay special attention to any
  individual node:
      Collecting information within the specified region.


 Sensors may be inaccessible:
   Embedded in physical structures.
   Thrown into inhospitable terrain.




                                                             1-10
          More issues/challenges…

 Topological issues:
     Arbitrarily large scale.
     No fixed infrastructure.
     Frequent topology changes
       • Battery exhaustion.
       • Accidents.
       • New nodes are added.




                                    1-11
          More issues/challenges…

 User and environmental demands also
  contribute to dynamics:
     Nodes move.
     Objects move.
 Data-centric and application-centric view:
   Location.
   Time.
   Type of sensor.
   Range of values…




                                               1-12
         More issues/challenges…

 Not node-to-node packet switching, but node-
  to-node data propagation.
 High level tasks are needed:
     At what speed and in what direction was that
      elephant traveling?
     Is it the time to order more inventory?




                                                     1-13
                   Challenges

 Energy-limited nodes
 Computation
    Aggregate data
    Suppress redundant routing information

 Communication
    Bandwidth-limited
    Energy-intensive




        Goal: Minimize energy dissipation

                                              1-14
                 Challenges
 Scalability: ad-hoc deployment in large scale
    Fully distributed w/o global knowledge.
    Large numbers of sources and sinks.

 Robustness: unexpected sensor node failures
 Dynamics: no a-priori knowledge
   Sink mobility.
   Target mobility.




                                                  1-15
     Directed Diffusion

A Scalable and Robust Communication
    Paradigm for Sensor Networks



         C. Intanagonwiwat
             R. Govindan
              D. Estrin



                                      1-16
 Application Example: Remote
         Surveillance
 “Give me periodic reports about animal
  location in region A every t seconds”.
 Tell me in what direction that vehicle in
  region Y is moving?




                                              1-17
                   Basic Idea

 In-network data processing (e.g., aggregation,
  caching).
 Distributed algorithms using localized
  interactions.
 Application-aware communication primitives.
   Expressed   in terms of named data.




                                                   1-18
     Elements of Directed Diffusion

   Naming
       Data is named using attribute-value pairs.
   Interests
       A node requests data by sending interests for named
        data .
   Gradients
       Gradients is set up within the network designed to
        “draw” events, i.e. data matching the interest.
   Reinforcement
       Sink reinforces particular neighbors to draw higher
        quality ( higher data rate) events.


                                                              1-19
                            Naming
 Content based naming.
    Tasks are named by a list of attribute – value pairs.
    Task description specifies an interest for data matching
     the attributes.
    Animal tracking:

   Request                            Reply

  Interest ( Task ) Description       Node data
  Type = four-legged animal           Type =four-legged animal
  Interval = 20 ms                    Instance = elephant
  Duration = 1 minute                 Location = [125, 220]
  Location = [-100, -100; 200, 400]   Confidence = 0.85
                                      Time = 02:10:35




                                                                 1-20
                        Interest
 The sink    periodically broadcasts interest
  messages to each of its neighbors.
 Every node maintains an interest cache.
      Each item corresponds to a distinct interest.
      No information about the sink.
      Interest aggregation : identical type, completely
       overlap rectangle attributes.
 Each entry in the cache has several fields
    Timestamp: last received matching interest.
    Several gradients: data rate, duration, direction.



                                                           1-21
                          Setting Up Gradient

                 Source


Neighbor’s choices :
1. Flooding
2. Geographic routing
3. Cache data to direct interests
                                                            Sink


                                    Interest = Interrogation
                                    Gradient = Who is interested
                                    (data rate , duration, direction)
                                                                        1-22
              Data Propagation
 Sensor node computes the highest
  requested event rate among all its
  outgoing gradients.
 When a node receives data:
   Find   a matching interest entry in its cache
     • Examine the gradient list, send out data by rate.
   Cache  keeps track of recent seen data
    items (loop prevention).
   Data message is unicast individually to the
    relevant neighbors.

                                                           1-23
                   Reinforcing the Best Path


                              Source



The neighbor reinforces a path:
1. At least one neighbor
2. Choose the one from whom
it first received the latest event (low delay)                   Sink
3. Choose all neighbors from which
new events were recently received


       Low rate event                    Reinforcement = Increased interest
                                                                          1-24
       Local Behavior Choices

 For propagating interests
   In the example, flood
   More sophisticated behaviors possible: e.g.
    based on cached information, GPS


 For setting up gradients
   data-rate gradients are set up towards
    neighbors who send an interest.
   Others possible: probabilistic gradients,
    energy gradients, etc.

                                                  1-25
            Local Behavior Choices

 For data transmission
    Multi-path delivery with selective quality along
     different paths
      Probabilistic forwarding
      Single-path delivery, etc.
 For reinforcement
    Reinforce paths based on observed delays
    Losses, variances etc.




                                                        1-26
 Initial simulation study of
 diffusion
 Key metric
    Average Dissipated Energy per event delivered
      • indicates energy efficiency and network lifetime

 Compare diffusion to
    Flooding
    Centrally computed tree (omniscient multicast)




                                                           1-27
     Diffusion Simulation Details
 Simulator:   ns-2
 Network Size: 50-250 Nodes
 Transmission Range: 40m
 Constant Density: 1.95x10-3 nodes/m2 (9.8 nodes in
  radius)
 MAC: Modified Contention-based MAC
 Energy Model: Mimic a realistic sensor radio [Pottie
  2000]
    660 mW in transmission, 395 mW in reception, and
     35 mw in idle




                                                         1-28
            Diffusion Simulation
 Surveillance application
    5 sources are randomly selected within a 70m x 70m
     corner in the field
    5 sinks are randomly selected across the field
    High data rate is 2 events/sec
    Low data rate is 0.02 events/sec
    Event size: 64 bytes
    Interest size: 36 bytes
    All sources send the same location estimate for
     base experiments




                                                          1-29
                    Average Dissipated Energy

                                    0.018
                                    0.016                      Flooding
     (Joules/Node/Received Event)
      Average Dissipated Energy




                                    0.014
                                    0.012
                                     0.01
                                    0.008                    Omniscient Multicast
                                    0.006
                                    0.004      Diffusion

                                    0.002
                                       0
                                           0   50    100      150   200    250      300
                                                           Network Size

Diffusion can outperform flooding and even omniscient multicast.
             (suppress duplicate location estimates)        1-30
             Conclusions

 Can leverage data processing/aggregation
  inside the network.
 Achieve desired global behavior through
  localized interactions.
 Empirically adapt to observed environment.




                                               1-31
Energy-efficient multipath
routing




                             1-32
Energy-efficient multipath
routing
 Based on directed diffusion.
 In directed diffusion:
    Sink broadcasts interest.
    Sensors periodically (low rate) sends back data
     (e.g., event detection reports).
    Sink sends reinforcement on preferred path.
    Reverse path is established.
    Upon missing reports, sink re-broadcasts
     interest and sink reinforces.


                                                       1-33
Problem?
 Periodic flooding of interests and events in
  the presence of failures.
 Solution?




                                                 1-34
Solution: multiple paths
 Multipath routing:
   Load balancing.
   Reliable delivery (by sending duplicates).
   Robustness.




                                                 1-35
Observations
 Primary path: “best” path.
 Data sent at lower rate on alternate paths.
 Upon failure on primary path,
  reinforcement on alternate path.
 If all altremate paths fail, flooding for
  path re-establishment.
 Overhead: alternate path maintenance.
 Resilience measured as how often path re-
  establishment is needed.

                                                1-36
Approach
 Disjoint versus “braided” paths.
 How to build multiple paths with local
  information only?




                                           1-37
Localized disjoint multipaths
 Sink establishes primary path.
 Sink selects “next best” neighbor “A”.
 A propagates “alternate path”
  reinforcement to its “best” neighbor “B”.
 If B is already on a path between sink and
  source, B sends back a “negative
  reinforcement”.
 Access to local information only may lead
  to longer paths.

                                               1-38
Braided multipath
 Partially disjoint.
 For each node on primary path, find best
  path from source to sink that does not
  contain that node.
 Paths in the braid expend equivalent
  energy.
 Reinforcement to “best” node and
  alternate reinforcement to “next best”
  node.

                                             1-39
Evaluation
 Energy efficiency.
      Overhead.
 Resilience to failures.
    Isolated versus patterned failures.




                                           1-40
Results
 Braided multipaths are more energy
  efficient.
     Especially at lower densities.
 Disjoint multipaths have better resilience
  to patterned losses.
 Braided multipaths exhibit better
  resilience to isolated failures.




                                               1-41
Geographic routing
 Deliver packets to nodes or regions based
  on their geographic location.
 Typically, nodes know their position and
  immediate neighbors.




                                              1-42
Basic Geographic Forwarding
    Greedy: send packet to neighbor that is closest
     to destination
    Can get stuck in voids. GPSR proposes a
     perimeter routing mode to avoid this.




 B. Karp and H.T. Kung. GPSR: Greedy Perimeter stateless Routing for Wireless Networks. MobiCom2000.
                                                                                                       1-43
Trajectory Based Forwarding
      Pre-encode arbitrary
       geographic trajectory;
       packet goes through
       nodes closest to this
       trajectory.
      Particularly well suited
       for large networks with
       high density.




D. Niculescu and B. Nath, Trajectory Based Forwarding and Its Applications. MOBICOM 2003.   1-44
Geographic routing without
location information (Rao et al.)
 Apply geographic routing when (most)
  nodes do not have position information.
 Approach: “virtual coordinates”.
     Use local connectivity information.




                                            1-45
Assumptions
 Nodes know their own coordinates.
 Nodes know coordinates of nodes in the 2-
 hop neighborhood.




                                              1-46
Routing
 Greedy: forward to neighbor closest to
  destination.
 When packet arrived to destination, stop.
 If stuck, do expanding ring search until
  closer node found.




                                              1-47
Coordinate construction
 A node’s coordinates is the average of its
  neighbors’ coordinates.
 Finding perimeter nodes’ coordinates.
   Beacon nodes flood “Hello” message.
   Perimeter nodes discover distance in hops to
    other perimeter nodes.
   Perimeter nodes broadcast their perimeter
    vector.
   Perimeter nodes use triangulation to find
    coordinates of all perimeter nodes.

                                                   1-48
Coordinate construction
(cont’d)
 Deciding whether a node is on perimeter:
   Use distance to beacon nodes.
   If node is the farthest away from beacon node
    compared to all its 2-hop neighbors, then it’s on
    the perimeter.




                                                        1-49
Evaluation
 Comparison between greedy routing using
  real- versus virtual coordinates.
 Metrics:
   Success rate: number packets reaching
    destination using purely greedy routing.
   Average path length.
   Routing load.
   Overhead.




                                               1-50
Results
 Scalability.
   Network size.
   Density.

 Mobility.
 Losses.
 Obstacles.
 Trade-offs.




                    1-51

								
To top