In the future, we intend to implement several algorithms of optimistic approach [18] on NCTUns network simulator to evaluate the performance of optimistic algorithms and compare the performances of optimistic approach with the performances of conservative approach.
The performances of parallel discrete event simulation for wireless network simulation are disappointed. The propagation delays of signal transmission in wireless network are tiny. These so small look-ahead values make the parallel discrete event simulation perform inefficiently. However, one can increase the lookahead values from the logical processes by the nature of the CSMA/CA protocol in IEEE 802.11 wireless networks. The CSMA/CA protocol requests each node in the network to postpone the sending of frames with various periods called “inter-frame space” (IFS), such as SIFS, PIFS, DIFS and EIFS. As such, those idle times due to IFSs are useful for the lookahead of logical processes.
The parallel discrete event simulation still has many challenges. First, partitioning a network topology automatically in a best way is still difficult. So far we leave this task with users. An inappropriate network partition could severely decrease the performances of the parallel discrete event simulation. In the future, we will investigate how to partition a network more wisely.
Second, NCTUns works with the real-life TCP/IP protocol stack collaboratively. This methodology produces more accurate simulation results.
However, it also increases the difficulty for the parallel discrete event simulation.
Protocols that involve operating data structures in the kernel may not function correctly in a distributed simulation environment. For example, routing protocols, such as OSPF, RIP, etc, need to operate the kernel’s routing table to build routes correctly. In a distributed simulation environment, these routing daemons are running on different machines. In such a situation, the kernel’s routing table of each machine may not be consistent with each other because each routing daemon is only able to update the routing table on its local machine. To address this problem, we need to propose a new mechanism for the parallel simulation to exchange the contents of kernel data structures when needed. This is a huge task that remains to be completed in the future.
6. Conclusion
This thesis presented how conservative synchronization algorithms are applied to NCTUns network simulator with minimum modifications, and therefore most of network protocol modules, existing tools and traffic generators that have been developed can be reused. We study the performance of some conservative synchronization algorithms that have been implemented on NCTUns network simulator, including the asynchronous lazy null message algorithm, the conditional event algorithm and the accelerated null message algorithm. The thesis expands on the limits of packet level simulation using a variety of parallel computation techniques and discusses the impact factors that influence the performance of the parallel discrete event simulation.
This thesis concludes some guidelines to achieve good performances for the parallel simulation. First, the lookahead values should be sufficiently large. This is also the most significant factor for the parallel simulation. Second, making a good partition for a network can reduce the communication overheads between logical processes. Such communication overheads for a logical process include the exchanges of control messages, simulated data packets, and the delays for waiting messages from other logical processes. Third, the density of events (the number of events that should be processed in every second) of a simulation case should be high for the parallel simulation to get better performances than a sequential one. Next, the load balance is important for logical processes, the performance of parallel simulation is decreased by additional waiting time for light-workload logical processes in idle. Finally, it is very important to use a high-throughput and low-delay inter-connection network as the
underlying network system for the parallel simulation. For example, if the used underlying inter-connection network has high-delays for exchanging packets among nodes, logical processes running on these nodes may experience unacceptable message-passing delays, and thus the total execution time for a simulation is increased inevitably.
With respect to conservative synchronization algorithms, the null message algorithm usually has the best performances for the parallel discrete event simulation if the used lookahead values are large sufficiently. The conditional event algorithm has inverse proportion relationship between the efficiency and the density of events. It gets better performances than the null message algorithm while simulation with small lookahead values. The accelerated null message algorithm combines the advantages of the above two algorithms. It often has good performances for all kinds of simulation cases in the parallel discrete event simulation.
Reference
[1] S.Y. Wang, C.L. Chou, C.C. Hwang, A.J. Su, C.C. Lin, K.C. Liao, H.Y. Chen, and M.C. Yu, “Applying Discrete Event Simulation to the NCTUns 1.0 Network Simulator”.
[2] S.Y. Wang, C.L. Chou, C.H. Huang, C.C. Hwang, Z.M. Yang, C.C. Chiou, and C.C. Lin, “The Design and Implementation of the NCTUns 1.0 Network Simulator”, Computer Networks, Vol. 42, Issue 2, June 2003, pp. 175-197.
[3] S. McCanne, S. Floyd, ns-LBNL Network Simulator, http://www.isi.edu/nsnam/ns/
[4] Harvard TCP/IP network simulator 1.0, available at http://www.eecs.harvard.edu/networking/simulator.html
[5] S.Y. Wang, and H.T. Kung, “A Simple Methodology for Constructing Extensible and High-Fidelity TCP/IP Network Simulators”, Proc. IEEE INFOCOM'99 (The Conference on Computer Communications), New York, USA, March 1999, pp.
1134-1143.
[6] S.Y. Wang, and H.T. Kung, “A New Methodology for Easily Constructing Extensible and High-Fidelity TCP/IP Network Simulator”, accepted and to appear in “Computer Networks” Journal.
[7] OPNET Inc., http://www.opnet.com
[8] Riley, G., R.M. Fujimoto, and M. Ammar, A Generic Framework for Parallelization of Network Simulations, in Proceedings of the Seventh International Symposium on Modeling, Analysis, and Simulation of Computer and Telecommunication Systems. 1999. p. 128-135.
[9] Zeng, X., R. Bagrodia, and M. Gerla, GloMoSim: A Library for Parallel Simulation of Large-Scale Wireless Networks, in Proceedings of the 1998 Workshop on Parallel and Distributed Simulation. 1998. p. 154-161.
[10] Wu, H., R. Fujimoto, G. Riley. Experiences Parallelizing a Commercial Network Simulator. In Proceedings of Winter Simulation Conference (WSC). 2001
[11] James Cowie, David M. Nicol and Andy T. Ogielski. Modeling the Global Internet. Computing in Science & Engineering, Vol. 1, No. 1, pp. 42-50, January/February 1999.
[12] James Cowie, Hongbo Liu, Jason Liu, David Nicol and Andy Ogielski. Towards Realistic Million-Node Internet Simulations. Proceedings of the 1999 International Conference on Parallel and Distributed Processing Techniques and Applications (PDPTA'99), June 28 - July 1, 1999, Las Vegas, Nevada.
[13] Scalable Network Technologies, Inc. http://www.qualnet.com/
[14] Y. Ahmet Sekercioglu, Andras Varga and Gregory K. Egan, "Parallel Simulation Made Easy with OMNeT++". In Proceedings of the European Simulation Symposium (ESS 2003), 26-29 Oct, 2003, Delft, The Netherlands.
[15] PDNS, http://www.cc.gatech.edu/computing/compass/pdns/
[16] Perumalla, K.S., et al., Scalable RTI-Based Parallel Simulation of Networks, in Proceedings of the 17th Workshop on Parallel and Distributed Simulation. 2003.
P. 97-104.
[17] Fujimoto, R.M., T. McLean, and K.S. Perumalla. Design of High Performance RTI Software. in the 4th Workshop on Distributed Simulation and Real-Time Applications. 2000. San Francisco, CA.
[18] Fujimoto, R.M., Parallel and Distributed Simulation Systems. Wiley Series on Parallel and Distributed Computing, ed. A.Y. Zomaya. 2000, New York:
Wiley-Interscience. 320.
[19] K.M. Chandy and J. Misra, “Asynchronous Distributed Simulation via a Sequence of Parallel Computations,” Comm. ACM, vol. 24, no. 11, pp. 198-
206, Aug. 1981.
[20] K.M. Chandy and R. Sherman, “The Conditional Event Approach to Distributed Simulation,” Proc. 1989 Simulation Multiconf.: Distributed Simulation, vol. 21,
no. 2, pp. 93-99, Mar. 1989.
[21] V. Jha and R. Bagrodia, “Transparent Implementation of Conservative Algorithms in Parallel Simulation Languages,” Proc. 1993 Winter Simulation Conf., pp. 677-686, Dec. 1993.
[22] R. Bagrodia, V. Jha, and M. Takai, "Performance Evaluation of Conservative Algorithms in Parallel Simulation Languages," Technical Report, UCLA CS Department- 980026.
[23] D. Hensgen, R. Finkel, and U. Manber. Two algorithms for barrier synchronization. International Journal of Parallel Programming, v. 17, n. 1, pp.
1-17, 1988.
[24] S. Bellenot, “Global Virtual Time Algorithms,” Proc. Multiconf. Distributed Simulation, vol. 22, no. 1, pp. 122-127, Jan. 1990.
[25] F. Mattern, H. Mehl, A. A. Schoone, and G. Tel, Global virtual time approximation with distributed termination detection algorithms. Tech. Rep.
RUU-CS-91-32, Dept. of Computer Science, University of Utrecht, The Netherlands, 1991.
[26] Chih-Hua Hwang, “The Design and Implementation of the NCTUns 1.0 Network Simulation Engine”, Master thesis, National Chiao Tung University, Hsinchu, Taiwan, 2002.
[27] Liao Kauo-Chiang, “Porting the NCTUns network simulator to Linux and Supporting Emulation.”, Master thesis, National Chiao Tung University, Hsinchu, Taiwan, 2004.
[28] Riley, G., R.M. Fujimoto, and M. Ammar, A Generic Framework for Parallelization of Network Simulations, in Proceedings of the Seventh International Symposium on Modeling, Analysis, and Simulation of Computer and Telecommunication Systems. 1999. p. 128-135.
[29] Richard M. Fujimoto, Kalyan Perumalla, Alfred Park, Hao Wu, Mostafa H.
Ammar, George F. Riley. "Large-Scale Network Simulation: How Big? How Fast?," mascots, vol. 00, no. , p. 116, 11th 2003.
[30] Alfred Park, Richard Fujimoto and Kalyan Perumalla. “Conservative Synchronization of Large-scale Network Simulations”, ACM/IEEE/SCS Workshop on Parallel and Distributed Simulation (PADS), June 2004.