180 likes | 195 Views
ITIS 6010/8010 Wireless Network Security. Dr. Weichao Wang. AODV (Ad hoc On-demand Distance Vector) On-demand protocol: routes are established when needed, nodes not on active paths do not have to maintain any information, routes will expire if not used
E N D
ITIS 6010/8010 Wireless Network Security Dr. Weichao Wang
AODV (Ad hoc On-demand Distance Vector) • On-demand protocol: routes are established when needed, nodes not on active paths do not have to maintain any information, routes will expire if not used • Using hello messages to discover local topology (why DSDV does not need this) • Routes have lifetime • Using sequence numbers to prevent loop • Still a table driven protocol
Three kinds of packets: • Route request (RREQ) • Route reply (RREP) • Route error (RERR) • Path discovery • Every node has two value: sequence number and broadcast id • Broadcast RREQ: <s, d, seq_s, seq_d, broad_s, hop>
The pair <s, broad_s> uniquely identifies the RREQ. Broad_s will be incremented every time a RREQ is sent. • Processing of RREQ • Remembers reverse path to s: s, seq_s, hop count, previous node, route lifetime • If it has an active route, will reply with RREP • Otherwise, rebroadcast RREQ and increase hop by 1 • Expanding ring search for destination
Sending a RREP • The RREP must have a fresher sequence number of destination • The RREP is unicast back to the source: <s, d, seq_d, hop count, lifetime> • How can the intermediate nodes figure out hops to destination? • The nodes along the path can setup forward routes to the destination • The fresher route is preferred over short route
Routing entry contains • Destination, next hop, hop count, seq_d, lifetime of the path, neighbors have used this route • Link failure response • RERR is sent back with incremented sequence number and infinity hop count • All active routes using this next hop will get a copy of this RERR and the information will be propagated • New RREQ or local repair can be adopted • Does AODV support multiple paths b/w a source and a destination?
DSR (Dynamic Source Routing) • An on-demand routing protocol • Nodes gather topology information by overhearing network traffic • Achieves much less control traffic compared to DSDV (attention here) • Source routing is used in every data packet • Achieve loop-free • Support unidirectional routes
Route discovery • A node may discover and cache multiple routes to a destination • Route request packet: <s, d, broad_s> • The neighbor will • If knows a route to d: send back a reply with the full route • Otherwise, add its own node id and broadcast again • The node IDs show the accumulated path from the source and can be used to send route reply
Route cache by overhearing • May get multiple routes to the same destination • Accelerate route discovery • Cut unnecessary intermediate nodes • Ensuring packet delivery • Active acknowledgement • Passive acknowledgement • Preventing route reply storms • Route error discovery and propagation • Attach the broken link in new RREQ to prevent it from being reused
Advantages and disadvantages • Simple routing protocol with low overhead • High latency in finding routes • Not scalable
Zone Routing Protocol (ZRP) • Reactive and proactive protocol each has advantages and disadvantages • Can we combine them? • For nearby nodes, use proactive approach; for faraway nodes, use reactive approach • ZRP has a flat view of the network. It is not a hierarchical protocol
Concept of zone • Every node has its own zone with a radius of r hops • Zones of different nodes will overlap • Peripheral nodes and interior nodes • Routing: • Within the zone, use proactive (intrazone) • Outside of the zone, use reactive (interzone) • Each can be a family of routing protocols
Discovery of local topology • Hello beacons to detect active neighbors • Zone notification messages to determine nodes in zone • Intrazone routing
Interzone routing • Instead of broadcast, the RREQ is sent to peripheral nodes through bordercast • Can be achieved through multicast or multiple unicast • If the peripheral node knows the route, sends back a reply (source routing or previous hop of the peripheral nodes) • Otherwise, bordercast again • Sharply reduce overhead compared to broadcast
The size of a zone • If r = 1, it goes back to pure reactive • If r = ∞, it goes back to proactive • Route maintenance • When a link breaks, the node can find an alternative route based on its zone knowledge • Overhead control • Since zones overlap, a node may receive the same RREQ multiple times • How to guarantee the RREQ only propagate to outer areas?
Overhead control • Query detection • If a node has forwarded or overheard a RREQ, it does not transfer in the reverse direction • Early termination • If a node knows that the target of bordercast already gets the RREQ, it discards the packet • Random delay of bordercast