Skip to content


  • Research
  • Open Access

Integrated multicast routing algorithms considering traffic engineering for broadband IPTV services

EURASIP Journal on Wireless Communications and Networking20132013:127

  • Received: 2 February 2013
  • Accepted: 24 April 2013
  • Published:


With the rapid growth of broadband network deployment and multimedia streaming development, Internet protocol (IP) multicast networks have become a delivery mechanism for Internet protocol television (IPTV). IPTV provides a two-way interactive service to the viewers, which generates the path request for IP multicast network. Thus, it is essential to evaluate the path rejection probability accurately and further to reduce it. In this paper, we propose a new dynamic multicast routing algorithm for broadband IPTV services and apply it to three legacy algorithms. These integrated multicast routing algorithms support the minimum cost and the traffic engineering features, in order to maximize the acceptance rate for bandwidth constraint path request under IPTV service environments. Furthermore, we compare their network performances in terms of the acceptance rate and delay by experimental simulations. The simulation result gives us that the nearest node first Dijkstra algorithm can be the optimal solution of multicast connection for IPTV service delivery.


  • Internet protocol television
  • Multicast routing algorithm
  • Quality of service
  • Traffic engineering

1. Introduction

With the advancement of broadband network deployment and digital multimedia streaming technology to residences, the Internet protocol television (IPTV) service has been pervasively adapted and actively studied. The IPTV is multimedia services delivered over Internet protocol (IP)-based networks managed to support the required level of quality of service (QoS)/quality of experience (QoE). From the perspective of QoS/QoE, the IPTV service should provide a two-way interactive communication between the content provider and end-users to efficiently satisfy the broadband capacity requirement of a large number of viewers, for which IP multicast is considered as a promising solution. QoS and QoE have been identified as critical requirements of IPTV services, and they are the challenging issues for IP multicast networks [13]. QoS/QoE guarantee for IPTV services could be achieved by the sufficient resource provisioning and the admission control functionalities with bandwidth constraint. In this regard, the multicast routing path selection scheme should be designed with the traffic engineering in mind.

The importance of multicast routing has been emphasized due to the more bandwidth usage of network than unicast routing. Most multicast routing algorithms have been developed to minimize the cost of the constructed multicast tree. There are two kinds of trees being considered: Steiner tree and spanning tree. Both trees are for the minimum hop count considering different sets of nodes, i.e., the Steiner trees reach a subset of every node of the network while a spanning tree reaches every node of the network [4]. Since the problem of finding a Steiner tree is known to be NP complete even in the case of each link has unit cost [5, 6], most previous researchers have focused on developing heuristic algorithms that take polynomial time and produce suboptimal results [79]. The multicast routing problem has been formulated as a constrained Steiner tree problem in which an end-to-end delay bound needs to be satisfied for each path in the tree [10]. From the perspective of users and network load, a multicast routing algorithm maximizes the request acceptance rate when a multicast tree that satisfies the minimum hop count is used for routing request [11].

As of the widest shortest path (WSP) algorithm using Dijkstra algorithm in the unicast routing algorithm, the selection rule that decides which particular path from the set of feasible paths is to be picked is rather simplified. Also, the WSP algorithm used in multicast routing algorithm often causes various sorts of resource waste phenomena such as alternate path blocking (an extensively utilized alternate path of a session starves another one).

More recently, minimum interference routing algorithm (MIRA) that aims to select path as to ensure that the chosen path blocks future requests to the least possible extent is proposed [12]. The objective of MIRA is to maximize the minimum residual capacities for every single session. The extension to multicast routing algorithm considering future requests is also studied in [13]. However, the research does not deal with the future requests actually. Obviously, there is a tradeoff between complexity of computing the interferences and the improvement of performance. Intuitively, therefore, the minimum resources, e.g., a bandwidth and a hop count, used at the given situation are the best way to consider a future request when the information of the future request is not known.

In this paper, we propose a new dynamic multicast routing algorithm that satisfies bandwidth constraints with the minimum usage of bandwidth and apply it to three different algorithms. Furthermore, we compare the performance of the proposed algorithm with existing multicast routing algorithm. The performance of the proposed algorithm is measured in terms of the cost of the multicast tree found and evaluated through simulations under different network topologies. Comparisons of the performances show that the proposed algorithm outperforms the existing algorithm in terms of the cost and network load. Furthermore, the proposed scheme can be easily extended to solve the multicast routing problem with multiple constraints, e.g., an end-to-end delay constraint and an end-to-end loss probability constraint.

