JOURNAL OF TELECOMMUNICATIONS, VOLUME 17, ISSUE 1, NOVEMBER 2012 17

Advantages of Client Partitioning for Content Delivery
Kenichi Yamashita and Kazumasa Oida
Abstract—In the content delivery networks (CDNs), there are basically two ways to set up client and server pairs for delivering media streams. They are the server selection (SS) made by a requesting client and the client partitioning (CP) performed by all servers. The latter requires precise information on future request arrivals. Although previous works mainly focus on the SS approach, this paper takes the CP approach and proposes a revised version of an existing CP algorithm designed for hypercube overlays. The revised CP algorithm copes with requests from unexpected clients and outperforms the SS algorithm, especially when a large number of clients and servers exist, requesting clients are spatially concentrated, or a huge number of requests arrive in a short period of time (flash crowds). Index Terms—Content delivery, hypercube, server selection, partition algorithm, worst link stress

————————————————————

1 INTRODUCTION

L

ARGE-SCALE content delivery networks (CDNs) often consist of numbers of functionally equivalent servers that provide delivery service to a large number of clients [1]. Basically, a client receives a media stream from one server. In this case, there are two ways to create client and server pairs. First, a client selects a server on demand (server selection). Second, each server is assigned a group of clients in advance and requests from clients are redirected according to the assignment (client partitioning). In the server selection (SS), each client selects the best server in terms of the number of hops, the round-trip time, and/or the server and network loads [2],[3],[4],[5]. Therefore, the SS is considered to be an algorithm that achieves individual optimization. The social optimization, on the other hand, is to obtain the best client-server pairs for all clients. If the information on when and from where clients request service is a priori given, the client partitioning (CP) can achieve the social optimization with the help of an optimization algorithm. The individual optimization does not always agree with the social optimization in some queueing systems [6],[7],[8], and will be shown in our model. For the benefit of all clients, we should perform the CP. However, the CP for content delivery has not been intensively studied [9],[10]. This is mainly because performances of the SS and CP are not largely different in many cases. The situation is different in the case where a large number of clients and servers exist, the network is heavily loaded, requesting clients are spatially concentrated, or a huge number of requests arrive in a short period of time (flash crowds [11],[12]). This extreme situation is not rare today and should be dealt with. We show in this paper that the CP ap————————————————

proach is more suitable for this situation. Although this approach needs the information on future request arrivals, statistics in the past may help forming a good estimation. This paper investigates the impact of estimation failures on the advantage of the CP. To cope with estimation failures, we propose an algorithm, which is a revised version of an existing CP algorithm [13]. This paper is organized as follows: Section 2 formulates the optimization problem for achieving the social optimization. Section 3 proposes a revised version of an existing CP algorithm (RCP algorithm). Section 4 calculates how much the performance is improved when the RCP algorithm is used instead of the SS algorithm under the condition that all clients and servers are connected on a hypercube overlay [14]. Finally, Section 5 presents the conclusions.

2 FORMULATION
2.1 Server Selection Let 𝑆 and 𝐶 denote sets of servers and clients, respectively. Assume that 𝑁 > 𝑀 > 1, where 𝑀 = |𝑆| and 𝑁 = |𝐶|. To receive delivery service from one of the servers in 𝑆, each client 𝑐 performs server selection (SS) according to Algorithm 1. The selection is based on the worst link stress (WLS). The link stress of a link is the number of media streams flowing on the link and the WLS of a pathis the greatest link stress over all links along the path. Let 𝑊𝑘𝑖 be the WLS of the path from server 𝑘 to the requesting client 𝑖 .All WLSs {𝑊𝑘𝑖 } 𝑘∈𝑆 can be obtained if {𝐴𝑘 } 𝑘∈𝑆 is given, where 𝐴𝑘 is the set of clients being served by server 𝑘, since in our model, a path is uniquely determined for each client and server pair (the uniqueness is described later).

 K. Yamashita was with the Department of Computer Science and Engineering, Fukuoka Institute of Technology, Fukuoka, Japan.  K. Oida is with the Department of Computer Science and Engineering, Fukuoka Institute of Technology, Fukuoka, Japan. © 2012 JOT www.journaloftelecommunications.co.uk

