EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This...

131
EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH BANDWIDTH AND DELAY GUARANTEES S pyros Angelopoulos A thesis submitted in conformity with the requirements for the degee of Master of Science Graduate Department of Computer Science University of Toronto Copyright @ 1999 by Spyros Angelopoulos

Transcript of EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This...

Page 1: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH BANDWIDTH AND DELAY GUARANTEES

S pyros Angelopoulos

A thesis submitted in conformity with the requirements for the degee of Master of Science

Graduate Department of Computer Science University of Toronto

Copyright @ 1999 by Spyros Angelopoulos

Page 2: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

National Library Bibliothèque nationale du Canada

Acquisitions and Acquisitions et Bibliographie Services services bibliographiques

395 Wellington Street 395. rue Wdlingtarr Oüawa ON K I A ON4 OUawaON K1A W U Canada Canada

The author has granted a non- exclusive licence ailowing the National Library of Canada to reproduce, loan, distribute or sell copies of this thesis in microfonn, paper or electronic formats.

The author retains ownership of the copyright in this thesis. Neither the thesis nor substantial extracts fkom it may be printed or otherwise reproduced without the author's permission.

L'auteur a accordé une kence non exclusive permettant à la Bibliothèque nationale du Canada de reproduire, prêter, distribuer ou vendre des copies de cette thèse sous la forme de microfiche/film, de reproduction sur papier ou sur format électronique.

L'auteur conserve la propriété du droit d'auteur qui protège cette thèse. Ni la thèse ni des exttaits substantiels de celle-ci ne doivent être imprimés ou autrement reproduits sans son autorisation.

Page 3: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

Abstract

Efficient Online Algorithms for Multicasting with Bandwidth and Delay Guarantees

S pyros Angelopou los

Master of Science

Graduate Department of Computer Science

University of Toronto

1999

This work proposes a novel paradigm for online multicasting with bandwidth and delay

guarantees. We first address the issue of online maintenance of multicast trees, namely the case

where the topology of the multicast network is confined t o trees. Next, motivated by examples

tha t demonstrate the inefficiency of tree-based multicast graphs, we waive this requirement.

Instead, multicast information is delivered to the participants by means of dedicated virt ual

circuits. Our solutions observe the following guidelines: i) Satisfaction of bandwidth and delay

requirements irnposed by individual users; ii) Feasibility with respect to constraints such as the

capacity of links; iii) Online handling of join/leave requests; iv) Dual objectives, i.e., maxirniza-

tion of total admitted users while keeping the overall cost sufficiently smd; v) Performance

guarantees related to the cost incurred by each admitted user; vi) Provably low timecomplexity;

and vii) Efficient reclaiming of resources. Previous research has failed to comply with several

of the above specifications.

Page 4: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

Contents

Introduction 1

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.1 Motivation and Background 3

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2 PreviousWork 6

. . . . . . . . . . . . . . . . . . . . . . . . . . 1.3 Definitions and Problem Statement 11

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.3.1 Network Modd 11

. . . . . . . . . . . . . . . . . 1.3.2 Multicast Groups and the Multicast Graph 12

. . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.3.3 Optimization Objectives 15

. . . . . . . . . . . . . . . . 1.3.4 The Delay-Constrained Steiner Tree Problern 16

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.4 An overview of the algorithms 17

. . . . . . . . . . . . . . . . . . . . 1.41 Tree vs . Non-Acyclic Multicast graphs 17

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 .4.2 Design Considerations 19

. . . . . . . . . . . . . . . . 1.4.3 High-level Description of the Join Algorithms 21

. . . . . . . . . . . . . . . 1.4.4 High-level Description of the Leave Algorithms 24

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.5 Contributions 25

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.6 Outline 27

2 Tree-based Algorit hms 29

. . . . . . . . . . . . . . . . . . . 2.1 Constrained Path Optimization in QoS Routing 30

Page 5: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.1.1 Problem Definition 30

. . . . . . . . . . . . . . 2.1.2 Exact Solutions For Generai Weight Assignment 31

. . . . . . . . . . . . 2.1.3 Exact Solutions W hen Edge Weights Are The Same 32

. . . . . . . . . . . . . . . . . . . . . . . . . . 2.1.4 Approximation Algonthms 32

. . . . . . . . . . . . . . . . . . . . . . . . . . . 2.1.5 Extension to Multigraphs 34

. . . . . . . . . . . . . . . . 2.2 TreeBased Algotithms for the BD-MCAST problem 36

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2.1 Motivation 36

. . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2.2 Definition of Parameters 37

. . . . . . . . . . . . . . . . . . . . . . . . . . 2.3 Treebased BD-MCAST Algorithms 44

. . . . . . . . . . . . . . . . . . . . 2.3.1 Overview of the TREEJOIN Algorithm 44

. . . . . . . . . . . . . . . . . 2.3.2 Computing Near-Optimal Connection Paths 46

. . . . . . . . . . . . . . . . . . . . . . . . . 2.3.3 The UPDATEPATH procedure 55

. . . . . . . . . . . . . . . . . . . . . . . . . . 2.3.4 The TREELEAVE Algorithm 57

. . . . . . . . . . . . 2.3.5 A Join Algorithm for the Online DSTEINER Problem 59

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.4 Conclusions 64

3 When Circuits Appear: The CIRCUIT Algorithm 68

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.1 Introduction 67

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2 Definition of Parameters 69

. . . . . . . . . . . . . . . . . . . . . . . . . . 3.3 Overview of the VCJOIN algorithm 81

. . . . . . . . . . . . . . . . . . . . . . 3.4 Finding Optimal Feasible Virtual Circuits 84

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.4.1 Algorithm Description 84

. . . . . . . . . . . . . . . . . . . . . . . . . 3.4.2 Correctness of OPTIMALVC 88

3.4.3 Implementation Issues and Time Complexity of OPTIMALVC . . . . . . . 90

. . . . . . . . . . . . . . . . . . . 3.5 Pinding Near-Optimal b i b l e Virtual Circuits 92

Page 6: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

3.5.1 Description o f t h e Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . 92

3.5.2 Correctness of APPROXVC . . . . . . . . . . . . . . . . . . . . . . . . . . 96

3.5.3 Cornplexity Ana lys i so fA~~~oxVC . . . . . . . . . . . . . . . . . . . . . 100

3.5.4 Virtual Circuits with Minimal Joining Paths . . . . . . . . . . . . . . . . 102

3.6 Updating the Multicast Graph . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104

3.7 The Leave Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107

3.8 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109

4 Extensions and Future Work 110

4.1 Extensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111

. . . . . . . . . . . . . . . . . . . . . . . . . 4.1.1 Extension to Directeci Graphs 111

4.1.2 Deaiing with Bandwidth Variation . . . . . . . . . . . . . . . . . . . . . . 112

4.1.3 The OfRine BD-MCAST Problem . . . . . . . . . . . . . . . . . . . . . . . 114

4.2 Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . -116

. . . . . . . 4.2.1 Enforcing Multicast Trees of High Capacity and Smail Delay 117

4.2.2 Rearranging the Multicast Tree . . . . . . . . . . . . . . . . . . . . . . . . 118

4.2.3 Distributed Implementation of BD-MCAST Algorithms . . . . . . . . . . 118

4.2.4 Exploiting Hierarchical Routing Schemes . . . . . . . . . . . . . . . . . . 119

4.2.5 Cornpetitive Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119

4.3 A Note in Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120

Page 7: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

Chapter 1

Introduction

This work is focused on the design of efficient online algorithms for multicast communication

wit h bandwidth and delay guarantees. In multicast routing, messages originated from a source

are concurrently sent to multiple destinations, which are part of the same multicast group.

Many emerging applications, such as video on-demand, and video-conferencing, strongly rely

on the ability of the underlying network to support multicast communication. T h e broad range

of applications t h a t caU for multicast capabilities has motivated signifiant research in the area,

and a number of protocols has been proposed and analyzed in t h e literature.

Multicast routing involves the identification and creation of connections through which data

reach the destinations. Existing research has focused, alrnost exclusively, on distribution trees

which span the source and the destinations of a rnulticast group. In conventional versions of

t he rnulticast problem, the major optimization objective is t o minimize the cost of resources

required t o accommodate the connections. In addition, routing must meet some requirements

for quality, and comply with practical limitations, such as the availability of resources.

We first investigate the effect of irnposing dual guarantees on the delivery of multicast traffic.

T h e guarantees refer t o the minimum amount of dedicated bandwidth, as well as to the delay

Page 8: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

of the path through which multicast d a t a reach a particular destination. We show tha t the

satisfaction of such rquirements affects various design considerations. This rnakes the problem

more challenging compared t o the single metric, unconstrained versions of multicasting. For

instance, the cost associateci with the amount of resources reserved by the algorithms ïs not the

only optimization goal; i t is equally, or even more important, to ensure tha t a d a t i v e l y large

number of users are admitted into the multicast group, while their QoS guarantees are met.

We propose two families of algorit hms t ha t deal with t h e online version of the above problem;

recall that , in the online framework, the algorithms do not have amy knowledge about future

requests for admission to o r disconnection from the multicast group. The first family conforms

to the "traditional" approach to the multicast problem, namely, the maintenance of a tree

subnetwork through which multicast traffic is propagated. In the second set of algorithms

we present, this constraint is waived. Specificaily, the multicast traffic is delivered through

dedicated connections, t o each individual destination; therefore, the connections rnay create

circuits, as opposed to multicast trees, where no cycles appear. We argue tha t the latter

approach can increase the number of successfully served requests.

The rernaining of the Chapter is structured as follows: We first ptesent, in Section 1.1,

the motivation behind our work, and introduce some general concepts and terminology. in

Section 1.2 we d'iscuss previous work related t o the multicast problem. The problem in study

is introduced, and formally defined in Section 1.3. Section 1.4 iilustrates the intuition behind

our solutions, and gives a n overview of the proposed algorithms. Finally, Our contributions are

presented in Section 1.5 and the outline of the work is given in Section 1.6.

Page 9: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

1.1 Motivation and Background

With the advent of new technologies, such as optical fibers and switching devices, a new gen-

erat ion of hig h-speed networks has emerged. In addition, recent advances in audiovisual tech-

nologies have given rise to new distnbuted real-time applications. Typical examples of such

applications include video-conferencing, tele-education, and cornputer supporteci coilaborative

work. Several of those applications have been implemented, and are expected to become, in

the near future, commonly used twk.

Al1 of the above illustrations share a common attribute: they rely, t o a large extent, on

the existence of an underlying multicast service, Moreover, the applications define specific

requirements with respect t o the performance of the latter service. For instance, low end-teend

transmission delay is a prerequisite in video-conferencing. Multicasting algorithms, therefore,

should provide certain guarantees on the quality of the delivered information, to effkctively

support the above applications.

Multicasting can be considered as a communication service tha t allows an application to

transmit information, in a n efficient way, to a set of end users. We use the terms source and

destinations to denote the origin and recepients, respectiveiy, of multicast data. The term

multicast gmup describes the set of aU destinations and includes, by convention, the source. in

addition, every multicast group is identifieci by a unique, location-independent address.

Multicast d a t a transmitted from the source propagates through a selective subset of nodes

and links of the current network, a b cailed the multicast network. The multicast network

provides source-destination connectivity for a11 members of the multicast grou p. In addition,

a certain amount of resources has to be reserved on links and nodes of the mutticast network,

in order to support the desired delivery of traffic. The term ^resources", here, is generic in

scope, and can be related, for instance, to the bandwidth allocateà along links, or to the total

Page 10: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

memory requirements for storing the routing tables at the nodes, or both. In the context of

this work, the term resources is equivalent t o the bandwidth, and we ignore all other possible

manifestations i t may have. The wst incurred by the multicast algorithm is determined by

the total amount of bandwidth tha t is aiiocated on Iinks of the multicast network. The term

clearly describes considerations of financiai nature, since bandwidth is a commodity tha t is not

available in abundance, in real networks, neither is given for free. We refer to the authority

that manages the network and provides the connections as the network pmuider.

In its simplest formulation, the multicast routing problem k also known as the Steiner l k e

Problern. The input to t h e problem is a network, represented by a weighted, undirected graph,

and a set of nodes that corresponds to the source and destinations. We seek the minirnum-

weight subgraph of the input graph that spans these nodes. It is not difficult t o perceive tha t

the subgraph sought is always a tree. The Steiner Tree Problem was one of the first seven

problems shown NP-Cornplete by Karp [15], meaning tha t we can not opt for optimal solutions

in polynomial time. Comprehensive surveys tha t address the problem of computing Steiner

Trees can be found in [12] [38].

The problem of designing efficient multicast algocithms becomes more involved when every

individual member of the group defines Quality of Service (QoS) parameters with respect t o the

quality on the delivery of multicast traffic to different destinations. QoS is a broad concept, and

may include performance metrics such as packet-loss ratio, bandwidth, end-teend delay, etc.

In the problem a t hand we assume tha t the QoS parameters, as specified by the members, are:

i) the end-to-end delay t h a t a multicast packet can experience on the route from the source to

the destination; and ii) t h e minimum required bandwidth, which corresponds t o the minimum

rate of multicast traffic delivery requested by t he destination. The former parameter is crucial

in real-time applications, where information has to be received within a specific time window, or

Page 11: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

the functionality of the service is compromisecl. The latter parameter is critical in applications

that impose strict bounds on the number of packers received per time unit. An example of a n

application that faiis into this category is the transmission of video data. A challenging aspect

of the problem is t h e fact that t he above QoS requirements may exhibit significant variations,

among users.

An additional stress imposed on the design of multicast algorithms stems from the fact tha t

users are aUowed to join or leave the multicast group, at any atbitrary point of time. Hence,

an efficient multicast algorithm should feature the ability to process the requests issued by the

user on-fine. In t h e on-line version of the problem, the algorithm is oblivious of the future

requests. Each request is sewed individually, and the decisions made by the algorithm may

have an impact on the overali performance, o r even the ability to successfully handte subsequent

requests. In particular, there is no secure information about the nodes tha t will issue further

requests, or the exact time the requests arise, or the exact values of the corresponding QoS

parameters.

The on-line sequence of decisions affects the overali performance of the algorithm with re-

spect to the total cost of the solution. Moreover, the on-line framework introduces an additional

optimization objective: we aim at maximizing the number of users successfuUy admitteci in the

multicast group. Frorn the point of view of the network provider, the above metric is related

to the profit attained, assuming tha t all users bid for participation t o the multicast group on

equal terms. Hence, the on-line nature of the problern raises also issues of admission contml:

the algorithm may reject admission of a user in the multicast group, even when the requested

QoS can be provided, on the basis tha t such an admission may prohibit the sat'Lsfaction of

future requests.

An additional issue that largely affects the efficiency and functionality of a multicast aigo-

Page 12: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

rithm is the need for low time-complexity. This requirement refleds the constraints i m p d

on the user response-time, since users expect notification of acceptance or rejection within

some bounded, and relatively s m d , period of time, Notice a b , t h a t networks are evolving

in size, and scalabiity is compromised in case the complexity for serving the requests is high.

The problem is becoming even more perplexed and challenging in an environment of duai $OS

guarantees, since multiple parameters a re in conflicting, t rade-off relationship.

1.2 Previous Work

The significance of multicasting in emerging applications has motivateci extensive research in

the area. However, the previous work on the problem we investigate is only marginal. In this

Section, we review the related work, and comment on i t s relevance t o the problem in question.

As mentioned in the previous Section, the simplest formulation of the multicast issue is the

Steiner Tree Problem. Efficient approximation algorithms have been studied, for both the on-

line and off-line settings. Kou, Markowski and Berman provide in [17] a heuristic which yields

a Steiner Tree of cost at most twice the cost of the optimal solution. Some other known heuris-

tics [21] [3 11 also achieve the same guarantees. An improvement to the above approximation is

due to Zelikowsky [39]. The cost incurred by his solution ïs within 11/6 the cost of the optimal

t ree.

Algorithms with provable performance guarantees have been proposed for the online version

of the Steiner Tree Problern as well. In a seminal paper 1131, Imase and Waxman proved

the existence of a simple online algorithm for serving join requests, with total cost within a

rogarithmic factor from the optimal offline solution. T h e algorithm operates in a greedy way,

by maintaining a multicast tree that spans the current set of participants. When a join request

is isçued, the minimum-weight path from the current tree t o the participant is sought. Unlike

Page 13: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

t h e join-only version, the case where both join a n d leave requests a re issued does not exhibit

similar worst-case behavior.

Notice t h a t t h e above algorithms are expected to perform, in practice, better than the

worst-case bounds suggest. However, t hey can not be applied in t he context of t he problem we

consider, since t hey do not t ake into consideration the bandwidt h-delay characteristics on the

links of the network. In other words, their focus is on optimizing a given cost function, without

taking into account the QoS requirements.

A different category of algorithms, also known as delay-comtmined algorithms, a t tempts

to provide some guarantee with respect to the end-to-end delay between t h e source and the

destinations. In particular, t h e delay can not exceed a fixed, predetermined bound A. T h e

minirnization of t h e delay is not a requirement here; i t is sufficient t o satisfy t h e given bound.

Algorithms t h a t fa11 in this category aim at constructing a multicast tree of srnall cost, while

obsewing the upper bound on the delay.

Several delay-constrained heuristics have been proposed during the past few years. For a

detailed survey and a relative cornparison of delay-constrained algorithms, t h e interested reader

is referred to [9]. An early heuristic for computing constrained Steiner Trees was proposed by

Kompella, Pasquale and Polyzos [16], assuming t h a t both the link delay values and the bound

A are integers. T h e complexity incurred by the heuristic is dominated by t h e construction of

a constrained closure graph which requires time 0(An3), where n is the number of nodes in

t he network. Thus, the complexity is pseudopolynomial, since i t depends o n t h e characteristics

of t he links. For instance, if A is not polynomial on n, then the time to construct the tree

is not polynomial either. T h e polynomial dependence of t he cornplexity o n A constitutes a

serious shortcoming, which manifests more clearly when the link delays and t h e bound A take

non-integer values. In t ha t case, t he authors of [16] propose a scaling of t h e fractionai values

Page 14: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

t o get integers. However, in some cases, t h e granularity of the delay values can be very small,

w hich im plies t hat the scaled delay values increase significantly-

In [37], Widyono proposed a family of heuristics for constructing deiay-const rained Steiner

trees. The heuristics rely o n a constrained variation of the Bellman-Ford algorithm which is

presented in the same report. T h e latter algorithm is used to identify the constrained, minimum-

cost paths from the source to ali other nodes of the network, namely, paths of least cost subject

t o the deiay bound. The most efficient of t h e heuristics proposed by Widyono, the Constrained

Adaptive Ordering (CAO) heuristic, connects a new member t o the existing tree by means of

the constrained, minimum-cost path, with end nodes the source and the user. Although the

approach is interesting and weldmotivated, the major drawback of the algorithms is the absence

of complexity bounds. In fact, the constrained Beliman-Ford algorithm can incur, in worst case,

exponential running time, which is certainly undesirable.

A third heuristic for computing constrained Steiner trees is due to Zhu, Parsa and Garcia-

Luna-Aceves [40], known as the Bounded Shortest Multicast Algorithm, o r BSMA. The atgo-

rithrn operates as foUows. An initial Steiner tree that does not violate the delay bound is first

computed. The tree is subjec:ed to a series of reconstructions, which proceed iteratively. At

each iteration, the algorithm attempts t o reduce the cost of the current tree, without violating

the delay bound. The algorithm terminates when no further cost improvement can be effected.

BSMA employs a k-shortest path algorithm, in order to implement the reconstruction of the

tree. The total complexity is of order 0(kn3 logn). Notice tha t k is not known a priori, and

i t may assume large values, in case of large and densely connected networks. However, i t is

possible t o trade-off the value of k and the cost of the resulting tree. Thus, BSMA can achieve

polynomial cornplexity at the expense of a solution of increased cost.

A simple, in concept, delay-constrained Steiner tree heuristic was presented by Sun and

Page 15: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

Langendoerfer in [30]. The heuristic cornputes initialiy a n unconstrained, minimum cost Steiner

tree. In case where t h e end-teend delay from the source to some destination exceeds t he

predetermined bound, t h e path from the source to that particular destination is replaceci by

the minimum delay path. T h e heuristic runs in t ime 0(n2) , since it uses Dijkstra's algorithm

t o compute both the delay-constrained, and t he unconstrained trees.

Rouskas and Baldine s tudy in [27] a variation of the constrained Steiner tree problem, in

which t h e optimization objectives are tied exclusively to t he delay experienced by packets- The

requirements posed by t h e problem definition in their sett ing are as follows: i) t he delay on

the paths from the source to every destination has to be bounded above by A; and u) t he

variation among the delay along those paths has also to be bounded by some predetermined

value 6. Their work ignores t he cost-optimization component, and is bound to delay-sensitive

applications, where requests a re served at any expense.

Notice tha t , with t h e exception of [37], ali t he heuristics mentioned above address t he

offline (static) version of t h e problem, and can not be applied t o the oniine (dynamic) setting.

In addition, they do not take into consideration t he bandwidth requirements t ha t users may

exhibit. Accordingly, t he cost incurred by the above heuristics is expresscd in t e rms of the overall

weight of the links of t he multicast tree- However, such a cost met ric does not necessarily re0ect

the actual amount of resources, Le., bandwidth, required t o accommodate t he users. Indeed, one

would expect t ha t only a fraction of t he available resources on a specific link should be dedicated

for multicast t r a f k , within a specific group. T h e mode1 on which the above-discussed work is

based assumes tha t either t he totality or zero resources ïs used by the multicast atgorithm, o n

a specific link.

Multicast routing in networks where users issue discrete bandwidt h requests was previously

studied by Faloutsos, Pakna j and Sevcik [6]. Their algorithm can handle online requests, and

Page 16: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

the contribution of each edge of the multicast tree to the total cost is a (generic) function of

the ailocated bandwidt h, This metric is conceptudy closer t o the real meaning of the *CU&" of

a multicast tree; however, the work does not investigate the extension where delay constraints

are imposed by users.

Finaily, a recent heuristic for online, delay-constrained multicasting is due to Hong, Lee

and Park [I 11. Their approach is based on a greedy strategy in which every new participant is

connecteci to the current tree by means of a minimum-cost path, such t h a t the dday from the

source t o the new member is bounded by A. The problem of identieing such paths, known as

Constmined Shortest Path Pmblem, is NP-hard as well; to cope with this, the authors of [Il]

employ a technique based on the Lagrangian reiaxation method.

Unfortunately, t h e heuristic proposed by Hong et al. is built on the faise premise t h a t i t is

unli kely t o find efficient solutions to the Constrained Shortest Path Problem within polynomial

time. In fact, as we will see in Chapter 2, there exist approximation aigorithms for the above

problem tha t compute, in polynomial time, a path of cost at most (1 + é) tirnes the cost of the

optimal one, where E is any (smali) constant.

In addition, t h e heuristic mentioned above exhibit some serious drawbacks. In particular:

i) It does not guarantee bounded time-complexity, In worst case, a join request can incur ex-

ponential running time; ii) The greedy step, namely the identification of smd-cost constrained

paths, does not provide performance guarantees, In other words, there is no estimation of how

close t o the optimal the cost of the path computed by the Lagrangian-relaxation technique is;

iii) The delay requirement of al1 participants is uniform, and equal t o A; and iv) The band-

width requirements and constraints a re ignore& Accordingly, the cost of the multicast tree is

a function of the weight assignment o n the links of t h e network, and not a function of utilized

resources [Il].

Page 17: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

We conclude t h e review of previous work with a noteworthy remark: AU previous research

on delay-constraineà multicasting has focused o n multicast trees. As will become evident in a

while, however, multicast trees do not n e c e s s d y yield optimal solutions when dual constraints

are considered. This observation motivates our work on algorithms for the oniine multicast

problem that are not confined in creating rnulticast trees.

1.3 Definitions and Problem Staternent

1.3.1 Network Mode1

The communication network is represented as a connected, undirected graph G = (V, E), with

n = IV1 and m = [El being the nurnber of nodes and edges in G, respectively- Every edge

e E E is associateci with two weights, c(e) and d(e ) , that correspond to the capacity and delay

characteristics of t h e edge e. T h e capacity of a Link, c(e) , is defined as the maximum amount of

bandwidth that is available on tha t link. The Link's delay, d ( e ) , represents the total delay tha t

a d a t a packet experiences on t h a t iink due to: switching, queuing, processing and transmission

operations tha t occur in the transmitting node, as well as to the propagation of the packet

through the link. We assume tha t both delay and capacity are taking non-negative integer

values, since we can scale the edge characteristics t o integer values.

A path P fmm node v; to node vj in G is a sequence of consecutive edges in G, such tha t

the first and last edges in this sequence are adjacent to v; and v, respectively. A subpth of

P, /mm node vf to node v: is a path from vi t o u: tha t includes only edges of the path P. We

define the capacity of Pl denoted by c(P) , as the minimum capacity among aiI the edges in the

path. The delay of P, denoted by d ( P ) , is the sum of the delays of ail links t h a t appear in P.

Page 18: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

1.3.2 Multicast Groups and the Multicast Graph

A multicwt gmup or multicast session consists of a source node s E V, which acts as the

generator of the multicast t r a c , and a set M of destinations, or mepients, with M =G V.

Since the source is triviaiiy a recipient, we use alternatively the terms participants o r users

or mernôers when refemng to either the source or the destinations of the multicast group.

Let k = 1 M U sl denots the total number of participants. We also use, for convenience, the

terms gmup or session instead of rnulticast group and multicast source respectiveiy, when it

is clear from the context. Each group is assigned a unique group address. Multiple groups,

with different sources and destinations can exist throughout the netwotk. We make use of the

notation g; t o refer to the group with id i.

Every potential member v of a particular multicast group defines two discrete Quality of

Service (QoS) parameters: i) The minimum required bandwidth b,, which corresponds t o the

minimum rate of rnulticast tr&c delivery that u requires; and ii) the mazimum delay &, which

represents the maximum permitted delay that a multicast packet following a path from the

source s to u can experience. The above parameters describe the quality on the delivery of

rnulticast traffic required by user v. The multicast algorithm is responsible for satisfjring b t h

requirements, upon admission of a user to the group. This is accomplished by allocating the

necessary resources, i.e., sufficient bandwidth on selective links, and by directing the multicast

traffic t hrough paths of acceptable delay.

Moreover, the multicast groups are dynamic, in the sense that the set of their participants

is subject t o changes in the evolution of time. Nodes tha t request subscription ta a group

can do so by issuing a join wues t , while current participants may issue a leave mquest to

disconnect from the group. We can formulate the activity associated with membership changes

as a sequence of join and leave requests. The format and the semantics of such requests are

Page 19: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

defined below:

join(v, g;, b,, 4) : Connect o to the source of group g; by means of a path that guarantees

minimum bandwidth of at least 6, and a total delay for packets deiivered to u of at most

d,. If such a path does not exkit, reject the request-

leave(v, gi): Node v ceases being a participant of group g;.

Notice that the join/leave sequence of requests is processed by the algorithm in an online

fashion. Moreover, the algorithms we propose do not rely on any kind of assumptions about

the probability distribution of those requests.

Let M be the current set of participants for a multicast group with source S. The connection

puth for a participant u f M, denoted by Pu, is defined as a path from s to u that provides

a connection to u of suscient bandwidth (at least bu), and acceptable delay (at most du).

Multicast da ta generated by the source and destinateci to u propagate through Pu.

For the multicast traffic to be delivered to the destinations, a certain amount of bandwidth

has to be allocated on the edges of the connection paths. A crucial observation here is that

the minimum bandwidth required on an edge e rnight be less than the sum of the arnounts of

bandwidth associateà with the requirements of all members v E M, for which the connection

path P, includes e. This is due to the fact that some of the connection paths may share an

identical subpath from the source s up to an intermediate vertex z, which implies the possibility

of sharing bandwidth among the connection paths on some of the edges of this common subpath.

We can formalize the above informa1 discussion as follows: Let P be the set of connec-

tion paths corresponding t o destinations in M. For every edge e = (2, y), define P,(e) =

{P: (e), . . . , ~:(e) ) as a collection of sets of connection paths in P. Any two paths in the same

set, Say E(e), with 1 5 i < 1, have ezactly the same subpath from s to node z, and include edge

Page 20: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

e in this shared subpath. P,(e) is defined in a similar way. This classification of connection

paths gives rise to a definition of bandwidth allocation in which not ail connection paths in

C ( e ) or e ( e ) require bandwidth on edge e; instead, it is suffiuent to aüocate bandwidth equal

to the maximum required bandwidth of users served by connection paths in P',(e) and P',(e),

respectively-

The following reiationships summarize the resource allocation on the edges of our network

model, as well as the basic property of the connection paths, Here, b(e) denotes the o v d

bandwidth that is aiiocated on edge e, and v denotes nodes in M.

Eq. (1.1) describes the contribution of users in each one of the classes of paths c(e) and

e(e). to the allocation of bandwidth for edge e . On the other hand (1.2) formulates the

requirements of a connection path, with respect to capacity and total delay. A connection path

Pu is called feasible iff i t satisfies the properties describeci by (1-1) and (1.2).

An edge e is said t o be underloaded iff b(e) < ce, namely the total bandwidth assigned t o the

connection paths that use e does not exceed its capacity, otherwise e is said to be overlorrded.

The multicast gmph GM = (VM, EM), is defined as the union of the connection paths for

al1 the current members of the multicast group. The multicast graph is called feasible iff al1

connection paths are feasible and, in addition, al1 of its edges are underloaded. In this work,

we propose algorithms for online construction and maintenance of feasible multicast graphs.

We can now define the optimization goals in our problem.

Page 21: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

1.3.3 Optirnization Objectives

The cost of the multicast graph is defined as follows:

The Iast equation suggests that, in the mode1 we consider, the cost of a feasible multicast

graph is defined in terms of the bandwidth t h a t is allocated on its edges, in other words, the

overali cost depends on the atlocated resources, which refiects the prke a network provider has

to pay in order to accommodate a group of multicast users, in a r ed network.

Although the cost is an important measure of the quality of a solution, i t is not the primary

optimization objective. Instead, we aim at mdmiz ing the number of requests that can be

served without violating the feasibiity property. Notice that any online algorithm can trivially

handle the leave requests: it is sufficient t o change the membership of the leaving node, and no

further changes to the multicast graph need to occur- However, as we WU see in subsequent

sections, deallocating the excess bandwidth that becomes available after a node leaves the group

is a technique that yields more efficient results.

Consider a sequence of join requests, r = ri, r z , . . . , rj that are processeci by an online

algorithm for the problern in question. It might be the case that not al1 the requests can be

satisfied, due to lack of resources, i.e., there does not exist a connection path from the source to

the potential member which does not overload any edges in the multicast graph. Indeed, such

a scenario is expected t o arise frequently in heterogeneous service networks, where the QoS

requirements of multicast participants can vary significantly. Moreover, the order in which the

requests are generated affects the structure of the multicast graph, as well as the allocation of

resources, while it has an impact on the total number of the successfuiiy handled requests.

Page 22: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

We define t h e admission success mtio a for a particular online algorithm ALG, and a

sequence r of requests as follows: if kuC is the total number of requests in r t h a t are successfully

processed by ALG, and koPT is the maximum number of requests a n optimal ofline algorithm

can satisfy, when the cost of t h e multicast graph is not taken into consideration, then

The central optimization goal in the problem we consider is designing protocols tha t guar-

antee satisfactory admission succes ratio, and result in multicast graphs of s m d cost. In

subsequent sections, we refer t o the problem as the BD-MCAST problem, which stands for

multicasting with bandwidth and delay guarantees.

1.3.4 The Delay-Constrained Steiner Tree Problem

The definition of cost in the BD-MCAST problem formulation corresponds t o the total band-

width allocated on edges of t he multicast graph, under the assumption tha t feasibility is pre-

served. Such a definition is meaningful only when users define explicitly the minimum required

bandwidth, as one of their QoS requirements. Instead, if the QoS requirements of the users are

limited to the delay of the connection path, then we have t o resort t o an alternative definition

of the solution cost.

Assume tha t each edge e of the network G is asçociated with a weight w(e) and a delay

d ( e ) . Assume also tha t a join request for a specific multicast group, issued by some potential

mem ber v , defines a unique QoS parameter d, as the maximum tolerated delay of a connection

path from s t o v. Notice t h a t the join request in this mode1 does not specify the minimum

bandwidth on t h e connections. A join request for node v is called jeasible if there exists a path

from the source to v in G such tha t the total delay of the path is at most 4.

Page 23: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

Let r = ri, r z , . .. , r k be asequence of join requests, and let ALG be an online algorithm tha t

serves this sequence. In particular, for each request ri, ALG has to provide a sourcedestination

connection path Pi. Define by GM, with GM standing for multicast graph, as the union of al1

connection paths P;. Then the cost incurred by ALG is the total weight of edges in MG.

cost(ALG) = w (c) cEEx

Define OPT as the optimal offline dgorithm tha t yields the minimum cost for ail sequences of

join requests. Formdy, the cost of OPT is defined as the total weight of a subgraph G' of G,

with the following property: for each node v; tha t issued request r;, there exists a path from s

to vi in G, of delay at most A,. Let cos t (0PT) denote the cost of the optimal algorithm.

In the Join-only Online Delay-Constrnined Steiner Pmblem, symbolicdy DSTEINER prob-

lem, the objective is t o design online algorithms tha t minimize the ratio cost(A LG)/cost(OPT),

for any sequence of join requests. The definition can be extended to include leave requests as

well.

1.4 An overview of the algorithms

1.4.1 Tree vs. Non-Acyclic Multicast graphs

Before proceeding to the presentation of Our algorithms, it would be instructive t o demonstrate

the effect of the QoS requirements in the design of algorithms for the BD-MCAST problem. The

fact tha t each member is associateci with two discrete requirements, bandwidth and delay, not

onty contributes to the complexity of the problem, but also affects the topology of the multicast

graph. Here, we ilfustrate the impact of the dual requirements on the topology of the multicast

graph and suggest a generic framework for the problem in consideration.

Page 24: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

As mentioned in Section 1.2, previous research in multicasting has aimed at multicast graphs

tha t are trees. Several reasons motivate such a design decision, the most signi6cant being the

following: i) Trees exhibit a topological regularity tha t simplifies the implementation of the

algorithms; ü) They support a simple and efficient mechanism for ACN/NACK transmission and

identification; and iii) from the combinatorial point of view, t he optimal solution is guaranteed

to be a tree, provided tha t edges are associateci with a single metric.

When the focus is on satisfying both packet rate (bandwidth) and delay requirements,

however, it is not hard to see tha t the optimal solution is not necessarily a tree. In particular,

the admission success ratio of any algorithm for the BD-MCAST problem, when confineci in

creating tree multicast graphs only, can be arbitrarily smaiier than the corresponding ratio of

t h e optimal algorithm. Such a case is depicted in Fig. 1.1. Any algorithm restricted on tree

multicast graphs should allocate resources solely on one of t h e k paths tha t connect the source

to node v . This implies, by the choice of member requirements, t ha t only one member can be

admitted into the multicast group. In contrast, an algorithm t h a t allows multicast graphs with

cycles wiil reserve al1 k paths from s to v, and wiil thus satisfy the QoS requirements of al1 k

users.

Similarly, the multicast graph t h a t yields the minimum connection cost for a group of users

of a specific size is not necessarily a tree. Fig. 1.2 illustrates a scenario where the cost of

a multicast tree is substantialiy latger than the cost of the optimal non-tree multicast graph.

Notice t hat a ieasible multicast tree must include al1 boldfaced edges, which results in bandwidth

allocation on 1 edges. If the assumption of a tree multicast graph is waived, the algorithm can

exploit the k distinct paths tha t connect s to v. The rnulticast tree, therefore, suffers from

a cost overhead t h a t manifests itself when the values of Bi, B2,. . . , Bk are very close t o each

other, and 1 assumes large values ( the boldfaced path from s t o u consists of a large number of

Page 25: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

Figure 1.1: illustration of a scenarïo where the admission success ratio is small. Boldfaced nodes are the potential members of the multicast group. The bandwidth and delay requirements of users appear in parentheses, and they are such tha t Bi < . . . < B k , and dl < d2 . . . < dk.

T h e capacity, and delay characteristics of the edges are also shown in parentheses.

e&=) -

Motivated by the above examples, we propose two algorithms for the BD-MCAST problem.

T h e first algorithm, caiîed TREE, r s t r i c t s the multicast graph to trees, implying tha t the source-

destination connection paths do not form cycles. In the second algorithm, caiied CIRCUIT, the

multicast graph is not confineci to any specific topology; instead, the connection paths are

allowed t o create circuits.

1.4.2 Design Considerations

Since the problem at hand is quite involved, we suggest the following guidelines regarding the

design of efficient BDMCAST algorithms:

Page 26: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

Figure 1.2: Illustration of a scenario where the cost incurred by the online algorithm far exceeds the cost of the optimal offline aigorithm. Requests are the same as in Fig 1.1. The boldfaced edges correspond to the 1 edges of the s-v path, and their bandwidth and delay characteristics are ( B k , d l ) -

0 Satisfaction of QoS requirernents and feasibility. Every single destination receives traffic

from the source by means of a connection path of sufficient resources, and acceptable

end-teend delay. No edge in the network is allowed to allocate bandwidth tha t exceeds

its capacity.

0 Optimization goals. Maximizing the admission success ratio is the primary optimiza-

tion criterion. Furthermore, the op t imd algorithm will require the minimum amount of

resources t o achieve the maximum admission of users.

0 Scalability. A major issue in designing multicast algonthms is the need for low time-

cornplexity. This is a requirement which orîginates at constraints on the user-response

Page 27: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

time, as weli as to scalabiity reasons.

Reclaiming of resoumes. Subsequently to a member leave from the group, the algorithm

must deallocate any excess bandwidth. This task has to be accomplished in a way tha t

does not violate the s a t i d a b i t y of t h e QoS requirements of the remaining users.

Toplogical Cowtnrints on the Multicast Gmph. As mentioned above, unlike common

multicasting problerns, the optimal solution for the BD-MCAST problem is not always

a tree. Stili, design considerations may favor the tree-based approach- In this case, we

have to guarantee that, throughout the execution, the algorithm does not violate the tree

structure, Le., no connection path introduces circuits.

Flezibility. The BD-MCAST algorithm should be flexible to incorporate additional de-

mands, and thus be suitable for an environment that is not totaily in accordance with

the mode1 we have defined. For instance, the proposed algorithms can operate, with min-

imal modifications, in networks where each edge is associated with a bandwidth variation

parameter, or in networks represented by directed graphs, e-g, in a wireless environment.

1.4.3 High-level Description of the Join Algorithms

Although only the TREE algorithm imposes constraints on the structure of the multicast graph,

the two proposed algonthms share some common design features. Specificdy, they both foi-

low the greedy approach, since the join requests are sewed by providing a connection path of

sufficient delay and alrnost-minimum cost. Recall that each edge of the multicast graph, a t any

point of time, is associated with a certain amount of allocated bandwidth. Hence, the cost of

a new connection path is related to the additional amount of bandwidth t ha t has to be dl*

cated for the bandwidth requirement of the new mernber to be accommodated. Unlike simpler

Page 28: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

versions of the multicast problem, Le., with only one metric t o optimize, in this demanding

scenario of dual QoS parantees , finding the best pussible connection path for every individual

request turns out t o be a complicated and challenging problem.

In the work presented in the following chapters, we rely on efficient algorithms for routing

individual, cost-efficient, delay-bounded connections to users joining the rnulticast group. The

problem of identifying such paths is known as the Constmined Shortest Path pmblem. In

general cases, the problem is NP-hard [8], however, for some special cases, exact solutions can

be found in polynomial tirne. As we will see in Section 3.4, the instance of online BD-MCAST

falls into this category of special cases, assuming non-acyclic multicast graphs. Thus, optimal

connections can be com puted efficiently. Moreover, we describe how é-appmzimation algorit hms

for the Constrained Shortest Path problern can be employed, in order t o serve the connection

requests. Three reasons motivate this approach: i) Approximation algorithrns provide efficient

solutions t o the problem, regardless of assumptions on the topology of rnulticast graph, Le.,

maintenance of a multicast tree or a generic multicast graph; ii) They exhibit better worst-case

tirne complexity, without compromising the quality of the solution. In large-scale networks,

this implies improvements in scalability; and üi) the approximation algorithms, as opposed to

the exact ones, can be applied to generaiizations of the BD-MCAST problem, enhancing the

flexibility of the proposecl solutions.

A crucial observation tha t applies t o both TREE and CIRCUIT algorithms concerns the

structure of the connection paths, and the resource allocation policy- Let GM be t h e current

multicast graph, and let non-member node v issue a join request with QoS parameters 6, and 6.

A connection path from the source s t o v can be viewed as the union of two discrete subpaths:

i) a path consisting exclusively of edges that do not belong to GM, and which connects v to

some node u of GM; and ii) a path from u t o s which contains some of the edges of GM. For

Page 29: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

the rest of this section, we denote those two paths by Pt and Pz, respectively.

Clearly, an amount of bandwidth equal t o b, has t o be allocated on aii edges of Pl, in order

to meet the bandwidth b, required by v. An efficient resource allocation policy on edges of P2

is not straightforward, Informaliy, the bandwidth required to be ailocated on Pz depends on

how "closelyn P2 follows an dready established connection path. There are two extreme cases:

Case (i): Path Pz is identical to a subpath of an existing connection path, and the

bandwidth already allocated on al1 edges of that subpath is at feast 6,- In th i s case, no

additional resources on Pz are required to serve user u.

Case (ii): Path Pz does not share edges with a current connection path, which implies

that additional bandwidth q u a i to b, k required t o be allocated along Pz.

When the multicast graph is topologically confined to trees, Case (ii) never arises, except

if P2 = 0. This is due to the resources already allocated on ali edges of the tree, and to the

fact that P2 is a tree path from an intermediate node to the source. On the other side, Case

(i) describes an instance in which sufficient bandwidth is available on the edges of the tree, and

n o additional resources have to be allocated on that portion of the connection path.

In general cases, it is expected that the connection path for the new member u wili exploit

the currently allocated resources only partially. More precisely, the algorithm will request

some additional resource allocation of amount between O and 6, on edges of Pz, in order t o

accommodate the user's required bandwidth 6,. FoUowing the definition of [6], we refer to the

cost incurred by this additional allocation as overrouting cost.

Similarly, when the algorithm does not restrict the multicast graph t o acyclic graphs, the

general case d l involve Pz containing some, but not necessarily ail the edges of an already

established connection path. The new participant can exploit aiiocated resources only on a

Page 30: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

subpath of P2 from the source to a n intermediate node, provided tha t this subpath shares

edges with a previously established connection path. iiere, the overrouting cost refers to the

additional bandwidth allocated on tha t common, shared subpath of Pz.

We have already explained the need for low time-complexity multicast algorithms. The

inherent complexity of BD-MCAST imposes a significant stretch on the design of fast algorithms.

Both TREE and CIRCU~T algorithms run in low-order polynornial time on the number of nodes

and edges; in k t , the complexity of serving a joia request is proven t o be asymptotically equd

to the compIexity of routing a single-source, single-destination connection of minimum cost and

bounded delay, when eapproxirnations are considered. This is accomplished by mapping the

topoIogical constraints as well as specific parameters, such as t h e overrouting cost for specific

paths, to an auziliary graph. An eapproximation algorithm fo r the Constrained Shortest Path

problem proposed by Hassin [IO] is then run over the a u x i t i w graph, and the path deduced

is re-mapped t o an actual connection path in the initial graph. Detaiis of the above procedure

will be presented in Chapter 2 and Chapter 3.

1.4.4 High-level Description of the Leave Algorithms

We conclude t h e overview of Our algorithms by describing how leave requests are served. When

a current member of the group, Say node v , issues a leave request, three actions a re performed:

i) t h e membership of u is updated, t o reflect the fact that u is no longer a member of the group;

ii) exces bandwidth, if any, is deallocated; and üi) çome structural changes to the multicast

graph may occur.

Membership update is a straightforward task in out model, since a user u deletes the mul-

ticast group i t leaves from the List of groups t o which i t is subscribed. On the other hand,

bandwidth deailocation requires knowledge of the contribution of individual connection paths

Page 31: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

to the total bandwidth allocated on a specific edge- Returning excess bandwidth t o the pool

of available resources has t o be accomplished in a way that guarantees the satisfaction of the

QoS requirements of the remaining users. Hence, an ideal resource deallocation procedure WU

identify the maximum amount of bandwidth that can be dedocated, subsequently t o the Ieave,

so that the bandwidth tequirements of all other destinations are still met.

F indy , a node's leave may trigger some simple reconstruction of the multicast graph. In

t he case of Tree-based algorithms, the reconstruction involves a simple "pruning" of the ttee,

if the leaving node is a leaf in the current multicast tree. Similar structural updates occur

in the CIRCUIT algorithm. Specifically, the connedion path of a leaving node is partially

pruned, Le., edges of the connection path that are not used by other connections are deleted

from the multicast graph. Notice, however, that in Our mode1 these are the only cases where

reconstruction is applied, It turns out that pruning does not affect the sequence of packets in

environments where the order of the delivered packets is crucial, e.g. in ATM networks or in

more general cases of circuit-switching networks. Extensions to other type of environments, Le-,

IP multicasting, are aIso possible and require only minor modifications.

1.5 Contributions

The remaining work addresses the problem of designing efficient algorithms fo r the online BD-

MCAST problem. Motivated by the examples of Subsection 1.4.1, we study both cases where

the multicast graph is confined to the tree structure, and the case where the multicast graph is

not topologicaliy restricted. To the best of our knowledge, it is the first time that the problem

is investigated in the latter perspective. As already mentioned, we cal1 the corresponding set

of algorithms TREE and CIRCUIT, respectively.

The algorithms deal with both join and leave versions of the problem, in the online setting.

Page 32: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

We do not assume any a priori knowledge on the sequence of requestç issueci by the users. In

the event of a join request, the algorithm computes a feasible connection path, provided t h a t

such a path exists. If no feasible connection is can be found, the user is denied admission to

the multicast group. Our apptoach satisfies t h e following properties, in accordance with t h e

guidelines suggested in Su bsection 1.4.2:

1 . Feasibility and QoS: Both TREE and CIRCUIT algorithms uphold the feasibility of t h e

multicast graph. Thus, the bandwidth d o c a t i o n abides by the edge-capacity constraint.

In addition, we prove tha t every destination admitted in the group receives the multicast

information through a connection path tha t guarantees the satisfaction of both bandwidth

and delay guarantees imposed by the user.

2. Eficiency: We prove strong results on the cost incurred by the connection paths in o u r

algorithms. In particular, we propose two join algorithms for both multicast trees and

generic multicast graphs. The first algorithm is optimal, and identifies a connection of

minimum cost, in terms of the additional bandwidth tha t has t o be allocated. The second

algorithm is an r-approximation, nameiy, for any constant r, the algorithm computes

connection paths of cost at most (1+c) times the optimal cost. We advocate the superiority

of the last algorithm, when scalability and flexibility are issues of crucial importance.

3. Low complezity. Unlike most related work, the running tirne of d l join and leave algo-

rithms ïs a low-order polynomial on the number of nodes in the network.

4 . Eficient reclaiming of msources: The algonthms for handling leave requests, apart from

effecting the disconnection of the leaving user from the rnulticast group, perform also

deallocation of the excess bandwidth. We show how t o reclaim the maximum amount of

resources, without violating the QoS for the remaining participants.

Page 33: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

5 . Observation of the t o p o l d ~ l constmints: T h e TREE algorithm is designed in a way

tha t no circuits appear, throughout its execution, for any sequence of requests. No such

restriction is imposed on CIRCUIT.

6 . Ezfension to the DSTEINER problem: The TREE dgorithm can be applied, with some

minor modifications, to the online, tree-constrained DSTEINER problem. We argue that

the algorithm exhibits the same performance guarantees as TREE. In contrast, we compare

our solutions to the D~TEI- heuristic proposed in [ll]. We prove that the latter violates

feasibility, by providing a counterexample scenario.

7 . Flezibility: T h e BD-MCAST algorithms presented in this work can easiiy be extended to

incorporate additional requirements, or restrictions. For instance, we show how they can

be appiied in networks tha t are modeled by directed graphs, i.e., in mobiie networks.

Moreover, the approximation join algorithms can operate in networks where a bandwidth

variation parameter is defined for every individual link.

We conclude the Introduction by outIining the structure of this work.

Chapter 2 is focused on the presentation of the TREE algorithm. First, we address a

degenerate case of t he BD-MCAST problem, namely the problem of efficient routing with delay

guarantees, also known as the Constrained Shortest Path problem. We present and analyze an

approximation algorithm for computing feasible connection paths, in the event of a join request.

We also describe an algorithm for serving leave requests, and reclaiming resources.

Chapter 3 is motivated by the observation tha t multicast trees do not guarantee satisfactory

admission success ratio, due to t h e topological constraint. We waive this requirement, and

Page 34: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

introduce a framework that aiiows us to apply previous work on the Constraint Shortest Path

problern, in the context of the BD-MCAST problem. The structure of thii Chapter goes dong

similar lines to that of Chapter 2: We derive both optimal and approximation algorithms for

identifying feasible connection paths when a join request is risen. We provide formd proofs

of both the correctness and performance of the latter algorithms. Last, we show how to serve

leave requests and efficiently reclaim cesources made a d a b l e due to the d'isconnection.

Finally, Chapter 4 investigates extensions and outlines some of the antiüpated future work

on open issues of the BD-MCAST problem.

Page 35: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

Chapter 2

Tree- based Algorit hms

