170 likes | 281 Views
Evaluation of Partition-Aware MANET Protocols and Applications with ns-2. A. Khelil , P.J. Marrón, R. Dietrich, K. Rothermel. Motivation. Recent research*: network partitioning is very frequent in MANETs Network partitioning complicates Routing, broadcasting, multicasting
E N D
Evaluation of Partition-Aware MANET Protocols and Applications with ns-2 A. Khelil, P.J. Marrón, R. Dietrich, K. Rothermel
Motivation • Recent research*: network partitioning is very frequent in MANETs • Network partitioningcomplicates • Routing, broadcasting, multicasting • Data management: aggregation, querying, consistency Recent protocols and applications (have to) consider partitioning • Developers need to evaluate their partition-aware concepts • By comparing them to the optimal case • Using partitioning metrics • The widely used simulator ns-2 does not provide support for evaluation of partition-aware protocols and applications *) J. Haehner et al. “A Quantitative Analysis of Partitioning in MANETs” Sigmetrics, 2004.
Outline • Motivation • Providing Partitioning Information for ns-2 • Annotation tool • Extension of ns-2 • Case Study: A Partition-Aware Broadcast Protocol • Conclusion
The Network Simulator ns-2 • Ns-2 is • A discrete event simulator for wired & wireless networks • Widely used • Implemented • C++ (for data manipulation and protocol implementation) • OTcl (for configuration) • General Operations Director (GOD): central instance • Stores global state information (#nodes, node position, ..) • Stores an array of the smallest number of hops between 2 nodes (optimal routing information)
Approach: Providing Partitioning Information for ns-2 Arbitrary ns-2 movement trace Basic communication model A and B communicate if distance(A,B) <= comm_range Before simulation Annotation Tool Movement trace annotated with partitioning information ns-2 Query() During simulation GeneralOperationsDirector(GOD) Partition- Aware Protocol Evaluation Subscribe() Simulation trace Partitioning information
Query Interface query(): 1) Current partitioning situation: - getNumberOfPartitions() - getNodesOfPartition() - … 2) Statistics: - getNumberOfJoins(t1,t2) - getNumberOfSplits(t1,t2) - … 3) Partitioning metrics defined in *) - getAvgNumberOfPartitions(t1,t2) - getAvgPartitionSize(t1,t2) - getPartitionChangeRate (t1,t2) - … C GOD Query() Protocol agent A recv() { … query() … } B Packet P1 A *) J. Haehner et al. “A Quantitative Analysis of Partitioning in MANETs” Sigmetrics, 2004.
Subscribe Interface Partitions: {A,B,C} C GOD subscribe() call-back() B Protocol agent A A
http://canu.informatik.uni-stuttgart.de/calcpartition • We provide to ns-2 community • Annotation tool • Patch for ns-2 extension • Tested Environments: • Ns-2: 2.1b9a, 2.26, 2.27, 2.28 • OS: Linux, Solaris
Outline • Motivation • Providing Partitioning Information for ns-2 • Case Study • A partition-aware broadcast protocol: hypergossiping • Evaluation approaches • Simulation results • Conclusion
The Protocol: Hyper-Gossiping (HG) • Hypergossiping combines two strategies • Gossiping for intra-partition forwarding • Broadcast repetition • Partition join detection heuristic • Rebroadcast • Partition joins are critical for hypergossiping • Detection from both directions needed
Evaluation of Hypergossiping • Performance metrics for hypergossiping • Reachability: • Message overhead • Delay • Evaluation of the broadcast repetition • Gain metric (used for calibration): • Comparison of performance metrics to that of the optimal case ( approach 1) • Observe protocol decisions ( approach 2) • Needed global views • Partitioning global view (provided by GOD) • Broadcast global view (= which packet has reached which node)
Evaluation Approach 1: Optimal Case ns-2 • Optimal broadcast repetition: • Optimal join detection (partition global view provided by GOD) • Optimal rebroadcasting: determine the packets that have to be rebroadcasted (broadcast global view) • Two simulation runs needed HG reachabilityHG message overheadHG delay HG Annotated movement trace HG with Optimal Broadcast Repetition (OBR) HG(OBR) reachabilityHG(OBR) message overheadHG(OBR) delay Partition globalview Broadcast global view
Comparison to the Optimal Reachability • Quantification of improvement potentials for reachability • Distance to optimal case simplifies the design of hypergossiping • Finding critical scenarios • tuning algorithm parameters
Evaluation Approach 2: Observer ns-2 Annotated movement trace • Observer evaluates each decision of the join detection heuristic • One simulation run needed HG correct wrong redundant Join detections by HG heuristic HG Observer Partition global view Broadcast global view
Observing Join Detections • Number of joins is easily provided by GOD • Quantification of improvement potentials of our join detection heuristic • The suppression mechanism of HG works well, since number of redundant detections is very low
Conclusion • Our extension to ns-2 allows • easy access to valuable network partitioning information • easy definition of optimal case • detailed observation of protocol decisions • Annotation tool • Time-complexity of annotation is comparable with that of setdest, the random waypoint trace generator of ns-2 • Next steps: support other communication models
Thank you for your attention! http://canu.informatik.uni-stuttgart.de/calcpartition {khelil,marron,rothermel}@informatik.uni-stuttgart.de ruediger.dietrich@gmx.net