18

Algorithm 1: Client 𝑐 selects a server 𝑠 if 𝑠 ≠ −1.
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: input:𝑐, {𝐴𝑘 }, {𝐿𝑘 }, 𝑆 𝑆𝑎 ← ∅ for all𝑘 ∈ 𝑆do if|𝐴𝑘 | < 𝐿𝑘 then 𝑆𝑎 ← 𝑆𝑎 ∪ {𝑘} end if end for if|𝑆𝑎 | = 0then return−1 else 𝑆𝑤 ← arg min𝑘∈𝑆𝑎 𝑊𝑘𝑐 if|𝑆𝑤 | = 1then return𝑠 ∈ 𝑆𝑤 else 𝑆ℎ ← arg min𝑘∈𝑆𝑤 𝐻 (𝑐, 𝑘) return𝑠 ∈ 𝑆ℎ end if end if

Algorithm 2: server 𝑖selects a client 𝑐 ∈ 𝑈if𝑐 ≠ −1.
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: input:𝑖, 𝑈, {𝐴𝑖 }, {𝐿𝑖 }, {𝐺𝑖 }, 𝑆, 𝐶 if|𝐴𝑖 | = 𝐿𝑖 then return−1 else 𝑈𝑖 ← 𝑈 ∩ 𝐺𝑖 if𝑈𝑖 ≠ ∅then return𝑐 ∈ 𝑈𝑖 else 𝑈 ← 𝑈 ∖ 𝐶 for all𝑗 ∈ 𝑆 ∖ {𝑖}do if|𝐴𝑗 | = 𝐿𝑗 then 𝑈 ← 𝑈 ∪ (𝑈 ∩ 𝐺𝑗 ) end if end for if𝑈 = ∅then return−1 else 𝐶ℎ ← arg min𝑗 ∈𝑈 𝐻 (𝑖, 𝑗) return𝑐 ∈ 𝐶ℎ end if end if end if TABLE 1. SYMBOLS USED IN THIS PAPER. Symbol Definition 𝐾 hypercube dimensionality 𝑆 set of servers (𝑀 = |𝑆|) set of clients expected to request service 𝐶 (𝑁 = |𝐶|) 𝐶 set of clients that actually request service {𝐺𝑖 } solution to Problem P 𝐿𝑖 maximum number of clients served by server 𝑖 𝑈 set of unassigned requesting clients 𝐴𝑖 set of clients being served by server 𝑖

We briefly describe Algorithm 1. Let 𝑆𝑎 be the set of servers 𝑘 satisfying |𝐴𝑘 | < 𝐿𝑘 , where 𝐿𝑘 is the maximum number of clients for which server 𝑘 can provide service. Therefore, |𝐴𝑘 | < 𝐿𝑘 indicates server 𝑘 is available. A client𝑐 selects a server 𝑠 ∈ 𝑆𝑤 , where 𝑆𝑤 = arg min 𝑊𝑘𝑐 . (1) 𝑘
∈𝑆𝑎

If |𝑆𝑤 | > 1 , the closest server with respect to the hop count is selected. Function 𝐻(𝑐, 𝑘) stands for the number of hops between client 𝑐 and server 𝑘 and is equal to the Hamming distance between them. If server 𝑠(≠ −1) is selected, 𝐴𝑠 is updated as 𝐴𝑠 ← 𝐴𝑠 ∪ {𝑐} after executing Algorithm 1. When client 𝑐 stops receiving service from server 𝑠, 𝐴𝑠 is updated as 𝐴𝑠 ← 𝐴𝑠 ∖ {𝑐}.

2.2 Partitioning Problem We next formalize the client partitioning problem P. Let 𝐺𝑖 be the set of clients assigned to server𝑖. If all clients in 𝐶 are receiving delivery service (i.e., 𝑖∈𝑆 𝐴𝑖 = 𝐶 ) and 𝐴𝑖 = 𝐺𝑖 for all 𝑖 ∈ 𝑆, then all WLSs, {𝑊𝑘𝑖 } 𝑘∈𝑆,𝑖∈𝐴𝑘 , can be derived. For given sets 𝑆 and 𝐶, problem P is to obtain the optimal solution {𝐺𝑖 } that minimizes the greatest WLS over all paths. Problem P is formulated as follows: Minimize   max 𝑊𝑘𝑖 ({𝐺𝑗 }), 𝑘
∈𝑆,𝑖∈𝐴 𝑘

P 

Subject to 𝑖
∈𝑆 𝐺𝑖

= 𝐶, (2) 𝐺𝑖 ∩ 𝐺𝑗 = ∅  if 𝑖 ≠ 𝑗, |𝐺𝑖 | ≤ 𝐿𝑖   for all 𝑖 ∈ 𝑆.

Fig. 1. Hypercubes with dimensionalities 𝐾 = 1,2,3 and node IDs.

Problem P is a social optimization problem since it aims at reducing the worst WLS of all pathsestablishedfor clients in set𝐶.

3 REVISED CLIENT PARTITIONING
We use the client partitioning (CP) algorithm in [13] to obtain near-optimal solution {𝐺𝑖 } to problem P. Let us clarify the difference between two client sets: 𝐶 and 𝐶 . Set 𝐶

consists of clients that are expected to request service; while 𝐶 consists of clients that actually request service. The optimization problem P is solved with the estimated set 𝐶 . Therefore, 𝑖∈𝑆 𝐺𝑖 may not agree with 𝐶 . The revised CP (RCP) algorithm proposed in this paper partitions 𝐶 by making full use of solution {𝐺𝑖 } if the two sets are not largely different. Note that the SS algorithm is used by a client; while the RCP algorithm is executed on all servers. Algorithm 2 is part of the RCP algorithm. By using Algorithm 2, server 𝑖 selects a client from set 𝑈 if |𝐴𝑖 | < 𝐿𝑖 , where 𝑈 is the set of clients that are requesting service but

19

Fig. 2. W 2 LS distributions calculated with the SS or RCP at 𝐾 = 10, 𝑁 = 256, and 𝑀 = 8.

TABLE 2. MEANS AND STANDARD DEVIATIONS OF W 2 LS DISTRIBUTIONSAND THE IMPROVEMENT RATES𝑅. mean (stdev) SS RCP 𝑅 𝐾 = 9,  𝑁 = 128, 𝑀 = 4 12.71 (2.92) 11.99 (2.84) 0.06 𝐾 = 10, 𝑁 = 256, 𝑀 = 8 11.51 (2.52) 10.42 (2.43) 0.09 𝐾 = 11, 𝑁 = 512, 𝑀 = 16 10.46 (2.23) 9.017 (2.01) 0.14