In t h i s Chapter, we present our first approach t o the oniine BD-MCAST problem. We propose

a set of algorithms for serving join and leave requests, under the constraint that the multicast

graph maintains the tree structure. Namely, the union of al1 connection paths defines a tree

that spans the current set of destinations. Al1 actions associated with the processing of join

and leave requests abide by the above requirement. This implies that no circuits are introduced

during the update of the multicast graph,

We begin Our discussion by addressing, in Section 2.1, the related, though less complicated

problem of efficient routing with delay requirements. We review and extend some previous work,

which, later, we apply t o the design of algorithms for the BD-MCAST problem. Section 2.2 k

focused on the presentation and analysis of tree-based BD-MCAST algorit hms. We propose an

algorithm for serving join requests which identifies feasible connection paths of near-optimal

cost. We also demonstrate an extension of the approximation algorithm, for s e ~ n g join requests

in the context of the online, tree-restricted DSTEINER problem. We prove that a previous

approach [Il] t o the latter problem, unlike Our solutions, violates feasibiiity. We conclude by

addressing the issue of leave requests, and we suggest an efficient procedure for reclairning

Page 36: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

CHAPTER 2. TREE-BASED ALCORITHMS

resources in t h e event of disconnections from the current tree.

2.1 Constrained Path Optïmïzation in QoS Routing

A departing point in t h e investigation of BD-MCAST algorithms is the issue of QoS routing

with delay guarantees, in networks. In this section we formulate the problem, and extend some

of the existing work. The algorithms we discuss are providing a powerful tool for identifying

feasibIe, cost-efficient connections for instances of the BD-MCAST probtem.

2.1.1 Problem Definition

Unicast routing wit h QoS guarantees can be viewed as a degenerate case of multicasting: here,

information originated from a source s is delivered to a unique destination d, via a connection

path p. Suppose tha t the network is represented by an undirected graph G = (V, E), with

IV] = n, IEl = m. Each edge e E E is associated with delay dfe) and weight w(e), which

corresponds to the administration cost of e. Both weight and delay assume non-negative, integer

values. The Constmined Shortest Path pmblem, dso known as Shortest Weight-Constmined

Path problem [8] consists of identifying a path from s to d of minimum total weight, while

observing t h e end-to-end delay constraint, Le., the total delay of the connection path can not

exceed a predetermined bound D. For the sake of brevity, we refer t o the problem as the CSP

problem, in what follows.

The CSP problem has attracted significant interest due t o its applications in QoS routing.

The problem was introduced by Joksh [14], and research on efficient algorithms culminated

in Hassin's [IO] and Phillips' [24] papers. We review some of the exact and approximation

algorithms proposeci in the literature, and investigate extensions of importance in the design of

our multicast algorithms.

Page 37: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

2.1.2 Exact Solutions For General Weight Assignment

Since the problem in consideration is NP-hard [83, we can not hope for polynomial-time exact

solutions. However, the pro blem admits pseudopolynomial solutions, namely algorit hms wit h

running time po1ynornia.l on both input size and edge metrics [14] [18] [IO].

The exact algorithm is based on dynamic programming [IO], as describecl below. Let

1 , 2 , , . . .n be a numbering of nodes in G, such that the node with id 1 is t he source, and

node n is the destination. We denote by WC, dijl the deiay and weights of edge e = (i, j ) , with

i # j, respectively, and by Off the weight of the optimal sdution, i.e, the sum of weights on

edges of the optimal path. Let also gj(c) be the delay of a shortest 1-j path, with respect to

end-to-end delay bound D, whose total weight is at rnost c.

Algorit hm OPTIMALCSP

Input: Bound D on end-to-end delay. Output: Cost of the optimal 1 - n path, oo if no path of delay < D exists.

Notice tha t OPT is not known beforehand, but it satisfies OPT = min{clg,(c) D ) .

Therefore, gj(c) is cornputed for c = 1 and j = 2, . . ., n, subsequently for c- 2 and j = 2,. . . , n

and so on, until the first value of c for which g,(c) 5 D is reached. A t tha t point, OPT is

assigned the value of c. The cornplexity of OPTI~MALCSP is O (m - O PT), which is considered

prohibitive in cases where the edges of the graph assume large weight values, and thus OPT is

expected t o be high as weli.

Page 38: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

2-1-3 Exact Solutions When Edge Weights Are The Same

The algorithm of t h e previous section can be extended to provide exact solutions, within poly-

nomial time, in the restricted case where ail edge weights are t h e same. Let W be t h e uniform

weight of ali edges. Define gj(c) as the delay of a shortest-delay 1-j path of c hops. Here, c

corresponds t o the number of edges in the path, and not t o the total weight, as in t h e general

case, i.e., c = 1,2, . . . , n - 1. Hence, the dynamic programming procedure describeci in the

previous Subsection can be appiied, with OPT denoting the number of hops of the optimal

path, which is at most n - 1. The minimum weight sought is then qua1 t o W -Off, while the

complexity of the algorithm is O(m - O f f ) = O(mn).

Algorit hm UNIFORMCSP

Input: Bound D on end-teend delay. Output: Number of h o p h of the optimal 1-n path. The cost sought is then

qua1 t o h W, where W is t he uniform edge weight .

2.1.4 Approximation Algorithms

Building on the exact algorithm of Subsection 2.1.2, Hassin proposed in [IO] two efficient al-

gorithms for the CSP problern with arbitrary weights. The first algorithm is pseudopolyne

mial, i.e., i ts worst-case running time is a function of the edge weights. It has complexity

O(1og log U ( m ( n / ~ ) + log log U)), where U is an upper bound on the weight of the optimal

path. For instance, a trivial value for U is the sum of the n - 1 largest edge weights, o r the

total weight of the shortest s-d path. The polynomial complexity of the algorithm is achieved

Page 39: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

by employing rounding and scaling techniques [28] on the edge weights. In the same paper [IO],

Hassin also p r o p d a Fully Polynomial-Time Aemation Scheme (FPTAS) for the prob-

lem in question, namely an eapproximation algorithm whose complexity depends only on the

number of input variables and 1/c. The running time of the aigorithm is 0(m(n2/e) log(n/c)).

Another FPTAS for the CSP prob1em is due to Phillips [24]. Her algorithm employs

Dijkstra-based techniques developped in the context of the Network Inhibition problem, also de-

fined and ivestigated in [24]. T h e running time of Phillips' algorithm is 0(rnr(+(n2/~) log(n/c)),

which outperforms Hassin's FPTAS, at the expense of a substantiaily more invoived implemen-

tation. However, i t is superior t o Hassin's pseudopolynomial algorithm only when there exïsts

a constant c such tha t m > cn log(n/~) / log log U.

It should be stressecl t hat the abovementioned FPTAS's provide satisfactory approxim*

tion of the optimai solution. Specificaliy, for arbitrarily small constant c, the output path

has weight at most (1 + c) times the optimal weight. In addition, the running time of the

algorithms is bounded by a smd-degree polynomial on m, n. Indeed, we can not opt for a

better approximation for a NP-hard problem than a FPTAS. The second observation regards

Hassin's pseudopolynomial algorithm: The algorithm exhibits a dependency on edge-weights

which, from the theoretical point of view, is not beneficial. However, its complexity deterio-

rates, in practice, only for substantially large edge-weights, i-e, weights for which the expression

log log U dominates the time complexity. Otherwise, i t is expected tha t this algorithm, although

pseudopolynomial, performs better than Hassin's FPTAS.

Notice tha t al1 CSP algorithms presented so far d o not rely on any assumption on the struc-

ture of the input graph. A natural question one can pose is whether their running time can

be improved, assuming topological knowIedge of the graph, without compromising the perfor-

mance guarantees. Recall t h a t scdability is becoming an issue of increasing importance, as

Page 40: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

networks grow in size: users impose strict constraints on the system response time tha t may

be hard t o be met by poorly scaling algorithrns. Recently, Orda [23] suggested improvements

to the time complexity of eapproximation algorithms for the CSP problern, by exploiting the

hierarchical, aggregated topology of modern broadband networks. In particular, he proposeci

a new algorithm, assuming the existence of an underlying hierarchical process t h a t aggregates

the network state information. Such a process is encountered, for example, in the PNNI Rec-

ommendation [36] [35L The algorithm maintains the complexity of standard, unconstrained

shortest-pat h algortihms, such as the widely-known Dijkstra's algorit hm.

2.1.5 Extension to Multigraphs

The need for scalable CSP algorithms manifests to even a larger extent when the network is

represented by a muftigmph, Le., a graph in which two nodes can be connected by means of

more than one undirecteci edges. These edges may be assigned different weight and delay values.

Although a multigraph is not usualiy considered as a mode1 of the physical network topology,

it can be used t o represent a virtual network. For instance! the CIRCUIT algorithm which is

described in Chapter 3 is based on application of a CSP algorithm over an auxiliaty, search

multigraph. Informally, the search multigraph is defined in a way tha t captures information

on existing connection paths, and it directs the search for a new connection path when a join

request is issued.

There exists a standard procedure for extending any CSP algorithm t o multigraphs. Let we,

dij be the weight and the delay of a n edge e = (vi,uj), vi7vj E V. Denote by n, m, the number

of nodes and edges in a multigraph G, respectively. We substitute every edge e = (vil vj) in G

by a path v;, vij, vj7 where vij is a new node introduced in the graph. The new edges (viy vij),

and (vjy u,) have both weight and delay q u a 1 t o ce/2 and dJ2, respectively. The construction

Page 41: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

(a) Edge fayout in a multigraph. Nodes v i @) Substitution of edges by patbs of length and y are connecteci by thhe edgcs, er,el 2- and es.

Figure 2.1: Transformation of a multigraph t o a simple graph. The CSP algorithm can be applied, when al1 multi-edges are replaceci by simple paths, as depicted in (b).

is illustrateci in Fig 2.1.

Clearly, this transformation results in a simple graph that has nm nodes and 2m edges. It

is also easy to argue that the application of the CSP algorithm on the modified graph wiU yield

the path sought. Therefore, if T(n, m) is the complexity of a CSP algorithm with simple graphs

as input, then the complexity of the same algorithm when applied to rnultigraphs is bounded

above by T (nm, 2m).

The procedure descri bed above enables any CSP algorti hm, designed for simple grap hs,

to operate in multigraphs as weIl. On the other hand, individual algorithms may incorporate

the application in multigraphs in their design. In this case, only a small, or no overhead

in the asyptmotic time-complexity is observeci. Examples of t his class of algorit hms include

Hassin's pseudopolynornial algrotihm, which can be applied t o multigraphs without tequiring

any additional changes at all.

Page 42: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

2.2 Zkee-Based Algorit hms for the BD-MCAST problem

2.2.1 Motivation

As we showed in Subsection 1.4-1, the optimal multicast graph for the BD-MCAST problem,

in terms of admission success ratio and cost, is not necessarily a tree. Nevertheless, several

design considerations advocate research on tree-based algorithms as solutions to the BD-MCAST

problern. We briefly review some of the most significant reasons tha t motivate Our work on

multicast trees for the problem at hand. Later, in Chapter 3, we extend the algorithms t o the

general case of multicast graphs with cycles.

First, previous research in multicasting is almost exclusively focused on the construction of

efficient multicast trees. This is largely attributed to the tree structure of the optimal solution

for a simpler version of the rnulticast issue, including the Steiner Tree problem, as discussed in

Section 1.1. Thus, any cornparison of our algorithms with existing work presupposes tha t tree

multicasting is investigated.

Not surprisingly, the vast majority of protocols designecl to operate over the Internet rely on

the construction of multicast trees. Examples inciude the Distance-Vector Multicast Routing

Protocol (DVMRP) [34], Multicast extensions t o Open Shortest-Path First (MOSPF) [22],

Protocol-Independent Multicast (PIM) [5] and Core-Based Trees (CBTs) [2]. In addition, a t

present, the multicast overlay for the internet, known as MBone, consists of routers with only

tree-based mulicast capabiiities. In fact, routers a re not currently able t o distinguish between

different members of the same multicast group.

Moreover, trees exhibit a topological regularïty tha t facilitates the implementation of opera-

tions crucial to the functionality of real networks. For instance, a simple depth-first search in a

tree answers the issue of assigning a unique id (label) to the nodes of the network; the problem

Page 43: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

is known as the addressing or naming problem. Another wd-known example is Leader Election,

where all nodes have t o agree unanimousfy on selecting a unique node as the "leader" [l]. Fur-

thermore, issues such as the diitributed irnplementation of protocols, as weil as fault-tolerance

can be simplifieci assuming the existence of a tree-structureci underlying network.

Finally, it should be noted that the routing information stored in multicast routers is sig-

nificantly reduced when the multicast graph is a tree. In addition, there elast efficient, e s y -

to-implement compact routing schemes for tree graphs [333. This implies that the memory

requirements of multicast routers can be reduced, a feature which is certainly attractive in the

design of protocols for Wide Area Networks (WANs).

2.2.2 Definition of Parameters

Before proceeding to the description of the TREE algonthm, we first define the parameters

that appear in the discussion of Our algorithms. We also provide explanations about their

interpretation in the context of the problem in study. For simplicity of notation, we assume

that al1 join and leave requests pertain to the same multicast group.

At any given point of time, the TREE algorithm maintains a multicast graph that corre-

sponds t o a tree Tl denoted as the multicast tme. The tree is rooted a t the source s and spans

al1 current members of the multicast group, Le., users that were admitted to the multicast

group in the past, and have not requested yet to l ave the group. We denote the set of nodes,

and edges of T by V ( T ) and E(T) , respectively. Let also parent(v) denote the parent of a node

v E V(T) and chiLdren(v) the list of the children of v in the tree. Apparently, parent(s) = 0

and children(1) = 0, in case L is a leaf of T . In order to provide source-destination connectivity

T may include nodes that are not members of the multicast group. We refer to such nodes as

intermediate nodes.

Page 44: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

The tree T defines a unique path from the source s to a node v V(T) that consists

exclusively of tree edges. Let &(s, v) denote the path from s t o v such tha t for any edge

e E PT(sl v ) i t is e E E(T). We di this path the tree path /m s to v. The delay and capacity

of this path is equal t o ~ e E P r ( s , u ) d(e) , and mineEpT(i,v) c(e), respectively. For convenience, we

use the notation dT(v) and cT(v) to denote the delay, and capacity of the tree path from the

source s to node o.

Each edge e in network graph G is associateci with a variable allocated(e), which corresponds

to the bandwidth tha t is currently ailocated on e. By definition, banwidth is ailocated only

on edges of the rnulticast tree T, therefore crllocated(e) # O if and only if e E E(T) . Since the

bandwidth allocated on edge e can not exceed the capacity c(e) of e, we must guarantee the

requirement allocated(e) 5 c(e).

Let e be an edge of the multicast tree T, and b be a positive integer with b 5 c(e). Define

the ovemuting cost of e under request b as the additional amount of bandwidth that has to be

allocated on e, so tha t the total amount of bandwidth on e equals b. Formally,

O if allocated(e) > 6 overcost (el b) =

b - allocated(e) otherwise

Notice that the overrouting cost for an edge e is defined for a request b that does not exceed

the capacity of the edge, since in the latter case the request cannot be satisfied. The definition

can be extended to include this case if we define overcost(e, b) as infinity, whenever b > c(e).

The notion of the overrouting cost can be extended, to indude not only individual tree

edges but tree paths as well. Suppose u is a tree node, and let b be a positive integer such tha t

b 5 cT(u). The Iast inequality suggests that al1 edges on the tree-path from s t o u have capacity

at least b. Define the ovemuting cost of u under request b, denoted by overcost(v, b), as the

Page 45: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

sum of the overrouting cost of aii edges e under request b, where e is a n edge of the tree-path

from s t o v. Namely,

if the assumption that b is at m a t equal to the capacity of each edge on the tree-path

from s t o u does not hold, the overrouting cost for v is defined to be equal to infinity. Such

a definition is consistent with the extension of overrouting cost t o edges for which the request

exceeds their capacity.

Suppose tha t a join request join(u, bu, &) is issued by node u, and the current multicast

tree is T. Recd tha t bu and d, are the bandwidth and delay guarantees requested by user

u. The request is served by providing a connection path frorn s to u, denoted by P,, which

satisfies the QoS guarantees of u, under the assumption that such a feasible path exists. The

connection path comprises two distinct consecutive paths:

1. The joining path, denoted by Pj(u, v ) , where u E T is a node of the multicast tree. This

path consists exclusively of edges that do not belong t o the edges E(T) of the tree T.

Indeed, if u is not a tree node, then any online dgorithrn t h a t serves the join request should

provide a non-empty joining path. The joining path is empty when u is a n intermediate

node of T, and thus u does not require a connection to t h e tree.

2. The tree-path from source s t o node u, namely the path PT(s, v ) , where v is the end node

of the joining path Pj(u, v ) . This path consists exclusively of tree edges.

The above characterization implies tha t the joining path effectively identifies the connection

path, since the tree path from the source to a particular tree node is unique. In addition, the

bandwidth assignment associated with serving a join request is simplified. Specifically, an

amount of bandwidth q u a 1 to bu is allocated on all edges of t h e joining path; this allocation

Page 46: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

reflects the fact t ha t no other pteviously established connection paths share edges with the

joining path. On the other hand, each edge e on the tree path requires additional bandwidth

allocation equal t o the overrouting cost overcost(e, b,), since resources on the tree edges are

shared among several connection paths.

The connection path Pu = Pj(u, u) U fi($, v ) , which serves the join request of u, is cailed

feasible if and only if the following two inequalities hold:

The above set of inequalities characterizes the connection paths from s to v which support the

QoS requested by user u, in terms of capacity and end-to-end delay. Recall t h a t c(P) and d(P)

denote the capacity and delay of a path P.

The cost of a feasible connection path Pu refers to the additional bandwidth allocated on

the edges of the network in order to establish Pu, and therefore is defined as

cost(Pu) = (number of edges in Pj(u, v ) ) bu + overcost(s, v)

The first term in Eq. (2.5) corresponds to the amount of bandwidth assigneci to edges of the

joining path, while the second term corresponds t o the overrouting cost of the tree-path from

the source to node v.

Table 2.1 summarizes the notation used throughout this chapter. Some additional parame-

ters and d a t a structures wiil be defined in forthcoming sections, as needed.

Page 47: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

1 Svmbol 1 . . I I Y

d(e),c(e) ' Delay and capacity of edge e E E, respectively. T Current Multicast tree. s Source of the multicast traffic and root of 2'.

. r I - u 1 Next node to issue a ioin or leave reauest. 1 w') EtTl

Set of nodes of T. Set of edges of 2".

k tree ( v )

Number of current participants in the rnulticast group. A flag which is set when u is a tree node.

bu, d, p'

Bandwidth and deiay requirements of node u (in case of join request). Connection path from u to s, in case u requests t o join the group.

PT (s, v) f i(% 0 )

d~ ( 4 . C T ( V )

allocated(e)

Tree path h m the source to node v E V(T). Joining path from node u to some node u E V(T). Delay of the path PT(s, u), for node u E V(T). Capacity of the path &(s, u) , for node v E V(T). Current amount of bandwidth allocated on e. .

overcost (el b) ouercost(v, 6) cost ( Pu)

- - - - - -

Table 2.1: Explanation of symbols and parameters used throughout the Chapter.

Overrouting cost of edge e under request b. Overrouting cost of node v E V(T) under request 6. Total cost of the connection path for a join request issued by u. . - -

G'(Vr, E') LRA[e] R

We illustrate the above definitions by means of a specific example. Figure 2.2 depicts a network

-

Auxiliary search graph, used by the join algorithm to find the connection path. T h e Local Requirements Array for edge e. T h e Global Requirements Array.

of LO nodes, each one bearing a unique id. Boldfaced edges and nodes represent edges and

nodes of the current rnulticast tree T, respectively. The node with id 1 is the source of the tree.

Suppose also that T has been constructed as a result of a sequence of join requests, described

in Table 2.2. The latter table a h provides the joining paths, computed during the procesçing

of each join request.

The tree is constructed in steps, with new edges and nodes being added after a successfully

served join request. Initiaiiy, the tree consists only of the source (node 1). After the first

request, the tree consists of nodes {l, 2,4) and edges ((1,2), (2,4)). The second request adds

Page 48: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

Table 2.2: Sequence of join requests for the network G of Fig. 2.2.

node 5 and edge (2,s) to the rnulticast tree. The expansion of the multicast tree proceeds in

Joining path (4.2.1)

New participant u 4

a similar fashion, until we reach the instance depicted in the exampie. Following our notation,

bu 1 d, 10 1 14

we have V ( T ) = (1 ,2 ,3 ,4 ,5 ,6 ) and E (T) = { ( 1 , 2 ) , (1 ,3 ) , ( 2 , 4 ) , (2,5), (3,6)).

Figure 2.2: Example of a network G and the ernbedded current multicast tree T . Boldiaceci edges and nodes are part of T.

Table 2.3 demonstrates the values of the parameter allocated(e), for every edge e E E(T)

of the multicast tree. Notice that the values depend on the sequence of requests. In addition,

the table provides the values of the parameter overcost(e, b), for each edge e E E(T) , and for a

value of request b equal to 20. The purpose of this computation will become evident in a while,

when a new node u issues a request with 6, = b = 20.

Page 49: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

1 Tree Edge e 1 allocated(e) 1 ouercost(e, 6) , with b = 20 ]

Table 2.3: Values of allocated(e) and overcost(e, 20), for al1 e E E(T) , for the multicast tree of Fig 2.2-

In addition, according to the definition of the overrouting cost, for a node u E V ( T ) and

request b = 20, as suggested by %. (2,2), and given the values of Table 2.3, we have the

ouercost (2,20) = 2

mercost(3,20) = 3

mercost(4,20) = 12

ouercost (5,20) = 4

overcost(6,20) = 11

Suppose now that a new join request is issued by node 10, with bandwidth and delay require-

ments equal to 20 and 21, respectively. T h e online algorithm wiil serve the request by providing

a feasible connection path. Let u s consider some possible connections:

O Node I O connects to T via the joining path (10,9,4). The tree path is path (1,2,4). The

path is not feasible, however, since the capacity of edge (2,4) on the tree pat h is 15 < 20.

Thus, node 10 can not join the multicast group by connecting to node 4.

0 Node 10 connects t o T via the joining path (10,9,5). The total delay of the connection

path is 20, and the delay requirement is satisfied. The tree path is (1,2,5), an the total

Page 50: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

CHAPTER 2- TREE-BASED ALGORITHMS

cost of the connection k

number of edges in (10,9,5) 20 + overcost(5,20) = 2 - 20 -f- 4 = 44

Node 10 cannot connect to node 6 by means of the joining pa th tha t consists of the single

edge (6, IO), because the corresponding connection path, namely path (1,3,6, IO), has

delay 22 > 21. However, i t may be connected via the joining path (10,9,6). In the latter

case, the tree path is (1,3,6) and the total cost incurred by the connection path is

number of edges in (10,9,6) - 20 + wercost(6,20) = 2 20 t 11 = 51

There are of course other possible connection paths that can be identified in the example

given. The objective of Our algorithms, as described at the sequel, is t o compute feasible paths

of optimal (or near-optimal) cost-

2.3 Tkee-based BD-MCAST Algorithms

2.3.1 Overview of the TREEJOIN Algorithm

In this section we present a high-level description of the TREEJoIN algorithm, which serves join

requests with QoS guarantees. Suppose that T is the current multicast tree and u has issued

the last join request. The proposed algorithm follows the sc+called greedy approach and consists

of two steps, described below.

1 . Computation of a connection p t h of smdl cost: In this s tep the algorithm finds a

feasible connection path Pu of small cost, where the c w t of the connection path is defined

by Eq. (2.5). If no feasible path is found, then the user is refused acceptance to the

Page 51: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

CHAPTER 2. TREE-BASED ALGORITHMS

multicast group. Procedure FINDPATH performs this task, as describeci below.

2. Perform upùates acmss edges and nodes of Pu: After path Pu is identified, Pu is

traversed from s to u. On each edge, and node of Pu the required updates are performed.

The updates include allocation of additiond bandwidth, and inclusion of edges of the

joining path in the multicast tree, to ensure tha t a feasible connection path from s t o u

is estabüshed. Procedure UPDATEPATW is responsible for performing such updates.

Input: The current multicast tree T and a join request rj = join(u, bu, &). Output: An updated multicast tree Tt, if u is admitted in the group.

Otherwise, a notification of rejection.

1 If Pu = FINDPATH(T, u)=NIL then 2 REJECT the request

else 3 UPDATEPATH(P,).

The crux in the design of efficient join algorithms Lies on the computation of feasible connec-

tion paths of sufficiently smaU cost. In unconstrained versions of the multicast issue, minimum

cost connections are easily identified by applying some shortest path algorithrn, e-g., Dijkstra's

algorithm. In BD-MCAST, such a task is cornplicated, due to the restrictions irnposed by the

delay requirement. To overcome this obstacle, we resort to approximation CSP algorithms,

as discussed in Subsection 2.1.4. Specifically, the FINDPATH algorithm, presented in Subsec-

tion 2.3.2, provides a feasible connection path of cost within a factor of at most (1 +c) the cost

of the optimal feasible connection path. The algorithm exhibits a low-degree polynomial time

complexity, and can be applied t o provide solutions t o the DSTEINER problem: this extension

is investigated in Subsection 2.3.5.

Page 52: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

To arrive to the identification of a connection path, we employ a technique which consists

of creating an awiIiary, or seurch gmph G', based on the current multicast tree, and the

values of some of its associated structures and variables; algorit hm FI~PATHAUX performs

the construction of Gr. The problem is then reduced to a CSP instance, on this search graph,

with end nodes the source and the new participant. The selected path is uniquely mapped to

a connection path in G tha t satisfies the desired properties. We elaborate on the details of this

technique in what foliows.

2.3.2 Computing Near-Optimal Connection Paths

The algorithm FINDPATH cornputes optimal feasible connection paths and has two input pa-

rameters: the current multicast tree T, and the join request issued by a user u in the net-

work. It returns the connection path Pu sought, expressecl as a pair of joining and tree paths

[P,(u, v ) , PT(s, v ) ] , for some node v E V(T). As mentioned already, this output format facili-

tates the update procedure.

If u happens t o be a node of T, Le., u is an intermediate node in T, and if the tree-path

PT(s, u) haç sufficient capacity and smaii delay to accommodate the request, then the node can

be trivially admitted to the multicast group. In such a case, the connection path Pu is identical

to the tree path, or, equivalently, the joining-path component of the connection is empty. These

actions are performed in steps 2-4 of the FINDPATH algorithm. The nontrivial case arises when

u is not an intermediate tree node. Then, any s-u connection path will include a non-empty

joining-path component. Let Pu be the optimal connection path serving the request of user u, -b-

assuming for the moment that such a connection exists- Then, there exists u E V(T) such that

The purpose of the auxiliary graph is to direct the search for a connection path, aiming

Page 53: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

Algorit hm FINDPATH 1 Input: The c u r e n t multicast tree T, and a join request 9 = join(u, bu, 6). Output: A connection path Pu. Returns NIL if no feasible path is found.

1 For al1 v E T do compute mercost(v, bu) and ~ ( v )

2 If u E V(T) t hen

3 If cT(u) > bu and dT(u) < d, then return [0, &(s, u)]

else 4 return NIL l

5 G' = F~PATHAux(T, U, bu, 6) 6 P' (u, S) = APPROXCSP(U, S, du, E )

% APPROXCSP runs on G'

7 If P ( u , s) = 0 then return NIL else

8 Starting from u, traverse P ( u , s) until a node u' E T is reached. Let P(u, v') be the path consisting of the traverseci edges.

