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