not assigned yet. The assignment is based on 𝐺𝑖 as long as 𝑈 ∩ 𝐺𝑖 ≠ ∅; otherwise, server 𝑖 selects the closest client 𝑐 ∈ 𝑈, where 𝑈 is the sum of the following sets:  The set of requesting clients that are not expected to request (i.e., 𝑈 ∖ 𝐶).  The set of requesting clients assigned to server𝑗(≠ 𝑖), but the server is currently unavailable (i.e., |𝐴𝑗 | = 𝐿𝑗 ). The following describes the RCP algorithm. Each server 𝑖 has sets 𝑈, {𝐴𝑖 }, {𝐿𝑖 }, {𝐺𝑖 }, 𝑆, and 𝐶. Table 1 summarizes these symbols. The algorithm works as follows:  Each server 𝑖 ∈ 𝑆 in turn selects a client 𝑐 from set 𝑈 in an arbitrary order according to Algorithm 2 if 𝑈 ≠ ∅; otherwise, server 𝑖 waits until |𝑈| becomes positive. Note that the turn of server 𝑖 is passed if it is not available (|𝐴𝑖 | = 𝐿𝑖 ). When server 𝑖 executes Algorithm 2 for the first time, 𝐴𝑖 must be ∅.  After server 𝑖 selects a client 𝑐, the server updates sets𝑈 and 𝐴𝑖 such that 𝑐 is removed from 𝑈 and added to 𝐴𝑖 (i.e., 𝑈 ← 𝑈 ∖ {𝑐} and 𝐴𝑖 ← 𝐴𝑖 ∪ {𝑐}) and then informs the other servers about what has been selected so that every server updates its own 𝑈 and {𝐴𝑖 }.  When a client 𝑐 requests service, set 𝑈 owned by each server is updated as 𝑈 ← 𝑈 ∪ {𝑐}.  When a client 𝑐 stops receiving service from server 𝑖, 𝐴𝑖 owned by each server is updated as 𝐴𝑖 ← 𝐴𝑖 ∖ {𝑐}.

Fig. 3. Rate 𝑅 at (a) 𝑁 = 256 or (b) 𝑀 = 8. 𝐾 = 10.

nodes and 𝐾2𝐾−1 edges. Each node has a node ID, which is a 𝐾-bit binary string, and two nodes are linked by an edge if and only if their node IDs differ in precisely one bit. As a consequence, each node is adjacent to 𝐾 other nodes, one for each bit position, and the number of hops between any two nodes does not exceed 𝐾. Fig. 1 illustrates three hypercubes. An important feature of the hypercube is independent routes [16]. Let 𝑖 and 𝑗 be any two nodes on a 𝐾 dimensional hypercube. There are 𝐾 independent paths between 𝑖 and 𝑗, and their lengths are less than or equal to 𝐻(𝑖, 𝑗) + 2, where 𝐻(𝑖, 𝑗) is the number of hops from 𝑖 to 𝑗. Routing on the hypercube is simple and does not require routing tables. If IDs of source and destination nodes are 𝑠1 𝑠2 ⋯ 𝑠𝐾 and 𝑑1 𝑑2 ⋯ 𝑑𝐾 , respectively, then the source selects 𝑠1 ⋯ 𝑠𝑖−1 𝑑𝑖 𝑠𝑖+1 ⋯ 𝑠𝐾 as the next hop node if 𝑠𝑗 = 𝑑𝑗 for 𝑗 = 1, … , 𝑖 − 1 and 𝑠𝑖 ≠ 𝑑𝑖 . If the next hop node obeys this selection rule, the path from a source to a destination is determined (i.e., a path is unique for each client and server pair).

4 COMPUTATIONAL EXPERIMENTS
4.1 Hypercube This paper assumes that all servers and clients are connected on a hypercube overlay. We first briefly introduce the hypercube [15]. The 𝐾-dimensional hypercube has 2𝐾

4.2 Correct Estimation We first consider the case where the set of all clients that actually request service 𝐶 agrees with estimated set 𝐶 . The SS and RCP algorithms are evaluated based on the greatest WLS over all established paths (W 2 LS), which is defined as max𝑘∈𝑆,𝑖∈𝐴𝑘 𝑊𝑘𝑖 . A better algorithm yields a smaller W 2 LS. We consider the most heavily loaded case where all clients are receiving service and 𝐿𝑖 = 𝑁/𝑀 for

20

Fig. 4. Improvement rate 𝑅 as a function of the ratio of unexpected clients 𝑓. The client set is 𝐶4 , 𝑁 = 2𝐾−2 , and the number of clients per server (𝑁/𝑀) is 16. (a) 𝐾 = 10 and (b) 𝐾 = 11.

Fig. 5. Rate 𝑅 as a function of 𝑓. The client set is 𝐶4 , 𝑁 = 2𝐾−2 , and 𝑁/𝑀 = 8. (a) 𝐾 = 11 and (b) 𝐾 = 12.