9 Map P'(u, v*) into a path P(u, v') in G

10 Return [P(u, v') , PT (s, u')]

at three goals: feasibility, cost-efficiency, and observation of the topological constraint, Le.,

maintenance of a tree multicast network. Hence, edges of G that can not support the desired

QoS, in terms of capacity and delay, are not included in G'. Notice that edges with both adjacent

nodes being tree nodes are excluded from the search graph. This is due to the constraint irnposed

on the topology of the multicast graph: If such an edge appeared in a connection path, then the

tequirement of maintaining a multicast tree would be violated. Observe also tha t tree edges do

not appear in G'; instead, every node w E V(T) , is connected t o the source, in C, by means of

an edge of the form el = (s, w ) . The inclusion of the latter edge is effected only if cT(w) 2 bu

and dT(w) 5 du (steps 9-11 of FINDPATHAUX).

The construction of G' implies that edges of the joining path P,(u, u) uniquely define a path

in G' t hat traverses the same sequence of nodes as Pj (u, v ) ; denote by P ( u , v ) such a path in

Page 54: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

CHAPTER 2. TREE-BASED ALCORITHMS 48

G'. Equivalently, path P(u, v ) can be uniquely mapped to the joining path Pj(u, v). Such a

mapping is performed in step 9 of FINDPATH.

The choice of the weight and delay values, for the edges of G', appears t o be, a t first

sight, counterintuitive. For instance, one would expect that edges of the form e' = (s, w ) , with

w E V ( T ) , t o be associated with weight, and delay values equal t o overcost(w, A) and dT(w),

respectively, in accordance with the cost and delay contribution of the tree path &(s, w).

hstead, those cost and delay values are shared between the fs, w ) edge and adjacent to node w

edges with an end node that does not belong t o T, as steps 6-8 and steps 9-11 of FINDPATHAUX

illustrate, The purpose of this construction is to guarantee a connection path that does not

introduce circuits, hence presenring the tree topology of the multicast graph.

