emulation of ad hoc networks
play

Emulation of Ad Hoc Networks David A. Maltz, Qifa Ke, David B. - PowerPoint PPT Presentation

Emulation of Ad Hoc Networks David A. Maltz, Qifa Ke, David B. Johnson CMU Monarch Project Computer Science Department Carnegie Mellon University http://www.monarch.cs.cmu.edu/ Carnegie Mellon CMU Monarch Project monarch@monarch.cs.cmu.edu


  1. Emulation of Ad Hoc Networks David A. Maltz, Qifa Ke, David B. Johnson CMU Monarch Project Computer Science Department Carnegie Mellon University http://www.monarch.cs.cmu.edu/ Carnegie Mellon CMU Monarch Project monarch@monarch.cs.cmu.edu

  2. Early Emulation Successes Stress testing of networking code via macfilter � Used to debug our 8 node ad hoc network testbed � Description of interesting/problematic movement scenarios created � Changing network topology extracted into trace file � Physical machines running actual implementation synchronously read trace-file � Machines prevented from receiving packets from non-neighbors � Described at previous IETF and in CMU CS Tech Report 99-116 Found to be critical for achieving code stability, however cannot be used for performance evaluation � Propagation model grossly simplified � MAC-layer effects unaccounted for CMU Monarch Project monarch@monarch.cs.cmu.edu

  3. Goal of Current Emulation Work Evaluate real systems under ad hoc network conditions: � Performance study of network protocols or applications � Without implementing them in ns-2 � Without deploying and operating physical machines in the field � Using real implementation and real user pattern � Only the network environment is simulated Evaluating real systems with just simulation is not practical: � Difficult to model real applications inside the simulator � Real systems are significantly performance tuned Example: Evaluate performance of CMU Coda file system in an ad hoc network: � Coda is 100+ KLOC implemented and tuned � Coda researchers have expertise to evaluate their system but can’t create network environments CMU Monarch Project monarch@monarch.cs.cmu.edu

  4. Method � Leverage emulation work by Kevin Fall and VINT project � ns-server is a single central machine running ns-2 � Real application code runs on real machines directing real packets to “default router” (ns-server) � User creates scenarios to control the environment inside ns-2 : – Movement pattern of all mobile nodes inside ns-2 – Background traffic MN1 MN2 ns-server MN4 MN3 Logical view of emulation setup CMU Monarch Project monarch@monarch.cs.cmu.edu

  5. Informal Validation of Emulation Method Example: Compare FTP behavior between simulation and emulation: � ns-server: 450 MHz Pentium II CPU, running FreeBSD 3.1 � 10 simulated nodes � Compare 30 MB FTP transfer between simulation and emulation � 2 additional simulated FTP connections for background traffic 7 3.5x 10 3 TCP time–sequence # plots 2.5 bytes transfered have basically the same shape: 2 1.5 1 But how well does this scale? 0.5 simulation emulation 0 0 50 100 150 200 250 300 time (seconds) CMU Monarch Project monarch@monarch.cs.cmu.edu

  6. A More Challenging Example � 16 simulated nodes moving in a complicated pattern with CBR and FTP background traffic � 30 MB FTP transfer simulated in ns-2 � 30 MB FTP transfer between two physical nodes with emulation 7 3x 10 2.5 bytes transfered 2 1.5 1 0.5 simulation emulation 0 0 100 200 300 400 500 time (seconds) CMU Monarch Project monarch@monarch.cs.cmu.edu

  7. Evaluating Emulation Scalability Limitations on emulation scalability: � System effects: scheduling delays, potential buffer overruns � Additional latency of transferring packets to/from ns-server � Only so much one CPU can do Experimental scenario: SINK � Conduct real FTP transfer between 2 physical nodes ��� ��� �� �� ��� ��� �� �� � Vary the number of other �� �� ��� ��� �� �� SRC ���� ���� ���� ���� �� �� � � � � � � simulated nodes in ns-2 � � 30 M Bytes CBR � Vary the amount of background traffic Scalability Test Scenario CMU Monarch Project monarch@monarch.cs.cmu.edu

  8. Scalability Results Summary Ideally: emulation throughput = simulation throughput � Pure simulation achieves 1.49 Mb/s on a 2 Mb/s link � Emulation achieves throughput that depends on overall simulator workload: # of CBR packets/second 0 10 50 100 300 # of nodes 1.44 Mb/s 4 1.30 Mb/s 8 960 Kb/s 16 FTP Throughput Achieved CMU Monarch Project monarch@monarch.cs.cmu.edu

  9. Does the Simulator Keep up with Real Time? � For event scheduled at t 1 but processed at t 2 : time-lag = t 2 – t 1 � Record the time-lag for each delayed event � Histograms show almost all time-lags are less than 4 ms 100 CBR packets/sec 16 nodes 6 10 5 10 # of time-lag events 4 10 3 10 2 10 1 10 4 54 104 154 204 ms Max lag: 355 ms Total # of events: 1.64e+07 CMU Monarch Project monarch@monarch.cs.cmu.edu

  10. All of the Histograms 0 packets/sec 10 packets/sec 50 packets/sec 100 packets/sec 300 packets/sec 4 simulated nodes 6 10 5 10 4 10 3 10 2 10 1 10 1.03e+06 1.30e+06 2.38e+06 3.73e+06 9.13e+06 8 simulated nodes 6 10 5 10 4 10 3 10 2 10 1 10 1.65e+06 2.28e+06 4.80e+06 7.95e+06 2.06e+07 16 simulated nodes 6 10 5 10 4 10 3 10 2 10 1 10 4 54 104 154 204 4 54 104 154 204 4 54 104 154 204 4 54 104 154 204 4 54 104 154 204 2.89e+06 4.24e+06 9.65e+06 1.64e+07 4.35e+07 CMU Monarch Project monarch@monarch.cs.cmu.edu

  11. Conclusion Emulation works for networks of sufficient size and complexity to enable study of interesting application scenarios � Using direct emulation based on ns leverages future improvements to propagation models � The bottleneck is the real-time requirement in ns-server � Currently using to evaluate the Coda distributed file system Open questions: � How far can this technique be generalized? � How to ensure performance measurements are meaningful? – Open loop: evaluate emulation system on many scenarios using reference application with good simulation models – Closed loop: after each emulation run, examine emulation trace to determine if emulation system introduced artifacts – Validate against real system in ad hoc network testbed CMU Monarch Project monarch@monarch.cs.cmu.edu

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend