This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.
1. Introduction
Multicast routing has been increasingly used in computer or communication networks supporting various multimedia applications, such as real-time audio and video conferences, entertainment, and distance learning, [1, 2]. Multicast routing is known as a multicast tree [3], which can reduce the usage of network resource, such as network cost and bandwidth. Multicast tree can be reduced to be a Steiner tree in mathematics [4].
In a real world, a large number of continuous multimedia applications drive the consumers to advance their quality of service (QoS) requirements [2, 5, 6] (e.g., cost, delay, and bandwidth). As we all know, the minimum cost multicast tree (Steiner tree) problem is NP-hard [7] and the minimum diameter multicast tree (Steiner tree) problem is polynomial solvable [8]. Furthermore, the multicast tree problem with additional QoS requirements is frequently harder to solve. For example, in past decade, a number of heuristics [9, 10] and distributed algorithms [11, 12] have been devised for finding a minimum cost delay-constrained multicast tree. Surprisingly, the fixed topology version of this problem, in which the configuration of multicast tree is given in advance with a tree topology, is easier than the classic version. Wang and Jia [13] designed a pseudo-polynomial-time algorithm, and Xue and Xiao [14] devised a full polynomial time approximation scheme. Not only that, we believe the idea of under a fixed topology will play an important role in exploring a desired multicast routing with a variety of QoS requirements.
In many practical settings, each destination is a terminal. A terminal means an end user, who takes charge of receiving and sending data but not branching them, that is, it can not serve as a relay node in charge of copying and branching data to other terminals. In a word, a terminal is a source, a receiver, or both. For instance, a member in video conference not only receives all the others’ real-time images but also sends its real-time images to all the others. In fact, this is a type of general paradigm of many-to-many multicast routing. Provided that all terminals share a common communication channel, one many-to-many multicast tree can be reduced to a terminal Steiner tree (TeST) [15]. The minimum cost TeST problem is known to be NP-hard [15] and the minimum diameter TeST problem is polynomial solvable [8]. Many-to- many multicast tree includes two types, the centralized and decentralized. In the former, a network node with a bootstrap serves as a server in charge of receiving a terminal’s data and then copying and branching them to all the other terminals by using multicast, resulting in a centralized multicast tree, essentially a rooted TeST (with the root at the server node). The centralized multicast tree problem is in fact one-to-many multicast tree problem [13, 14, 16]. In the latter, a terminal sends its data directly to all the others using a common channel, resulting in a decentralized one, an unrooted TeST in essence.
To the best of our knowledge, there have been a number of studies on the unrestricted many-to-many multicast tree mentioned above (terminal Steiner tree) [8, 15, 17–19]; however few studies on the QoS restricted version [16] due to its vast difficulty. Fortunately, we discover that the idea of under a fixed topology could provide us with a new way of studying the restricted version. In this paper, we will study the unrestricted many-to-many multicast tree problem with the objective of cost minimized or delay minimized and/or reliability maximized under a fixed topology, respectively. The approaches and results presented in the rest of the paper will contribute to study the many-to-many multicast tree with QoS restrictions under a fixed topology in the recent future.
The rest of this paper is organized as follows. In Section 2, we introduce the architecture of many-to-many multicast tree under a fixed topology. In Section 3, we make preliminaries, including defining three kinds of metrics of QoS of multicast tree, three QoS optimization problems, and two Euclidean graphs. We present an exact algorithm, respectively, for the centralized and decentralized version of the minimum cost problem in Section 4, the minimum delay problem in Section 5, and maximum reliability problem in Section 6. In Section 7, we give an example to illustrate all the algorithms. In Section 8, we conclude the paper with some research topics.
2. Architecture of Many-to-Many Multicast Tree under a Fixed Topology
A computer or communication network is frequently modeled as an undirected graph [20]. Let
Given any two different nodes
In this paper, we are concerned with the centralized and decentralized multicast trees under a fixed topology, namely, the realization of a given rooted and unrooted TeST topology; see Figure 1. On the top subfigure, the left graph shows a network with each edge having a weight denoting its length and the right graph shows a given rooted TeST topology. A realization of the rooted TeST in the network is distinguished by dashed edges. Considering that every leaf of the TeST is required to be mapped to a fixed node (terminal) and its root is required to be mapped to the server node, the essential work of realizing the TeST in the network is to map all the nonleaves except the root of the TeST to some nonterminals. If we arrange all the nonleaves in the order of from the 2nd level to top and from left to right on a level and label them by numbers
[figures omitted; refer to PDF]
Let
3. Fundamental Preliminaries
In the section, we make some fundamental preliminaries, which will help us to analyze the problems and understand the algorithms proposed in the following.
3.1. Metrics
First of all, we define three kinds of metrics of QoS of tree, including the cost, delay,and reliability of tree.
3.1.1. Cost
We are given an undirected graph
The cost of
Let
3.1.2. Delay
We are given an undirected graph
The delay of
Similarly, we have
The maximum delay of leaf-to-leaf path realization of
Let
The maximum delay of root-to-leaf path realization of
Likewise,
Note that realizations with a minimum diameter or radius are both denoted by
3.1.3. Reliability
We are given an undirected graph
The working probability of
Likewise,
The minimum reliability of leaf-to-leaf path realization of
Let
The minimum reliability of root-to-leaf path realization of
Similarly,
Note that realizations with a maximum diameter or radius reliability are both denoted by
3.2. Problem Definitions
The focus of this paper is three optimization problems of many-to-many multicast tree under a fixed topology from the perspective of three metrics above, which are formally defined as follows.
First of all, we use an INPUT (abbreviated to
Problem 1.
Given an INPUT with every edge
Problem 2.
Given an INPUT with every edge
Problem 3.
Given an INPUT with every edge
3.3. Euclidean Graphs
Given an undirected graph
3.3.1. Shortest-Path Graph
When
Next we construct a new graph
3.3.2. Maximum-Reliability-Path Graph
When
Next, we construct a complete graph
4. Minimum Cost Many-to-Many Multicast Tree under a Fixed Topology
In this section, we study the centralized and decentralized MCMP, respectively.
4.1. Centralized MCMP
According to discussions above in Section 2, the essence of finding a minimum cost multicast tree under a given TeST in the centralized MCMP is to find a minimum cost realization of the rooted TeST topology. In this subsection, we devise a polynomial-time exact algorithm for the centralized MCMP.
Let
Above analysis leads to algorithm MCCT that can find a minimum cost centralized multicast tree under a TeST, which is denoted as
Theorem 1.
Given an INPUT as
Proof.
Step_1 takes
Step_3 only takes
4.2. Decentralized MCMP
By the discussions above in Section 2, to find a minimum cost multicast tree under a given TeST in the decentralized MCMP is essentially to find a minimum cost realization of the unrooted TeST topology. Since an unrooted TeST can be transformed into a rooted TeST by assigning it any nonleaf as its root, we can adapt the algorithm MCCT for finding a minimum cost decentralized multicast tree under an unrooted TeST, which is denoted as
Theorem 2.
Given an INPUT as
Proof.
It is similar to the proof of Theorem 1.
5. Minimum Delay Many-to-Many Multicast Tree under a Fixed Topology
In this section, we study the centralized and decentralized MDMP, respectively.
5.1. Centralized MDMP
In the centralized MDMP, to find a minimum delay multicast tree under a given TeST topology is to find a minimum delay realization of the rooted TeST. In this subsection, we design a polynomial-time exact algorithm for the centralized MDMP.
Let
Based on above analysis, we devise algorithm MDCT to find a minimum delay centralized multicast tree under a TeST, which is denoted as
Theorem 3.
Given an INPUT as
Proof.
It is similar to the proof of Theorem 1.
5.2. Decentralized MDMP
The essence of finding a minimum delay multicast tree under a given TeST in the decentralized MDMP is to find a minimum delay realization of the unrooted TeST topology.
First of all, we can always use the method in [22] to transform an unrooted tree into a rooted tree and further into a binary tree, denoted as
We can use (25) to compute
Theorem 4.
Given an INPUT as
Proof.
It is similar to the proofs of Theorems 1 and 2. Step_2 takes
6. Maximum Reliability Many-to-Many Multicast Tree under a Fixed Topology
In this section, we study the centralized and decentralized MRMP, respectively.
6.1. Constructing an MRPG
MRPG based on
Firstly, we introduce a fundamental Lemma 5.
Lemma 5.
Given an undirected graph
Proof.
On one hand, if
From Lemma 5, we claim that the most reliable paths in
For any edge
We use
Finally,
In essence, above idea of using (29) recursively forms our dynamic programming algorithm for finding all-pairs MRP’s, namely, constructing
Lemma 6.
Given an undirected edge-weighted graph
Proof.
Step_1 spends
6.2. Algorithms
In this section, we present an exact algorithm for the centralized and decentralized MRMP, respectively.
6.2.1. Centralized MRMP
The essence of finding a maximum reliability multicast tree under a TeST topology in the centralized MRMP is to find a maximum reliability realization of the rooted TeST.
Let
Above analysis can be described as algorithm MRCT. It can find a maximum reliability centralized multicast tree under a TeST, denoted as
Theorem 7.
Given an INPUT as
Proof.
It is similar to the proof of Theorem 1.
6.2.2. Decentralized MRMP
To find a maximum reliability multicast tree under a TeST in the decentralized MDMP is essentially to find a maximum reliability realization of the unrooted TeST. We can use the way in [22] to transform an unrooted tree into a rooted tree and further into a binary tree
We can use (31) to compute
Theorem 8.
Given an INPUT as
Proof.
It is similar to the proof of Theorem 4.
7. Illustrative Examples
In this section, we take the network and the binary tree topology shown in Figure 1 as an example to illustrate the six algorithms proposed above (Algorithms 1–6).
Algorithm 1:
Step_1: Use the Floyd’s algorithm to find all-pairs shortest
paths and then obtain
Step_2: for {all
end for
for all
if
Compute
end for all
Compute
end for
end if
end for
Step_3: Trace out
Procedure 1: Procedure CMRP.
Input: an undirected edge-weighted graph
Output: all-pairs MRP’s of
Step_1: for
end for
Step_2: for
for
if
else
Compute
end if
end for
end for
Algorithm 2:
Step_1: Use the Floyd’s algorithm to find all-pairs shortest paths
and then obtain
Step_2: for {all
end for
for {all
Compute
end for
Step_3: Trace out
Algorithm 3:
Step_1: Use the Floyd’s algorithm to find all-pairs shortest paths
and then obtain
Step_2: for {all
end for
for all
if
Compute
else for all
Compute
end for
end if
end for
Step_3: Trace out
Algorithm 4:
Step_1: Use the Floyd’s algorithm to find all-pairs shortest paths
and then obtain
Step_2: for {all
end for
for {all
Compute
end for
Step_3: Trace out
Algorithm 5:
Step_1: Use procedure CMRP to find all-pairs maximum
reliability paths and then obtain
Step_2: for {all
end for
for all
if
Compute
else for all
Compute
end for
end if
end for
Step_3: Trace out
Algorithm 6:
Step_1: Use procedure CMRPto find all-pairs maximum
reliability paths and then obtain
Step_2: for {all
end for
for {all
Compute
end for
Step_3: Trace out
Suppose the integer on every link of the network in Figure 1 represents the quantity of cost on the link. For instance, each unit of cost is 0.8 dollar; then the cost on edge
[figures omitted; refer to PDF]
Suppose the integer on every link of the network in Figure 1 represents its amount of delay. For example, every unit of delay is 1 ms, then the delay on link
[figures omitted; refer to PDF]
Suppose that every link
[figures omitted; refer to PDF]
8. Conclusions
This paper introduces the architecture of a many-to-many multicast tree with fixed topology, reduces it to a realization of the given TeST topology, and applies the idea of under a fixed topology to deal with three optimization problems, that is, the minimum cost, minimum delay, and maximum reliability multicast tree under a fixed topology problem. Each problem includes the centralized and decentralized versions. For the both versions of each problem, an exact algorithm is devised using the dynamic programming approach, respectively. On the condition that we are given a collection of alternative tree topologies, it is of interests to explore a best topology from all the alternative tree topologies.
Moreover, if we consider two or more weights on every link of a network, it is an interesting and important research topic how to devise an efficient algorithm for the multicast tree problem under a fixed topology with multiple objectives or with a single objective and at least one constraint.
Acknowledgments
This research was supported in part by the Key Research Grant xkyzd201207 (Ding) and the 2010 Excellent Young Teacher Grant 19093-88 (Ding) of Zhejiang Water Conservancy and Hydropower College.
[1] F. Kuo, W. Effelsberg, J. J. Garcia-Luna-Aceves, Multimedia Communications: Protocols and Applications, 1998.
[2] Z. Wang, J. Crowcroft, "Quality-of-service routing for supporting multimedia applications," IEEE Journal on Selected Areas in Communications, vol. 14, pp. 1228-1234, DOI: 10.1109/49.536364, 1996.
[3] K. Bharath-Kumar, J. M. Jaffe, "Routing to multiple destinations in computer networks," IEEE Transactions on Communications, vol. 31, pp. 343-351, DOI: 10.1109/TCOM.1983.1095818, 1983.
[4] D. Z. Du, J. M. Smith, J. H. Rubinstein, Advances in Steiner Trees, 2000.
[5] G. Apostolopoulos, R. Guerin, S. Kamat, S. Tripathi, "Quality of service based routing: a performance perspective," Proceedings of the Applications, Technologies, Architectures, and Protocols for Computer Communication (ACM SIGCOMM '98), vol. 98, pp. 17-28, .
[6] B. Wang, J. C. Hou, "Multicast routing and its QoS extension problems," IEEE Network Algorithms, and Protocols, vol. 14, pp. 22-36, 2000.
[7] M. R. Garey, D. S. Johnson, Computers and Intractability: A Guide to the Theory of NP-Completeness., 1979.
[8] W. Ding, K. Qiu, "Algorithms for the minimum diameter terminal steiner tree problem," Journal of Combinatorial Optimization,DOI: 10.1007/s10878-012-9591-7, 2013.
[9] V. P. Kompella, J. C. Pasquale, G. C. Polyzo, "Multicast routing for multimedia communication," IEEE/ACM Transactions on Networking, vol. 1, pp. 286-292, DOI: 10.1109/90.234851, 1993.
[10] Q. Zhu, M. Parsa, J. Garcia-Luna-Aceves, "A source-based algorithm for delay-constrained minimal-cost multicasting," Proceedings of the IEEE International Conference on Computer Communications (INFOCOM '95), pp. 377-384, .
[11] X. Jia, "A distributed algorithm of delay-bounded multicast routing for multimedia applications in wide area networks," IEEE/ACM Transactions on Networking, vol. 6 no. 6, pp. 828-837, DOI: 10.1109/90.748092, 1998.
[12] V. P. Kompella, J. C. Pasquale, G. C. Polyzos, "Two distributed algorithms for multicasting multimedia information," Proceedings of the IEEE Computer Communications and Networks (ICCCN '93), pp. 343-349, .
[13] L. Wang, X. Jia, "Note fixed topology steiner trees and spanning forests," Theoretical Computer Science, vol. 215, pp. 359-370, DOI: 10.1016/S0304-3975(98)00216-3, 1999.
[14] G. Xue, W. Xiao, "A polynomial time approximation scheme for minimum cost delay-constrained multicast tree under a steiner topology," Algorithmica, vol. 41 no. 1, pp. 53-72, DOI: 10.1007/s00453-004-1119-9, 2004.
[15] G. Lin, G. Xue, "On the terminal steiner problem," Information Processing Letters, vol. 84, pp. 103-107, DOI: 10.1016/S0020-0190(02)00227-2, 2002.
[16] M. Moh, B. Nguyen, "QoS-guaranteed one-to-many and many-to-many multicast routing," Computer Communications, vol. 26, pp. 652-669, DOI: 10.1016/S0140-3664(02)00198-6, 2003.
[17] Y. H. Chen, "An improved approximation algorithm for the terminal steiner tree problem," Computational Science and Its Applications (ICCSA '11), vol. 6784, pp. 141-151, .
[18] D. E. Drake, S. Hougrady, "On approximation algorithms for the terminal steiner tree problem," Information Processing Letters, vol. 89, pp. 15-18, DOI: 10.1016/j.ipl.2003.09.014, 2004.
[19] F. V. Martineza, J. C. D. Pinab, J. Soares, "Algorithm for terminal steiner trees," Theoretical Computer Science, vol. 389, pp. 133-142, 2007.
[20] J. A. Bondy, U. S. R. Murty, Graph Theory with Application., 1976.
[21] W. Ding, G. Xue, "A linear time algorithm for computing a most reliable source on a tree network with faulty nodes," Theoretical Computer Science, vol. 412 no. 3, pp. 225-232, DOI: 10.1016/j.tcs.2009.08.003, 2011.
[22] A. Tamir, "An O(pn 2 ) algorithm for the p-median and related problems on tree graphs," Operations Research Letters, vol. 19, pp. 59-64, DOI: 10.1016/0167-6377(96)00021-1, 1996.
You have requested "on-the-fly" machine translation of selected content from our databases. This functionality is provided solely for your convenience and is in no way intended to replace human translation. Show full disclaimer
Neither ProQuest nor its licensors make any representations or warranties with respect to the translations. The translations are automatically generated "AS IS" and "AS AVAILABLE" and are not retained in our systems. PROQUEST AND ITS LICENSORS SPECIFICALLY DISCLAIM ANY AND ALL EXPRESS OR IMPLIED WARRANTIES, INCLUDING WITHOUT LIMITATION, ANY WARRANTIES FOR AVAILABILITY, ACCURACY, TIMELINESS, COMPLETENESS, NON-INFRINGMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Your use of the translations is subject to all use restrictions contained in your Electronic Products License Agreement and by using the translation functionality you agree to forgo any and all claims against ProQuest or its licensors for your use of the translation functionality and any output derived there from. Hide full disclaimer
Copyright © 2013 Wei Ding et al. This is an open access article distributed under the Creative Commons Attribution License (the “License”), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited. Notwithstanding the ProQuest Terms and Conditions, you may use this content in accordance with the terms of the License. https://creativecommons.org/licenses/by/4.0/
Abstract
Many-to-many multicast routing can be extensively applied in computer or communication networks supporting various continuous multimedia applications. The paper focuses on the case where all users share a common communication channel while each user is both a sender and a receiver of messages in multicasting as well as an end user. In this case, the multicast tree appears as a terminal Steiner tree (TeST). The problem of finding a TeST with a quality-of-service (QoS) optimization is frequently NP-hard. However, we discover that it is a good idea to find a many-to-many multicast tree with QoS optimization under a fixed topology. In this paper, we are concerned with three kinds of QoS optimization objectives of multicast tree, that is, the minimum cost, minimum diameter, and maximum reliability. All of three optimization problems are distributed into two types, the centralized and decentralized version. This paper uses the dynamic programming method to devise an exact algorithm, respectively, for the centralized and decentralized versions of each optimization problem.
You have requested "on-the-fly" machine translation of selected content from our databases. This functionality is provided solely for your convenience and is in no way intended to replace human translation. Show full disclaimer
Neither ProQuest nor its licensors make any representations or warranties with respect to the translations. The translations are automatically generated "AS IS" and "AS AVAILABLE" and are not retained in our systems. PROQUEST AND ITS LICENSORS SPECIFICALLY DISCLAIM ANY AND ALL EXPRESS OR IMPLIED WARRANTIES, INCLUDING WITHOUT LIMITATION, ANY WARRANTIES FOR AVAILABILITY, ACCURACY, TIMELINESS, COMPLETENESS, NON-INFRINGMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Your use of the translations is subject to all use restrictions contained in your Electronic Products License Agreement and by using the translation functionality you agree to forgo any and all claims against ProQuest or its licensors for your use of the translation functionality and any output derived there from. Hide full disclaimer
Details
1 Zhejiang Water Conservancy and Hydropower College, Hangzhou, Zhejiang 310018, China
2 Department of Mathematics, Shaoxing University, Shaoxing, Zhejiang 312000, China