doi:10.1016/S0140-3664(02)00239-6
Copyright © 2002 Elsevier Science B.V. All rights reserved.
Distributed multicast tree generation with dynamic group membership
References and further reading may be available for this article. To view references and further reading you must
purchase this article.
Frank Adelstein
, a, Golden G. Richard, III
, b and Loren Schwiebert
,
, c
a Odyssey Research Associates, Ithaca, NY 14850, USA
b Department of Computer Science, University of New Orleans, New Orleans, LA 70148, USA
c Department of Computer Science, Wayne State University, 5143 Class Avenue, Detroit, MI 48202-3929, USA
Received 26 February 2002;
revised 28 August 2002;
accepted 10 October 2002. ;
Available online 10 December 2002.
Abstract
As group applications have become more prevalent, efficient network utilization becomes a growing concern. Multicast transmission may use network bandwidth more efficiently than multiple point-to-point messages, however, creating optimal multicast trees is prohibitively expensive. For this reason, heuristic methods are generally employed. These heuristics are often based on a Steiner tree approach, which is known to produce multicast trees that achieve an efficient use of network resources. Many such algorithms, both centralized and distributed, have been proposed to generate ‘good’ multicast trees. Even these heuristics typically have significant execution times, however, so changes to the initial group of multicast participants during generation of the tree is likely. Furthermore, periodic rebuilding of multicast trees or sub-trees has been proposed to improve the efficiency of these trees as the group membership evolves. Changes in group membership are also possible during this rebuilding process. Existing algorithms, however, either do not support changes to the multicast group during building of the tree or they impose unrealistic restrictions, such as no overlapping modifications or regeneration of the tree after every change. These restrictions prevent the use of such algorithms in many situations, e.g.; networks with mobile hosts. To remedy this, we propose an efficient distributed algorithm that supports dynamic changes to the multicast group during tree building and allows concurrent join/leave operations. In this paper, we present the algorithm, a proof of correctness, and detailed simulation results.
Author Keywords: Multicast protocols; Dynamic multicast groups; Distributed Steiner algorithms; Mobile networks
Fig. 1. The proposed algorithm begins with fragments each containing only a single multicast member (A). These fragments are gradually merged (B, C), with a single member serving as the leader of each larger fragment. In the next step (not shown), the two large fragments in C will merge to form a single fragment containing all the multicast members.
Fig. 2. Two fragments merge successfully. The MERGE REQUEST from the leftmost leader results in an ACCEPT. A chain of CONNECT messages reserve nodes along the shortest path between the fragments, then a chain of MERGED messages finalizes the reservations. The rightmost leader, upon receiving the MERGED message, sends a list of its fragment members to be incorporated into the merged fragment's member list. The leftmost leader node becomes the leader for the merged fragment.
Fig. 3. Two merging fragments collide.
Table 1. Relative performance with average DEGREE=3, 10% multicast, no late joins/leaves

Table 2. Relative performance with 200 nodes, average DEGREE=3, no late joins/leaves

Table 3. Relative performance with 200 nodes, 10% multicast, no late joins/leaves

Table 4. Relative performance with average DEGREE=3, 10% multicast, join/leave RATIO=4:1

Table 5. Relative performance with 200 nodes, average DEGREE=3, join/leave RATIO=4:1

Table 6. Relative performance with 200 nodes, 10% multicast, join/leave RATIO=4:1

Table 7. Relative performance with 200 nodes, 10% multicast, average DEGREE=3, varying add/delete ratio

Corresponding author. Tel.: +1-313-577-5474; fax: +1-313-577-6868