Input: The current multicast tree T, user u, QoS requirements bu,&. Output: An aud i a ry graph Gt = (Vt , E') used by FINDPATH.

O Initially V t = V and Er = 0 For all edges e = (vi, vj) , for which 60th vi and vj do not belong t o T, do

I f c(e) 2 bu and d(e) 5 d, then define et = (v;, v j) with w(e') = bu and d(et) = d(e)

Et = EF u {e t )

For al1 edges e = (v;, ~ j ) , for which v; E T and vj 4 T d o

If c(e) 2 bu and d(e) < d, and cT(v;) 2 bu and dT(vi) 5 du then

define et = (v;, v j ) , wit h w(et) = bu + overcost(ui, b,)/2,

and d(e') = d(e) + dT(v;)/2

E' = E'u {e t )

For al1 nodes v E V(T) , with ~ ( v ) 2 bu and dT(o) 5 du d o

define et = (s, v) , with w(et) = ottercost(v, b,)/2 and d(eF) = dT(u)/2

Et = Et u {et)

Page 55: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

As a result of the construction of the auxiliary graph, path P ( u , v) in G' has overall weight

and delay tha t exceeds the cost and delay of the joining path Pj(ul v ) by overcost(v, bu)/2 and

dT(v ) /2 , respectively. On the other hand, edge e' = (s, v ) is assigned weight and delay values

equal t o overcost(v, bu)/2 and dT(v ) /2 . Consequently, the union of q ( u , v), and e' = (8, v )

defines a path in G' of delay and weight equal to the actual delay and cost of the connection path

PT(s, u) U P,(u, v ) . If this path is selected by the CSP algorithm, then the mapping procedure

of steps 8-10 will identify an optimal, feasible connection for node u.

The unbalancecl distribution of weight and delay values on edges of G' serves a subtle,

however crucial purpose: the connection computed by the CSP algorithm always preserves

feasibility. Indeed, the CSP procedure may return a s-u path tha t does not conform with the

tree structure of the multicast network- In such a case, the connection computed in steps 8-10

exhibits delay at lemt d T ( v ) / 2 ' less tha t the total delay of the path computed in step 6 of

FINDPATH; since the latter path is guaranteed to be feasible, so is the identified connection

In contrast, if the straightforward assignment was suggested, the following undesireci scenario

could be risen: a feasible path is identified by CSP, however, the mapping procedure returns a

path of delay greater than &. In Subsection 2.3.5, we provide an example tha t illustrates this

pitfali, in the context of the DSTEINER problem.

Ezample :

We aus t ra te the construction of G' by FINDPATH, by means of an example, depicted in

Fig 2.3. T h e auxiliary graph refers to the example of page 41, assuming tha t node 10 issues a

new join request, wit h bandwidth and delay requirements 20 and 21, respectively. Boldfaced

nodes represent nodes in T. Boldfaced edges correspond to edges of the form e' = (s, v ) , where

u E V(T).

'Here, v is the fist tree node, assuming a traversal of the path computed in step 6 of FINDPATH, starting from u.

Page 56: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

[ Edge in G 1 Weight 1 Delay ]

Figure 2.3: The auxiliary graph Gr, for the example of page 41, as constructed by FINDPATHAUX.

It should be noted that the connection path is derived by a single caii t o the CSP algorithm.

It turns out that the algorithm maintains the tirne complexity of a single source-destination

CSP problem.

The following lemma provides a connection between the cost and delay of a connection path

in G, and the weight and deIay of its corresponding path in G'.

Lemma 2.1 Let T 6e the current multicast tree and join(u, bu, du) 6e a join request issued by

node u. Suppose that Pu is a feasible connection path serving the join riequest. Then Pu is

mapped to a path Pu in Gr that has weight equal to the cost of Pu and delay equal to the delay

of pu=

PROOF

Since Pu is a s-u connection path, there exists v E V(T) such that Pu = Pj (u, v ) U PT(s, v ) .

The joining path Pj(u1 u) corresponds to a path q(u, v ) in Gr because, by construction of Gr,

both paths traverse the same sequence of nodes. Alço, Pj(ul v ) includes only one edge adjacent

Page 57: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

CHAPTER 2. TREE-BASED ALGORITHMS

t o v, which in conjunction with step 7 of FINDPATHAUX implies that

where cost((P,(u, v)) is the contribution of Pj(u, v) t o the total cost of Pu as in Eq. (2.5).

On the other hand, the tree path PT(s, v) is represented by the edge e' = (s, v) in G'. The

weight and the delay values of t h k edge are overcost(v, bu)/2 and dT(v)/2, respectively. Then,

by (2.6) and (2.7), the total weight and delay of q ( u , v ) U {e') are

cost(P') + overcost (v , bu) and d(Pj (u, v ) ) + &(v)

respectively. But the above expressions are equivaient to the total weight and delay of the

connection path Pu, and the lemma is thus proven. 0

We prove the foiiowing theorem to demonstrate the correctness, and efficiency of Our algo-

rithm.

Theorem 2.1 Let T be the current rnulticust tme, and join(u, bu, u,) a join request issued by

node u. Then

i) Let Pu be the optimal connection p t h for node u 's join request such that the tree topology

of the rnulticast gmph is pmsenied. Algorithm FINDPATH mturns a feasible connection

path, whose cost is at most ( 1 + E ) times the cost of Pu.

ii) If no fecrsible path ezists, then FINDPATH returns NIL.

Page 58: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

We assume that v is not a node of T; otherwise an optimal path is found in step 2 of the

algorithm (since in this case there exkts only one feasible connedion that preserves the tree

top010gy of GM).

Part à): Since Pu is a feasible connection path, there exists v E V(T) such that P, = Pi (u, v) U

PT(s, u). In addition, Pu satisfies the properties (2.3) and (2.4). Then, by construction of the

auxiliary graph, Pj(tt, v ) corresponds to a path q ( u , v ) in Gr from u to u of weight

overcost (u, 6,) w ( q ( u , v ) ) = ((number of edges in P j (u, v)) - 6, + 2

and delay

where the weight and delay factors overcost(v, b,)/2 and dT(v ) /2 are due to the assignment of

weights and delays in step 7 of FINDPATHAUX ,respectively.

Also, an edge et = (s, v ) connects the source s and the tree node u, because node u satisfies

the conditions of steps 9-11 of FINDPATHAUX: This is implied by (2.3) and (2.4)- Step 10 of

the same algorithm indicates that et has weight and delay in G' equal to:

overcost (v , bu) w (e') = d~ (4

2 and d(ef) = -

2

Equations (2.9) and (2.10) suggest that the path q(u, v) u {e') has total delay d(Pj(u, u) + dT ( v ) ) , which is at most &, based on (2.3). Thus, APPROXCSP wiU return a non-empty path,

in step 6 of FINDPATH; denote this path as P'(u, s). The weight of the path computed by

Page 59: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

APPROXCSP is at most (1 + c) tirnes t h e weight of t h e pa t h q (a, v ) U {et) , t herefore

w ( m a 4) s (1 + 4 ( w ( q ( u , v ) ) + 44) I

< ( 1 + E ) - {(nurnber of hops in Pj(u1 v ) - bu) + overcost(u, bu)) (2.11)

where the last expression is derived by (2.8) and (2.10).

In s t ep 8 of FINDPATH P(u , s) is traversed, start ing from node u, until a node v' E VfT)

is reached. Let P(u, v') be t he path consisting of t h e traversed edges. Since P ( u , o') passes

through v*, i t will include a n edge with v' as one of i ts adjacent nodes. T h e weight and delay of

such an edge is at lest overcost(vœ)/2 and dT(v')/2, repsectively. But those d u e s correspond

to the weight and delay values of edge (s, v*) in G'. Hence, the total delay of P'(u, v') u (s, u')

is at most q u a 1 to the delay of P ( u , s ) , which in tu rn is at most &, because the last p a t h is

computed by APPROXCSP. Similarly, t h e tota l weight of P'(u, v*) U (s, v') is ut most equal to

the total weight of P(u , s ) .

In addition, P ( u , u') U (s, v') is mapped to the connection path [ Q u , u'), &(u, u*) ] , nameiy

the returned connection path. By Lemma 2.1, the paths P ( u , v')u(s, v*) and [P(u, v'), Pr(u, v')]

have the same total weight-delay and cost-delay characteristics, respectively. We conclude that

the algorithm returns a connection path of cost and delay t ha t does not exceed the totat cost

and delay of P ( u , s ) . We already showed tha t the delay of P'(u,s) is at most &, thus t h e

algorithm returns feasible paths. FinaUy, a cornparison of equations (2.5) and (2.11) yields t h e

result on t h e weight of t h e connection path found by FINDPATH.

Part ii): If no feasible connection path from u to s t h a t preserves the t ree topology of t h e

multicast graph exists, then for any pa th of the form Pu = Pj (u, v ) U l+ (s, u) , with v E V(T) ,

either (2.3) o r (2.4) d o not hold.

Page 60: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

Assume, by way of contradiction, tha t the algorithm retums a non empty path, of the form

[P(u, v* ) , PT(s, v ) ] for some v' E V ( T ) (step 10). Then, the algorithm cornputes a non-empty

path of delay at most &, in s t ep 6. Applying the same arguments used in proving Part (i), it

follows t hat the delay of the returned path is at most 6, Thus, t h e returned path observes the

user's delay constraint, as expressed by (2.3).

Moreover, consider the path P ( u , v*) computed in step 8 of the algorithm. Step 6 of

F I N D P A T H A ~ guarantees t h a t ~ ( u ' ) 2 bu, which implies tha t the tree-component of t h e

connection path, namely path PT(s, v'), has capacity at least bu. Also, di edges of the path

P'(u, v*) have capacity a t least bu, as in steps 2 4 of FINDPATHAUX. Finally, observe tha t path

P'(u, u*) translates into path P(u, v*), (step 9 of FINDPATH) , which means tha t the latter path

has capacity at least 6, as well-

We conclude tha t both the tree and joining path components of the connection path iden-

tified by the algorithm have enough capacity to accomodate t h e request of user u, as (2.4)

suggests. Hence, a feasible s-u path tha t preserves the tree topology of the multicast graph

exists, which is a contradiction. 0

Tirne Complexity of FINDPATH

The construction of the auxiliary graph requires time O(m): There are O(m) edges in G' that

correspond to some edge in G, and a n additional O(n) edges t ha t connect the source to tree

nodes in G'. For the inclusion of the former edges in G', i t is enough t o inspect the characteristics

of each edge e E E, as weU as t h e properties of its adgacent nodes, whether one of the nodes

or both belong to t h e tree. The characteristics of a n edge of t h e form (s, v), v E V(T), are

computed based on the values of ouercost(v, bu) and cT(v). T h e whole construction can be

accomplished in O(n + m) = O(m) time.

Page 61: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

T h e contribution of FINDPATH t o the overall complexity is estimated as follows: Step 1

can be accomplished by a predorder traversal in O(m) time. Steps 2-4 require at m a t O(n)

time, since a tree node v uniquely defines the tree-path from s t o v. Step 6 accounts for the

complexity of an +approximation algorithm for the CSP problem. Steps 7-10 map the path in

G' to a feasible connection path in G, and require O(m) time, since the path includes a total

number of edges at most m.

T h e above analysis suggests tha the identification of an optimal feasible connection path,

within an approximation factor of E, requires time asymptotically equal to the complexity of

the CSP problern. For instance, one can apply Hassin's approximation algorithms [IO] to derive

a FPTAS for the problem in question, with complexity 0(m(n2/s) log(n/e)). Alternativelly,

chosing Hassin's pseudopolynomial aigorithm for the CSP problern, an o v e r d complexity of

order O(log log U ( m ( n / ~ ) + log log U)) is incurred-

2.3.3 The UPDATEPATH procedure

Subsequently t o the identification of a feasible connection path, multicast-related information

stored in edges and nodes of the connection path has t o be updated. This task is accomplished

by the UPDATEPATH procedure, which is describecl in this Subsection.

Two are the main functions of UPDATEPATH: First, t h e connection path ïs establiihed,

namely its nodes and edges join the set of tree-nodes and edge-nodes, respectively. This gives

rise t o a n updated multicast tree: the next join o r leave request will perform on the updated tree.

Second, data structures used by the F~NDPATH procedure, such as the aiiocated bandwidth on

the tree edges, o r the delay of the tree-path from the source t o intermediate tree nodes, are

updated.

In order t o handle both allocation and reclaiming of resources efficiently t h e algorithm stores

Page 62: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

the Global Requirements A m y R, which contains information on the bandwidth requirements

of aU current participants. In particular, each entry of R is associateci with two fields: The

"key" field, which refers to the id of a particular node, and the "valuen field, which corresponds

to the bandwidth requirement of tha t node. The array is structured as a balanceci binary search

tree on the keys of each entry, and its information is accessible to other algorithms, such as the

TREELEAVE algorithm, which is described in the next Subsection.

An additional auxiliary data structure is defined for every edge e of the rnulticast tree- The

Local Requirements Array, denoted by LRA[e], contains information on users whose connection

paths employ edge e. The array is structured as a maz-heap [32], with ''key" field the id of

a current member and "valuen field its bandwidth requirernent. The max-heap supports the

findmax operation in constant time, as well the iwer t and delete operations in logarithmic time

on the number of the array entries. Similarly to the Global Requirements Array, the purpose

of LRA is to perforrn efficient resource reclaiming, when a member leaves the mukicast group.

The algorithrn exploits the connection path's format to perform the required type of updates

along the nodes and edges of the path. The only update associated with the tree path PT(s, v )

is the increase of aliocated bandwidth on every edge by the overrouting cost for that edge under

request bu. The latter cost reflects the minimum additional amount of banwidth that has to be

allocated in order to accomodate the join request of user u.

Recall tha t the joining path consists exclusively of edges outside the current multicast tree.

Therefore, updates along Pj(u, v ) ensure that nodes of this path becorne part of the (updated)

multicast tree. Every new tree node w is associated with the tree-delay from s to w , which can

be easily computed based on the corresponding delay of w'parent.

For the same reasons, an amount of bandwidth equal t o 6, k allocated on all edges of the

joining path, since no other connection path shates edges with Pj(u9 v ) .

Page 63: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

Input: T,connection path P,o€theform[Pj (u ,o ) ,~ (v ,~ ) ] with v E V(T) , and user's bandwidth requirement bu.

Output: Updated multicast tree T'.

Traverse -(s, v) from source s to node v.

1 For every edge e in the traversal do

2 allocated(e) = allocated(e) + mercost (el b,)

3 insert (LRA[e], (u, 6,)) Traverse Pj (u, o ) from node u to node u.

4 For every node w in the traversal, with w # v do

5 Let e = (2, w ) be edge of the traversal, and x is t raversed before w

6 set tree(w)

7 ~ T ( w ) = d~ (4 + 44 8 alloçated(e) = 6, 9 insert(LRA[e], (u, bu))

10 insert(R, (u, bu))

Finally, an entry that corresponds to the newly addmited node is inserted in both R and

LRA[e], for al1 edges e of the connection path.

To estirnate the time complexity, it is enough to observe that the update procedure traverses,

overall, at most 2n nodes and edges. On each edge or node, the actions performed by the

algorithm account for O(1ogL) complexity, where k is the current number of mernbers in the

group. Hence, the time complexity of UPDATEPATH is O(n log k).

2.3.4 The TREELEAVE Algorithm

We conclude the presentation of tree-based solutions by dkcussing the algorithm that serves

the leave requests. RecalL that a current participant of the multicast group can request, at an

arbitrary point of time, a disconnection from the tree. The processing of the requests involves

Page 64: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

CHAPTER 2, TREE-BASED ALGORITHMS

two discrete tasks:

Input: A leave request leaue(u) , issued by node u. Output: An updated multicast tree. The algorithm a b performs

reclairning of resources.

Traverse! &(s, v) from u to u.

For every edge e in the traversal do

Delete(LRA[e], u)

If LRA[e] is empty then do

reclaim bandwidt h equal to allocated(e)

reset tree(u)

else w=FindMax(L RA[e])

b,=GetBW(u) % Returns the bw requirements of u in LRA[e]

If 6, > 6, then allocated(e) = allocated(e) - (6, - 6,)

Delete(R,u)

7 k e Pruning: If the leaving node u is also a leaf in Tl then certain edges of T might be redun-

dant subsequently t o the node's leave. To identify such redundancies, the algorit hm traverses

the tree path from u to s, starting from u, and examines the Local Bandwidth Requirements

Array of each edge e on the traversal. If LRA[e] contains a single entry (which corresponds

t o user u), then one of the adjacent to e nodes is d'kconnected from the tree. In addition, the

amount of bandwidth allocated on e returns t o the pool of available resources.

Resource Reallocrrtion: When pruning is accomplished, the traversai of the u-s tree path

has reached a n edge, Say e, which is used by the connection paths of ut Ieast two members

(including u), Clearly, the removal of this edge or any of its adjacent nodes from the tree is

prohibited, because it would result in potential disconnection of some participants from the

Page 65: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

source. Instead, we focus on the deailocation of the maximum ailowed fraction of the aiïocated

bandwidth, without violating the QoS gurantees for t he remaining users. Specificaily, the

algorithm first identifies the user other than u with the highest contribution to the resource

allocation on edge e. If this contribution accounts for a value greater t han bu, then no reclaim

of resources can take place- Otherwise, consider ali users other than u whose connection paths

include edge e. Then, the difference between bu and the maximum bandwidth requerement of

the above users represents the maximum amount of resources that can be reclaimed on e. As

in the case of tree pruning, the above discussion involves operations o n the Local Bandwidth

Requirements Array of e. The procedure is repeated until the traversal reaches the source of

the tree.

Time complexity: The Delete operations in both R and LRA[e] can be implemented in

log k time, where k is the number of current participants in the multicast group. The FindMax

and GetBW opertions on LRA[e] require constant time (recali that LRA[e] is structured as a

max-heap). Al1 other actions performed on each node account only for a constant. Since any

path consists of at most n nodes, the overall complexity is O (n log n).

2.3.5 A Join Algorithm for the Online DSTEINER Problem

The approximation algorithm describecl in Su bsection can be modifiai to provide near-optimal

connection paths in the context of the online DSTEINER problem (defined in Subsection 1.3.4).

Here, we discuss this extension, and we demonstrate scenarios where a previously prosposeci

algorithm fails to preserve the feasibility property [Il].

Recall t h a t in DSTEINER bandwidth requirements is not an issue. Instead, the cost of the

multicast t ree is defined as the total weight ofedges included in the tree. Any edge e contributes

either its weight w(e) , if i t is a tree edge, o r zero, if i t is not a tree edge, t o the total cost. This

Page 66: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

implies t h a t t h e cost of t h e connection pa th is determineci by the cost of the joining path: the

tree-path component does not incur additionai cost, since i ts edges are considered t o be already

"bought" .

T h e proposed algorithm strongly tesembles the FINDPATH algorithm and is based o n t h e

construction of a search graph similar t o the auxiiiary graph created by FINDPATHAUX. We

highlight the modifications made and explain their significance.

Since bandwidth is of no concern, we eliminate aU constraints related t o the capacity of

edges and paths. O n the other side, the assignment of delay values to edges of G' is not

affected.

0 T h e weight assignment of edges in G' is changed t o reflect the contribution of a n edge e

to the total cost of the connection path: If e does not belong to the edge set of T, i t s

weight in Gt is set t o w(et) = w(e) (step 7 in DSTEINERAUX). In contrast, any t ree pa th

is attribut4 zero weight: al1 edges e' of the form e' = (s, v), where v is a tree node, are

assigned zero weight (step 10 in DSTEINERAUX). T h e intuition behind this assignment is

t h a t the connection path can foiiow a tree path for free.

T h e pseudocode for t h e algorithm DSTEINERTREEis given below. Notice t ha t the only differ-

ence between DSTEINERTREE and FINDPATH is the eiimination of capacity-related constraints.

In addition, no computation of overrouting costs takes place, since this concept becomes obso-

lete.

As mentioned in Section 1.2, Hong et al. proposed in [Il] a heuristic for a version o f

the online DSTE~NER problem. Their definition of the problem restricts the join requests to

uniform delay requirements, i.e., the total delay of a connection path can not exceed a f i x d ,

predetermined bound A. T h e heuristic does not provide provable performance guarantees, and

Page 67: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

Input: The current multicast tree T, user u, QoS requirement 4. Output: An auxiliary graph G' = (V', Et) used by the aigorithm

DSTEINER.

Algorit hm DSTEINERAUX

d

Initially V' = V , and E' = 0 For al1 edges e = (vi , v j ) , for which both ui and wj do not belong t o T, do

I f d ( e ) 5 d, then

define ef = (v;, v j ) with weight w(e3 = w ( e ) , d(ef ) = d(e)

E' = E' u {e')

For all edges e = (vi , v j ) , for which vi E T and uj T do I f d ( e ) 5 du then

define e' = (vi, v j ) , with w (et) = w (e ) , and d(er) = d(e ) + dT (v;) /2

E' = E' u {er )

For all nodes v E V ( T ) with dT(v) < du do

define e' = (s, u) , with w(e3 = O and d(e f ) = &(v) /2

E' = Et u {et )

in worst case, the time complexity is exponential on the number of nodes in the network.

To compute the connection paths, the authors of [Il] employ an a u d i a r y graph Gr, which

they cali "star graph", similar to the concept of search graph introduced in DSTEINERTREE. In

particular, edges et of the form e' = (s, v ) , with v E V(T), in G' are assigneci a delay value equal

t o the total delay of the tree path from s t o W. Edges adjacent to only one tree node appear

in G' with deiay equal t o their delay in G. Then, a CSP heuristic is run, in G', to identify

a path from s t o u of delay less than A. The computed path is then mapped to an actual

connection path in G. Note that the CSP heuristic employed in [Il] may require exponential

time, in worst-case.

In what follows, we describe a simple scenario in which the heuristic of [Il] violates feasibiity.

In contrast, we make use of the same example to demonstrate the correctness of DSTEINERTREE.

Page 68: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

Input: T h e current multicast tree T and join request r, = join(u, &). Output: A connection path Pu. Returns NIL if no feasible path is found.

3 reject request

5 P(u, S) = APPROXCSP(U, S, 4, E )

% APPROXCSP runs on G' 6 If P'(u, s) = 0 then reject request

7 Starting from u, traverse P'(u, s) untii a node v' E T is reached. Let P ( u , v*) be the path consisting of the traversed edges.

8 Map P ( u , v*) into a path P(u, v') in G

9 Return [P(u, v') , PT (s, v')]

The scenario is depicted in Fig. 2.4. Boldfaced edges and nodes represent edges and nodes in

the current multicast tree, respectively. Thus, T consists of nodes 1,3,7,8 and node 9, with node

1 being the source, Suppose t h a t node 5 is the next node to issue a join request, with delay

requirement equal t o 25.

Fig 2.5 illustrates the auxiiiary "star" graph , and the weight and delay assignment created

by the heuristic of [Il]. Fig 2.6, on the other hand, describes the auxiliacy graph G', and the

corresponding edge characteristics, as created by DSTEINERAUX. Notice the difference in the

assignment of delay values, in the two auxiiiary graphs.

Consider the following case: The algorithm of [Il] runs a CSP heuristic in G', with end

nodes 1 and 5 ( s and d respectively), and delay bound equal to the delay requirement of node

5, namely 25. The heuristic selects the path (1,2,7,6,5), in G', which then is mapped to the

Page 69: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

Figure 2.4: An example of an input graph, for which guarantee feasi biiity.

Edge Weight Delay 5 2

the heuristic p r o p d in [ll] fails

connection path (1,3,7,6,5), in G, of total delay 20 + 20 + 5 + 5 = 40 > 25, and feasibdity is

violated.

In contrast, let us examine the behavior of Our algorithm, for the sarne scenario. Edges (2,7)

and (6,7) have delay equal to 2 + 30/2 = 17 and 5 + 30/2 = 20, respectively. This means tha t

t he delay of path (1,2,7,6,5), in G', is greater than 25, and the CSP algorithm will never select

such a path. Although the knowledge of the approximation constant é: is essential to identify

the exact path, we do know, a priori, tha t the computed connection path preserves feasibility.

I t should be stressed tha t the instance considered in the exampk does not correspond to an

artificially created pathological scenario. Similar cases are expected to arise in heterogeneous

environments, especially when edges exhibit significant variations in their weight and delay

values.

Up t o now we investigated the join operation in the DSTEINER problem. We can easily

provide a n algorithm for serving leave requests as well. In particular, if the leaving node u is a

leaf node in the tree, then the pruning technique can be applied t o remove redundant edges from

t h e multicast tree. If u is an intermediate node, no changes to t h e multicast tree occur. For

Page 70: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

Figure 2.5: The auxiliary graph Gr, for the network of Fig 2.4, as generated by the heuristic proposed in [Il].

further details, we refer the reader t o the discussion of Subsection 2.3.3 and Subsection 2.3.4.

2.4 Conclusions

In this Chapter, we presented and analyzed BD-MCAST algorithms tha t maintain a tree-

structured multicast graph. First, we explained the motivation behind the investigation of

tree-based rnulticast algorit hms. We identified the Constrained Shortest Pat h probiem as an

issue related t o the problem in question, and reviewed previous work on it. We proceeded

to the presentation of an efficient join algorithm, which yields a b i b l e connection path of

cost at most 1 + E times the cost of t h e optimal feasible path. The complexity of the latter

algorithm was proven t o be identical to the complexity of t he selected CSP algorithm. The

join algorîthm was supplemented by an update procedure which is responsible for maintaining

u p t e d a t e multicast-related information throughout the network. An efficient leave algorithm

was also proposed, focusing on the reclaiming of the maximum amount of bandwidth without

disrupting the quality of service for the remaining participants of the group. Finaily, we showed

Page 71: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

[ Edge 1 Weight 1 Delay 1

Figure 2.6: The auxiliary graph Gr for the network of Fig 2.4, as generated by algorithm DSTEINERAUX.

how the proposed solution can be extended, with slight modifications, to address the Delay-

Constrained Steiner Tree problem, and demonstrated how previous work [Il] fails to uphold

feasi bility.

Page 72: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

Chapter 3

When Circuits Appear: The CIRCUIT

Algorit hm

In this Chapter, we continue Our study of multicast algorithms for the BDMCAST problem. As

opposed to the tree-based solutions, investigated in Chapter 2, no constraint on the topology

of the multicast graph is risen. Multicast information is delivered t o users through dedicated

connection paths, o r virtual cimuits, which are unrestricted in shape: they only abide by the

delay and bandwidth requirements of the corresponding user, for the QoS guarantees to be

provided.

Following similar reasoning as in the discussion of the TREE algorithm, we propose an

approximation algorithms for identifying efficient connection paths. In addition, we provide

a n optimal algorithm for computing minimum-cost connections. We argue tha t the former

algorithm can at tain better scalability and robustness. We also prove the performance of each

algorithm, in terms of the total amount of resources reserved by the computed connection

path. To achieve those goals, we take advantage of solutions t o the CSP ptoblem, presented

in Section 2.1. Unlike the tree case, the need for efficient CSP algonthms t h a t operate on

Page 73: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

multigraphs emerges. In addition, an efficient procedure for reclairning resources, in the event

of leave requests, is proposed. Aii algorit hms are analyzed with respect t o worst-case asymptotic

complexity, and it is shown tha t Our solutions operate within low-order polynomial time.

3.1 Introduction

In Subsection 1.4.1, we commented on the effect of dual QoS requirements on the design of

BD-MCAST algorithms- In particular, we showed t h a t there exkt scenarios where any onilne

algorithm, when confined in creating multicast trees, performs poorly in terms of both admission

success ratio and cost. This feature is certainly undesirable in environments where one o r both

of the above performance measures are crucial. In this Chapter, we abandon t h e requirement

on the maintenance of a multicast tree, throughout the execution of the algorithm. Instead,

we alfow the connection paths to create cycles or, in other words, no topological constrained is

applied on the multicast graph.

One could argue tha t the examples demonstrating the inefficiency of tree algorithms (see

Fig 1.1 and Fig. 1.2) correspond t o extreme, adversary scenarios. In a sense, they do so,

however i t should be stressed tha t their purpose is t o illustrate the reasons behind the potential

inefficiency of tree-based algorithms. We can easily come up with generic scenarios that a re

not tied t o a particular network configuration. For instance, suppose that the first user, Say ul,

t ha t connects t o the multicast group has very relaxed delay requirernents. Then, i t is highly

probable that a tree-based algorithm wiil provide a connection path for ul t h a t includes edges

of high delay. Suppose now tha t a second user, Say u* also requests a connection to the group,

but this time the user specifies substantially more strict delay requirements. Suppose also tha t

all connection paths from uz t o the source s consisting of edges of small enough delay have

t o cross the current tree and, specifically, the connection path of ul. Then, u2 is not likely

Page 74: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

t o be admitted in the group, should the multicast graph maintain the multicast-tree property.

However, a feasible connection path for the user could be identified, if we waive the tr-

requirement. InforrnaUy, the tree edges in the previous example partition the graph in such a

way tha t fast Links can not be used by other connections without violating the tree structure of

the multicast graph. In a highly heterogeneous environment, where requests exhibit significant

variations in terms of the requirements' d u e s , similar cases are expected t o be frequently

observed.

The introduction of circuits in the multicast graph relieves us from the burden of enforcing

any specific structure on it; O n the other hand, i t gives rise to some implementation issues

t ha t should be taken into consideration. One of them relates t o the routers' capabi t ies . In

particular, t h e network should be able t o provide individual end-teend connections, for each

potential member of the group. ATM routers support this requirement, by routing information

t o each one of the users through dedicated ltirtual circuits. In contrast, Internet routers, i.e.,

MBone routers, do not currently provide such kind of support. This is due t o the inability

of Internet routers to d-cr iminate between users that connect to the same multicast group.

Therefore, t he CIRCUIT algorithm is more suitable for circuit switched networks, in general,

and ATM systems, in particular.

As one would expect, the proposed generalization does not come for free: The complexity

of the solutions we present in t he sequel exceeds the complexity of the TREE algorithm. The

increase is attributed to the inherent difficulty of finding a connection path of small cost, when

the layout of t h e path is not restncted as i t happens to be in t h e tree setting: more combinations

a r e possible, hence more time is required t o find an optimal o r near-optimal connection. Still,

the CIRCUIT algorithm exhibits a complexity at most klog k times the complexity of TREE,

for serving both join and leave requests, where k is the number of current participants. Thus,

Page 75: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

the complexity remains a low-order polynomial on the number of nodes. Another issue related

t o CIRCUIT is the memory requirements, since the d a t a structures used by CIRCUIT are more

corn plex and storage-demanding, compareci t o the t ree-case. Nevert heless, t hese issues are of

secondary importance when we focus on attaining satisfactory admission success ratio, hence we

consider the extension t o generai multicast graphs an interesting and worth to be investigated

problern.

3.2 Definition of Parameters

Before proceeding to the discussion of CIRCUIT, we define the parameters that appear in the

algorithm, t o facilitate the subsequent discussion- Similarly t o the ônalysis of TREE, we as-

sume tha t al1 nodes are requesting connection t o or disconnection from the same multicast

group. This assumption simptifies the presentation, while the extension t o multiple groups is

st raightforward.

An any point of time, the CIRCUIT algorithm maintains a collection of distinct connection

paths, one for each current member of the multicast group. The current multicast grrrph,

denoted by GM, consists of the union of ail connection paths, with no constrainis imposed

on i ts topology. The rnulticast graph has a set of nodes VM and a set of edges EM, with

VM E V and EM Ç E. We denote by k the number of the current participants in t h e multicast

group. Apparently, IVM! < k, because, apart from participants, the multicast graph contains

non-member nodes, also called intemediate nodes. Al1 nodes in the network have unique id's,

and every connection path Pu is assigned the id of the corresponding participant.

Multicast d a t a is disseminated through the connections, and information destinated to par-

ticipant u is delivered ezclusively via the connection path P,. The connections may intetsect at

intermediate nodes or even overlap with some edges, howewer, they are handled by t h e routers

Page 76: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

as discrete virtual cirmrits. As in the previous Chapter, we use the terms "connection pathn

and "virtual circuitn interchangingly, t o denote the path that delivers multicast information to

a particular user,

Let Pu be the virtuai circuit for user u, and let v be an intermediate node on tha t path. We

denote by P,(s, v) the subpath of Pu from s to v , Le-, the path with end nodes s and v which

consists of adjacent edges of P,, in accordance with the definition of Subsection 1.3.1. Also, we

say tha t node v priecedes node w in Pu, for two nodes u and w of the connection path Pu, if in

a traversal of Pu, starting from the source, v is visited before W .

Every edge e in GM is associatecl with a variable allocated(e), which measures the currently

allocated bandwidth on e. By definition, bandwidth is allocated only on edges of the current

multicast graph, hence allocated(e) # O o e E EM- Naturally, the capacity c(e) of edge e

defines an upper bound on the allocated bandwidth over that edge. As a result, allocated(e) < c(e) . Also, the variable available(e) describes the maximum available bandwidth tha t can be

allocated on e. Clearly, auailable(e) = c(e) - allocated(e). Notice tha t auailable(e) is subject

t o changes over time, as the number of current participants in the multicast group changes over

time, and the multicast graph evolves in topoIogy.

Consider now a node u of G M , and let Pu = {P,,, Pu2 . . ., Pu,) with f 5 k, be the set of

virtual circuits tha t traverse v in GM. We define the equivalence relationship -y on P, as

follows:

PUi .-,Pu, iff Pui(s,v) Pu,(s,v), with 15 i , j < f

In other words, two connection paths in P, are related with respect to -,, if and only if their

subpaths from s t o v are identical. The equivalence relationship partitions the paths of P, into

classes of paths (Ci, CV, . . .Cc), where r 1. We denote by Cu the collection of al1 classes

defined on node v. Thus, if Pui -, P,, then Pu, and Pu, belong to the same cl- C$, for

Page 77: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

some q with 1 q 5 r. For every clas C:, denote by &(s, V ) the subpath from s t o v of any

randomly selected path of this class. We denote this path a repmsentative p t h for class C$.

What is the interpretation of t he above classification? Recall tha t according to the definition

of BD-MCAST, the sharing of resources among several connections is permissible only on a

common subpath of these connections, from the source to some intemediate node; once the

connections "splitn, no resources sharing is possible, even if the connection paths happen to

overlap over some edge, after t he "splitting" has occurred. The partition of paths traversing a

particular node v into classes serves precisely this purpose: It provides a framework for grouping

the connection paths which can share bandwidth, so that the cost incurred by the connections

is diminished- - - --

Ezample : We illustrate the above definitions by means of a specific example. Figure 3-1

depicts a network of 10 nodes, each one bearing a unique id. Boldfaced nodes represent current

participants in t h e multicast group, The node with id 1 is the source of the multicast traffic,

Suppose that a sequence of join requests, describeci in Table 3.1, has taken place. The latter

table also provides the virtual circuits, as computed during the processing of each join request.

T h e rnulticast graph is constructed in steps, with new edges and nodes being added after a

successfully served join request. InitiaUy, the tree consists only of the source (node 1)- After

the f irst request, issued by node 8, the multicast graph consists of nodes (1,2,5,8,9) and edges

{( i ,2) , (2,5), (5 ,9) , (9,8)). The second request does not add any nodes or edges t o the multicast

tree, since the virtual circuit for node 5 overlaps with the virtual circuit for node 8. The

expansion of t he multicast graph proceeds in a similar fashion. When di 4 requests are processeci

we have V ( T ) = {l, 2?3,5,6,8,9) and E(T) = ((1.2), (1,3), (2 ,5 ) , (3,5), (5,6), (5,9), (8,911.

Let us focus on node 5 of the multicast graph, assuming tha t ali 4 requests have occurred

and have been serveci. Notice t h a t the virtuai circuits for participants 5 and 8 share the same

Page 78: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

Figure 3.1: A network G and t he

Edge Capacity Delay

, ( 1 ~ 2 ) 30 5 20 4

capacity and delay values of its edges.

Table 3.1: Sequence of join requests appfied on the network G of Fig. 3.1.

[ New participant u b, du Virtual Circuit

subpath from the source to node 5, namely path (1,2,5). Hence, they define a class on the

1 8

latter node. A second class on the same node is due to the vittual circuits for destinations 6

and 9, which share the subpath (1,3,5). Thus, we can Say that two classes are defined on node

IO

5, denoted by {5,8) and {6,9)- In other words, Cs = { {5 ,8 ) , {6,9)). The representative paths

for the two classes are paths (1,2,5) and (1,3, S), respectively.

25

Moreover, every class C$ of connection paths for node v is associateci with certain addi-

(1,2,5,9,8)

tional parameters: The cnpacity (respectiuely delay) of c h s Cz corresponds to the capacity

(respectively delay) of the representative path of the class. Symboücaiiy, c(C$) = c(Fq(s, v ) )

and d(C$) = d ( e ( s , v ) ) .

Page 79: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

Let e = (v , tu) be the edge of the representative path Fq (s, v ) which is adjacent t o node v ,

with node w preceding v in Fq(s, v ) . The olloattcd Lndwidth on e for claps C$, denoted by

allo~ated,,~(e) is defined as the contribution of virtual circuits in class C! t o the ailocation of

resources on edge e. More precisely, this contribution is determined by the maximum bandwidth

requirement of users with connections in C:. Notice tha t the latter connections are sharing

bandwidth equal t o allocate&,(e) on edge e.

The above definition implies tha t we can compute t h e mrrently d o c a t e d bandwidth for

some edge e = ( v , w ) by summing up the aliocated bandwidth on e for al1 classes of connections

defined on t h e end nodes u and W . More formally,

Example : Referring to the example of Fig. 3.1, for the sequence of requests depicted in Ta-

ble 3.1, let u s compute allocated(e), for edge e = (5,9). According to the terminology of

the definition, we have v = 9 and w = 5. Two classes a re defined on node 9: class (8) and

class {6,9); let those classes be indexed by indices 1 and 2, respectively. Notice tha t classes

defined on node 5 do not contribute to the bandwidth allocation on edge e, in other words,

~ l l o c a t e d ~ , ~ ( e ) = 0, for al1 class indices q for node 5. Thus, we have:

allocated(e) = allocatedgll (e) + allocatedglp(e) + O = 10 + 12 = 22

Table 3.2 presents t h e values of allocated(e), for al1 edges e of the network of our exarnple

such tha t allocated(e) # O. The table also presents the amount of available resources on those

edges, namely the values of auailable(e) .

Page 80: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

Edge e 1 allocated(e) 1 available(e)

f 15 1 15

Table 3.2: Values of allocated(e), and available(e), for edges e of the example network, as described by Fig, 3.1, for the sequence of requests depicted in Table 3.1.

It would be instructive to pinpoint a key difference between multicast trees and generic

multicast graphs. In multicast trees, for any node v of the tree, aU connection paths traversing

v have identical subpaths from s to v. Hence, there exists only one class of paths for node v , for

any instance of the muiticast tree. In contrast, in a generic multicast graph, seueml classes of

connections may be defined for a node v E VM: the smaller the number of such classes, the more

"overlapped" the layout of connections is and, therefore, the better exploitation of resources

can be achieved. In other words, the transition from multicast trees to genetal multicast graphs

is manifested as a passage from a single t o multiple classes of connections.

In the presentation of the TREE algorithm we introduced the concept of overrouting cost

as a basic tool for identifying connection paths of small cost. Foiiowing t h e same reasoning, we

define a similar concept, this tirne in the context of the CIRCUIT setting.

In particular, let e = (v, w ) be an edge of the representative path for class C:, adjacent t o

v , with w preceding v in Fq(s, v). Let aIso b be a positive integer. Define the ovemuting cost

Page 81: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

of e for class C$ under repuest 6, denoted by ~vercost, ,~(e, 6) as follows:

The meaning of the above definition should be further explaineci: In the first case, the allocated

bandwidth on e for class C,9 is sufficient enough to accommodate the request b. In the second

case, a partial amount of bandwidth, ailocated on e and associated with the class C$ is a d a b l e

and can thus be exploiteci. In addition, the increase will not affect feasibility. In other words,

there exist enough available resources on the edge, as the second condition indicates, and a h

the request b does not exceed the capacity of e, as iilustrated by the 3rd condition.'

Finally, if one of the abovementioned conditions does not hold, the request on e can not

be satisfied by the class: we formalize this notion of unsatisfiability by attributing to the

overrouting cost a value equal to infinity.

The next step is to generalize the concept of overrouting cost to a class of paths. The

generalization is based on the foiiowing property, which will also be of use in the presentation

of the algorithms.

The Containment Property:

Suppose that v E VM and let b be a positive integer. Let also Cz be class defined on v, Then,

for ony node w in F,(s, v ) , there exists a unique class in the collection C,, Say c$, such that

'Notice that this condition is redundant in the füst case.

Page 82: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

The valïdity of the above statement can be confirmed, by o b s e ~ n g tha t aU paths in

have t h e same subpath from s to node v by the definition of the class, and, hence, the same

subpath from s to w as weil.

Based on the above property, we can now provide an extension of the definition of over-

routing cost. Let e be edges on the path Fq (s, v ) of t h e form (z, y), with node y preceding

node z in the above path. Define the ovemuting cost of class C$ under request 6, denoted by

overcost(C$, 6) as the sum of the overrouting costs of a.ü edges e in the representative path for

class C$ under request 6, where q' is çuch t h a t C$ c CI'.

Conceptualiy, the overrouting cost of a class Cz under request b corresponds to the additional

amount of bandwidth tha t must be allocated on edges of the representative path of the class,

so that a total amount of bandwidth equai to b is available t o be used by every connection path

of the class, on the subpath from s to v.

Example :

To illustrate the concept of overrouting cost, refer t o the example of Fig 3.1, for the sequence

of requests described by Table 3.1. Let the class in consideration be the singleton (81, defined

on node 8, and let b = 20. According to the containment property, the ciass is contained in the

class {8,5) defined on nodes 9, and 5 and 2. The classes can be tracecl by following the edges

of the representative path (1,2,5,9,6). To c o m p t e the overrouting cost for the above defined

class, for 6 equal t o 20, we have t o sum up the overrouting costs defined on the edges of the

representative path. It is not difficult t o see tha t

Page 83: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

where the computation proceeds by traversing t h e edges of t h e representative pa th (1,2,5,9,8)

starting from node 8-

In contrast, t he overrouting cost for class (8) defined on node 8 is equal to 00, since t h e

capacity of edge (8,9) is 16 < 20.

Table 3.3 contains t he overrouting cost for aU defined classes and b = 20. We omit t h e

nodes that d o not define any class at aU, Le., nodes t ha t do not beIong to t h e current multicast

graph.

Table 3.3: Overrouting costs for dl classes defined on nodes of t he multicast graph, under request b = 20. T h e example refers t o Fig 3.1.

We now describe a decomposition of connection paths in t h e context of t h e CIRCUIT algo-

rithm. Suppose t h a t a join request jUin(u, bu, &) is issued by node u and the current multicast

graph is GM. T h e request is served by providing a connection path, Le., a virtual circuit from s

t o u, denoted by Pu, which satisfies t he QoS guarantees requested by u.? The connection pa th

consists of two distinct, consecutive paths:

The overlapping p t h , denoted by Pm(s,v), for some node v E VM a n d a c l a s C$ E

'An implicit asnimption in the foiiowing discussion is that such a feasi'b1e path in CM exists.

Page 84: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

C,. The overlapping pa th is identical t o t h e representative path of a class of current

connections o n W . According to Our notation t he class in question is c. We c d this class

t he friend class for connection Pu .3

Notice t h a t specifying the friend class Cz is enough to identify t h e overlapping path. HOW-

ever, the knowledge of node v , o n itself, is not sufficient to provide a unique identification-

Moreover, resources already docated d o n g the edges of t h a t pa th can be exploiteci by

t he new connection.

0 T h e joining path, denoted by Pj(u, u), where v E VM. Unlike t he characterization of the

joining path t h a t was presented in the previous chaptet, here, t h e joining path may contain

several edges and nodes of t he current multicast graph. T h e joining path consists of edges

on which a minimum additional reservation of bu units of bandwidth is necessitateci. The

joining path is said t o be minimal if every node w on the joining path, with node v

excepted, satisfies the following property: for every d a s s C$ E C,, it is C$ n CY = 0;

namely, no one of the classes defined o n node w has representative path t ha t comprises

the whole overlapping path.

For instance, consider, once again, the network represented by Fig. 3.1, for the sequence of

requests described by Table 3.1. Let u be a new request issued by node 10, with bandwidth and

delay requirements equal to 17 and 40 respectively. There exists a variety of virtual circuits

t ha t could serve t h e latter request, Let u s focus, o n t he following two Uustrative cases:

0 Case 1: T h e overlapping path is identical to the representative pa th of class (81, defined

'The name has its base an the "sharing property" that the connection path and its friend dass satisfy: we are, however, aware that a definition of reai-iife Cnuidship based exdusivdy on the above criterion is, at best,

Page 85: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

on node 9, namely the path (1,2,5,9). The joining path consists of the single edge (9, IO),

and is trivially minimal.

0 Case 2: The overlapping path is identical t o the representative path of class {8,5), defined

on node 5. The joining path consists of edges (9,lO) and (5,9). According t o the definition,

the joining path is not minimal. This is due to the fact that class (81, defined on node

9, is contained in class {8,5), defined on node 5. Hence, the requirement regarding the

intersection of classes in consecutive nodes of the joiniag path is not met, and the joiaing

path is not minimaI.

Let u s elaborate on the motivation and the implications of the above decomposition. The

definition of the connection path as the union of two distinct paths is not unknown to us: the

same approach was applied in the presentation and analysis of TREE. The primary objective

is to provide a framework for estimating the cost of a connection path, in terms of shared

and non-shared bandwidth. Additionally, the decomposition facilitates the design of bot h the

update procedure and the aIgorithm for serving leave requests.

In particular, the definition characterizes the overlapping path as the part of the connection

which allows utilization of the existing resources; those resources are docated on the edges of

the friend class' representative path. This observation gives rise t o an exact estimation of the

cost incurred by the overlapping path: it is q u a 1 to the overrouting cost of the friend class for

the bandwidth request of the new member u.

On the other hand, any kind of resources sharing on edges of a minimal joining path is, by

definition, prohibited. This is due to the arrangement of connection paths into classes, for ail

nodes of the joining path, Le., there exists no class, defined on some node of the joining path,

whose representative path contains the overlapping path. The definition of BD-MCAST imme-

diately suggests that no resources sharing can occur in the minimal joining path. Accordingly,

Page 86: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

an amount of bandwidth equal to the bandwidth request of t h e new participant u has to be

reserved on edges of the latter path.

The above discussion describes the minimality of the joining path as an essential and de-

sirable property of the virtual circuit. Indeed, we can not o p t for a more efficient allocation

of resources along a spebfic connection path, after we have identified its minimal joining-path

component. Alternatively, knowledge of the minimal joining path implies that the mazimal over-

lapping path is known as wd, which in turn determines the optimal cesource allocation, Le,

the maximal sharing of resources.

However, it might be the case that a particular algorithm does not provide guarantees with

respect to the computation of minimal joining paths. In other words, an amount of bandwidth

equal ta bu is reserved on edges of the joining path, whereas a better allocation strategy is

feasible. For instance, the approximation scheme presented in Section 3.5 suffers from this

shortcoming, as opposed t o the optimal algorithm discussed in the next ~ e c t i o n . ~ Although

this problem is not critical t o the functionality and correctness of Our algorithms, it may be the

cause of premature edge congestion. We will present effective solutions to this problem, in the

context of the approximation scheme for finding near-optimal connections.

The connection path Pu = Pj(u, v ) u P,(s, v), which serves the join request of node u is

called feasible if and only if it satisfies the following set of properties:

d(Pj(u, v)) + d(P,(s, v)) < d,

available(e) 2 bu, for al1 edges e of Pj (u, v )

overcost(C$) < w where Cz is the friend class for P,

' However, we show how to overcome the de!iaency in Subsection 3.5-4.

Page 87: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

T h e first inequality formalizes t he satisfaction of t h e delay requirement imposed by the user.

T h e remaining relationships are related to the feasib'ity of the pat h, wit h respect t o the band-

width requirernent. Specifically, ail edges of the joining path should maintain enough cesources

to allow an additionai ailocation equal t o bu; this condition is reflected in (3.5). Finaliy, as

suggested by t he definition, the overrouting cost of t he friend class fo r request bu has t o be l e s

t han infinity, for t he overlapping pa th to uphold feasibiiity.

T h e cost of a feasible connection p t h Pu refers to the amount of bandwidth allocated on

edges of t h e network in order to estabiiih the f ea s ib i t y of the connection, and is e q u d to

cost(P,) = (number of edges in Pj (u, u) ) - bu + ouercost(Cz, bu) (3-7)

The first term in Eq. (3.7) corresponds t o t he amount of bandwidth assigned to edges of

t he joining path, whereas t he second te rm represents t h e overrouting cost of t he friend class of

t he connection path.

Table 3.4 summarizes t he notation used throughout this Chapter.

3.3 Overview of the VCJOIN algorithm

We proceed t o a high-level description of the VCJOIN algorithm, which serves join requests by

providing virtual circuits with QoS guarantees. Suppose t h a t GM is t h e current multicast graph,

and non-member u has issued the las t join request. Like the TREEJOiN algorithm, VCJOIN

follows the greedy approach, by seeking a feasible connection pa th of optimal o r near-optimal

cost- Unlike algorithms for tree-based multicasting, t h e evolution of t h e multicast graph is not

constrained by considerations of topological nature,

We distinguish two main phases in t he join algorithm:

Page 88: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

Symbol

G = (V, E) y d(e) 9

--

Explanation Input graph, with n = IV1 nodes and rn = IEl edges. Delay and capacity of edge e E E, respectively.

GM s VM, EM u

--- 1 Cv 1 A cIass of mths . in the collection C. .. 1

. -

Current multicast graph. Source of the multicast t r d c . Set of nodes and edges in GM, respectively. Next node to issue a ioin or leave reauest.

k MGnode ( v )

bu, d,

. p u cl,

--- --

Number of current participants in the multicast group. A flag which is set when u E VM. Bandwidth and delay requirements of node u (in case of join request). Connection path (virtuai circuit) from u to S.

A collection of classes of paths, defined on node v E VM.

L -- p'(% 4 c (Cz ) , d ( c ) ~ l loca te&,~(e ) allocated (e) ouercost,,,(e, 6 ) overcost (C& 6) =(s, v )

Table 3.4: Explanation of symbols and parameters used throughout the Chapter

- - - - -

T h e representative path of class CV. T h e capacity and d d a y of the representative path of C$. T h e d o c a t e d bandwidth on e due t o paths in C:. Current amount of bandwidth allocated on e. Overrouting cost of edge e for claas C$ under request 6. Overrouting cost of class Cz under request b. T h e overlapping path for connectim Pu, where Cz is t h e friend class. - - - - - - - -

rn Computation of connection p a t b of small cost: In this phase, a connection path of small

enough cost is sought, where the cost is defined by Eq. (3.7). If no feasible connection is

found, the user is rejected admittance to the mulcticast group. These tasks are accom-

piiihed by the FINDVC algorithm.

- e ( u , 4

Perfom updates across edges and n d e s of Pu: Once Pu is identified, traverse Pu from s t o

u, updating the d a t a structures associateci with nodes, and edges of the connection. The

updates include doca t ion of the required bandwidth on the edges of the new connections,

as well as inclusion of the new virtual circuit in the appropriate class, for all traversed

nodes. Algorithm UPDATEVC is responsible for performing these updates.

Joining path from node u to some node v E VM. 1

auailable(e) cost ( Pu) G'(Vf, E3

T h e amount of bandwidth available on edge e. Total cost of the connection path for a join request issuecl by u. Auxiliary search graph, used by the join algorithm t o find the connection path.

Page 89: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

Input: T h e current multicast graph GM and a join request rj = juin(u, bu, 4). Output: An updated multicast graph Gb, if 2~ is admitted in the group.

Otherwise, a notification of rejection.

1 If (Pu = FINDVC(GM, u))==NIL then

2 RFJECT the request

eise

3 UPDATEVC(P,),

The structure of the remaining chapter resembles the structure of Chapter 2. We propose

two closely related, but different approaches to efficient computation of feasible virtual circuits.

The first algorithm, called OPTIMALVC, cornputes a feasible virtual circuit of minimum CO&,

and is discussed in the next Section. The second algorithm, c d e d APPROXVC provides a

feasibIe virtual circuit of cost within (1 + é) times the cost of the optimal v i r tud circuit;

this algorithm is presented in Section 3.5. The algorithms are proven t o achieve the above

performance guarantees regardless of the current multicast graph and the request parameters.

In addition, they both exhibit a low-degree polynomial complexity, though each one exceeding

the complexity of the corresponding t r e b a s e d algorithm by a factor of at most klog k, where

k is the number of current participants, Notice, however, that this upper bound is a very

pessimistic, worst-case result. Similar to the TREE case, the approximation aigorithm features

desired qualities, such as enhanced flexibity and low tirne-complexity, when compared t o the

optimal one. FinaIiy, we demonstrate how efficient reclaiming of resources can be implemented,

by describing a procedure for serving leave requests.

Page 90: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

3.4 Finding Optimal Feasible Virtual Circuits

In this Section, we address the problem of computing optimai v i r tud circuits t o accommodate

join requests. The algorithm we propose has two input parameters: the current multicast graph

GM and a join request 'kued by a non-member node u. The returned path ïs a feasible virtual

circuit, provided that such a feasible connection exists. The virtual circuit is expressed in

terms of the joining path, Pj(u, v ) , and the overlapping path (u, v ) , for some node u E VM

and some class C$ E Cu. As mentioned in Section 3.2, the path decomposition provides an

illustration of the algonthm's function and facilitates the update procedure.

3.4.1 Algorithm Description

The departing point in the presentation of OPTIMALVC is the creation of an auxiliary, search

graph Gr based on the current multicast graph and the values of selective data structures asse

ciated with it. The motivation behind the creation of the auxiliary graph stems from consider-

ations aIready addressed in the context of the TmE algorithm: It translates the contribution

of an edge E E to the total cost of a connection path that includes e, into the weight of an

edge e' E Et. By assigning suitable weight and delay values on the edges of G', the problem of

identifying the joining-path component of the virtual circuit we are seeking is reduced into a

set of instances of the CSP probIem, addressed, in detail, in Section 2.1).

As it can be observed, every edge ef € Et has the same delay values as the corresponding

edge e in E, namely, the edge tha t connects the adjacent to e' nodes in G. The weight of

et, denoted by w(et), is set to the bandwidth requirement of the user requesting admission,

provided that there are available resources on the edge (step 2 in OPTVCAUX). &al1 that an

amount of bandwidth equal to 6, is required ezclusiuely along edges of the joining path; thus,

it seems natural to expect Gr to be employed for the purpose of computing the joining-path

Page 91: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

Algorit hm OPTVCAUX

Input: GM, user u, QoS requirements 6, and &. Output: An auxiliaty graph G' = (V', E3 used by the algorithm OPTIMALVC.

O Initially V' = V, and E' = 0 1 For ail edges e = (vi, q), with e E E do

2 If availtzble(e) 2 bu and d(e) < d, t hen 3 define e' = (vi, vj) with weight w(ef) = bu, d(e') = d(e)

4 E' = E u {e') - - - - - - - - - - - - - - -

component of the virtual circuit.

We iliustrate the construction of G' by means of an example, depicted in Fig, 3.2, T h e auxil-

iary graph refers t o the example of page 72, assuming tha t node 10 'ksues a new join request, with

bandwidth and delay requirements equal t o 20 and 40, respectively. As OPTVCAUX suggests,

t o construct the auxiliary graph we have to take into consideration the variable available(e), for

alI edges e of the multicast graph: the values of this variable are provided in Table 3.2. Notice

tha t edges e in G for which available(e) < 20, or c(e) < 20 do not appear in G', in accordance

with s tep 2 of OPTVCAUX. AU edges in G' have weight equaI to the bandwidth requirement of

the potential new participant, and the same delay with the corresponding edgeç of G.

Let us now provide, in rough terms, a description of OPTIMALVC. Later, we will present a

forma1 proof of its correctness. Consider the optimal connection path PZ, which serves the join

request, assuming for the moment tha t such a path exists. Then, there exists a node v* E VM,

such tha t PI = Pj(u, v*) U &(s, v* ) , for some index g*, such t ha t t he class C$ is containeci

in the collection Cv- of classes defined on v*. Since < is feasible, aii edges of wül have

capacity at least 6, and delay at most 4. Those requirements are reflected in steps 2 and

Page 92: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

Figure 3.2: The auxiliary graph Gt, for the example of page 72, as constructed by OPTVCAUX.

6 of OPTVCArrX and OPTIMALVC, respectively. Notice the absence of any topology-related

constraints on the construction of Gr. Unlike the tree-based algorithm, edges in EM appear

in Et as well: This observation merely iiiustrates the fact that no restriction is applied on the

relative Iayout of virtual circuits in the multicast graph.

The computation of the overlapping path in OPTIMALVC is implicit. Recall that the

overlapping-path component of the optimal virtual circuit, according to Our definitions and

notations, is defined as the representative path f>,e (s , v') of class c$. The delay overhead

attributed to this path equals d ( ~ : : ) , whüe its cost overhead equals the overrouting cost of

the above class, for request bu, that h overcost (~$ , bu). Since P;: is feasible, its overlapping

path has to be feasible as weil, implying that its associated overrouting cost assumes a non-

infinite value. The delay overhead attributed to the friend class is taken into account in step

7 of OPTIMALVC: when UNIFORMCSP is invoked, for end-node v* and candidate class c$,

the maximum permitted end-to-end delay is reduced by I(c$), to compensate for the delay

Page 93: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

Input: T h e current multicast graph GM and join request rj = join(u, b,, 6). Output: A connection pa th P, of the form [Pj(u, v ) , Pm(s, y)], with v E VM

a n d Cz E Cu, for some index p. Returns NIL if no ieasible path is found.

O P z 0 % initialize t he set of candidate paths

1 For al1 v E VM do

2 For aU q such tha t Cz E Cv do 84 cornpute ouercost(C~, bu)

3 Gr = OPTVCAUX(G~, u, bu, 4) 4 For al1 u E VM do 5 For aU q with C$ €Cu do

8 If ouercost(C$, 6,) < oo and d ( c ) < 4, do

7 q ( ~ , V)=UNIFORMCSP(U, V , & - d(C!)) % U N I F O ~ C S P runs o n Gr

8 P = p ~ P ' ( u , v )

9 If P = 0 then return NIL

else 10 Find v' E VM and index q' such t h a t w(q . (u , v * ) ) +

+ouercost(~$, bu) = min, among paths in P.

11 Map pat h <. (u, v') in Gr t o t h e path P(u, u*) in G

12 Return [P(u, u') , & (s, v*)]

incurred on the representative path of t h e friend class. Notice tha t al1 edges in Gr have uniform

weights, equal t o bu, which dictates t h e application of the polynomial-time, exact algorithm

UNIFORMCSP, as discussed in Subsection 2.1.2. Similarly, in step 10, the overrouting cost

overcos t (~$ , bu) is added to t he joining path CO&, to yield the total connection cost, and the

path with t he minimum such cost is selected.

Once the joining path and the friend class are determined, the computation of t he virtual

circuit sought is trivial. In step I l , the path selected in the previous s t ep is re-mapped to a

joining path in the input graph G. A11 nodes in t h e path q ( u , v ) in C indicate t he nodes

Page 94: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

appearing in the joining path we are searching for: The joining path consists of edges in E

that connect preciseiy those nodes. Finally, v' and q* uniquely identify the overlapping path,

namely the representative path of the friend c l a s Fq. (s, v').

3.4.2 Correctness of OPTIMALVC

The following theorem formalizes the above discussion and establishes the correctness of the

proposed algorit hm.

Theorem 3.1 Let GM be the cumnt rnulticast gmph, and rj = join(u, bu, vu) be a join request

issued by node u. Then

i) Let Pu be the optimal feasible virtual circuit for mquest rj. Algorithm OPTIMAL VC mturns

a feasible virtual cimuit of minimum cost, i.e,, it cornputes an optimal, feasible virtual

circuit.

ii) If no such feasible path ezists, then OPTIMAL VC retums NIL.

PROOF

Part i): Let Pu be a feasible virtual circuit for request rj, then there exist v f VM, and index

q, such t ha t Pu = Pj(u, U) u e v ( s , v ) , with C,Q E Cy. The paths Pj(u, v) and PQ,(s, V ) satisfy

t h e properties describeci by (3.4), (3.5), and (3.6).

By (3.5), and steps 3 and 4 of OPTVCAUX, i t follows tha t there exists a path from u to

v in Gr, tha t traverses the same set of nodes as Pj (u, v); let us denote t h h path by q ( u , v).

Furthermore, since every edge in Gr has the same delay value as its associated edge in G, we

have d ( q ( u , v ) ) = d(Pj(u,u)). By (3.4), the delay of path q ( u , v ) is at most d, - d(Cz).

The last k t , in conjunction with (3.6), implies t h a t OPTIMALVC invokes UNIFORMCSP with

arguments u, v , d, - d(C$) in step 7 of OPTIMALVC, and that, after the for-loop of step 4

Page 95: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

terminates, P is non-empty. ffence, UNIFORMCSP does not reject the request, and will execute

al1 s teps subsequent t o s tep 9.

Since P # 0, O P T i m V C wiii al- execute s tep 10. I t wili thus select a path c . (u , v* ) ,

among paths in P, such t hat C$ E Cu. a n d u> (P'(u, v*) ) + mercost (c$ , bu) is minimum among

au paths in P and all pairs of nodes in VM and dass indices. Thus, the weight of q . (u , v')

will be such tha t

w (P,. (u, v * ) ) + oue rcos t (~$ , bu) 5

I w (9 (u, v) ) + overcost(C,P, 6,)

< (number of edges in q ( u , v ) - bu) + overcost(Cv, 6,) -

= (number of edges in Pj(u,v)) -bu) +overcost(C~,b,) (3-8)

where t he last equality follows by t he fact t h a t q ( u , v ) a n d Pj(u, v) have t h e same number of

edges in G' and G respectively. T h e proof for par t (i) follows by observing t h a t (3.8) describes

t he cost of the optimal virtual circuit for request rj-

Part ii): If no feasibIe virtual circuit for serving request rj exists, then one o r more of the

conditions described by (3.4), (3.6) and (3.5) do not hold,

Assume, by way of contradiction, t h a t t h e algorithm returns a feasible virtual circuit, Say

Pu, of the form [P(u, v*), &m(s, v*)], for some v' E VM and some index g* such th& C$ E C,..

Then, after the for-loop of s tep 9 completes its execution, t h e set P will be non-empty, which

im plies t he following properties:

1) C$ E C, and ove rcos t (~$ , bu) < oo (by s t ep 6 of t he algorithrn).

Page 96: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

2) (u, v*) has delay at most d, - d(C$), because the path is derived by application of

UNIFORMCSP.

3) For every edge e' of P;;. (u, v'), the available resources on its corresponding edge e in G

satisfy the condition available(e') 2 bu, by construction of Gr.

The Arst and last properties suggest that (3.5) and (3.6) are, respectively, satisfied. Hence,

the computed virtual circuit is feasible with respect to edge capacity constraints.

Moreover, by construction of Gr, every edge of Gr has the sanie detay with the corresponding

edge in G, thus the delay of P, is equal to d(c . (u , u*)) + d(C$), which, by property (2), can

not exceed du. Therefore, the constraint on the delay of the virtual circuit, as expresseci

by (3.4), is met and the algorithm cornputes a feasible virtual circuit, which contradicts our

initial assumption. O

3.4.3 Implementation Issues and Tirne Complexity of OPTIMALVC

We now focus on some implementation details and present a worst-case time complexity analysis

of OPTIMALVC.

Every node v in the current multicast graph stores each class C$ of the collection Cu,

represented as a maz-heap. More precisely, the rnax-heap for CuQ contains an entry for every

virtual circuit that belongs to the class: the key-field of the entry is identical to the id of the

virtual circuit, whereas the value-field stores the bandwidth requirement of the corresponding

connection. Moreover, node v has access to the description of the representative path, for

e x h one of the classes in Cu. The max-heap supports the operation FindMaz(C$), which

returns the id of the path with the maximum bandwidth requirements, among those contained

in Cz. Also, the operation Insert(C& Pu, bu) (respectively, Delete(C& P,)),which inserts the

connection path Pu t o (respectively, deletes Pu from) class C$ can be implemented in O(1og k)

Page 97: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

time (recall t ha t k is the number of current participants in the multicast group). The same

complexity is incurred by the boolean Find(P,,Cz) operation, which returns true o r false,

depending on whether P, belongs t o C:.

T h e computation of the overrouting cost overcost(C:, b,), which takes place in steps 1 and

2 of OPTIMALVC can be accomplished by traversing the representative path of class C$, as

specified by the definition (see page 74 of Section 3.2). At every node visited by the traversal,

the computation involves a number of Find and FindMux operations which does not exceed

the number of distinct classes defined for the node in hand. Since there are at most n nodes on

every connection path, the computation of the overrouting cost for a specific class and a specific

request requires time O(nk log k). Hence, steps 1 and 2 of the algorithm can be accomplished

in time 0 ( n 2 k l o g k).

Step 3, the construction of the auxiiiary graph, as weil as steps 10-12, the seIection of the

optimal virtual circuit, can be carried ou t in time O(m). As i t occurred in the tree-based solu-

tion, i t is the execution of the CSP algorithm that dominates the complexity of OPTIMALVC.

In particular, there are at most k - n calls of WNIFORMCSP with the analysis of Subsection 2.1.2

indicating an asymptotic running time of order 0(krnn2), for steps 3-8 of OPTIMALVC. Thus,

the overall complexity incurred by the algorithm is O (max{n2k log k, kmn2)), o r quivalently

O (kmn2) , since k 5 n 5 rn + 1.

I t should be stressed tha t the above bound is derived by the worst-case analysis of a pes-

simistic case, which rnay arise only in adversarial instances of the problem. Indeed, it is highly

unexpected tha t the current multicast graph contains the entirety of the network nodes, o r t h a t

every node contains an order of k distinct classes; both such cases were taken into consideration

in the above analysis. In practice, the algorithm is expected t o exhibit a much better complexity

than the one indicated by the upper bound. Nevertheless, the algorithm features a low-order

Page 98: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

polynomial on n complexity, even for pat hological scenarios, w hich is particularly attractive

given the intrinsic complexity of the problem and the performance guarantees attained.

Findhg Near-Optimal Feasible Voirtual Circuits

3.5.1 Description of the Algorithm

The algorithm presented and andyzed in the previous Section provides feasible virtual circuits

of optimal cost. Optimality is achieved by essentialiy reducing the problem to a set of instances

of the CSP problem, in which all edges bear identical weights. The number of such CSP

instances is related to the number of nodes in the current multicast graph, as well as to the

number of distinct classes defined on every node. Thus, an optimal solution can be found,

at the expense of increased time complexity. A reasonable compromise would be to relax the

optimality criterion, by seeking é-approximate solutions, with é being a small constant. In

th i s section, we adopt the paradigm of near-optimal, feasible connection paths, introduced first

in the context of t r e b a s e d algorithrns, to generic multicast graphs. The resulting algorithm

attains improved scalability and robustness, when compared to the optimal solution, without

diverging from the objective of finding virtual circuits of small cost.

Let us first illustrate the intuition behind the APPROXVC algorithm. Following the well-

motivated approach adopted in the design of joining aigorithms for both tree and generic

multicast graphs, an auxiliary, search graph Gr is constructed. The search graph is tied to

a particular join request, and its construction is baseci on the the current rnulticast graph and

on the contents of some of the da ta structures associatecl with it. The construction of Gr stems

from considerations explained extensively in previous sections: It provides a network where

CSP algorithms can be applied to yield a feasible virtual circuit of satisfactorily small coçt.

Page 99: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

Input: The current multicast graph GM, user u, QoS requirements b,,du. Output: An auxiliary graph Gf = (V', E') used by APPROXVC

O Initiaiiy V' = V and Ef = 0 1 For dl edges e = (ui, vj) with e E E do

2 If available(e) 2 bu and d(e) 5 d, then

3 define ef = (u;, vj) with w(e') = bu and d(e7 = d(e)

4 E' = Ef u (e')

5 For ail nodes v E VM do

6 For ail q with C$ E C, do 7 If overcost(C$, b,) < oo and d(C$) 5 d, then

8 Define e', = (v , s), with w(ei) = wercost(C$, bu) and d(ei) = d(C$).

9 E' = Ef u ( e t )

The algorithm for computing E-approximate connections is, in a matter, rerniniscent of the

algorit hm FINIS' AT HO^ Subsection 2.3.2. Unli ke the auxiliary graph employed by OPTIMALVC,

here, a node v of the multicast graph GM may be connected to the source, by means of a set

of edges of the form e', = (s, v) , , where q is index such that C$ E C,,. The choice of classes that

contribute such an edge to the construction of Gr is determined by feasibility criteria, narnely,

the edge is present only if ouercost(Cz, bu) < cm and d(C$) 5 du. As one would expect, the

latter expressions are the weight and delay values, respectively, of edge e', = (s, c),. That is to

Say, the characteristics of the edges (s, v ) , are identical to the coht and delay overhead, incurred

by the representative path of class C$, should the selected virtual circuit use C$ as its friend

class.

We illustrate the construction of G' by APPROXVCAUX, by rneans of an example, depicted

in Fig 3.3. The auxiliary graph refers to the example of page 72, assuming that node 10 issues

Page 100: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

Algorithm APPROXVC

Input: The current multicast graph GM and join request rj = join(u, bu, du). Output: A connection path Pu. Returns NIL if no feasible path is found.

1 For al1 v E GM do 2 For al1 q such that C: E C, do

compute overcost(C& 6,)

3 G' = APPROXVCAUX(GM, u, bu, 6) 4 P(u, S) = APPROXCSP(U, S, 6, E )

% APPRoXCSP runs on multigraph Gr 5 If P(u, s) = 0 then return NIL

else 6 Let e' = (s, w ) with w E V' be edge in P(u , s)

Ife' is of the form (s, w) , then

7 Map path P ( u , w ) = P'(u, s) - {e') into P(u, w) in G.

8 Return [P(u, w), P'(s, w)]

else 9 Map path P ( u , s) into P(u, s) in G 10 Return [P(u, s) , 01

a new join request, with bandwidth and delay requirernents q u a 1 to 20 and 40, respectively.

Boldfaced edges correspond to edges of the form e' = (s, o),, where u E VMl and q is a clas

index, for classes defined on node v . For convenience, we use the name of the class t o distinguish

between multiple edges that connect the same end-nodes in the multigraph. We aiso resort to

Table 3.3, which contains the overrouting cost values we need t o construct the auxiliary graph.

The introduction of the above edges and has the following implications on the design of the

approximation join algorit hm:

Since the weight values assigneci on edges vary, we can not rely on exact CSP algorithms,

because of the exponential complexity they incur in worst-case scenarios.

Page 101: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

1 Edee in Gr 1 Weinht 1 Delav 1

Figure 3.3: The auxiiiary graph G', for the example of page 72, as constructeci by APPROXVCAUX.

a The construction gives rise to a multigraph G', with two nodes being connected by (pos-

sibly) a multipiicity of edges of varying characteristics. We resort to Our discussion of

Subsection 2.1.5 for eapproximation solutions to the CSP problem on multigraphs.

a A last, and certainly more subtle effect of the application of the approximation algorithm

Iies on the fact that the joining path, as determined by the algorithm, is not necessarily

minimal. Recall that according t o the definition of Section 3.2, the joining path is said to

be minimal if and only if no previously aiiocated resources along the edges of the joining

path can be exploiteci to accommodate the new request. Instead, a separate allocation of

bandwidth equal to bu is required on every edge of the joining path. In contrast, the pro-

posed algorithm may result in providing a virtual circuit whose joining-path component

is not minimal: This implies a potential waste of resources due to reservation of excess,

unnecessary resources on some of the joining path edges. Aithough this does not consti-

tute a serious impediment in the cost-efficiency of individual connections, it may trigger

undesired long-term effects, such as edge congestion. We show a simple but effective way

Page 102: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

to circumvent this problem, in section 3.5.4.

3.5.2 Correctness of APPROXVC

Here, we establish the correctness of the proposeci aigorithm. The foiiowing theorern addresses,

in addition, the issue of the quaiïty of the computed virtual circuit, with respect to its total

cost.

Thêorern 3.2 Let GM be the currient rnulticost p p h , and t j = join(u, bu, vu) be a join mquest

issued by node u. Then:

i) Let Pu be the optimal feasible virtual circuit for mquest ri. Algorithm APPROXVC returns

a feasible virtual circuit of cost at most (1 + e ) times the cost of Pu.

ii) If no such feasible path ezists, then APPROXVC mturns NIL.

PROOF

Part i): Since Pu is a feaçible connection path, there exist u E VM and index q, such that

CU E Cu is the friend class of Pu and Pu = e(u, v ) U Pm(s, v ) . Accordingly, paths Pj (u, v ) and

E u ( s , v ) satisfy the properties dacribed by (3.4), (3.5), and (3.6). The cost incurred by the

optimal virtual circuit is given by (3.7).

By (3.5) and step 2 of APPROXVCAVX, there exists a path from u to u in Gt, which traverses

the same sequence of nodes as Pj(ul u) ; let us denote this path by q ( u , v). Moreover, evew

edge of q ( u , v) has t he same delay as the corresponding edge in Pj(ul v ) , namely the edge

t h a t connects the same set of adjacent nodes in G. Hence, d ( q ( u , u ) ) = d(Pj(u,v))- A h ,

by properties (3.6), and (3.4), and steps 7-9 of APPROXVCAUX, it foUows that there exists en

edge of the form e', = (s, v) in Gtl of weight w (et) = overcost(C~, bu) and d(eo) = d ( C t ) =

d(PW(s, v ) ) -

Page 103: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

Therefore, i t turns out t h a t the path q ( u , v ) u {et} , in G' has total delay q u a 1 t o

and total weight equal to

w ( e (u, u)) + w (ek) = (number of edges of q ( u , v ) ) - bu + ovcrcost (Cv, 6,)

= (number of edges of Pj(u, v ) ) 4, + overcost(C~, bu) (3.10)

where the last expression is identical to the tota l cost of t he optimal v i r t u d circuit Pu, as

defined by (3.7). Expressions (3.9) and (3.10) suggest t h a t there exists a path in G' of tota l

delay at most du and total weight equal t o t he cost of Pu. Hence, t he CSP approximation

algorithm does not return NIL, t h a t is to Say, P ( u , s) # 0.

Suppose t h a t t here exists a n edge of t he form e;, = (s, w ) , ~ , in P ( u , s) , for some index q'; If

no such edge exists, the proof proceeds in a simiiar way. Notice t ha t ali edges of t h a t particular

form, for various combinations of nodes v a n d indices q, a r e adjacent to the source. Thus, only

one such edge can be contained in P ( u , s). Notice also t h a t t he remaining edges, namely edges

of P(u , w), a r e due to s tep 2 of APPROXVCAUX. This implies t h a t available(e) 2 bu, for ali

e E P(u, tu), thus (3.5) is satisfied. In addition, steps 7-9 of APPROXVCAUX suggest tha t

Therefore t he overlapping pa th P,t(s, to) computed by t h e dgor i thm satisfies (3.6). Notice here

t h a t the friend dass for t he returned connection path is c$.

Page 104: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

It remains t o prove tha t the computed virtual circuit observes the delay requirement. As

explained above, every edge in P'(u, w ) has the same delay value as the corresponding edge in

G', thus d(P'(u, w ) ) = d(P(u, w ) ) . Moreover, by step 8 of APPROXVCAUX,

d(Fqf(s, ut)) = d(e3 = d ( ~ $ )

and summarizing, the total delay of the returned path is equal t o

because the delay expresseci by (3.11) is the delay of the path returned by the approximation

CSP algorithm, in s tep 4. Thus, the computed path is feasible with respect to total delay, and

a bserveç (3.4).

Finally, we demonstrate the efficiency of the solution, in terms of the total cost of the

computed virtual circuit. The latter cost is equal t o

(number of e d g s in P(u, w ) ) bu + overcost(C$, bu) =

(number of edges in P ( u , w)) bu + ouercost(C&, bu) =

= to (P'(u, w)) + w (e') =

= w(P(., 4)

The result foliows by observing tha t the latter weight is at most (1 + E ) times the weight of

the optimal virtual circuit Pu.

Page 105: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

Part ii): Suppose, by way of contradiction tha t the algorithm returns a feasible connection

pat h, whereas no such feasible connection exists, given the current multicast graph and the join

request. Also, suppose t h a t t he computed path is of the form [P(rr, w ) , F'(s, w)] , with w E VM,

CU, E C,, and Fq (s, 70) # 0. The proof for the special case where the overlapping path does not

exist goes along similar lines.

The following properties are implied by the existence of such a virtual circuit:

1) There exists an edge ei = (s, w ) ~ such t ha t ouercost(c, bu) < oo. Thus, condition (3.6)

is satisfied.

2) Evecy edge e' in P'(u, w ) is appended in G' in step 2 of APPROXVCAUX. Let e be the

corresponding edge of e' in G'. Then available(e) >_ bu, and al1 edges of the computed

joining path preserve (3.5).

3) By construction of G', and specificaliy step 2 of APPROXVCAUX, we have d ( P ( u , w ) ) =

d(P(u, ut)). In addition, d(Fq(s, m ) ) = d(ei) = d(C$) , by step 8 of APPROXVCAUX. W e

then have

d(P(u , w ) ) + d(C,Q) =

= d ( f ' (u , w ) ) + d(Pq(s, w ) )

= d(P'(u, pu)) + d(e i )

and the latter delay is bounded by 6, because i t represents the overall delay on the path

computed by APPROXCSP, and such a path exists, otherwise the algorithm would return

NIL. We conclude t h a t the computed path observes the delay constrained i m p d by the

user.

Page 106: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

CHAPTER 3. WHEN CIRCUITS APPEAR: THE CIRCUIT ALGORITHM 100

The above facts indicate tha t [P(u, ut), Fq(s, TU)] is a feasible path, a contradiction to Our

initial assurnption- O

3.5.3 Complexity Analysis of APPROXVC

We now provide the tirne-complexity analysis of APPROXVC. The implementation relies on

the same collection of d a t a structures describeci in Subsection 3.4.3. A h , the complexity

incurred by some steps of our algorithm has already been discussed in the context of the optimal

virtuai circuit algorithm. For instance, we already know t h a t step 2 of APPRoxVC, namely

the computation of the overrouting coût for aU classes and request 6, can be accomplished in

O (n2 k log k) time.

The approximation join algorithm exhibits two key differences when compareci to the opti-

mal:

a The auxiliary graph Gr is a multigraph, with at most k edges connecting two adjacent

nodes. This is due t o edges of the form (s, u),: the precise number of such edges, for a

fixed node v E VMl is bounded by the number of distinct classes on node v .

a The approximation CSP algorithm is invoked only once in APPROXVC, as o p p d to the

substantially larger number of calis t o OPTIMALCSP t h a t were required in the execution

of OPTIMALVC. O n the other side, we have to take into consideration the multigraph

property of Gr, since the multipiicity of edges affects the complexity of solving a CSP

problem on such an input graph.

In Subsection 2.1.5, we proposed a technique for extending any CSP algorithm, designed for

simple graphs, t o multigraphs- h a l l that t he technique increases the zwyrnptotic complexity

of the algorithm by a multiplicative factor equal t o the number of edges of the multigraph.

Page 107: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

Specifically, if T (n , m) is the tirne complexity of a CSP algorit hm, assuming simple graphs as

inputs, the complexity of the same algorithm, when applied to multigraphs is bounded above

by T ( n m , 2m).

By inspecting the join algorithm, we observe that the complexity of APPROXVC k deter-

mined by the cornputation of overrouting costs (step 2), as well as by the CSP algorîthm invoked

in step 4. Notice, dso, t ha t the APPROXVCAUX procedure generates an auxiliary graph that

has at most m + nk edges. Summatizing, the total worst-case cornplexjty is equal to

0 (max{n2k log k, T ( n ( m + nk) , 2(m + n k ) ) ) )

where T(n , nz) corresponds to the complexity incurred by the CSP algorithm, for a simple graph

of n nodes and m edges.

Notice, however, that there some of the approximate CSP algorithms incorporate the a p

plicabili ty to multigrap hs in t heir design. For instance, one of Hassin's pseudopolynomial alg*

r i t h m [IO], as we commented in S u bsection 2.1.4, does not discriminate between simple graphs

and multigraphs. The complexity of that particular algorithm is O (log log U ( m ( n / c ) + log log U) ) ,

where (/ is an upper bound on the weight of the optimal solution. The application of this al-

gorithm yields a bound on the cornplexity of APPROXVC tha t is asymptotically wual to

0 (max{n2k log k, log log U ( ( m + nk) ( n / c ) + log log U)))

Since we expect the term loglog U to be fairly small, compared to n, when edges as-

sume bandwidth and delay weights typical to the corresponding characteristics in real net-

works, APPROXVC is promises better scalability benefits in a real-network environment than

OPTIMALVC-

Page 108: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

3.5.4 Virtual Circuits with Minimal Joining Paths

When describing the APPROXVC algorithm, in Section 3.5.1, we rnentioned tha t t h e joining-

path component of the nmal circuit computed by the dgor i thm is not necessarily minimal.

Here, we investigate the effect of this shortcoming o n the efficiency of Our solutions, a n d propose

a simple, bu t effective way to transform the virtual circuit computed by APPROXVC into a

connection with minimal joining path.

1 Algorit hm MINIMALJP

Input: A virtual circuit of t h e form [Pi(u, - v ) , Pm(s, v)], with CY E C,, Output: A new decornposition [ q ( u , w ) , P;(S, w ) ] , C$ E Cu-

Traverse Pj (u, v), s tar t ing from node v.

Let w be the currently visited node, a n d e = (w, t), with z preceding w in Pj (u, v ) .

1 Search for index q' such t h a t C$ E C, and Fqt(s, w ) = Fq(s, v ) U P,(v, w )

2 Compute overcost (c$ , b,)

3 Continue until you reach the last node in the traversal t ha t satisfies t h e

condition of s tep 1. Return [Pj(u, w ) , pf,(s, v ) U Pj ( v , w) ] .

T h e algorithm aims at identifying a maximal subpath of t h e joining path which could be

considered as part of t he overlapping path instead. This is accomplished by performing a

traversal of t h e joining path s tar t ing with node v. FoUowing t h e s tandard notation, we denote

by C; t he friend class of t he virtual circuit serving the last join request. Let w be the node

currently visited by the modification procedure. Suppose &O t h a t there exists index q' such

t h a t C$ E C, such tha t the representative path for class C$ is identical to t h e union of t he

overlapping path, that is, path Fq(s, v ) , and the subpath of t h e joining path so fat traversed

by hdINIMAL.JP, denoted by Pj(u, w) . T h e implication of t he last statement is t h a t resource

Page 109: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

sharing can take place not only ovet edges of h(s, v ) , as the join algorithm suggests, but dong

the path Fq(s, V ) U Pj(v , ut). Aiternatively, it means tha t path Pj(v, tu) can be appended to

the representative path of the friend class, to yield a new overlapping path. Hence, instead of

dedicating an amount of bandwidth equal t o bu, for exclusive use by the virtual circuit serving

the new member u, we c m exploit existing resources avaiiable on a part of the joining path. The

computation of the overrouting cost of the appropriate class on w, under request 6, is motivated

by the above observation: This cost determines the additionai bandwidth idlocation which takes

place during the update of the multicast structure, as wiil be describecl in the sequel. Notice

tha t the procedure for modifying the two components of the virtual circuit upholds feasibity,

since it involves exclusively edges of the feasible virtual circuit, as computed by APPROXVC.

The traversal of the joining path continues until a node is reached for which no class satisfy-

ing t he property of step 1 can be found. In such a case, we can not expect t o attain benefits due

t o existing resources reserved along edges of the unvisited joining path. Namely, the new virtual

circuit is responsible for exclusive use of bandwidth equal t o 6, over the edges of the unvisited

path. The procedure terminates by assigning the traverseci path as part of the overlapping

path.

Notice tha t if the virtual circuit is identified by the OPTIMALVC algorithm, the modification

pass does not affect its decomposition into joining and overlapping paths. If such a modification

occurred, it would irnply a n improvement on the overall cost of the connection path, which

contradicts the optimality of OPTIMALVC.

Finally, i t is not difficult to perceive tha t the modification does not affect, asymptoticaliy,

the complexity of the APPROXVC algorithm. Let z and w be two nodes visited by the procedure,

in tha t order, such that z and w are the nodes adjacent t o edge e. Suppose a h that the classes

specified in the execution of step 1 are CL1 and CE, respectively. Then, overcost(C~,b,) can be

Page 110: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

computed by summing ooercost(Czl, 6,) and cwercostw,, (e), in accordance with the definition

of Section 3.2, page 74. To calculate the overrouting cost of edge e, we first Iocate the desirable

class, i.e., the class observing the property of step 1 of the procedure, in 0 ( k ) t h e . Since we can

access allocate&,, (e) in constant t ime (recall that classes are structured as max-heaps), the

computation requires time O(k) . Thus, the overail complexity is of order O(nk) , substantiaily

less than the complexity incurred by the computation of the virtuai circuit.

Updating the Multicast Graph

Subsequently to the identification of a feasible virtual circuit, multicast-related information, as-

sociated with edges and nodes of the multicast graph has t o be updated. The update procedure

must be viewed as an integral part of the join algorithms, for two reasons: i) both correctness

and consistency of the join algorithms strongly depend on the existence of a n underlying u p

da te mechanism. Inconsistencies during updates may give rise to erroneous computation of the

virtual circuits, and jeopardize essential properties such as feasibility; and ii) the algorithms

employ multicast-specific data structures, which are storing information related to the alioca-

tion of resources throughout the network. Thus, a cursory update can lead to an unrealistic

estimation of the total amount of resources required to accommodate the requests.

Two are the main functions of UPDATEVC: First, the virtual circuit is estabfished, and

nodes or edges previously outside t h e multicast graph become now part of it. This action

involves a series of node insertions into the appropriate classes and gives rise t o a new multicast

graph: the next join or leave request will refer t o the updated multicast graph. Second, d a t a

structures usecl by the F~NDVC algorithm, such as the allocated and available bandwidth on

edges or the total delay of a cIass, a re updated.

As mentioned repeatedly throughout the Chapter, the format of the connection path, namely

Page 111: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

Input: GM, virtual circuit Pu of the form [Pj(u, u), P,(s, v ) ] , with Cz E C,, and user's bandwidth requirement bu-

Output: Updated multicast graph G h .

Traverse Fq (s, v) from source s t o node v.

For every edge e = (wl, w2) in the traversal with wl preceding w2 do

Find C z E C, such t h a t Q C Cz

I n s e r t ( C z , Pu, bu)

allocated(e) = alhcated(e) + w e r ~ o s t , , ~ (e, b,)

available(e) = available(e) - ouercost, ,,, (e, bu)

Traverse Pj(u, v ) from node u t o node u.

For every edge e = (ml, w2) in the traversal, with wl preceding wp in Pj(ir, V ) do

set MGnode(w2) 41

Create a new class Cw consisting only of P., and set Pr (s, w2) = = pu (s, ~ 2 ) -

Set d(CI , ) = d(PU(s, w2) )

Set allocated(e) = bu and available(e) = c(e) - bu

its decomposition into joining and overlapping components, facilitates the update procedure.

Notice tha t the two paths incur different types of updates. In particular, the additional band-

width allocation takes into account the sharing of resources, for edges of the overlapping path,

whereas every edge of the joining path reserves additional bandwidth equal to bu.

We describe in detail the update actions associateci with each path component, The al-

gorithm first traverses the overlapping path. For the currently visited node, denoted in the

pseudocode by w2, it first identifies t h e unique class which contains the friend class of the

connection path, according t o the containment property, as describeci in Section 3.2- This par-

ticular class can be found by comparing the representative paths of al1 classes on wz with the

subpath from s t o w2 of the overlapping path: once the two paths are identical, the class sought

Page 112: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

is found. According to the definition, Pu should become a member of this class; in step 3, Pu

is indeed inserted in the appropnate class. It should be stressed tha t the Insert operation

also updates implicitly the ~ r i a b i e allocate&,,(e), where e is the adjacent t o node w* edge

as traversed by the algorithm. This is due to the fact tha t the value of allocate&,,, ( e ) is

identical t o the maximum bandwidth requirement of paths in ciass Cg , or, alternatively, the

"value" fieid of the root, in the max-heap representation of the class. For that reason, we do

not explicitly include this update in the set of actions performed by UPDATEVC- We also know

the exact minimum amount of bandwidth that edge e has t o reserve, for use by paths of class

Cg: it is equal to the overrouting cost for the class under request 6,. The variable associated

with the available amount of resources is then decreased accordingly.

The updates occurring along edges of the joining path slightly differentiate from the update

of overlapping path, although the underlying approach remaitis effectively the same- Recall

that the joining path is considered to be minimal, therefore, for every node wz in the path Pu

cannot be a member of an already existing class. Hence, a new class is created, containing P,

as its single path. The aliocated bandwidth for the class is set to bu, to specify the amount

of resources used exclusively-for the moment-by user u. Later requests may be served by

connections that take advantage of such resources.

Notice that the virtual circuit is inserted into the proper class for nodes of the overlapping

path. On the other hand, a new class has to be created for nodes of the joining path. The

update mechanism guarantees that the partition of paths into classes is consistent with the

class definition.

To estimate the time complexity, it is sufficient to observe that on every node of the virtual

circuit traversed by the algorithrn, i) the representative path of every class is a c c d , at worst

case; and ii) an Insert operation is applied to only one class. The cost incurred by such

Page 113: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

CHAPTER 3. WHEN CIRCUITS APPEAR: THE CCRCUIT ALGORITHM

operations is O(k + log k), hence the o v e d complexïty is O(n(k + log k)) = O(nh).

3.7 The Leave Algorithm

We conclude the presentation of BD-MCAST algorithms for general multicast graphs, by ad-

dressing the issue of serving leave requests, R e d 1 t hat a current participant of the group, say u,

can request disconnection from the multicast group, at any arbitrary point of tirne. To process

the request, the leave procedure traverses the virtnal circuit Pu dedicated to u. Throughout the

traversal, the algorithm determines the minimum amount of bandwidth that can be reclaimed

without violating the feasibility of the remaining virtual circuits. In addition, Pu is deleted

from al1 classes defined on nodes of the connection, Thus, subsequently to the member's leave,

the virtual circuit P, ceases t o exist.

Let u s elaborate on the details of the VCLEAVE algorithm. Assume that wl is the current

node visited by the traversal and e îs its adjacent edge, as specified in the pseudocode. In step 2,

the unique class on node ut1 that contains Pu is sought. Since u abandons the multicast group,

Pu is deleted from the latter class, as illustratecl in step 4. The removal may affect the minimum

amount of bandwidth required t o support the feasibiity of the remaining connections of the

class; such a case arises when the removed virtual circuit accounts for the maximum bandwidth

requirement among ad connections of the class. The above observation explains the purpose of

step 3: The maximum bandwidth requirement among paths of the ciass, denoted by c u r r e n t h ,

is found, before the deletion of Pu is effected. If after the deletion the class is empty, an amount

of bandwidth equal to currenthw returns to the pool of amilable rexiurces (step 6). Moreover,

if the collection of al1 classes of the node is empty, then no virtual circuit passes through the

node, thus its membership to the current multicast graph is reset.

In case, however, the class identifiai in step 2 is not ernpty, foilowing the deletion of the

Page 114: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

Input: GM and a leave request rr issued Dy u. Output: Updated multicast graph GL. T h e aigorithm also performs reclaiming

of resources.

Traverse Pu from u to S.

For every edge e = (wl, w2) in t h e traversal, with w2 preceding w l in Pu do

Find Cgl E C,, such that P, E Cz; Set current-bw = FindMaz(C%,)

Delete(Cz , Pu) If Cz; = 0 then

reclaim bandwidt h equal to current-bw

If C,, = 0 then reset MGnale(wi)

else

requiredhw = FindMaz(C2, )

set allocated,,,,, ( e ) = allocate&l,pl (e) - (currentbw - r e q u i r e d h )

set available(e) = available(e) - (currentbw - requiredhw)

connection, some partial resource deallocation may be possible. This is determined by finding

t h e maximum bandwidth requirement among paths in the chss, subsequently to t h e deletion of

Pu; t he variable requireddw stores this amount. Notice t ha t currenthw 5 requiredhw, and

the difference currentdw - required-bw specifies t he maximum amount of resources t hat can be

reclaimed, should the feasibility of the remaining paths be upheld. The reclaiming introduces a

decrease t o the aiiocated bandwidth of the specïfic edge, as weii as a corresponding increase of

the resources available on that edge. The updates a r e described in steps 10 and If , respectively.

Finally, we give an upper bound of the worst-case asymptotic complexity incurred by

VCLEAVE. We refer the reader to the discussion on the d a t a structures u s e d by the algo-

Page 115: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

rithms of Subsection 3.4.3. Step 2 can be carried out in O(k log k) time, since at m a t k Find

operations are involved. Steps 3 and 4 require O(1) and O(1ogk) time, respectively (by the

properties of the max-heap). Logarithmic on k complexity is also attributed t o step 9. The

remaining steps can be executed in constant time. The overall complexity overhead of the

VCLEAVE is t herefore O(nk log k) .

3.8 Conclusions

In this Chapter we defined a new paradigm for online multicasting with bandwidth and delay

guarantees. Motivated by examples tha t demonstrate the inefficiency of multicast trees, we

abandoned the requirement of maintaining tree-structured multicast graphs. We defined the

concept of CZass as an effective means for formalizing t h e efficient packing of feasible virtual cir-

cuits. We provided bot h optimal and near-optimal join algorit hms, wit h provable performance

guarantees and low-degree polynomial complexity. Both algorithms observe the minimality

of the joining path. As in the case of tree-based BD-MCAST, the join algorithms were s u p

plemented by an update procedure, for guaranteeing upto-date muiticast-specific information.

Finally, we showed how t o perform efficient reclaiming of resources, subsequently t o a member's

leave.

Page 116: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

Chapter 4

Extensions and Future Work

This Chapter is focused on extensions of BD-MCAST algorithms, and on directions for future

research, as motivated by Our work. In particular, Section 4.1 describes how the solutions

can be applied, with simple modifications, to: i) environments tha t are represented by directed

networks; ii) networks where edges are associatecl with a bandwidth variation parameter; and iii)

environments where offline BI)-MCAST algorithms are required. On the other hand, Section 4.2

identifies several issues for further research, including: i) the construction of backbone multicast

trees with high link capacity and s m d delay; ii) the reconstruction of multicast networks, in

dual QoS environments, iii) a distributed implementation of the proposed algorithms; iv) the

exploitation of the hierarchical, aggregated topology of modern broadband networks in order

t o improve the scalabiity of the solutions; and v) on-line cornpetitive analysis issues.

Page 117: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

4.1 Extensions

4.1.1 Extension to Directed Graphs

In this section we provide simple, bu t effective extensions of our algorithms to networks t h a t are

represented by directed graphs. Such a generalization is not a n issue of secondary importance,

but rather an essential requirement, a n d is rnotivated by the fact t h a t undirected graphs fail t o

capture the directivity of traffic in real networks. Specificaüy, the two opposite, directed links

t ha t connect the s ame pair of nodes ( a h called pear links in what folIows) a re not expected

to have t he same capacity and/or delay values. In fact, the characteristics of pear links are

likely to vary significantly. T h e diversity of those characteristics is largely due to upgrading and

maintenance procedures t h a t frequently occur in real networks; it can not be guaranteed, neither

it is always desirable t h a t t he peer links will be identical in terms of total capacity and delay.

Furt hermore, faults occurring in one of t h e pear links do not necessarily affect the functionaiity

of the opposite link, as i t is assumed in the undirected-graph model. Previous research has

indicated t ha t multicast-related problems are harder to approach when the underlying network

is assurneci t o be represented by directed, rather than undirected graphs [25] [19].

We present the minimal modifications t o both TREE and CIRCUIT aigorithms t h a t allow

them t o be applied in directed networks. These changes d o not affect t he performance rneasures

of Our solutions, such as t h e quality of individual connections, or the asymptotic time complex-

ity. T h e extensions a r e b d on the fact t h a t Hassin's [IO] algorithms for t he CSP problem are

not restricted t o undirected graphs, b u t can aIso operate over directed graphs.

0 Modifying the TREE algorithm: In the presence of directed edges, t h e multicast graph is

constrained t o a tree-structurcd graph. In particular, t he multicast graph is a n arhmscence,

namely, a directed graph with the source s as its root, in which there exists only one elementary

Page 118: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

CHAPTER 4. EXTENSIONS AND FUTURE WORK 112

path from s t o each one of the current participants. To maintain a n arborescence tha t p a r a n t e e s

the QoS requirements of the user, the join aigorithm seeks an optimal, o r near-optimal feasible

direct path from the source s - t o the new participant, say u. When such a path is identified, the

algorithm traverses the directed edges of the joining path and invalidates ail opposite edges. In

other words, the aigorithm assumes that such edges no longer appear in t h e physical network.

Indeed, if the latter edges were used in subsequent joins, the resulting multicast graph would

not necessarily be an arborescence.

Modifying the CIRCUIT algorithm: In Chapter 3, we introduced the concept of a class of

paths as a tool for aliowing connection paths to share resources on common edges. The same

paradigm can be applied in directed graphs. In particular, consider a node v of the current

multicast graph, and let Pu; and Pu, be two virtual circuits tha t pass through v. T h e two

paths belong t o the same class, defined on node v , if and only if their dimcted subpaths from

the source s t o node v are identical- Notice tha t every directed edge is associated with distinct

variables that m e s u r e the currently allocated, as well as the available bandwidth on that edge.

In contrast, peer edges are sharing the same set of variables, when the underlying network is

undirected. The latter merely ilustrates the fact that the capacity of a certain undirected edge

is used to accommodate traffic through the edge on both directions. In this context, Eq (3.1),

which sums the contribution of a U virtual circuits, and for both directions, to the allocation of

bandwidth on a specific edge, becomes obsolete in the directed-graph setting.

4.1.2 Deding with Bandwidth Variation

So far we extensively commented on one of the advantages of approximation algorithms, over

optimal ones, for identifying feasible connection paths: the improved scalabiity. Specifically,

the application of approximation CSP algorithms t o the design of BD-MCAST algorithms im-

Page 119: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

proves the overail time complexity, without compromising the efficiency of the solutions. The

approximation techniques feature an additionai attractive property: they yield algonthms that

are more robust and more adaptive t o specification changes, than the corresponding optimal

algorithms.

Consider, for instance, the following version of the BD-MCAST problem. Every edge in the

network is associateci with a hndwidth variation, denoted by u(e). The d u e of the bandwidth

variation may change over time; for example, it may depend on the current congestion of the

edge. When a potential participant u 'hues a join request with bandondth requirement equal

to b,, a feasible connection path Pu has t o be provided. Moreover, the the modified problem

specifies that an amount of bandwidth q u a 1 to b, + u(e ) is required on each edge e of the

connection path. The above requirement implies that edges of the joining path, for both TREE

and CIRCUIT algorithms, are not contributing on an uniform b a i s t o the total cost of the

connection path. A further implication is that the auxihary graphs, as created by the optimal

algorithms, will be assigneci non-uniform ways, which in turn prohibits the application of exact

CSP algorithms, since the corresponding problem is NP-hard.

In contrast, the BD-MCAST algorithms that built on approximate CSP solutions, namely,

FPTAS for the CSP problem, as discussed in Subsection 2.1.4, are immune to the above mod-

ification. This is attributed to the construction of the auxiliary graph, in the latter class of

algorithms: Edges assume, by construction, non-uniform weights, so the new specification does

not introduce any additional restrictions. The only chance concerns the exact assignrnent of

weights on the edges of the search graph, since in t h k case, the bandwidth variation has to be

taken into consideration.

Page 120: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

CHAPTER 4. EXTENSIONS AND FUTURE WORK

4.1.3 The OfHine BD-MCAST Problem

Our study of the BD-MCAST problem has focuseci, so far, exclusively on online algorithms,

namely algorithms that are serving each request individuaily, and are oblivious of future re-

quests. The adaptation of the online framework is motivated by real networks, since the network

provider does not have secure information about the sequence of requests. In the offline, as

opposed to the online version of the problem, the algorithm has complete knowledge of the

sequence of requests. The optimization objective remains the same: the dgorithrn aims a t

maximizing the number of users adrnitted in the multicast group, without violating feasibility.

In addition, for the maximum number of successfully admitteci users, t h e multicast graph of

minimum total cost is sought. Although in a real network environment requests a re served

in online fashion, the offline version of the problem is not insignificant, for the following rea-

sons: i) Offfine algorithms can be applied t o reconstruct the multicast graph, in case its quality

has degraded throughout the on-line service of requests; and ii) The network provider, may

