Milano, 4-5 Ottobre 2004IS-MANETThe Virtual Routing Protocol for Ad Hoc NetworksISTI – CNR S. Chessa
Wireless Ad Hoc Networks • Autonomous system of mobile hosts connected by wireless links • The nodes are autonomous and independent • Battery powered • Mobile • Cooperate in a peer-to-peer fashion • No fixed network infrastructure • Pure distributed system • No centralized coordinators • Nodes communicate by exchanging packets via radio waves
Wireless Ad Hoc Networks • Applications: • communication in remote or hostile environments • management of emergencies • disaster recovery • ad hoc commercial installations • sensor networks • Features: • Rapidly deployable • Easily configured • Robustness • Potential drawbacks • Distributed control • Neighbor knowledge • Mobility is a challenge
Wireless Ad Hoc Networks • Wireless communications: • Transmission range of the nodes is limited • Obstacles may prevent direct communication between a pair of nodes • Point-to-point Network • Communication between non-adjacent nodes requires cooperation of other nodes
Proactive Routing • Solution derived from wired networks (Proactive approach) • Table driven • Link state • Drawbacks: • Updates overhead, especially in presence of high mobility • Large routing tables • Low scalability
On Demand (Reactive) protocols • No information about routes is maintained proactively • routes established only when needed (on-demand routing) • Route discovery process generally based on flooding: • A route request message (RREQ) is sent (flooded) to discover a path to the destination • Upon receiving the RREQ the destination sends a route reply message (RREP) back to the source
Virtual Routing Protocol (VRP) The Virtual Routing Protocol (VRP): • Designed to reduce the overhead of route discovery based on flooding • Does not assume any geographical information of the nodes. • Hybrid routing algorithm • Exhibits features of both reactive and proactive protocols • Can be tuned to behave as a reactive or as a proactive • Three different priorities for messages
Virtual Routing Protocol (VRP) • Units are arranged in a Logical Structure: • No relation with the physical position of the units • Units must proactively maintain routes to the units to which they are connected in the logical structure • Examples: • Ring of Rings • Hypercube • CCC • 3d-Torus • Node u which proactively maintains a route to unit v is a scoutfor v • Node v is a peer of u • Three protocols: • Route acquisition (Route Discovery) • Route maintenance • Scouts Update
Virtual Routing Protocol (VRP) • A example of Logical Structure: The Ring of Rings (RoR)
Virtual Routing Protocol (VRP) • Route Acquisition (Route Discovery) • Based mainly on unicast messages • High priority • Virtual path setup • Path on the logical structure from the source to the destination • Route setup • Translation of the virtual path into a real physical route • Route Maintenance • Used when a previously established route gets broken during communication • Scouts Update • Based on flooding • Low priority • Can be completely Reactive or partially proactive
VRP – Route Acquisition • Virtual path setup • The source computes a virtual pathbetween itself and the destination • The virtual path is computed on the logical structure • The virtual path is computed recursively • The virtual path is a sequence of scouts
u1 u3 u3 u0 u0 VRP – Route Acquisition • Route setup - Virtual path translation • Virtual path: u2 • RTRANS route from source to destination: u2 u1 v
u2 u2 u1 u1 v v z z v u3 u3 u3 u0 u0 u0 VRP – Route Acquisition • Route setup - Virtual path translation • Destination cuts the loops of the collected route and return to the source a loop-free route z
u3 u0 VRP – Route Acquisition • Route setup - Virtual path translation • Shortcut to the destination Transmission range u2 u1 v z
v z u4 u1 u5 u3 u0 u0 VRP – Route Acquisition • Route setup - Virtual path translation • RTRANS detour u5 u2 u4 u1 z u3
VRP – Route Acquisition • Route setup (cont.) • Route Request • Used if a certain number of virtual path translations failed • Based on flooding • Similar to the route request of the other reactive routing protocols
u0 VRP – Route Acquisition • Route Acquisition • When translating a virtual path • Upstream unit detects the broken link • Upstream unit computes a detour to deliver the RTRANS to its destination (If possible) • Upstream unit warns the last scout through which the RTRANS has passed that the route archived in this unit is broken • When the last scout receives the warnning it invokes the scout update phase of the protocol • Broken Route • Detour • Broken link message to the last scout z u4 u1 u5 u3
u0 VRP – Route Maintenance • Data communication • Upstream unit discovers the broken link • Upstream unit send a route error message to the source • Source establishes a new route to the destination if desired u3
VRP – Scouts Update • Invoked when: • A scout receives a broken link message • During the route acquisition phase the scout does not have a valid physical route to the next scout • Completely Reactive • Scout updates the route just to the broken unit • Partily Proactive • Scout updates the route to all of its peered unit • Use multiple destinations flooding
VRP – Scouts Update • Multiple Destinations flooding • Message has a special character in the destination field to identify that it is for multiple destinations • It is forwarded even by its destinations • Each unit forward the message just once • Destinations of a multiple destination flooding are always all peered units of the source • When a unit receives a multiple destination flooding: • If it has already received this message: • It drops the message • Else • It looks in the logical structure if it is a destination of the flooding • If it is a destination it sends a reply to the source of the flooding • It rebroadcast the message
VRP – Scouts Update • If each unit has k peered units, each multiple destination flooding generates k replies • The use of multiple destination flooding allows the scout to maintain their routes more up-to-date • The use of multiple destination flooding reduces the number of floodings perfomed for scouts update (demonstrated through simulation) • Multiple destination floodings increases the number of flooding replies (unicast messages) and reduces the number of flooding in the network
VRP – Simulation • Simulation Model • Simplified MAC layer • CSMA – Listen the medium before try to transmit • RTS/CTS – When a unit is transmitting, its neighbors and the neighbors of the destination remain quiet • Exponential Delay – If transmission is not possible because the medium is not empty • Roughest Approximation: the simulator does not consider collisions • Neighbors information – the MAC layer provides to the routing protocols information about the neighbors of the units • Out Buffer of 300 messages with LRU • Three routing protocols were implemented: • VRP • DSR (draft version 9) • ZRP with unicast and ZRP with multicast (draft version 4)
VRP – Simulation • Units: 75 • Network field: 1000m x 1000m • Transmission Range: 250m • Ring of Rings: • 3 rings • 25 units per ring • 5 scouts • Units’ velocity: 0m/s to 20 m/s • Units’ pause time: 0s to 600s • Simultaneous CBR connections: 10 to 50 • Messages per second per CBR source: 2 • Duration of each CBR connection: 15s or 120s
VRP – Simulation • VRP versus DSR: Delivery ratio as a function of the units' speed for 20 simultaneous CBR connections.
VRP – Simulation • VRP versus DSR: Delivery ratio as a function of the units' speed for 40 simultaneous CBR connections.
VRP – Simulation • VRP versus DSR: Delay to build a route as a function of the units‘ speed for 20 simultaneous CBR connections.
VRP – Simulation • VRP versus DSR: Routing load as a function of the units' speed with 20 simultaneous CBR connections. • VRP without proactive scout setup
VRP – Simulation • VRP versus DSR: Routing load as a function of the units' speed with 40 simultaneous CBR connections. • VRP without proactive scout setup
VRP – Simulation • VRP versus DSR: Average size of the units' routing table.
VRP – Simulation • VRP versus ZRP: Delivery ratio as a function of the units' speed • 20 simultaneous CBR connections of at most 15 seconds duration.
VRP – Simulation • VRP(up) versus ZRP(right): Delay to build a route as a function of the units' speed
VRP – Simulation • VRP versus ZRP: Routing load as a function of the units' speed • 20 simultaneous CBR connections.
VRP – Conclusions • Delivery ratio: • Light traffic conditions: • VRP always above 95% • DSR about 70% • ZRP about 82% • Heavy traffic conditions: • VRP never below 75% • DSR about 50% • ZRP around 80% • Route Acquisition Delay: • VRP has a delay significantly higher than DSR and ZRP • Unit’s Routing Tables: • DSR and ZRP: O(N) (N number of units in the system) • VRP: O(k) (k number of scouts per unit – connectivity of the logical structure)
VRP – Improvements • Scout Update over Received Messages • Shortcuts in Virtual Path Translation • Avoiding High Priority Flooding • Proactive Zone • Avoid route acquisition by immediately sending data during virtual path translation