The remainder of this paper is organized as follows. System model and mathematical formulation briefly describes the system model and the mathematical formulations. In bandwidth constraint multicast routing algorithms, the bandwidth constraint multicast routing algorithms using the previous routing algorithms are explained. The performance of the modified multicast routing schemes is evaluated through simulations and compared to others in the ‘Performance evaluation’ section. Finally, conclusions are given in the ‘Conclusion’ section.

2. System model and mathematical formulation

We consider the network with a set of nodes, e.g., routers supporting an explicit route. A subset of these nodes is assumed to be ingress-egress nodes among which multicast connections can be established. For a multicast connection in a backbone, the source is one of the ingress nodes, and the destinations are a group of the egress nodes. On the other hand, for a multicast connection in an access network, the source is one of the ingress node, and the destinations are a group of all the nodes. Both connections are considered to analyze the effect of proposed dynamic multicast routing algorithms on the connections and find the optimal algorithm to the corresponding connection.

We assume that requests of multicast connections come in one at a time and any bandwidth information on links is known in the initial routing, barely changes during the routing period, and is available to the server which performs a centralized route computation by provisioning or administrative mechanism. In addition, we assume that the request either arrives directly to the server in the case of manual setting or may first arrive at the ingress node and then query to the server to generate the explicit route tree. For calculating the explicit multicast tree, the server needs to know the current topology and available bandwidth. Therefore, we assume that the topology is either known administratively or that the link-state database of node is accessible. Once the information of the explicit multicast tree is determined by the server, it is distributed to the nodes included in the multicast connection in order to reserve the bandwidth of request on each link. The multicast routing algorithm keeps the initial link bandwidth and the record of the residual bandwidth of all the links.

The objective of multicast routing algorithms is to determine paths immediately along which each demand for a multicast connection is routed so as to make optimal use of the network resource. These multicast routing algorithms must satisfy the following requirements in order to be applicable to the real network.

2.1 Online algorithm

In the legacy multicast, the multicast route tree is built by exchanging join/leave messages between the network elements, whereby the branch of multicast route tree would be constructed or cut off. However, considering the feature of the IPTV network environment where the multicast channel is rapidly changed, it is difficult to accommodate the fast channel switching with the legacy approach. Moreover, the legacy approach cannot support the efficient utilization for core network resource. These limitations of the legacy approach can be resolved by introducing the multicast admission control techniques [14, 15] that provide the key functionalities such as admission control and resource reservation for the multicast sessions. Note that these techniques commonly require online algorithms in order to cope with the change of the network environment adaptively.

For traffic engineering purpose, it is usually assumed that all of unicast and multicast demands as well as all source and destinations groups are known at the time of initial routing as in the case of offline algorithm. Even though it is impossible to have such information in the real situation of the network, it is necessary for network design. Furthermore, in the offline (the topology and all demands are known) model, the objective is usually to utilize the networks in the most efficient way by minimizing the resource usage for the demand that are being routed with knowledge of the demand matrix. In practice, since the possibility of having to route future demands cannot be excluded, the online routing algorithm must be capable of routing requests in an optimal manner which minimize the usage of network capacity for provisioning the more capacity on the future request of demand when the requests are arrived sequentially.

2.2 Computational cost

Any heuristic or approximation algorithm must be implemented on the server and must execute within a reasonable time. More sophisticated and more frequent path selection computations need more computation cost of a routing algorithm and increment of computational complexity can usually be compensated by applying the faster processors and bigger memories.

Before we describe the multicast routing algorithm, we define some of the notations which will be used for mathematical formulations. Let G (N, L, B) be the given network, where N, L, and B are the set of nodes, the set of links, and the bandwidth of the links, respectively. Let n and m be the number of nodes and the number of links in the network, respectively. We assume that all bandwidths and demands for bandwidths are integral. The nodes involved in a multicast connection can be thought of as the set of potential ingress-egress group nodes. We denote a generic element of this set by (s, G, b), where b is integral units of the bandwidth demand.

