Ad-hoc Networks Final by nazef


More Info
									Ad-hoc Networks
Farouk Kamoun
Module d'ouverture
WLan Wi-Fi Alliance
   Wi-Fi Alliance : Organization that
    groups the major wireless market
    players in the world
   Its Objective:
     promote Wi-Fi as an international
       standard for wireless networks
     Garantee interoperability of Wi-Fi
       (Wireless Fidelity) products
     Garantee security in Wi-Fi (WPA &
     Garantee QoS (Wi-Fi MultiMedia)
 Wlan infrastructure mode
* Instead of Collision Detection
  we look for: Collision Avoidance
* CSMA/CA is based on :
   Listening the channel
      * Physical Carrier Sense
      * Virtual Carrier Sense
          *   Reservation Mechanism (RTS/CTS)
          *   Network Allocation Vector (NAV)
   Timers IFS
   Backoff algorithm
   Positive Acknowledgements

ad hoc mode (IBSS)
Ad Hoc Networks
 Ad hoc network :

 Require new Routing Protocols taking into account ad hoc net
        No infrastructure
        Mobility
        Low bandwidth
        Energy limitation

 Conferencing
 Home   networking
 Community networking
 Military Combat networking
 Relief organization (secours)
 Catastrophy management
 Specialized ad-hoc nets:
      Mesh Networks
      Sensor networks
     Vehicule    Ad-hoc neworks : VANET

Environnement Physique
 Notionde Connexion
 Problème d'Interférence
 Problème du Nœud Caché
Routing Protocols
   Proactive routing protocols: DSDV, OLSR
   Reactive routing protocols: AODV, DSR
   Hybrid routing protocols: ZRP,
   MMDV (Multipath and MPR based AODV)
    developed in the
       Cristal laboratory
Routing Protocols
Proactive Protocols
   Routes are established in advance
      May send packets immediately
      But too much overhead

   Deux major methods:
      Distance Vector:
         Next   node to destination
            Example:      DSDV
      Link      State
            Network Topology
            Example: OLSR, TBRPF

 Preserve simplicity of RIP protocol

 Each Node keeps a Routing table with entries to all destinations:
        destination node, distance (in hops), next node,
         sequence number, life-time..

 Periodical exchange of routing information (Distance vectors) with
        Possible optimization by sending reduced tables
         containing changes and sometimes the whole table
 Table Update:
        Upon reception of a distance vector from a neighbour,
         each node compares for each destination:
              If new seq number is higher then update routing entry
              If new seq number is equal to existing seq number update
               entry only if new distance is smaller than existing one
              If new seq number is smaller than existing one then discard
               this information (no change)
 Update period: because of mobility there are frequent changes in
    topology -- Small update period -- large overhead

DSDV: Change of Topology
   If a Node Detect That a Link with a
    Neighbor is Lost ( at level 2 with hello
    messages of Beacon or at level 3 no
    reception of routing Tables)
   It sets hop distance to infinity (large
    number) to that entry and to all entries
    that use that node as next hop
   A new sequence number is set:
    old-sequence number of that entry + 1
    (this is the only time that a node is allowed
    to change the Seq number of another node
   Broadcast the RT

   Note that that if there is a good path for
    some nodes it will be recovered through
    the exchange of tables

DSDV: Improvements
   For large networks: use 2 type or routing
       Full dump: Full Routing Table
       Incremental: Carry only Changes that
    occured since last full   dump
   Send Full Dump less frequently and use in
    between Incremental routing information

   Conclusion
       Simple routing algorithm
       Not efficient


   MS : Multipoint Relay Selector
        MS(N) : Set of nodes that chose N as their MPR.

Choice of MPRs
   Algorithm

   1/ Select all neighbors (1-hop) that are
    unique neighbors to 2-hop neighbors
   2/ Eliminate the 2-hop neighbors
    connected to the set of MPR nodes
   3/Find among the neighbors the node that
    allow to reach the largest number of
    2-hop nodes and add it to the set of MPRs
    and eliminate the 2-hop nodes reached by
    the new selected MPR
   4/ Repeat step 3 until all 2-hop neigbors
    are eliminated (covered)

   MPR : Multipoint Relay
        Each node N selects a set of nodes MPR(N) among
        his neighbors. This Set must cover all nodes at 2
        hops from N
       Neighbors that do not belong to MPR(N) process
        the control packets coming from N but do not
        forward them


OLSR – Messages
 Messages transmitted periodically:
       HELLO (every 2seconds)
          Contain list of neighbors as well as the types of
            links (Symetric, Asymetric).
          Allow to select MPRs.
          Used to determine neighbor table
       TC :Topology Control (every 2seconds)
          Allow to declare MPR’s in the whole network
          Transmitted by MPRs
          Used to determine topology tables
         MID
             Multi   interface


 Neighbor discovery
 HELLO messages are not relayed (TTL=1)
 Using the list of neighbors received in HELLO messages, each node N can
    determine the list of neighbors at 2 hops and then determine its   list of
OLSR – Heuristic to determine
MPR nodes
   Step 1:
       MPR(4)={}
       Add neighbors that uniquely connect to 2 hop
        neighbors of 4
                MPR(4)={6}
   Step 2:
       While there exists 2 hop neighbors not covered by
        nodes in MPR(4), add the neighbor that covers
        the largest number of 2 hop neighbors

   TC (Topology Control) messages are
    periodically broadcasted in the entire
    Only MPR nodes (i.e. MS not empty)
    broadcast TC messages :
       List of MS (partial information on links)
       Sequence Number (to avoid using obsolete
   All nodes N process TC messages
   Using TC messages, each node determines
    a topological table That will allow it to
    compute the routing table
OLSR – Tables
   Each Node maintains:
        Neighbor data base
           Table: direct neighbors
           Table: 2 hop neighbors.
           List of MPRs.
           List of MPR Selectors (MS)
        Topology Base
           Topology Table
           Routing Table

Update of Routing Table RT
   RT is computed from Table of Neighbors and Topology
   Topology Table is created from the received Topology
    Control Messages
   All Nodes selected as MPRs broadcast periodically
    their MPS Selector (MS)
   Update RT if there is a change in Neighbors or in the
   1/ Delete all entries from RT
   2/ Add to RT all neighbors with symetric link status
                R_Next = R_dest, R_dist=1
   3/Repeat 4 begin with R_current-dist=1, stop if no
    more nodes to add
   4/ For each entry in TT which verifes:
       It does not belong to RT
       T_Last of that node is a destination in RT with distance =
     Then create an entry for that node in RT such that:
      R_Dest = T_Dest (of that Node)
      R_Next = T_Last
      R_Dist = R_current-dist + 1
     Increase R_current-dist by one
   5/ Delete entries not used in TT

OLSR – Example
OLSR – Synthesis
   Based on MPR concept( Multipoint Relays)
   Optimization of diffusion overhead
        Diffusion of packets through MPRs
                Reduce Overhead
        A control packet contains only a subset of neighbors
                 less Overhead
                Nodes know a partial topology
                Computed roads are optimal

   Routes are immediatly available

OLSR - Drawbacks
   Control Messages sent periodically
                    HELLO_INTERVAL= 2 sec
         TC_INTERVAL= 5 sec
 doesn’t react well to node
mobility, solution?
            Increase frequency of hello messages
               increase overhead
               risk of congestion

            Decrease of periodicity of Hello messages
               weak adaptation to topology changes
               List of MPRs obsolete
               erroneous control information

           Dynamic OLSR (fast OLSR) (node in one of 2 states
         fast or normal))

Reactive Protocols
   Routes are established on Demand
      No control traffic if routes are not used
      But packet is slowed down if route doesn’t exist!

   Two major techniques:
      Source Routing: the source indicates the
       path to be followed by a packet to reach a
       destination (DSR)
      The source forwards the packet to the next
       node towards the destination (AODV)

AODV – Presentation
 Ad hoc On-Demand Distance Vector
    C. Perkins, E. Belding-Royer             et S. Das (RFC 3561)
         july 2003
 Reactive, distance vector
 Each Node keeps a Routing table with entries to some destinations:
        dest node, next node, distance (in hops), dest sequence
         No , life-time, precursors
 Upon arrival of a packet:
        If entry for destination exists on the table (and not
         obsolete) then send packet
       If no entry then establish a road to destination
 Route Establishment
    Route Request,   RREQ (Broadcast) with an ID to
      avoid duplications
     Route Reply, RREP (unicast)
     Route Error,RERR (unicast) in case of link failure
      on the established path

AODV – Example 1
AODV – Example 2
AODV – Recap
   Advantages: expect
       Smaller routing tables
       Better Adaptation to topology changes

   Drawbacks:
       RREQ Flooding

   Improvements:
       AODV-PA:
          Path   Accumulation
       AODV multipath:
          Multiple   Paths
   Drawbacks:
       RREQ Flooding

   Improvements:
       AODV-PA:
          Path   Accumulation
       AODV multipath:
          Multiple   Paths

DSR – Presentation
   Dynamic Source Routing Protocol: David
    Johnson et al. (INTERNET−DRAFT)
       The source specifies the entire path to the
        destination in the packet header
   Each Node keeps a Cash but not a Routing
   Upon arrival of a packet:
     If path for destination exists in the Cash (and not
      obsolete) then send packet with path in header
     If no entry then establish a path to destination
   Route Establishment
      Route Request, RREQ (Broadcast) with an ID
       to avoid duplications
      Route Reply, RREP (unicast)
      Route Error, RERR (unicast) in case of link
       failure on the             established path

DSR – Example 1
DSR – Example 2
DSR – Recap
   Advantages:
       Easy to implement
       Multiple Paths

   Drawbacks:
       Agressive usage of cashes
       Path validity
       Cash Pollution

   Improvements:
       DSR*-DR:
          Does not allow intermediate nodes to reply using
           information in their cash
       DSR*:
          Introduce   Path lifetime

Important Routing Features
Work at Cristal Lab: AODV
     AODV+MPR
         Optimization       of RREQ flooding
     AODV+MPR           Dynamic (fast OlSR
         MPR      with detection of high mobility
     AODV+PA
         Path     Accumulation
     AODV         multi chemin
         Multiple    Paths

   Modification of AODV Hello Messages :

   Processing of Hello Messages :
       Update Neighbor Table
       Update Routing Table
       Protocole hybride

   Selection of MPR list
       Périodic

AODV + « Dynamic » MPR
   Detection of high mobility:
       Changes in neigbor table (Fast-OLSR)
       Threshold=1/5

   If a node detects a high mobility :
     Changes to Rapid State
     Increase frequecy of Hello messages
     Reduce time of computation of MPR List
   Path Accumulation
      Add sequence of traversed nodes in routing

     Modify the structure of RREQ and RREP
        Add Adresses of intermediary nodes

     Processing of RREQ and RREP
        Update routing table
        Add entries to intermediary    nodes

AODV multiple path
   Multiple path :
     Maintain 2 « disjoint » paths
     Minimize probability of path failures

   Minimize number of nodes in common for
    the 2 paths
       AODV Multipath Protocol
       Add JointCount (JC) field to RREP messages
       Each common node increases JC

   Threshold <=2/5 to retain a path
Performance Evaluation
Simulation Scenarios
Delivery Rate
Synthesis of results
   MMDV: Multipath and MPR based AODV

   Hybrid Protocol
       Proactive Phase :
          Periodic update sof routes to neighbours at up to 2
           hops (hello messages)
          Periodic computation of MPRs
       Reactive Phase :
          Establishment of a new Path   (RREQ/RREP)
          Compute « disjoint » paths

   Two zones
       Zone within 2 hops (proactive routing)
       Zone beyond 2 hops (reactive routing)

MMDV- Example
Delivery Rate
Routing Overhead (load)
   Many routing protocols
       MMDV is interesting but
       4 are in the final standardization process

   More work is required at the network level:
    autoconfiguration (addressing schemes)
   More work is required at the transport
    level:UDP, TCP, others?
   Quality of Service
   Security
   Killer Application
   Real deployments
   Mesh Networks look more promissing!!

To top