Fast and Optimal Multicast-Server Selection Based on Receivers' Preference

12

Transcript of Fast and Optimal Multicast-Server Selection Based on Receivers' Preference

Fast and Optimal Multicast-Server Selection

Based on Receivers' Preference

Akihito Hiromori1, Hirozumi Yamaguchi1, Keiichi Yasumoto2,Teruo Higashino1, and Kenichi Taniguchi1

1 Graduate School of Engineering Science, Osaka University

1-3 Machikaneyamacho, Toyonaka, Osaka 560-8531, JAPAN

hiromori,h-yamagu,higashino,[email protected] Faculty of Economics, Shiga University

1-1-1 Bamba, Hikone, Shiga 522-8522, JAPAN

[email protected]

Abstract. In this paper, we propose static and dynamic server selec-

tion techniques for multicast receivers who receive multiple streams from

replicated servers. In the proposed static server selection technique, if (a)

the location of servers and receivers and shortest paths between them on

a network and (b) each receiver's preference value for each content are

given, the optimal server for each content that each receiver receives is

decided so that the total sum of the preference values of the receivers

is maximized. We use the integer linear programming (ILP) technique

to make a decision. When we apply the static server selection technique

for each new join/leave request to a multicast group issued by a re-

ceiver, it may cause server switchings at existing receivers and may take

much time. In such a case, it is desirable to reduce both the number of

server switchings and calculation time. Therefore, in the proposed dy-

namic server selection technique, the optimal server for each content that

each receiver receives is also decided so that the total sum of the prefer-

ence values is maximized, reducing the number of server switchings, by

limiting both the number of receivers who may switch servers and the

number of their alternative servers. Such restrictions also contribute fast

calculation in ILP problems. Through simulations, we have con�rmed

that our dynamic server selection technique achieves less than 10 % in

calculation time, more than 90 % in the total sum of preference values,

and less than 5 % in the number of switchings on large-scale hierarchical

networks (100 nodes), compared with the static server selection.

1 Introduction

Multicast is a useful way for saving bandwidth consumption by simultaneoustransmission of a data stream such as WWW pushing of contents and live videostreaming to multiple receivers [1, 2]. However, due to the limited bandwidththat can be used for multicast tra�cs, when multiple streams of live video aretransfered, we need e�cient bandwidth control of network resources used byeach stream. For this purpose, we have proposed bandwidth control techniques to

maximize the quality requirements of receivers for unicast and multicast streams[3, 4].

Regardless of unicast or multicast communication, bandwidth shortage causedby multiple streams is due mainly to path length between servers and receivers,since competition occurs among di�erent streams at some common bottle-necklinks. To overcome this problem, it may be useful to place some replicated serversat remote nodes [5] where video sources are transmitted to the replicated serversthrough high-speed links (backbone), and each receiver selects one of theseservers depending on network tra�cs, server loads and so on. This techniqueimproves network utilization without changing underlying routing protocols.