occasionally buffer requests arriving within a certain time window (the width of this window

strongly depends on the complexity attained by the join/leave algorithms). Requestç issued

within a single window are then processed off-line.

Any online BD-MCAST algorithm can be applied in the offline setting, by serving every

request individually, as if t he sequence of requests was not known beforehand. T h e obvious

drawback of this approach is tha t i t ignores information provided by the knowledge of the

sequence. An alternative heuristic is t o arrange the requests in a specific order, and subsequently

invoke the online algorithm, with the modified sequence as input. Similar techniques have b e n

previously used in the Literature. For instance, when no delay requirements are imposed on

the quality of the provided service, Faloutsos et. al. [6] are serving the requests in decreasing

order of bandwidth requirements. T h e intuition behind the ordering is t h a t once the connection

Page 121: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

paths for users requesting high amounts of bandwidth are established, the connection paths for

t he remaining, less demamding requests can take advantage of the already allocated resources.

Informally, nodes with relaxed bandwidth requirements can attach to connection paths of high

d o c a t e d bandwidt h, and hence acquire the resources desired.

An obstacle tha t emerges when considering the ordering of requests, in the context of the

BD-MCAST probiem, is related to the dual QoS guarantees. In particular, there is no clear

way of defining an efficient ordering function in terms of the bandwidth a n d delay guarantees.

