A Case Study on MANET Routing Protocols Performance Over TCP and HTTP
MANET: Performance
description
Transcript of MANET: Performance
MANET: Performance
Reference: “Performance comparison of two on-demand routing protocols for ad hoc networks”; Perkins, C.E.; Royer, E.M.; Das, S.R.; Marina, M.K.; IEEE Personal Communications, Volume: 8 Issue: 1, Feb. 2001; Page(s): 16 –28 (AdHocUnicast-4.pdf)
2
DSR• Using source routing
– The sender knows the complete hop-by-hop route to the destination
– These routes are stored in a route cache
– The data packets carry the source route in the packet header
• Sending a data packet– 0. To a destination for which it does not already
know the route
– 1. Route discoveryFlooding the network with route request (RREQ)
packets
3
DSR (cont)Each node receiving an RREQ rebroadcasts it,
unless it is the destination or it has a route to the destination in its route cache
Such a node replies to the RREQ with a route reply (RREP) packet that is routed back to the original source
RREQ and RREP packets are also source routed
The RREQ builds up the path traversed across the network
The RREP routes itself back to the source by traversing this path backward
The route carried back by the RREP packet is cached at the source for future use
4
DSR (cont)– 2. If any link on a source route is broken
The source node is notified using a route error (RERR) packet
The source removes any route using this link from its cache
A new route discovery process must be initiated by the source if this route is still needed
– 3. For any forwarding nodeCaches the source route in a packet it forwards for
possible future use (aggressive use of source routing)
5
DSR (cont)
• Optimizations
– 1. Salvaging
An intermediate node can use an alternate route from it own cache when a data packet meets a failed link
– 2. Gratuitous route repair
A source node receiving an RERR packet piggybacks the RERR in the following RREQ
This helps clean up the caches of other nodes in the network that may have the failed link in one of the cached source routes
6
DSR (cont)
– 3. Promiscuous listening
When a node overhears a packet not addressed to itself, it checks whether the packet could be routed via itself to gain a shorter route
If so, the node sends a gratuitous RREP to the source of the route with this new better route
It also helps a node to learn different routes without directly participating in the routing process
7
AODV• To maintain routing information
– Uses traditional routing tables, one entry per destination
– Uses sequence numbers maintained at each destination to determine freshness of routing information and to prevent routing loops
– A routing table entry is expired if not used recently
– A set of predecessor nodes is maintained for each routing table entry
Indicating the set of neighboring nodes which use that entry to route data packets
These nodes are notified with RERR packets when the next hop link breaks
Each predecessor node, in turn, forwards the RERR to its own set of predecessors, thus effectively erasing all routes using the broken link
8
AODV (cont)
• Optimization
– Control the RREQ flood in the route discovery
– Initially, expanding ring search to discover routes to an unknown destination
– Increasingly larger neighborhoods are searched to find the destination
– The search is controlled by the TTL field in the IP header of the RREQ packets
9
DSR vs. AODV• 1. By the virtue of source routing
– DSR has access to a significantly greater amount of routing information than AODVFor example, in DSR, using a single request-reply cy
cle, the source can learn routes to each intermediate node on the route in addition to the intended destination
Promiscuous listening of data packet transmissions
– AODV can gather only a very limited amount of routing informationThis usually causes AODV to rely on a route discove
ry flood more often, which may carry significant network overhead
10
DSR vs. AODV (cont)
• 2. Route caching
– DSR replies to all requests reaching a destination from a single request cycle
The source learns many alternate routes to the destination saves route discovery floods
– In AODV, the destination replies only once to the request arriving first and ignores the rest
The routing table maintains at most one entry per destination
11
DSR vs. AODV (cont)• 3. Stale routes in the cache
– Current spec. of DSR does not contain any explicit mechanism to expire stale routes
Stale routes, if used, may start polluting other cache
Some stale entries are indeed deleted by route error packets, but promiscuous listening and node mobility more caches are polluted by stale entries
– AODV has a much more conservative approach than DSR
When faced with two choices for routes, the fresher route (based on destination sequence number) is always chosen
Also, if a routing table entry is not used recently, the entry is expired
Determination of a suitable expiry time is difficult
12
DSR vs. AODV (cont)
• 4. Route deletion (using RERR) activity
– Is also conservative in AODV
By way of a predecessor list, the error packets reach all nodes using a failed link on its route to any destination
– In DSR, a route error simple backtracks the data packet that meets a failed link
Nodes that are not on the upstream route of this data packet but use the failed link are not notified promptly
13
DSR vs. AODV (cont)
• Goal of the simulation
– Determine the relative merits of the aggressive use of source routing and caching in DSR, and the more conservative routing table and sequence-number-driven approach in AODV
14
Simulation Model• Based on NS-2
• MAC layer protocol
– DCF of IEEE 802.11
– RTS+CTS for unicast data
– “Broadcast” data packets and RTS control packets are sent using physical carrier sensing
• Radio model
– Luccent: WaveLAN (2Mbps)
– 250m radio range
15
Simulation Model (cont)• AODV and DSR
– RREQ packets are treated as broadcast packets in the MAC
– RREP and data packets are all unicast packets with a specified neighbor as the MAC destination
– RERR packetsAre broadcast in AODVUse unicast transmissions in DSR
– Send buffer: 64 packetsContains all data packets waiting for a route, but no r
eply has arrived yetPackets are dropped if they wait in the send buffer fo
r more than 30s
16
Simulation Model (cont)– Interface queue
All packets (data and routing) sent by the routing layer are queued at the interface queue until the MAC layer can transmit them
Maximum size of 50 packets
Two priorities: routing packets get higher priority than data packets
• Traffic models– Traffic sources: CBR
– Random source-destination pair
– 512-byte data packets
17
Simulation Model (cont)• Mobility model
– Random waypoint modelFrom a random location to a random destination with
a randomly chosen speed (uniformly distributed between 0 ~ 20 m/s)
Once the destination is reached, another random destination is targeted after a pause
Pause time affects the relative speeds of the mobiles
– Two field configurations1500m x 300m with 50 nodes
2200m x 600m with 100 nodes
18
Performance Metrics• Packet delivery fraction
– The ratio of the data packets delivered to the destination to those generated by the CBR sources
• Average end-to-end delay of data packets
– Includes all possible delays caused byBuffering during route discovery latency
Queuing at the interface queue
Retransmission delays at the MAC
Propagation and transfer times
19
Performance Metrics (cont)• Normalized routing load
– The number of routing packets transmitted per data packet delivered at the destination
– Each hop-wise transmission of a routing packet is counted as one transmission
• Normalized MAC load– Routing, ARP, control (RTS, CTS, ACK)
packets transmitted by the MAC layer for each delivered data packet
– Consider both routing overhead and MAC control overhead
– Also accounts for transmissions at every hop
20
Varying Mobility and # of Sources
• 50 node experiments
– Packet rate for 10, 20, 30 traffic sources: 4 packets/s
– Packet rate for 40 traffic sources: 3 packets/s
• 100 node experiments
– Packet rate for 10, 20 sources: 4 packets/s
– Packet rate for 40 sources: 2 packets/s
21
22
23
Simulation results (50 nodes)• For 50 node experiments
– 1. The packet delivery fractions for DSR and AODV are very similar with 10 & 20 sources (Fig. 1a & 1b)
With 30 & 40 sources, AODV outperforms DSR by about 15% (Fig. 1c, 1d) at lower pause time (higher mobility)
For higher pause times (lower mobility), DSR has a better delivery fraction than AODV
– 2. Delays performance of both protocol is similar to that with delivery fraction
Almost identical delays with 10 & 20 sources (Fig. 2a, 2b)
With 30 & 40 sources, AODV has about 25% lower delay than DSR (Fig. 2c, 2d) for lower pause times. But for higher pause times, DSR has better (30% ~ 40% lower) delay than AODV
24
25
26
Simulation results (50 nodes)• For 50 node experiments
– 3. In all cases, DSR demonstrates significantly lower routing load than AODV (Fig. 3), usually by a factor 2-3, with the factor increasing with a growing number of sources
DSR’s normalized routing load is fairly stable with an increasing number of sources, even though its delivery and delay performance get increasingly worse
– 4. AODV has similar or slightly lower MAC load than DSR (Fig. 4) for lower pause times
As the pause time is increased, the MAC load comparison goes against AODV
With increase in pause time, MAC load remains almost steady for AODV, while it decreases significantly for DSR
27
28
29
30
31
Simulation results (100 nodes)• For 100 node experiments
– 1. When the number of sources is low, the performance (delivery fraction & delay) of DSR and AODV is similar regardless of mobility
– 2. With large numbers of sources, DSR delivers better performance under low-mobility conditions
However, AODV starts outperforming DSR for high-mobility scenarios
– 3. DSR always demonstrates a lower routing load than AODV
Major contribution to AODV’s routing overhead is from route request, while route replies constitute a large fraction of DSR’s routing overhead
32
Simulation results (100 nodes) AODV has more route requests than DSR, and the
converse is true for route replies
The relative routing load differences will be much smaller if the comparison is made in terms of bytes, reasons:
1. DSR uses large routing packets
2. DSR data packets carry routing information
– 4. Comparison of MAC load goes against DSR except under low-mobility conditions
Note that MAC load computation takes into account both the routing and control packets at the MAC layer.
When only control packets were considered, we have seen that AODV always has lower load than DSR
33
34
35
Simulation results (effect of loading)• Mobility: Zero pause time (highest mobility)
– Y-axis (throughput) : represents the combined received throughput at the destination of the data sources
– X-axis (offered load): combined sending rate of all data sources
• With 10 sources
– 1. DSR’s throughput starts saturating only at an offered load of around 400 kbps (Fig. 7a)
This is due to a poor packet delivery fraction
– 2. AODV’s throughput increases further along, starting to saturate around 700 kbps
36
Simulation results (effect of loading)
– 3. AODV always has lower average delay than DSR (Fig. 7c) until the point where DSR begins to saturate
Comparison of delays beyond that point does not provide any useful insight since DSR loses more than half the packets
– 4. AODV generates higher routing load in kbps than DSR (Fig. 7a)
The routing load comparison in packets after normalization (Fig. 8a) also show similar behavior
– 5. However, AODV has lower MAC load than DSR (Fig. 8c)
37
Simulation results (effect of loading)
• With 40 sources (Fig. 7b & 7d)
– The qualitative scenario is similar to 10 sources, but the quantitative picture is very differentBoth AODV and DSR saturate much earlier, AODV:
300 kbps, DSR: 200 kbps
AODV has a better delay characteristic than DSR
AODV has a higher normalized routing load and lower normalized MAC load than DSR
38
Observations
• A. Routing load and MAC overhead
– 1. DSR almost always has a lower routing load than AODVThe difference is often significant (by a factor of up
to 3) if the routing load is presented in terms of packet counts
Presenting routing loads in terms of bytes is less impressive (at most about a factor of 2)
By virtue of aggressive caching, DSR is more likely to find a route in the cache, and hence resorts to route discovery less frequently than AODV
But DSR generates more replies and errors
39
Observations (cont)AODV’s routing load was dominated by RREQ packet
s (90% of all routing packets)
DSR’s routing load was dominated by RREP packets, due to multiple replies from the destination (roughly 50%)
In terms of absolute numbers, DSR always generated more RREP and RERR packets (factor 2~4) than AODV, but significantly fewer RREQ packets (up to an order of magnitude for high mobility)
– 2. Higher MAC load for DSR for high mobility and/or high traffic loadRREP is unicast in AODV & DSR: RTS/CTS/Data/Ack
RREQ is broadcast (not use any additional MAC control packets)
RERR: unicast in DSR, but broadcast in AODV
40
Observations (cont)
• Further experiments for route & MAC load
– Fig. 9 shows detailed statistics at the application layer, the routing layer, and the MAC layer
– 100 nodes
– 40 CBR sources, rate: 2 packets/sec
– Packet size: 512 bytes
41
unicastunicast
42
RTS
CTS
ACK
Data
R-unicast
=
=
RTS
CTS
ACK
Data
R-broadcast
43
Observations (cont)• B. Effect of mobility
– High mobilityLink failures happen very frequently
Trigger new route discovery in AODV
The reason of DSR is mild and causes route discovery less often (the route discovery is delayed in DSR until all cached routes fail
But the chances of the caches being stale is quite high in DSR. The cache staleness and high MAC overhead together result in significant degradation in performance for DSR. This effect is more severe with large numbers of sources and for larger networks
44
Observations (cont)– Low mobility
The possibility of link failures is low
Nodes usually get clustered with low mobility network congestion in certain regions causes link layer feedback to report link failures
Such spurious link failures lead to new route discoveries in AODV
DSR is largely unaffected by this problem. DSR caches are nearly up to date for low-mobility cases
Also, AODV timer-based route expiry mechanism could result in unnecessary route invalidations
– A combination of nodes with different mobilityHard to predict the relative performance of AODV
and DSR
45
Observations (cont)• C. Packet delivery and choice of routes
– DSR: aggressive use of route cachingComparatively poorly in delivery fraction and delay
in more stressful situation (larger numbers of nodes, sources, and/or higher mobility)
Perform better in less stressful situations
Picking stale routes consumption of additional network bandwidth, possible pollution of caches in other nodes
– Significant improvement of DSRCache expiry using suitable timeouts
Wider propagation of routes errors
46
Observations (cont)• D. Delay and choice of routes
– Correlation between the end-to-end delay and number of hops is usually small (correlation coefficient less than 0.1), except at very low loadBuffering and queuing delay, time to gain access to t
he radio medium in a single congested node are often large
In AODV, the destination replies only to the first arriving RREQ. This favors the least congested route instead of the shortest route
In DSR, the destination replies to all RREQs, making it difficult to determine the least congested route
47
Observations (cont)
– DSR always had a shorter average path length than AODV (15%~30% shorter), even though AODV often has less delay
48
Observations (cont)
• E. Effect of loading of the network
– Network capacity is poorly utilized by the combination of 802.11 MAC and on-demand routing
Instantaneous network capacity is roughly 7 times the nominal channel bandwidth (2Mbps) for zero pause scenario with 100 nodes
The delivered throughput to the application was at most about 2% ~ 3% of the network capacity
With more unicast routing packets, DSR suffers from this phenomenon more than AODV
49
Conclusion• General observation
– Delay and throughput: DSR outperforms AODV in less “stressful” situationsAggressive use of caching, and lack of any
mechanism to expire stale routes or determine the freshness of routes
AODV outperforms DSR in more stressful situations
– Routing load: DSR generates less routing load than AODV
– MAC layer load: DSR’s apparent savings on routing load did not translate to an expected reduction on real load on the network