all 𝑖 ∈ 𝑆, where 𝑁/𝑀 is an integer. In this case, by executing the RCP,we have 𝐴𝑖 = 𝐺𝑖 for all 𝑖 ∈ 𝑆. Namely, partition {𝐴𝑖 } made by the RCP is equal to the solution {𝐺𝑖 } to problem P calculated with the PA. The reason we consider the heavily loaded case is because the performance difference between the SS and RCP algorithms becomes distinct in this case. Fig. 2 shows W 2 LS distributions derived from 2000 2 W LS values calculated with the SS or RCP. The same 2000 pairs of sets 𝑆 and 𝐶 are used to obtain the two distributions. From the figure, by using the RCP, the mean of the distribution becomes smaller. Table 2 lists the means and standard deviations for three calculation conditions. Note that the number of clients per server 𝑁/𝑀 is 25 and the ratio of clients (resp. servers) to all hypercube nodes 𝑁/2𝐾 (resp. 𝑀/2𝐾 ) is 2−2 (resp. 2−7 ) for all conditions. To indicate how much the RCP outperforms the SS, the table contains the improvement rate 𝑅 defined by 𝑚𝑒𝑎𝑛 𝑜𝑓 W 2 𝐿𝑆 𝑑𝑖𝑠𝑡𝑟.  𝑜𝑏𝑡𝑎𝑖𝑛𝑒𝑑 𝑤𝑖𝑡ℎ 𝑅𝐶𝑃 𝑅 = 1 − . (3) 𝑚𝑒𝑎𝑛 𝑜𝑓 W 2 𝐿𝑆 𝑑𝑖𝑠𝑡𝑟.  𝑜𝑏𝑡𝑎𝑖𝑛𝑒𝑑 𝑤𝑖𝑡ℎ 𝑆𝑆 As shown in the table, 𝑅 increases with dimensionality 𝐾. Thus, the RCP is more useful for larger systems.

of servers) on the rate 𝑅. Each 𝑅 value is calculated with randomly selected 2000 pairs of sets 𝑆 and 𝐶. In the figure, 𝐶4 and 𝐶𝐾 are two types of client set 𝐶 , where all clients 𝑐 ∈ 𝐶ℎ satisfy 𝐻(𝑐, 00 ⋯ 0) ≤ ℎ. (4) In other words, if ℎ is small, all clients 𝑐 ∈ 𝐶ℎ are close to node 00 ⋯ 0 (spatial concentration). Note that client 𝑐 is selected from all nodes on the hypercube if ℎ = 𝐾. From Fig. 3(a), the improvement rate 𝑅 rises when clients are spatially concentrated. Therefore, the RCP has the advantage of reducing W 2 LS in this case. Furthermore, there is the optimal number of servers that maximizes 𝑅 for each client set 𝐶ℎ . When the set is 𝐶4 , the optimal number 𝑀 is 32 and the optimal 𝑅 is roughly 0.2. Fig. 3(b) exhibits the effect of 𝑁 (the number of clients) on 𝑅. From the figure, 𝑅 tends to decrease with 𝑁 when the client set is 𝐶𝐾 . Whereas, when the set is 𝐶4 , 𝑁 does not have a large impact on 𝑅 and rate 𝑅 at 𝐶4 is mostly larger than 𝑅 at 𝐶𝐾 . Note that 𝑅 at 𝑁 = 512 is not shown in the figure because |𝐶4 |(= 386) < 512.