Let M be the n × m node-link incidence matrix with each component given as follows. Each row in this matrix corresponds to a node in the graph and each column of the matrix corresponds to a link. Each column has exactly two nonzero entries. The column corresponding to link (u, v) has a +1 in the row u and a −1 in the row v, and zeros corresponding to all other rows. Assume that the links are numbered sequentially in any arbitrary order. Let x sG = (x1,, x m ) t , where t represents transpose, be an m × 1 vector corresponding to (s, G) with each component consisting of bandwidth of each link required to multicast. Let C = (C1,,C m ) t be an m × 1 vector corresponding to every link (u, v) in the network with each component C j represents residual capacity of link j. The initial value of C is set to B = (b,, b) t . Let e sG be an n × 1 vector with an integer k is placed in a branch node which copies k packets to the outgoing links. For example, when a multicast stream at the incoming interface has to be transferred to three streams at the outgoing interface, k is set to 2. +1 is placed in the position of node s if s is not a branch node, while −1 is placed in the position of destination nodes in group G. Note that the summation of all of the components of e sG is zero. Note that at this point, other demands may already have been routed and the residual capacities of the links have been updated to reflect these routed demands. The objectives of the proposed routing algorithms are increasing the request acceptance rate and provisioning the residual bandwidth of the whole network for a future request.
max F 1 K x sG
where F1 is the feasible set given by
F 1 = x sG : M x sG = b e sG , x sG C , 0 x i 0 , b
and K(x sG ) represents the number of x sG in F1.
max F 2 j = 1 m C j
where F2 is the feasible set given by
F 2 = C : M x sG = b e sG , x sG C , min j = 1 m x sG

Equation 1 means that maximizing the number of available paths result from the previous requests setup established with the minimum resource of the network, while Equation 3 maximizes the summation of residual link capacity.

To illustrate the formulation, the simple example is given in Figure 1. In the example, we assume that the element of G(N, L, B) is given by (s, G, b) = (e1, {e3, e4}, 2). Then, e sG and x sG can be represented into two different ways: [1 1–1 -1 0] and [2 2 2 0 0], respectively, or [1 0 0 0 1] and [2 0 2 2 2], respectively. We note that the hop count of the first path is 3 while that of the second is 4, which implies that the first path is better than the second one for the future request.
Figure 1
Figure 1

Illustrative example.

We do not want to solve the integer program to calculate explicit routes. Later, we will present algorithms which avoid solving the integer program and yet work very well in practice. In the following section, we explain the various multicast routing algorithms considering the residual bandwidth of network and apply the proposed algorithm to each multicast routing algorithm.

3. Bandwidth constraint multicast routing algorithms

In this section, we outline the various multicast routing algorithms considering the residual bandwidth of network. In order to establish multicast connections, a tree rooted from a source node to receivers is configured. A multicast tree is the connectivity between the source node and the multicast group receivers through the mediate nodes. The multicast tree algorithm without a modification could drop a request only if the demand of users is not considered. The routing algorithm should be modified in consideration of the residual bandwidth of the network and the demand of user. The basic method to configure a tree is using Dijkstra algorithm. The Dijkstra algorithm is used to help finding the shortest path through a mesh of network connections based on the path with the least cost. While a spanning tree spans all nodes of a given network graph, a Steiner tree spans a given subset of nodes. The various algorithms are proposed to configure a tree for a multicast connection. In this paper, these algorithms are modified for satisfying the bandwidth demand and for the purpose of minimizing a hop count of the tree in order to expand the residual capacity of the network. A multicast routing algorithm using Dijkstra algorithm is explained first.
Algorithm MTDAR converts the given graph of input to the graph G in which the links with bandwidth less than b unit are eliminated. Then, each path of destination nodes is added on the tree. Each path has the minimum hop count of G. A sample execution of MTDAR is shown in Figure 2. The tree is configured regardless of the hop count of paths. The time complexity of the algorithm is O(n2).
Figure 2
Figure 2

Sample execution of MTDAR. (a) An example of graph. (b) The modified graph in which the links with bandwidth less than b units are eliminated. (c) The objective multicast tree.

Figure 3 shows a sample execution of the MSTSAR algorithm. Figure 3a is the given graph G. The links with bandwidth less than b are eliminated and converted to G in Figure 3b. The minimal spanning tree algorithm could be run on the nodes involving a multicast connection. The graph G L of the source node and destination nodes is produced in order to perform spanning tree algorithm such as in Figure 3c. The minimal spanning tree is made for a Steiner tree with the minimum hop count. Each path with the minimum hop count is added on the final tree. The time complexity of the algorithm is O(n × n G 2).
Figure 3
Figure 3

