Enabling Large-Scale Multicast Simulation by Reducing Memory Requirements Donghua Xu George F. Riley Mostafa H. Ammar Richard Fujimoto College of Computing Georgia Institute of Technology Atlanta, GA 30332-0280 xu,ammar,fujimoto @cc.gatech.edu College of Engineering School of ECE Georgia Institute of Technology Atlanta, GA 30332-0250 riley@ece.gatech.edu Abstract The simulation of large–scale multicast networks often requires a significant amount of memory that can easily ex- ceed the capacity of current computers, both because of the inherently large amount of state necessary to simulate mes- sage routing and because of design oversights in the mul- ticast portion of existing simulators. In this paper we de- scribe three approaches to substantially reduce the mem- ory required by multicast simulations: 1) We introduce a novel technique called “negative forwarding table” to com- press mutlicast routing state. 2) We aggregate the routing state objects from one replicator per router per group per source to one replicator per router. 3) We employ the NIx– Vector technique to replace the original unicast IP routing table. We implemented these techniques in the ns2 simulator to demonstrate their effectiveness. Our experiments show that these techniques enable packet level multicast simula- tions on a scale that was previously unachievable on mod- ern workstations using ns2. 1. Introduction Unicast communication allows a sending host on the net- work to send data to one receiving host. However when a host needs to send data to many receivers, repeatedly uni- casting the data will result in wasted bandwidth in the net- work and heavy computational burden on the sender. Multi- cast [5] was proposed to economize network bandwidth and the sender’s workload by transmitting at most one copy of the data on any link, and only duplicating the data at branch points in the network where a router has to deliver the data This work is supported in part by NSF under contracts number ANI- 9977544 and ANI-0136936 onto two or more output interfaces. Multicast has a number of potential applications that in- volve simultaneous delivery of identical data to multiple hosts, such as video conferencing, multi-user game, and content-distribution, just to name a few. The multicast re- search is often concerned with large multicast networks, where either the multicast group is large, the number of groups is large, or both. As a result, the scalability of the multicast network simulators becomes a serious concern. For example, Nonnenmacher and Biersack [9] used a math- ematical model to analyze their scalable feedback mecha- nism for large groups, consisting of up to 1 million mem- bers. However they were not able to perform packet-level simulations to validate this analysis. As another example, Shi and Waldvogel [17] proposed a sender-based congestion control approach for multicast traffic and used ns2 to eval- uate their approach. However, they were unable to simulate large multicast groups while at the same time maintaining a large number of SRM flows in the simulation. The limited scalability of existing multicast simulation methods is primarily due to the large amount of state main- tained by the simulators, which is often on a high order of the input size (such as quadratic with the number of nodes, or the product of the number of nodes and number of groups). This state requires a proportional amount of mem- ory in the simulator, which can often exceed the capacity of any contemporary computer system. There are two general approaches that can be used to ad- dress this memory allocation problem in simulations, with- out loss of accuracy in the simulations: 1. We can distribute the simulation task across a number of computers, thereby utilizing the memory of a set of machines. A number of researchers are exploring methods and techniques for scalable network simula- tions using parallel and distributed simulation, such as [16, 15, 12, 11, 8, 4, 20, 1]. Proceedings of the Seventeenth Workshop on Parallel and Distributed Simulation (PADS’03) 1087-4097/03 $17.00 © 2003 IEEE