One may picture the requests as points in the two-dimensional space, where the two dimensions

correspond t o the values of the bandwidth and delay guarantees. There might exist points with

strict bandwidth and relaxed delay requirements, and vice versa; whether the former requests

should be served before the latter is hard t o argue. In an ideal scenario, the early-served requests

should be characterized by high bandwidth and low delay requirements. Subsequent requests

could then take advantage of existing connection paths. We thus propose a hybridic heuristic,

in which the requests are arranged in groups, each one corresponding to a specific range of

bandwidth requests. The groups are arranged in decreasing order of the associated bandwidth

values, while requests inside each group are ordered in increasing delay requirement values. The

reordered sequence ïs then provided to the online algorithm, and served accordingly-

Another 'issue tha t is raised, when studying offline algorithrns, is the hardness of approxima-

tion for the problem in question. To the best of Our knowledge, no previous work has addressecl

t he offline BD-MCAST problem, when the primary optimization goal is t o admit as many users

as possible without violating feasibiity. When, however, the objective Lies on the minimiza-

tion of cost for admitting a certain group of users, then we can provide lower bounds on the

performance of any offline algorithm. In paticular, consider the foliowing problem, which is

closely related to the DSTEINER problem: The instance consists of a graph with edges being

Page 122: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

CHAPTER 4. EXTENSIONS AND FUTURE WORK 116