Sample execution of MSTSAR. (a) An example of graph. (b) The modified graph in which the links with bandwidth less than b units are eliminated. (c) The virtual graph which is obtained by executing the minimal spanning tree algorithm on the modified graph. (d) The virtual tree including all the egress nodes. (e) The multicast tree including the egress nodes, 2, 11, 12 and 3. (f) The multicast tree including all the egress nodes.

The Dijkstra shortest path algorithm is run from source node s until every node in the group G is reached. The path of node nearest from source s added first to the Steiner tree and set the costs of all the links along this path to zero. The algorithm runs recursively on the remaining nodes in group G. Setting these edge costs to zero encourages future runs of Dijkstra algorithm to use them. This is consistent with the fact that increased sharing of paths among destinations leads to lower cost tree. A sample execution of NNFDAR is shown in Figure 4. The procedure until Figure 4b is the same as the previous algorithm. The costs of the links along the path are set to zero at Figure 4c. The final tree in Figure 4d is produced. The time complexity of the algorithm is O m × n G + n × n G 2 .
Figure 4
Figure 4

Sample execution of NNFDAR. (a) An example of graph. (b) The modified graph in which the links with bandwidth less than b units are eliminated. (c) The multicast tree in which the costs of the links toward the nearest nodes are set to zero. (d) The objective multicast tree.

4. Performance evaluation

In this section, we present simulation results for the modified multicast routing algorithms using Steiner tree algorithms. We compare three algorithms, MTDAR, MSTSAR, and NNFDAR. Most of the performance comparison shown in this paper is done using the network shown in Figure 5. For this network, the capacities of the light links and the dark links are 100 and 400 Mbps, respectively, and each link is bidirectional. The average number of destinations for a multicast connection is 5 and varies from 2 to 9. The destination nodes include all edges of the network, as shown in Figure 5. Each request specifies a source and a set of destinations for a new group randomly. We assume that there are no requests for joining and leaving group. Each request requires an integer bandwidth demand with the parameter μ b exponentially distributed and is generated uniformly during the unit time. The connection holding time is exponentially distributed with the parameter μ h . We give the results for ten trials run on the network. Each trial used a different random seed, thus varying the bandwidth requirement, the source and destinations for each simulation.
Figure 5
Figure 5

Simulation network.

Figure 6 shows that the numbers of reserved and rejected requests increase accumulatively when the total number of requests increases as the time elapses. Note that the total number of requests is the summation of reserved and rejected request. The request acceptance rate of NNFDAR is higher than those of MTDAR and MSTSAR. Especially note that the acceptance rate of NNFDAR and MSTSAR is higher than MTDAR since these two algorithms are considering the minimum hop count in the multicast connection. Obviously, the residual bandwidth of the network is reduced as the request acceptance rate increases, as shown in Figure 7. Table 1 gives us the explicit results for comparison of these algorithms.
Figure 6
Figure 6

Number of acceptances.

Figure 7
Figure 7

Residual bandwidth.

Table 1

Performance comparison


Percentage of reserved requests

Percentage of residual bandwidth


83% (305/361)

84% (7,742/9,200)


73% (265/361)

84% (7,805/9,200)


25% (93/361)

92% (8,688/9,200)

In Figure 8, the acceptance rates of the three algorithms are investigated for the given request holding time and demand bandwidth. The y-axis plots the total number of multicast connection reserved for each trial. In our simulation, the partial fulfillment of request that establishes a connection to any part of subset of receivers is not allowed in order to compare the performances of algorithms. We observe that algorithm NNFDAR always performs substantially better than MSTSAR, which performs conspicuously better than algorithm MTDAR. The reserved number of requests in Figure 8b oscillates more than that of Figure 8a because the large value of demand and holding time of a request distribute the acceptance rate randomly. In Figure 9, the sum of residual bandwidth of the network is observed as for the given request holding time and demand bandwidth. Also, the demand bandwidth and holding time of requests increase, the probability to reserve the bandwidth requests successfully is distributed randomly.
Figure 8
Figure 8

Number of acceptances on the repeated trials. (a) Low bandwidth condition. (b) High bandwidth condition.

Figure 9
Figure 9