4.3Advantages of RCP Let us clarify under what conditions the RCP should be used. Fig. 3(a) demonstrates the impact of 𝑀 (the number

4.4 Incorrect Estimation We next consider the case where the client set is incorrectly estimated; i.e., 𝐶 ≠ 𝐶. In this subsection, the improvement rate is calculated under the following conditions: 1. |𝐶 | = |𝐶|(= 𝑁). 2. All clients are receiving service ( 𝑖∈𝑆 𝐴𝑖 = 𝐶 ) and 𝐿𝑖 = 𝑁/𝑀 for all 𝑖 ∈ 𝑆 (the heavily loaded case).

21

The performance of the RCP depends on how requests arrive from clients. Let us consider the well-regulated case where a new request arrives after a server that satisfiesthe previous request has been selected. In this case, when a client 𝑐 ∈ 𝐶 ∖ 𝐶 requests, the RCP assigns 𝑐 to the server that executes Algorithm 2 first since the request of the client (therefore, this isthe random assignment). Let us next consider the simultaneous arrival case where all clients in 𝐶 requests at the same time. In this case, all clients in 𝐶 ∩ 𝐶 are first assigned and then each server selects the closest client from the set of unassigned clients 𝑈(⊆ 𝐶 ∖ 𝐶). Probably, the RCP will show better performance in the simultaneous arrival case. To verify the effect of bursty request arrivals, the improvement rates 𝑅 are calculated in the above-mentioned two extreme cases. Fig. 4 shows the improvement rate 𝑅 as a function of the ratio of unexpectedly requesting clients 𝑓, which is defined as |𝐶 ∖ 𝐶| 𝑓 = . (5) |𝐶 | The client set is 𝐶4 ; i.e., the spatially concentrated case. Dimensionality 𝐾 is the only difference between Figs. 4(a) and 4(b). Note that 𝑅 monotonically decreases with 𝑓 and that the RCP is useful only if 𝑅 > 0. Let 𝑓0 be the ratio 𝑓 that satisfies 𝑅 = 0. From the figure, 𝑓0 in the simultaneous arrival case is significantly large, and 𝑓0 values in the two cases in Fig. 4(b) are slightly greater than those in Fig. 4(a). From Fig. 4(b), in the well-regulated case, 𝑅 > 0 roughly when 𝑓 ≤ 0.18. Therefore, the RCP is useful at least 𝑓 is not greater than 18%. Fig. 5 compares 𝑅 values at 𝐾 = 11 and 12. It can be seen that 𝑓0 values in two extreme cases at 𝐾 = 12 are clearly larger than those at 𝐾 = 11. When 𝐾 = 12, 𝑓0 is slightly smaller than 0.25 in the well-regulated case, and 𝑓0 is slightly greater than 0.625 in the simultaneous arrival case. Therefore, the RCP is effective against bursty arrivals even if the estimate is significantly incorrectand the RCP more often outperforms the SS for systems with larger dimensionality 𝐾.

 If the set of clients that request service is correctly estimated, the improvement rate 𝑅 enlarges as the hypercube dimensionality 𝐾 increases and as requesting clients are more highly spatially concentrated. There is the optimal number of servers that maximizes 𝑅 when the number of clients is given. The optimal 𝑅 is roughly 0.2 when 𝐾 = 10, the number of clients is 256, and all clients are spatially concentrated.  When the client set is incorrectly estimated, 𝑅 monotonically decreases as the ratio of unexpectedly requesting clients 𝑓 grows. However, if all requests arrive simultaneously, 𝑅 falls slowly and in this case, 𝑅 > 0 at 𝐾 = 12 if 𝑓 < 0.625. Therefore, the RCP is effective in the bursty arrival case even if the estimate is significantly incorrect.

REFERENCES
[1] [2] R. Buyya, M. Pathan, and A. Vakali, Content Delivery Networks, 1st ed, Springer Publishing Company, Incorporated, 2008. A. Shaikh, R. Tewari, and M. Agrawal, “On the Effectiveness of DNS-based Server Selection,” In Proc. IEEE INFOCOM 2001 Twentieth Annual Joint Conference of the IEEE Computer and Communications Societies, Anchorage, AK, vol. 3, pp. 1801-1810, Apr. 2001. S. Ratnasamy, M. Handley, R.M. Karp, and S. Shenker, “Topologically-Aware Overlay Construction and Server Selection,” In Proc. IEEE INFOCOM 2002 Twenty-First Annual Joint Conference of the IEEE Computer and Communications Societies, vol. 3, pp. 11901199, Nov. 2002. M. Hofmann and L.R. Beaumont, Content Networking: Architecture, Protocols, and Practice, Morgan Kaufmann Publishers, San Francisco, CA, USA, pp. 129-134, 2005. M. Chen, Y. Ling, M. Pang, W. Chen, S. Cai, Y. Suwa, and O. Altintas, “Scalable Request-Routing with Next-Neighbor Load Sharing in Multi-Server Environments”, In Proc. of the 19th International Conference on Advanced Information Networking and Applications, IEEE Computer Society, Washington, DC, USA, pp. 441-446, Mar. 2005. E. Bell and S. Stidham Jr., “Individual versus Social Optimization in the Allocation of Customers to Alternative Servers,” Management Sci., vol. 29, no. 7, pp.831-839, Jul. 1983. S. Shenker and A. Weinrib, “The Optimal Control of Heterogeneous Queueing Systems: A Paradigm for Load-Sharing and Routing,” IEEE trans. on comp., vol. 38, pp. 1724-1735, Dec. 1989. K. Oida and S. Saito, “A Packet-Size Aware Adaptive Routing Algorithm for Parallel Transmission Server Systems,” Journal of Parallel and Distributed Computing, vol.64, pp. 36-47, Jan. 2004. O.P. Damani, P.E. Chung, Y. Huang, C.Kintala, and Y.M. Wang.“ONE-IP: Techniques for Hosting a Service on a Cluster of Machines,” Comput. Netw. ISDN Syst.,vol. 29, issue 8-13, pp. 10191027, Sep. 1997. S.C. Han and Y. Xia, “Network Load-Aware Content Distribution in Overlay Networks,” Computer Communications, vol. 32, pp. 51-61, Jan. 2009. H.Jamjoom and K.G. Shin, “Persistent Dropping: An Efficient Control of Traffic Aggregates,” In Proc. of the ACM SIGCOMM. Karlsruhe, Germany, pp.287-298, 2003. J.Jung, B. Krishnamurthy, andM. Rabinovich,“Flash Crowds and Denial of Service Attacks: Characterization and Implications for CDNs and Web Sites,” In Procs of the International World Wide Web Conference. Hawaii, pp. 252-262, 2002. K. Yamashita and K. Oida, "Link Stress Reduction Against Bursty Arrivals of Content Requests," Int. J. Communications, Network and System Sciences, vol. 5, no. 5, pp. 272-279, 2012. S. Tarkoma, Overlay Networks, CRC press, 2010. F.T. Leighton, Introduction to Parallel Algorithms and Archtectures: Arrays, Trees, Hypercubes, Morgan Kaufmann Publishers, 1992. Y. Saad and M. Schultz, “Topological Properties of Hypercubes,” IEEE trans. on comp., vol. 37, pp. 867-872, Jul. 1988.

[3]

[4]

[5]

[6]

[7]

[8]

5 CONCLUSIONS
In the content delivery networks (CDNs), there are basically two ways to create client and server pairs. They are the server selection (SS) and the client partitioning (CP). Although most of previous works focused on the SS approach, this paper considered the CP approach because the revised CP (RCP) algorithm was considered to be suited to large-scale CDNs and to the case where the network is heavily loaded, requesting clients are spatially concentrated, or a huge number of requests arrive in a short period of time. These phenomena are not rare in today’s CDNs. The RCP was evaluated under the heavily loaded condition. The evaluation criterion was the improvement rate 𝑅, which indicates how much the worst worst link stress (W 2 LS) is reduced if the RCP is used instead of the SS algorithm. The following results were obtained through evaluations:

[9]

[10]

[11]

[12]

[13]

[14] [15] [16]

Master your semester with Scribd & The New York Times

Special offer for students: Only $4.99/month.

Master your semester with Scribd & The New York Times

Cancel anytime.