assigned weight and delay values, a certain node s designated as t he source, a n d a set D of

destinations. We seek the minimum-weight tree t h a t spans D, such that the delay from the

source to every destination is bounded by some known d u e A. In [20], Manyem and Staiimann

provide an approximation-preserving reduction of t h e Minimum Set Cover problem [8] t o the

problem defined above, even for instances restricted to graphs with edges of unit weight and

de!ay. Notice tha t the cost incurred by the minimum-weight tree t h a t spans D is equal t o the

total bandwidth d o c a t e d on the edges of the tree, if we assume t h a t dl destinations request

unit bandwidt h d o n g the edges of their connection pa t hs.

We use the following result on the hardness of approximating the Minimum Set Cover

probiem [?]:

T heorem 4.1 (Feige9Q6) Unless N P C DT I M E (nbglOgn ) , the Minimum Set Cuver pmblem,

with a universe of s i e k , cannot be appmximated to better than a log n factor.

Feige's theorem implies tha t no offline algorithm can approximate the BD-MCAST problem

within a logacithmic factor, when the objective is t o minimize the cost incurred by the multicast

graph, u n l e s N P Ç D T I M E ( ~ ' o ~ ' o ~ " ). I t would be instructive t o contrast this result with

the offline Steiner Tree problem, for which there exist efficient algorithms t h a t achieve an

approximation ratio of at most 2 [39] [l?].

4.2 Future Work

In this Section we sketch our directions for future research related to the BD-MCAST problem

and some of its variations. It should be stressed tha t , for many of the issues addressecl, better

insight can be gained only by extensive simulation analysis of the algorithms. In this context,

we consider experimental results as the predominant component in our future work.

Page 123: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

4.2.1 Enforcing Multicast 'Rees of High Capacity and S m d Delay

One of the potential problerns that may atise throughout the s e ~ c e of join and teave requests

is the emergence of 'lcutoffn multicast graphs. Namely, t he sequence of requests may result in

a multicast graph of deterïorated quality, which prohibits the satisfaction of further requests.

Tree-based algorithms are expected to be more prone t o such a drawback than algorithms t h a t

maintain a non-acyclic multicast network. In addition, the problem may manifest itseif to a

iarger extent during the early stages of the construction of the rnulticast tree-

To illustrate the implications of the above remark, consider the following scenario. The

sequence of requests consists of two groups: The first group corresponds to join requests of

relaxed bandwidth and delay requirements, whereas the second group contains requests t h a t

a r e characterized by relatively strict requirements, Moreover, suppose t h a t the second group

outnumbers the first, and t h a t its requests are preceded by the first group, in the online sequence.

If the above set of requests is given as input t o the TREE algorithm, then i t is Likely that, after

t h e requests of the first group will be served, the multicast tree will contain edges of small

capacity and large delay. Our discussion of Subsection 1.4.1 and Section 3.1 suggests t h a t the

chances tha t such a tree can accommodate the requests of the second group are significantly

reduced.

A simple heuristic t o circumvent the above problem enforces the maintenance of multicast

trees with edges of high capacity and small delay. This can be accomplished by increasing,

by a certain amount, the bandwidth requirement of relaxed requests, so t ha t subsequent, and

more demanding requests will be not rejected due to capacity constraints on the tree edges.

Notice tha t the increase of the bandwidth requirement is oniy virtual and does not affect t he

actual allocation of resources on the edges of the established connection path. Informaliy, t he

request is routed as if i t was real, in order to introduce high capacitated edges t o the multicast

Page 124: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

tree. Following the same reasoning, the delay requirement of non-demanding requests can be

decreased accordingly, so tha t edges of high delay overhead are less iikely to be included in the

multicast ttee.

T h e recommended solution relies on the assumption tha t a classification of requests as

"strictn or "relaxecl" can be effected. In real networks, such information may be avaiiable, and

the network provider may be able t o identify a certain request as beionging to a particular

group, according t o the values of its requirements. For instance, the ATM mode1 defines five

distinct classes of traffic, each one corresponding to certain specific t r a c characteristics

4.2.2 Rearranging the Multicast Ttee

Throughout the presentation of Our algorithms, we assumed that the online algorithm does not

perform any reconstruction on the current multicast graph. More specificaliy, the multicast

graph resulted €rom the service of a join request is a subgraph of the multicast graph prior t o

the service. Similarly, the rnulticast network at the time instance where a leave request is issued

is a subgraph of the multicast network after the request is served. Efficient rearrangement of

the rnulticast subnetwork is a complex 'mue, even for simple versions of the multicast problem,

such as the Steiner Tree problem. We refer the reader t o [13] and (31 for a study of online

Steiner algorit hms t hat perform rearrangernents.

4.2.3 Distributed Implementation of BD-MCAST Algorithms

The algorithms presented in Our study are centralized, since they rely on centraliied solutions

t o the CSP problem. A natural improvement is to provide a distributed version of CIRCUIT,

while presewing the performance guarantees. This task is complicated by the fact tha t the CSP

approximations considered in this work employ dynamic programrning, which does not favor

Page 125: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

a distributed implementation. Alternatively, one could reside to the distributeci CSP heuristic

proposed by Salama et al. [26]. Although the Iatter algorithm does not exhibit strict guarantees

such as Hassin's FPTAS [IO], i t m e t s Our criteria for efficiency, and low time complexity.

4.2.4 Exploiting Hierarehical Routing Schemes

We currently investigate improvements to the complexity of our algorithms, by exploiting the

hierarchical, aggregated topology of modern broadband networks. In particsular, one can assume

the existence of a n underlying hierarchical process that aggregates the network's s ta te informa-

tion. Such a process is encountered, for example, in the PNNI Recommendation [36] [35]. The

objective is to guarantee a complexity for the join algorithrn, tha t will approach the complex-

ity of standard, unconstrained shortest-path algorithms, such as the widely-known Dijkstra's

algorithm. Recently, Orda [23], suggested similar improvements to the time complexity of

+approximation algorithms for the CSP problem.

4.2.5 Competitive Analysis

Competitive Analysis was introduced by Sleator and Tarjan [29] as a generic technique for

proving performance guarantees for online algorithms. In general terms, the online algorithm

is compared to the optimal, offline aigorithm for the problem at hand; the latter is also called

the adversary. T h e objective is to prove bounds on the ratio of the costs incurred by the online

algorithm and the adversary, which apply for every possible sequence of requests. The bounds

depend strongly on asçumptions concerning the power of the adversary. Not surprisingly, we

have been able to prove that there exist no online BD-MCAST algorithms, deterministic or

randomized, for which non-trivial bounds can be claimed. In other words, there &t adversarial

scenarios where the performance of any online algorithm degrades arbitrarily, when compared

Page 126: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

to the performance of the adversary; this is due t o the inherent complexity, and hardness of the

problem. We currently investigate relaxed versions of BD-MCAST, where cornpetitive andysis

might be a challenging issue. For a comprehensive study of recent research in the area of online

computation, the interested reader is referred t o [QI.

4.3 A Note in Conclusion

This work presented a new paradigm for on-line multicasting with bandwidth and delay guaran-

tees. We showed how efficient, QoS routing algorithms can be used to address the multicasting

'issue. As the requirements imposed by the end-user evolve, several challenging problems in

the area of network design emerge. It is Our belief tha t research in approximation and online

algorithms has much to offer t o the development of efficient solutions to such problems, where

naive heuristics are likely to fail.

Page 127: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

Bibliography

[l] Gheorghe Antonoiu and Pradip K. Srimani. A Self-Stabilizing Leader EIection Aigorithm

for Tree Graphs. Journal of Pamllel and Distributed Computing, W(2) :227-232, May 1996.

[2] T. Ballardie, P. Francis, and J. Crowcroft. Core Based Trees (CBT): An Architecture

for Scalable Interdomain Routing. in Pmceedings of SIGCOMMT93, pages 85-95, San

Francisco, CA, 1993.

131 Fred Bauer and Anujan Varma. ARIES: A Rearrangeabie Inexpensive Edge-Based On-fine

Steiner Algorithm. IEEE Journal on Selected Areas in Communications, 15 (3) :382-397,

April 1997.

[4] A.B. Borodin and R. El-Yaniv. Online Computation and Competitive .4nalysis. Cambridge

University Press, 1998.

[5] D. Estrin, D. Farinacci, A. Helmy, D. Thaler, S. Deering, M. Handley, V. Jacobsen, C. Liu,

P. Sharma, and L. Wei. RFC 2362: Protocol Independent Multicast-Sparse mode (PM-

SM) : Protocol Specification, June 1998.

[6] Michalis Faloutsos, Rajesh Pankaj, and Kenneth C. Sevcik. Multicast Routing with Hetere

geneous Quaiity. In The Fourth IEEE Workshop on the Architecture and Implementation

of High Performance Communication Systems (HPCS'97), 1997.

Page 128: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

[7] Urie1 Feige. A Threshold of ln n for Approximating Set Cover. In P m e d i n g s of The

Twenty-Eighth Annual ACMSymposium On The Theory Of Computing @TOC '96), pages

314-318, New York, USA, May 1996. ACM Press.

[8] Michael R. Garey and David S. Johnson. Cornputers and Intractubility: A Guide to the

77zeory of NP-Completeness. Freeman, New York, NY, 2nd edition, 1983-

[9] D.S. Reeves HI Salama and YI Viniotis- Evalnation of Multicast Routing Algorithrus for

Real-Time Communication on High-Speed Networks. IEEE Journal on Selected Areas in

Communications, 15(3):332-345, April 1997.

[IO] R. Hassin. Approximation Schemes for the Restricted Shortest P a t h Problem. Mathematics

of Operutions Research, 17:3642, 1992.

[I l ] S. Hong, H. Lee, and B. Park. An Efficient Multicast Routing Algorithm for Delay-

Sensitive Applications with Dynamic Membership. In Proceedings of the Seventeenth IEEE

INFOCOM, San Francisco, California, 1998.

[12] Frank K. Hwang, Dana S. Richards, and Pawel Winter. The Steiner Tme Problem. Num-

ber 53 in Annals of Discrete Mathematics. Elsevier Science Publishers B. V., Amsterdam,

1992.

[13] Makoto lmase and Bernard M. Waxman. Dynamic Steiner Tree Probiem. SIAM Journal

on Discrete Mathematics, 4(3):369-384, August 1991.

[14] H.C. Joksh. The Shortest Route Probiem with Constraints. J. Math. Anal. Appl., 14:191-

197, 1966.

Page 129: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

[15] Richard M. Karp. Reducibility Among Combinatorid Problems. In R. E. Miller and J. W.

Thatcher, editors, Complezity of Cornputer Computations, pages 85-103, New York, 1972.

Plenum Press,

[16] V. P. Kompella, J. C. Pasquale, and G. C. Polyzos- Multicasting for Multimedia Applica-

tions. fn Pmceedings of the Eleventh IEEE INFOCOM, pages 2078-2085, 1992.

[17] L- Kou, G . Markowsky, and L. Berman. A Fast Aigorithm for Steiner Trees. Acta infm-

matica, 15:141-145, 198 1 .

[18] Eugene L Lawler. Combinaton'al Optimizution: Networks and Matmids, chapter 4,6.3 and

7.11. Holt, Rinehart and Winston, New York, 1976.

1191 R. Pankaj M. Faloutsos and K. Sevcik. Bounds for the On-line MuIticast Problem in

Directed Graphs. In P m . of the 4th Intern. Colloquium on Structuml, information and

Communication Cornplezity (SIROCCO '97), Monte Verita, Ascona, Switzerland, 1997.

Carleton University Press-

[20] Prabhu Manyem and Matthias F. M. Stalimann. Some Approximation Results in Mui-

ticasting. Technical Report TR-96-03, Department of Corn puter Science, North Carolina

State University, February 21 1996.

[21] Kurt Mehlhorn. A Faster Approximation Algonthm for the Steiner Problem in Graphs.

Information Pmessing Letters, 27(3):125-128, March 1988.

[22] John Moy. Multicast Routing Extensions for OSPF. Commu~icutions of the ACM,

3?(8) :6 1-66, August 1994.

[23] Ariel Orda. Routing with End to End QoS Guarantees in Broadband Networks. In Pmceed-

ings of the Seventeenth IEEE INFOCOM, pages 27-34, San Francisco, California, 1998.

Page 130: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

[24] Cynthia A. Phiiiïps. The Network Inhibition Problem (Extended Abstract). In Prrrceedings

of the Tmenty-Fiph Annual A CM Symposium on the Theory of Computing, pages 776-785,

San Diego, California, 16-18 May 1993.

[25] S. Ramanathan. An Algorithm for MuIticast Tree Generation in Networks with Asyrn-

metric Links. In Proceedings of IEEE INF0COM996, pages 337-344. IEEE Press, 1996.

[26] H.F. Salama D.S- Reeves and Y. Viniotis. A Distributed Algorithm for Delay-Constrained

Unicast routing. in Pmceedings of IEEE Infmom '96, Japan, March 1996.

[27] George N. Rouskas and nia Baldine. Multicast Routing with End-to-End Delay and Delay

Variation Constraints. IEEE Journal on Selected Areas in Communications, 15(3):34û-

356, April 1997.

[28] S. Sahni. Generai Techniques for Corn binatorial Approximation. Technical Report 76-6,

Dept. Computer Sci,, Univ. Minnesota, Minneapolis, MN, June 1976.

[29] Daniel D. Sleator and Robert E. Tarjan. Amortized Efficiency of List Update and Paging

Rules. Communications of the A CM, 28(2):202-208, February 1985.

[30] Q. Sun and H. Langendoerfer. Efficient Multicast Routing for Delay-Sensitive Applications.

In P m . Second Worksiiop Pmtocols Multimedia Systems (PROMS795), pages 452458, San

Diego, California, October 1995.

[31] H. Takahashi and A. Matsuyamya. An Approximate Solution for the Steiner Problem in

Graphs. Math Japnica, 24(6):573-577, February 1980.

[32] Robert Endre Tarjan. Data Structures and Network Algorithms, volume 44 of CBMS-NSF

Reg. Conf. Ser. Appl. Math- SIAM, 1983.

Page 131: EFFICIENT ONLINE ALGORITHMS FOR MULTICASTING WITH … · 2020-04-07 · Chapter 1 Introduction This work is focused on the design of efficient online algorithms for multicast communication

[33] J. Van Leeuwen and R. B. Tan. Interva1 Routing. The Computer Journal, 30(4):298-307,

August 1987.

[34] D. Waitzman, C. Partridge, and S. E- Deering. RFC 1075: Distance Vector Multicast

Routing Protocol, November 1988.

[35] ATM Forum PNNI WG. Draft Private Network-Network Interface Specification Version

1 .O, March 1996. ATM Forum/BTD-MNNI-02.

[36] ATM Forum PNNI WG. Private Network-Network Interface Specification Version 1.0,

March 1996. ATM Forum/BTD-MNNI-01.

[37] Ron Widyono. The Design and Evaiuation of Routing Algorithms for Real-time Channels,

Technical Report TR-94-024, International Computer Science Institute, Berkeley, CA, June

1994.

[38] P. Winter- Steiner Problem in Networks: A Survey. Networks, 17:129-167, 1987.

[39] AIexander Zelikovsky- An 1 l/&Approximation Algorithm for the Network Steiner Prob-

lem. Algorithmica, 9:463-470, 1993.

[40] Q. Zhu, M. Parsa, and J. J. Garcia-Luna-Aceves. A Source-Based Algorithm for Delay-

Constrained Minimum-Cost Multicasting. In Prroceedings of the 14th Annual Joint Confer-

ence of the IEEE Computer and Communications Socàeties (INFOCOM'95), pages 377-

385, Los Alarnitos, CA, USA, April 1995.