Average residual bandwidth on the repeated trials. (a) Low bandwidth condition. (b) High bandwidth condition.

In the backbone network, the ingress and egress nodes are located at the edge of the network while the ingress and egress nodes can be located at the core of the network. In order to simulate this situation, we assume that the source and destination nodes of group include the core node of the network. The average number of destination nodes for a multicast connection is 7.5 and varies from 2 to 15. The gap between the number of reserved requests of NNFDAR and MSTSAR is diminished in Figure 10 since the NNFDAR algorithm is more suitable for access network. The result gives us that there is the most number of reserved request of NNFDAR on each trial. The NNFDAR algorithm provides the optimal solution for multicast connection.
Figure 10
Figure 10

Number of acceptances and average residual bandwidth for the core network deployed with nodes. (a) Low bandwidth condition. (b) High bandwidth condition.

4.1 Remarks

In order to apply the proposed multicast routing algorithms on an overlay multicast network, the hop count from sender to receivers should be considered for a delay-sensitive multicast application. In overlay multicast network, a sender transmits the application data to a group of receivers using IP multicast, IP unicast, or multicast-in-unicast. Overlay multicast routing algorithms have two main performance objectives: first, routing algorithms must use network resources efficiently to carry the traffic of demand, and second, routing algorithms must minimize the end-to-end delay. However, these two objectives are two aspect of a tradeoff because a constraint of end-to-end delay multicasting tree makes center nodes traffic concentration so that the drop rate of requests increase. On the other hand, increasing overall network usage results in distributing load on several different nodes, then this makes the path longer and accumulates more delay. Thus, how to optimize the two parameters is a complexity problem.

An overlay multicast network can be modeled as a complete graph because there exists a unicast path between every pair of nodes. The proposed routing algorithm runs on the bandwidth constraint of requests. The end-to-end delay of multicast tree can be obtained by counting the number of hops between a sender and the farthest receiver. MTDAR algorithm can be used for an application requiring a constraint as minimum as possible. The relations of trade off between delay and acceptance rate are shown in Figures 10 and 11. While NNFDAR is good for the network resource, MTDAR fits on the delay-sensitive application.
Figure 11
Figure 11

Average length of the longest path.

5. Conclusions

This paper presents a new dynamic multicast routing algorithm for broadband IPTV services that satisfies bandwidth constraints with the minimum usage of bandwidth in order to accommodate the feature of the IPTV network environment where the multicast channel changes rapidly (or frequently). From a traffic engineering perspective, the residual bandwidth is considered as a criterion for measuring the acceptance rate of the future request on the multicast routing path. We apply it to three different types of legacy algorithms and compare their network performances. From the simulation results, we derive that the NNFDAR algorithm is the best in terms of the acceptance rate of request, while it shows good performance in the second from the perspective of the delay. Thus, the NNFDAR can be considered as an optimal solution of multicast connection for IPTV service delivery.

Authors’ information

SY received his B.S. degree in Control Instrumentation Engineering from Hankuk University of Foreign Studies in 1998. He received his M.S. and Ph.D. degrees in Electronics Engineering and Communication Engineering from Korea University, Seoul, Korea, in 2001 and 2006, respectively. He is currently working in the Telecommunication Systems Division at Samsung Electronics Co., Ltd. of Korea. His current interest is the call processing system of WiMAX and sensor networks.

TS received his Ph.D. degree in Information Security from Korea University, Seoul, Korea, and his M.S. and B.S. degrees in Computer Engineering from Ajou University, Suwon, Korea. From August 2005 to February 2011, he was with the Samsung Electronics of Korea. Since 2011, he has been a professor at the Division of Information and Computer Engineering, Ajou University, Suwon, Korea. His research interests include convergence platform security, mobile cloud computing security, mobile/wireless network security, WPAN/WSN security, anomaly detection algorithms, and machine learning applications.

EJK received his B.S., M.S., and Ph.D. degrees in Electronics and Computer Engineering from Korea University, Seoul, Korea, in 2004, 2006, and 2013, respectively. From September 2005 to December 2005, he was with the Next Generation Wireless Communication (NGWC) Lab., Intel Korea R&D Center at Intel Corporation. From February 2006 to July 2009, he was with the Digital Media & Communications (DMC) R&D Center at Samsung Electronics Co., Ltd. of Korea. Since August 2009, he has been with the Advanced Institute of Technology at KT Corporation, where he is currently a senior researcher. His research interests include wireless/mobile networks with an emphasis on QoS guarantee and adaptation, wireless sensor networks, wireless LAN/MAN/PAN, next-generation mobile networks, and machine-to-machine communications.