In recent years, such multi-server techniques have been researched [5{7]. [6,7] have proposed unicast server selection techniques based on metric informationsuch as packet delay, hop count and server load. [5] has proposed a multicastserver selection technique where the optimal server assignment for each receiverto minimize the total link cost is formulated as a mathematical problem on agraph. [5] also gives a heuristic for the dynamic server selection problem wherethe server switching cost caused by join/leave requests to multicast groups isconsidered. However, in multi-media applications using multicast communicationsuch as video-conferences at multiple locations, each receiver requires to receivemore than one stream and his/her preference for each stream may di�er fromothers. In general, when a receiver receives a stream which other receivers wouldnot like to receive and their path from the server is quite long, the bandwidthused by the stream may reduce the bene�t of the whole receivers. Therefore,on networks where available bandwidth is limited, it is desirable to considereach user's preference for each stream and to maximize the bene�t of the wholereceivers.

Such optimization can statically be calculated if the set of receivers and theirpreferences to all streams are known in advance. However, in general, join/leaverequests are repeatedly issued by receivers. In such a case, re-optimization shouldbe done dynamically. If we do such optimization for every request, the followingproblems arise.

1. Calculation time: the problem to select servers is a combinatorial optimiza-tion problem. Therefore, large amount of calculation time may be required inlarge-scale networks (we show calculation time against the number of nodesin Section 5).

2. Switching frequency: optimization may force existing receivers to switch thecurrent servers of its receiving streams to others even if they do not wantoverhead caused by multicast join/leave requests (join/leave latency and soon).

Therefore, it is desirable to apply the optimization technique to a part of networkwhere such dynamic changes happen, reducing the number of server switchingsat receivers as well as keeping the sum of the preference values higher than areasonable threshold.

In this paper, we propose static and dynamic server selection techniques formulticast streams transfered from multiple replicated servers. In the proposed

static server selection technique, if several replicated servers and each receiver'spreference value for each content are given, the optimal server for each contentthat each receiver receives is decided so that the total sum of the satis�ed pref-erence values is maximized. In the proposed dynamic server selection technique,when a new join/leave request to a multicast group is issued by a receiver, thenumber of server switchings at existing receivers should be reduced, and thetotal sum of the satis�ed preference values should be increased. Therefore, inour dynamic server selection technique, we limit the number of receivers whomay switch servers and their alternative servers so that the number of serverswitchings is drastically reduced and the sum of preference values is increased.

In our static optimization technique, in networks with certain link capacities,from given (1) the location of servers and receivers, (2) shortest paths betweenthem and (3) each receiver's preference value to each stream, we construct a log-ical conjunction of linear inequalities which represent the bandwidth constrainton each link used by streams. The objective function is set to maximize the to-tal sum of preference values of all receivers to streams. Thus, we use the integerlinear programming (ILP) technique to make an optimal server selection. Here,we assume that streams with lower preference values may not be received in caseof bandwidth shortage.

In our dynamic optimization technique, for each join/leave request issued bya receiver, we also construct linear inequalities, in order to obtain a solutionwhere the sum of the preference values is maximized, reducing the total numberof server switchings. Here, for fast calculation in the target ILP problem, we addsome constraints to restrict receivers to ones who may su�er server switchingsand also restrict their alternative servers to the two servers whose multicast treesare the closest of all the servers from the requested receiver.

We have simulated our static and dynamic server selection techniques andmeasured (a) calculation time, (b) the sum of preference values, and (c) thenumber of server switchings in a random topology and a hierarchical Internettopology called Tiers topology [8] consisting of LAN, MAN and WAN, whereSPF (Shortest Path First) routing protocol is supposed. As a result, we havecon�rmed that our dynamic server selection technique achieves less than 10%in calculation time, more than 90 % in the sum of preference values, and lessthan 5 % in the number of server switchings, compared with the static serverselection.

2 Preliminaries

A network is modeled as an undirected graph with capacity CAP (e) for each linke. Replicated multicast servers (or just servers hereafter) S = fs1; :::; smg andreceivers R = fr1; :::; rng exist on the network. Each server forwards contentsC = fc1; :::; cpg sent from source nodes to the receivers. Therefore, from thereceivers, each server can be regarded as a multicast server which has thesecontents. Each receiver can receive each content from one of these servers, andspeci�es a value called a preference value to each content. A preference valuemeans how eagerly the receiver wants to receive the content. An example of thenetwork model is shown in Fig. 1.

source1

s4

s3

R1

s2s1

source2 source3

R2R3

Backbone

Fig. 1. Network with Replicated Multicast Servers

In Fig. 1, source1, source2 and source3 are the source nodes of contents c1,c2 and c3, respectively. These contents are delivered to some of the replicatedservers s1, s2, s3 and s4 through the connections with large capacities. s1, s2,s3 and s4 are the candidates of multicast servers, and each receiver selects oneof them to receive each content. In the �gure, R1 receives c2 from s1, and bothof c1 and c3 from s2.

In this paper, for given (1) location of servers and receivers, (2) the shortestpath between each pair of server si and receiver rj and (3) the preference value ofeach receiver to each content, we formulate a problem to decide a server for eachpair of a receiver and a content so that the total sum of satis�ed preference valuesis maximized. We call this problem static server selection problem. Note that eachreceiver may not be able to receive all the contents that she/he required, due tobandwidth constraints.

Then we consider the case that receivers dynamically start or stop receivingcontents, that is, receivers join/leave multicast groups. For such a case, we canoptimize the total sum of preference values by solving the static server selec-tion problem when every join/leave request is issued. However, we cannot avoidsu�ering (a) the exponential growth of computation time and (b) the overheadof server switching at almost all receivers. Regarding (a), we have experiencedsimulation on networks with 100 nodes, 50 receivers, 10 servers and 5 contents,and it took 200 seconds in average and more than 400 seconds in the worst caseto get an optimal solution on an average machine (Pentium III, 500MHz). Suchdurations are allowed if, for example, we design the total layout of multicasttrees before a new continuous service is started, however, not feasible for eachsmall change of receiver status. Regarding (b), if we consider that the overheadincreases proportional to the number of server switchings, it is much better toreduce it. For these reasons, in this paper, we propose another optimizationtechnique called dynamic server selection for each join or leave request of a re-ceiver. In Sections 3 and 4, we describe the static and dynamic server selectionproblems, respectively.

Let us de�ne the following terms.

{ path(si; rj): the set of links on the shortest path from si to rj{ uplink(el; si; rj): the up-link (next to el) on path(si; rj)

{ endlink(si; rj): the bottom-link (attached to rj) on path(si; rj){ pref(rj ; ck): the preference value of rj given to ck{ bw(ck): the transmission rate of ck{ (si; ck): the multicast group where ck is delivered from si

3 Static Server Selection Problem

In order to formulate the static server selection problem, we de�ne the followingtwo types of boolean variables. Each variable in one type represents the factthat a receiver can receive a content from a server. Each variable in anothertype represents the fact that the multicast tree of a content from a server usesa link.

{ rcv[si; rj ; ck] : its value is one only if receiver rj receives content ck from si,otherwise zero.

{ deliver[el; si; ck] : its value is one only if content ck from server si is deliveredthrough link el, otherwise zero.

Using these variables, the static server selection problem can be formulated asthe following integer linear programming (ILP) problem.

maxX

i

X

j

X

k

pref(rj ; ck) � rcv[si; rj ; ck] (1)

subject to: X

i

rcv[si; rj ; ck] � 1; 8j; k (2)

deliver[el; si; ck] � deliver[uplink(el; si; rj); si; ck]; 8i; j; k; l (3)

rcv[si; rj ; ck] � deliver[endlink(si; rj); si; ck]; 8i; j; k (4)

X

i

X

k

bw(ck) � deliver[el; si; ck] � CAP (el); 8l (5)

Objective function (1) represents the total sum of all receivers' preferencevalues. Constraint (2) states that one receiver selects at most one server for eachcontent. Constraints (3) and (4) concern the form of multicast trees and indicatethat if rj receives ck from si, the multicast tree of ck from si must contain theshortest path from si to rj . Constraint (5) is a bandwidth constraint on eachlink.

4 Dynamic Server Selection Problem

Due to the dynamic behavior of receivers in multicast communication, membersin a group are not unique throughout a session. Therefore, fast re-optimizationfor each join/leave request of a receiver is desirable.

Let rcv0[si; rj ; ck] denote the fact that receiver rj is currently joining thegroup (si,ck) (its value is one if rj is joining the group, zero otherwise). Thejoin/leave behavior of a receiver is described as follows.

{ join: a receiver rq whereP

ircv0[si; rq; ck] = 0 wants to join one of the

groups (s1; ck), (s2; ck), ... and (sm; ck).{ leave: a receiver rq where rcv

0[si; rq; ck] = 1 wants to leave the group (si; ck).

We limit the number of receivers who are forced to switch their servers toothers, in order to prevent a receiver's join/leave behavior from a�ecting all thereceivers spread in wide-area networks. We also limit the number of possiblealternative servers (servers to be switched) when a receiver switches its serverof a content so that the receiver does not select servers far from him/her. Onassuming such restrictions, we formulate the dynamic server selection problem.

Fig. 2. Grafting Distance

[join] We de�ne a grafting distance as the number of links on the shortest pathfrom a server to a receiver through which a content ck from the server has notbeen delivered yet (i.e., the number of links where the content would be startedto deliver when the receiver joins the group). An example is shown in Fig. 2. Weadopt the following policy.

{ receiver rq selects one of the two servers (say si1 and si2) with the shortesttwo grafting distances.

{ For each path(si0 ; rj0) which shares some of links with path(si1 ; rq) orpath(si2 ; rq), if receiver rj0 is receiving content ck from server si0 , rj0 is one ofthe receivers who may switch servers. As an alternative server to receive ck,rj0 may select one of the two servers with the shortest two grafting distances.

Intuitively, each receiver whose receiving streams may compete with rq's newstream may have to switch servers. Furthermore, we limit the number of theirpossible alternative servers to only two for each pair of a receiver and a content.

The dynamic server selection problem by each receiver's join request is anILP problem with the same objective function (1), the same constraints (2){(5)as in Section 3 and the following constraint to �x the status of receivers whoshould not switch servers:

rcv[si; rj ; ck] = 1; 8(i; j; k) 6= (i0; j0; k0) (6)

where (i0; j0; k0) is a tuple satisfying the following constraint. Note that all the

paths are given and rcv0[si; rj ; ck] in the constraint have already been decided.Therefore such tuples (i0; j0; k0) are uniquely determined.

(path(si1 ; rq) \ path(si0 ; rj0) 6= ; _ path(si2 ; rq) \ path(si0 ; rj0) 6= ;)

^rcv0[si0 ; rj0 ; ck0 ] = 1

[leave] We adopt the following switching policy when rq leaves group (si; ck).

{ For each path(si0 ; rj0) which shares some of links with path(si; rq), rj0 canselect si0 as the server to receive content ck which rj0 has not received.

The dynamic server selection problem by each receiver's leave request is anILP problem with the same objective function (1), the same constraints (2){(5)and the following constraint to �x the status of receivers who should continueto receive streams.

rcv[si; rj ; ck] = 1; if rcv0[si; rj ; ck] = 1 (7)

In Section 5, we have measured the performance of dynamic server selectionfor a receiver's join request compared with the static server selection, in terms ofthe computation time, the total sum of satis�ed preference values and the totalnumber of server switchings.

5 Simulation

0

500

1000

1500

2000

2500

3000

3500

0 200 400 600 800 1000 1200 1400 1600 1800 2000 2200

Fig. 3. Network Topology (a) Tiers Model

0

2

4

6

8

10

12

14

16

18

20

0 2 4 6 8 10 12 14 16 18 20

Fig. 4. Network Topology (b) Random

Model

We have used two types of networks based on (a) Tiers Model [8] (Fig. 3)and (b) Random model (Fig. 4). Tiers is a hierarchical model organized by threedomains, LAN, MAN, and WAN. For Tiers model, we randomly decided thenumber of nodes contained in LAN, MAN and WAN. We also decided the linkcapacities of LAN, MAN and WAN so that they are in the ratio of 1 : 10 : 100.Then we simulated 5 times on the networks varying the number of nodes jN j.For Random model, we randomly decided each link capacity based on Gaussiandistribution, and simulated 20 times on the networks varying jN j. Also, we hadjSj = 0:1jN j servers, jRj = 0:5jN j receivers and jCj = 5 contents in the networksand selected receivers' preference values from 25, 16, 9, 4 and 1, randomly. Wesimulated the dynamic server selection for a receiver rjRj who tried to join a

group in the situation that the server selection had been already optimized forthe receivers r1; :::; rjRj�1 by the static server selection (this simulation is denotedby (d) ), and the static server selection for the receivers r1; :::; rjRj (denoted by(s) ). Then we have measured the calculation time, the total sums of satis�edpreference values and the numbers of server switchings of (d) and (s). The resultsare shown in Section 5.1. Also in order to examine the validity that the numberof alternative servers is limited to 2, we have also measured these values in thedynamic server selection with the di�erent number of alternative servers jASj,(d-1) jASj = 0:25jSj, (d-2) jASj = 0:5jSj and (d-3) jASj = 0:75jSj. The resultsare shown in Section 5.2.

5.1 Comparison of Static and Dynamic Server Selection

0

50

100

150

200

250

300

350

400

20 30 40 50 60 70 80 90 100 110

calc

ulat

ion

time[

seco

nd]

Number of nodes

(d) pertially optimized(average case)(d) pertially optimized(worst case)(s) fully optimized(average case)(s) fully optimized(average case)

Fig. 5. Number of Nodes vs. Calculation

Time: (a) Tiers Model

0

100

200

300

400

500

600

700

10 15 20 25 30

calc

ulat

ion

time[

seco

nd]

Number of nodes

(d) pertially optimized(average case)(d) pertially optimized(worst case)(s) fully optimized(average case)(s) fully optimized(worst case)

Fig. 6. Number of Nodes vs. Calculation

Time: (b) Random Model

Calculation Time We show the calculation time of the static server selectionand the dynamic server selection. We varied jN j (the number of nodes) from 28to 107 by every 3 nodes on Tiers model (Fig. 5) and from 10 to 30 by every 2nodes on Random model (Fig. 6). In these graphs, the plots of the average timeof (s) the static and (d) dynamic server selections are connected by dashed andsolid lines, respectively. For each number of nodes, the range between the worsttime and the best time is also shown by a vertical line.

We �nd the exponential increase of the calculation time in the static serverselection around 90 nodes or higher on Tiers model and around 28 nodes orhigher on Random model. On the other hand, we �nd the linear increase of thecalculation time in the dynamic server selection. From these results, we can saythat the proposed dynamic server selection can solve the problem within a rea-sonable time. Especially on Tiers model, the calculation time is just 10 secondson 70 nodes in the worst case. On Random model, it took more calculation timein the static server selection. This is due to the distribution of distances betweenservers and receivers. On Tiers model, since the distances to servers largely dif-fer from each other, the number of the candidate servers may be reduced in thecalculation process. On the other hand, the distances are very close to each otheron Random model.

The Total Sum of Preference Values We have measured the total sum of prefer-ence values of the dynamic and static server selections. The ratios of the formerto the latter on Tiers model and Random model are shown in Fig. 7 and Fig. 8,respectively. On Tiers model, even in the worst case, the ratio is 89% and theaverage ratio is 95%. They are good enough to consider the tradeo� betweenthe calculation time and optimality of satis�ed preference. On Random model,there are a few worst cases that the ratios are in the range of 50%�60%. Thisis because many receivers' alternative servers are converged to a few servers.However, the average ratio is kept more than 95%, therefore our dynamic serverselection can keep high optimality compared to the static server selection onboth models.

88 %

90 %

92 %

94 %

96 %

98 %

100 %

20 30 40 50 60 70 80 90 100 110

ratio

Number of nodes

averageworst

Fig. 7. Number of Nodes vs. Total Sum of

Preference Values: (a) Tiers Model

50 %

55 %

60 %

65 %

70 %

75 %

80 %

85 %

90 %

95 %

100 %

10 15 20 25 30

ratio

Number of nodes

averageworst

Fig. 8. Number of Nodes vs. Total Sum of

Preference Values: (b) Random Model

0

20

40

60

80

100

120

140

20 30 40 50 60 70 80 90 100 110

Num

ber

of s

witc

hing

s

Number of nodes

(d) pertially optimized(average case)(d) pertially optimized(worst case)(s) fully optimized(average case)(s) fully optimized(worst case)

Fig. 9. Number of Nodes vs. Number of

Server Switchings: (a) Tiers Model

0

5

10

15

20

25

30

35

40

45

50

10 15 20 25 30

Num

ber

of s

witc

hing

s

Number of nodes

(d) pertially optimized(average case)(d) pertially optimized(worst case)(s) fully optimized(average case)(s) fully optimized(worst case)

Fig. 10. Number of Nodes vs. Number of

Server Switchings: (b) Random Model

The Number of Server Switchings We de�ne a new variable switch[si; rj ; ck] foreach set of variables si, rj and ck where rcv0[si; rj ; ck] = 1 as follows.

switch[si; rj ; ck] = 1� rcv[si; rj ; ck] (8)

switch[si; rj ; ck] represents the fact that rj stops receiving ck from si. Thus wecan represent the number of server switchings as follows.

X

i

X

j

X

k

switch[si; rj ; ck] (9)

We have measured the number of server switchings. We show the results on Tiersmodel (Fig. 9) and on Random model (Fig. 10).

In the static server selection, the server switchings occurred 60 times onaverage on Tiers model with 100 nodes. Since we decided jRj = 0:5jN j, eachreceiver has at least one server switching in estimation. It is too much overhead inconsideration of multicast join/leave latencies. On the other hand, the maximumnumber of server switchings is largely reduced in the dynamic server selection.

5.2 E�ect of Number of Alternative Servers

In order to examine the e�ect of the number of alternative (selectable) serversto the calculation time, the total sum of satis�ed preference values and thenumber of server switchings, we have measured these values on Tiers model inthe dynamic server selection with the di�erent number of alternative serversjASj, (d-1) jASj = 0:25jSj, (d-2) jASj = 0:5jSj and (d-3) jASj = 0:75jSj.

0

50

100

150

200

250

300

350

400

20 30 40 50 60 70 80 90 100 110

calc

ulat

ion

time[

seco

nd]

Number of nodes

(d) pertially optimized(|AS|=2)(d-1) pertially optimized(|AS|=0.25|S|)(d-2) pertially optimized(|AS|=0.5|S|)(d-3) pertially optimized(|AS|=0.75|S|)(s) fully optimized

Fig. 11. Number of Nodes vs. Calculation Time on Tiers Model

Calculation Time We show the average of the calculation time in Fig. 11. Com-pared with (d) where jASj = 2, we �nd the feature of divergence in (d-3), notso much as (s). Therefore we can say that our policy to limit the number ofalternative server is adequate enough.

95.5 %

96 %

96.5 %

97 %

97.5 %

98 %

98.5 %

99 %

99.5 %

100 %

20 30 40 50 60 70 80 90 100 110

ratio

Number of nodes

(d) pertially optimized(|AS|=2)(d-1) pertially optimized(|AS|=0.25|S|)(d-2) pertially optimized(|AS|=0.5|S|)(d-3) pertially optimized(|AS|=0.75|S|)

Fig. 12. Number of Nodes vs. Total Sum

of Preference Values: Average Case

88 %

90 %

92 %

94 %

96 %

98 %

100 %

20 30 40 50 60 70 80 90 100 110

ratio

Number of nodes

(d) pertially optimized(|AS|=2)(d-1) pertially optimized(|AS|=0.25|S|)(d-2) pertially optimized(|AS|=0.5|S|)(d-3) pertially optimized(|AS|=0.75|S|)

Fig. 13. Number of Nodes vs. Total Sum

of Preference Values: Worst Case

The Total Sum of Preference Values We have measured the average and worstof the total sum of preference values and shown the ratios of (d), (d-1), (d-2)and (d-3) to (s) in Fig. 12 (average case) and Fig. 13 (worst case), respectively.The ratios of (d-1), (d-2) and (d-3) are greater than (d) and are kept more than95% in the worst case. However, in the average case, (d) achieved almost thesame values as (d-1), (d-2) and (d-3).

0

10

20

30

40

50

60

70

80

20 30 40 50 60 70 80 90 100 110

Num

ber

of s

witc

hing

s

Number of nodes

(d) pertially optimized(|AS|=2)(d-1) pertially optimized(|AS|=0.25|S|)(d-2) pertially optimized(|AS|=0.5|S|)(d-3) pertially optimized(|AS|=0.75|S|)(s) fully optimized

Fig. 14. Number of Nodes vs. Number of Server Switchings on Tiers Model

The Number of Server Switchings We show the number of server switchings inFig. 14. The behavior of (d-1), (d-2) and (d-3) is similar to (s), while it is keptlow in (d). From the results above, we can say that out policy to limit the numberof alternative servers is adequate enough.

6 Conclusion

In this paper, we have proposed static and dynamic replicated server selectiontechniques for multiple multicast streams. In the proposed static server selectiontechnique, if the location of servers and receivers and the shortest path betweeneach pair of a server and a receiver on a network and each receiver's preferencevalue for each content are given, the optimal combinations of the servers andthe contents for each receiver are decided so that the total sum of the preferencevalues of the receivers is maximized. We use the integer linear programming(ILP) technique to make a decision. Furthermore, in our dynamic server selectiontechnique, the combinations of the servers and contents for each receiver aredecided so that the number of server switchings is reduced and the total sumof the preference values is kept high, by restricting receivers who may su�erserver switching and also alternative servers to be switched. Such restrictionsalso contribute fast calculation in ILP problems. Through simulations, we havecon�rmed that our dynamic server selection technique achieves less than 10 % incalculation time, more than 90 % in the sum of preference values and less than5 % in the number of switchings, compared with the static server selection.

As our future work, we plan to design and implement an architecture to letreceivers select optimal servers in existence of replicated multicast servers, basedon the proposed method. We consider that our technique can be incorporatedinto application-layer anycast[9]. Application-layer anycast is an implementation

of anycast at an application level, and is organized from ADN (Anycast DomainName). An ADN server provides location service and replies to client's requestwith the list of servers that can provide the requested service. The ADN servercan select those servers based on certain metrics. Therefore if the ADN serverknows certain network information needed for our server selection technique,calculating the optimal allocation of servers will be possible on the ADN server.However, we have to consider the following two problems. The �rst one is thatADN servers reply to only the receivers who requested services. Therefore, weneed an additional mechanism to let the other receivers switch their servers.The second one is how to collect the information. We are now investigating ane�cient way to realize these requirements.

Moreover, in order to show the feasibility of the receiver/server limitationpolicy adopted in our dynamic server selection, we will try to analyze the upperbound of the solution (that is, the optimality of the solution of dynamic serverselection) compared with the static server selection on Tiers model.

References

1. C. Diot, W. Dabbous and J. Crowcroft, \Multipoint Communication: A Survey

of Protocols, Functions, and Mechanisms," IEEE Journal on Selected Areas in

Communications, Vol. 15, No. 3, pp. 277-290, 1997.

2. X. Li, M.H. Ammar and S. Paul, \Video Multicast over the Internet," IEEE Net-

work Magazine, Vol. 13, No. 2, pp46-60, 1999.

3. H. Sakate, H. Yamaguchi, K. Yasumoto, T. Higashino and K. Taniguchi, \Resource

Management for Quality of Service Guarantees in Multi-party Multimedia Appli-

cation," Proc. of 1998 Int. Conf. on Network Protocols (ICNP'98), pp. 189{196,

1998.

4. H. Yamaguchi, K. Yasumoto, T. Higashino and K. Taniguchi, \Receiver-

Cooperative Bandwidth Management for Layered Multicast," Proc. of 1999 Int.

Conf. on Network Protocols (ICNP'99), pp. 43{50, 1999.

5. Z. Fei, M.H. Ammar and E.W. Zegura, \Optimal Allocation of Clients to

Replicated Multicast Servers," Proc. of 1999 Int. Conf. on Network Protocols

(ICNP'99), pp. 69{76, 1999.

6. R.L. Carter, M.E. Crovella, \Server Selection Using Dynamic Path Characteriza-

tion in Wide-area Networks," Proc. of INFOCOM'98, 1998.

7. Z. Fei, S. Bhattacharjee, E.W. Zegura and M.H. Ammar, \A Novel Server Selection

Technique for Improving the Response Time of a Replicated Service," Proc. of

INFOCOM'98, 1998.

8. K.L. Calvert, M.B. Doar and E.W. Zegura, \Modeling Internet Topology," IEEE

Communications Magazine, Vol. 35, No. 6, pp. 160{163, 1997.

9. S. Bhattacharjee, M.H. Ammar, E.W. Zegura, V. Shah and Z. Fei, \Application-

Layer Anycasting," Proc. of INFOCOM'97, 1997.

10. G. Riley, M. Ammar and L. Clay, \Receiver-Based Multicast Scoping: A New Cost-

Conscious Join/Leave Paradigm," Proc. of 1998 Int. Conf. on Network Protocols

(ICNP'98), pp. 254{261, 1998.

11. E. Amir, S. McCanne and R. Katz, \Receiver-driven Bandwidth Adaptation for

Light-weight Session," ACM Multimedia, 1997.