This research was supported by Basic Science Research Program through the National Research Foundation of Korea (NRF) funded by the Ministry of Education, Science and Technology (no. 2012R1A1A1010667).

Authors’ Affiliations

Telecommunication Systems Division, Samsung Electronics Co., Ltd., Suwon, 443-742, South Korea
Division of Information and Computer Engineering, Ajou University, Suwon, 443-749, South Korea
Advanced Institute of Technology, KT Corporation, Umyeon-dong, Seocho-gu, Seoul, 137-792, South Korea


  1. Xiao Y, Du X, Zhang J, Hu F, Guizani S: Internet protocol television (IPTV): the killer application for the next generation internet. IEEE Commun. Mag. 2007, 45(11):126-134.View ArticleGoogle Scholar
  2. Sadiku MNO, Nelatury SR: IPTV: an alternative to traditional cable and satellite television. IEEE Potentials 2011, 30(4):44-46.View ArticleGoogle Scholar
  3. Zeadally S, Moustafa H, Siddiqui F: Internet protocol television (IPTV): architecture, trends, and challenges. IEEE Syst. J. 2011, 5(4):518-527.View ArticleGoogle Scholar
  4. Wu BY, Chao K: Spanning Trees and Optimization Problems. Boca Raton: Chapman & Hall/CRC Press; 2004.View ArticleGoogle Scholar
  5. Karp RM: Reducibility among combinatorial problems. In Complexity of Computer Commun. Edited by: Miller RE, Thatcher JW. New York: Plenum; 1972:85-103.Google Scholar
  6. Gareg MR, Johnson DS: Computer and Intractability: A Guide to the Theory of NP-Completeness. New York: Freeman; 1979.Google Scholar
  7. Chow CH: On multicast path finding algorithms. In Proc. The 10th Annual Joint Conference of the IEEE Computer and Communications Societies INFOCOM’91. Bal Harbour: IEEE Computer Society; 1991:1274-1283.View ArticleGoogle Scholar
  8. Takahashi H, Mutsuyama A: An approximate solution for the Steiner problem in graphs. Mathematic Japonica 1980, 24(6):573-577.Google Scholar
  9. Waxman BM: Routing of multipoint connections. IEEE J. Sel. Areas Commun. 1988, 6(9):1617-1622. 10.1109/49.12889View ArticleGoogle Scholar
  10. Tode H, Sakai Y, Yamamoto M, Okada H, Tezuka Y: Multicast routing algorithm for nodal load balancing. In Proc. The 11th Annual Joint Conference of the IEEE Computer and Communications Societies INFOCOM’92. Orlando: IEEE Computer Society; 2012:2086-2095.Google Scholar
  11. Seok Y, Lee Y, Choi Y, Kim C: Explicit Multicast Routing Algorithms for Constrained Traffic Engineering. In Proc. IEEE Symposium on Computers and Communications ISCC’02. Taormina: IEEE Computer Society; 2002:455-461.Google Scholar
  12. Rétvári G: Minimum interference routing: the precomputation perspective. Lect. Notes Comput. Sc. 2003, 2839: 246-258. 10.1007/978-3-540-39404-4_19View ArticleGoogle Scholar
  13. Kodialam M, Lakshman TV, Sengupta S: Online multicast routing with bandwidth guarantees: a new approach using multicast network flow. IEEE/ACM Trans. Netw. 2003, 11(4):676-686. 10.1109/TNET.2003.815302View ArticleGoogle Scholar
  14. Rong B, Bennani M, Kadoch M, Elhakeem AK: Employing Active Admission Control as Traffic Engineering Mechanism in QoS Multicast Routing. In Proc. The International Conference on Communications in Computing CIC’04. Las Vegas: CSREA Press; 2004:44-50.Google Scholar
  15. Bhatnagar S, Nath B, Acharya A: Distributed admission control for heterogeneous multicast with bandwidth guarantees. Lect. Notes Comput. Sc. 2003, 2707: 115-134. 10.1007/3-540-44884-5_7View ArticleGoogle Scholar