Skip to main content

Advertisement

Log in

Energy-optimal collaborative file distribution in wired networks

  • Published:
Peer-to-Peer Networking and Applications Aims and scope Submit manuscript

Abstract

The impact of the ICT sector in worldwide power consumption is an increasing concern, motivating the research community to devote an important effort to define novel energy efficient networking solutions. Despite file distribution is responsible for a major portion of the current Internet traffic, little effort has been dedicated to address the issue of its energy efficiency so far. Most of the previous literature focuses on optimizing the download time of file distribution schemes (e.g. centralized server-based or distributed peer-to-peer solutions) while it is yet unclear how to optimize file distribution schemes from the point of view of energy consumed. In this paper, we present a general modelling framework to analyze the energy consumption of file distribution systems. First, we show that the general problem of minimizing energy consumption in file distribution is NP-hard. Then, for restricted versions of the problem, we establish theoretical bounds to minimal energy consumption. Furthermore, we define a set of optimal algorithms for a variety of system settings, which exploit the service capabilities of hosts in a P2P fashion. We show that our schemes are capable of reducing at least 50 % of the energy consumed by traditional (yet largely used) centralized distribution schemes even when considering effects such as network congestion and heterogeneous access speed across nodes.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9

Similar content being viewed by others

References

  1. ICT and CO2 emissions. http://www.parliament.uk/documents/post/postpn319.pdf

  2. In windows 7 use sleep to resume the os in 2 seconds. http://news.softpedia.com/news/In-Windows-7-Use-Sleep-to-Resume-the-OS-in-2-Seconds-101290.shtml

  3. The real connection speeds for Internet users across the world (charts). http://royal.pingdom.com/2010/11/12/real-connection-speeds-for-internet-users-across-the-world/

  4. Sandvine global Internet phenomena report 2h 2012. http://www.sandvine.com

  5. Agarwal Y, Hodges S, Chandra R, Scott J, Bahl P, Gupta R (2009) Somniloquy: augmenting network interfaces to reduce pc energy usage. In: NSDI, pp 365–380

  6. Anastasi G, Giannetti I, Passarella A (2010) A bittorrent proxy for green Internet file sharing: Design and experimental evaluation. Comput Commun 33(7):794–802

    Article  Google Scholar 

  7. Andrew LL, Sucevic A, Nguyen TT (2011) Balancing peer and server energy consumption in large peer-to-peer file distribution systems. In: IEEE Online Conference on Green Communications (GreenCom), pp 76–81

  8. Andrews M, Fernández AA, Zhang L, Zhao W (2012) Routing for power minimization in the speed scaling model. IEEE/ACM Trans Networking (TON) 20(1):285–294

    Article  Google Scholar 

  9. Arjona Aroca J, Chatzipapas A, Fernández Anta A, Mancuso V (2014) A measurement-based analysis of the energy consumption of data center servers. In: Proceedings of the 5th international conference on Future energy systems, e-Energy 2014, pp 63–74. ACM

  10. Blackburn J, Christensen K (2009) A simulation study of a new green bittorrent. In: Communications Workshops, ICC, pp 1–6

  11. Bolla R, Bruschi R, Davoli F, Cucchietti F (2011) Energy efficiency in the future Internet: A survey of existing approaches and trends in energy-aware fixed network infrastructures. IEEE Commun Surv Tutorials 13 (2):223–244

    Article  Google Scholar 

  12. Bostoen T, Mullender S, Berbers Y (2015) Lofoswitch: An online policy for concerted server and disk power control in content distribution networks. Ad Hoc Netw 25:606–621

    Article  Google Scholar 

  13. Bostoen T, Napper J, Mullender S, Berbers Y (2013) Minimizing energy dissipation in content distribution networks using dynamic power management. In: Third IEEE International Conference on Cloud and Green Computing (CGC), pp 203–210

  14. Brienza S, Cebeci SE, Masoumzadeh SS, Hlavacs H, Anastasi G, et al. (2015) A survey on energy efficiency in P2P systems: File distribution, content streaming, and epidemics. ACM Comput Surv (CSUR) 48(3):36

    Article  Google Scholar 

  15. Corigliano S, Trunfio P (2014) Exploiting sleep-and-wake strategies in the gnutella network. In: IEEE International Conference on Collaboration Technologies and Systems (CTS), pp 406–412

  16. Ezovski GM, Tang A, Andrew LL (2009) Minimizing average finish time in P2P networks. In: IEEE Infocom

  17. Feldmann A, Gladisch A, Kind M, Lange C, Smaragdakis G, Westphal F (2010) Energy trade-offs among content delivery architectures. In: IEEE Telecommunications Internet and Media Techno Economics (CTTE), pp 1–6

  18. Garey MR, Johnson D S (1979) Computers and Intractability: A Guide to the Theory of NP-Completeness. W. H. Freeman & Co., New York

    MATH  Google Scholar 

  19. Gkantsidis C, Karagiannis T, Vojnovic M (2006) Planet scale software updates. In: ACM SIGCOMM

  20. Gunaratne C, Christensen K, Nordman B (2005) Managing energy consumption costs in desktop pcs and lan switches with proxying, split tcp connections, and scaling of link speed. Int J Netw Manag 15:297–310

    Article  Google Scholar 

  21. Gupta M, Singh S (2003) Greening of the Internet. In: SIGCOMM

  22. Hlavacs H, Weidlich R, Treutner T (2012) Energy efficient peer-to-peer file sharing. J Supercomput 62(3):1167–1188

    Article  Google Scholar 

  23. Ilyas MS, Raza S, Chen CC, Uzmi ZA, Chuah CN (2014) RED-BL: Evaluating dynamic workload relocation for data center networks. Commun Netw 72:140–155

    Google Scholar 

  24. Intel: Enhanced intel speedstep technology for the intel pentium m processor. Intel White Paper 301170-001 (2004)

  25. Krishnaswamy D, Krishnan R, Lopez D, Willis P, Qamar A (2015) An open NFV and cloud architectural framework for managing application virality behaviour. In: IEEE Consumer Communications and Networking Conference (CCNC), 2015, pp 746–754

  26. Kumar R, Ross K (2006) Peer-assisted file distribution: The minimum distribution time. In: IEEE Workshop on Hot Topics in Web Systems and Technologies (HOTWEB 06), pp 1–11

  27. Labovitz C, Iekel-Johnson S, McPherson D, Oberheide J, Jahanian F (2010) Internet inter-domain traffic. In: ACM SIGCOMM

  28. Langner T, Schindelhauer C, Souza A (2011) Optimal file-distribution in heterogeneous and asymmetric storage networks. SOFSEM 2011: Theory and Practice of Computer Science pp 368–381

  29. Lawey AQ, El-Gorashi T, Elmirghani JM (2012) Energy-efficient peer selection mechanism for bittorrent content distribution. In: IEEE Global Communications Conference (GLOBECOM), pp 1562–1567

  30. Lee U, Rimac I, Kilper D, Hilt V (2011) Toward energy-efficient content dissemination. IEEE Network Magazine 25(2):14–19

    Article  Google Scholar 

  31. Lingjun M, Tsang P, Lui K (2009) Improving file distribution performance by grouping in peer-to-peer networks. IEEE Trans Netw Serv Manag 6(3):149–162

    Article  Google Scholar 

  32. Malatras A, Peng F, Hirsbrunner B (2012) Energy-efficient peer-to-peer networking and overlays. Handbook on Green Information and Communication Systems

  33. Mehyar M, Gu W, Low S, Effros M, Ho T (2007) Optimal strategies for efficient peer-to-peer file sharing. In: Acoustics, Speech and Signal Processing, ICASSP, vol. 4

  34. Mundinger J, Weber R, Weiss G (2008) Optimal scheduling of peer-to-peer file dissemination. J Sched 11(2):105–120

    Article  MathSciNet  MATH  Google Scholar 

  35. Nedevschi S, Chandrashekar J, Liu J, Nordman B, Ratnasamy S, Taft N (2009) Skilled in the art of being idle: reducing energy waste in networked systems. In: NSDI

  36. Nordman B, Christensen KJ (2009) Greener PCs for the enterprise. IT Professional 11(4):28–37

    Article  Google Scholar 

  37. Ozkasap O, Cem E, Cebeci SE, Koc T (2014) Flat and hierarchical epidemics in P2P systems: Energy cost models and analysis. Futur Gener Comput Syst 36:257–266

    Article  Google Scholar 

  38. Pickavet M, Vereecken W, Demeyer S, Audenaert P, Vermeulen B, Develder C, Colle D, Dhoedt B, Demeester P (2008) Worldwide energy needs for ICT: The rise of power-aware networking. In: ANTS

  39. Restrepo J, Gruber C, Machuca C (2009) Energy profile aware routing. In: Communications Workshops, IEEE ICC., pp 1–5

  40. Sanghavi S, Hajek B, Massoulie L (2007) Gossiping with multiple messages. IEEE Trans Inf Theory 53(12):4640–4654

    Article  MathSciNet  MATH  Google Scholar 

  41. Sucevic A, Andrew L, Nguyen T (2011) Powering down for energy efficient peer-to-peer file distribution. ACM Sigmetrics Workshops, GreenMetrics

  42. Trunfio P (2015) A two-layer model for improving the energy efficiency of file sharing peer-to-peer networks. Concurrency and Computation: Practice and Experience 27(13):3166–3183

    Article  Google Scholar 

  43. Tsang PS, Meng X, Lui KS (2010) A novel grouping strategy for reducing average distribution time in P2P file sharing. In: IEEE ICC

  44. Valancius V, Laoutaris N, Massoulié L, Diot C, Rodriguez P (2009) Greening the Internet with nano data centers. In: ACM CoNEXT

Download references

Acknowledgments

Supported in part by Ministerio de Economia y Competitividad grant TEC2014- 55713-R, the DRONEXT project (TEC2014-58964-C2-1-R), Regional Government of Madrid (CM) grant Cloud4BigData (S2013/ICE-2894, co- funded by FSE & FEDER), and BRADE Project (P2013/ICE-2958), NSF of China grant 61520106005, and European Commission H2020 grants ReCred and NOTRE.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Kshitiz Verma.

Appendices

Appendix A: Proofs of correctness and optimality for k = 1

For the correctness and optimality proofs of a scheme z (described by an algorithm), we define the state \(\sigma _{i,\tau }^{z}\) of a host \(i \in \mathcal {I}\) at the end of slot τ as the set of blocks held by that time at the host. Thus, to start with, initially for S we have, \(\sigma _{S,0}^{z} = \mathcal {B}\), and, for each client \(i \in \{0,\ldots ,n-1\}, \sigma _{i,0}^{z} = \emptyset \). If z is correct, after the makespan of z (\(\tau _{f}^{z}\) slots) the state of every client i ∈ {0,…,n − 1} must be \(\sigma _{i,{\tau _{f}^{z}}}^{z} = \mathcal {B}\). We omit z and τ when clear from the context.

1.1 A.1 Algorithm 2

Let us denote the scheme described by Algorithm 2 as z 2. This scheme has the following properties.

Observation 1

After the for loop at Lines 1-2, (i) the state of client i is σ i = {b i },∀i ∈ {0,..,n − 1}, and (ii) all hosts, including the server, have been switched on once and switched off once, except host H n−1 , which was only switched on once.

Lemma 4

After the q th iteration of the loop at Lines 3-6, for q∈{0,1,..,β−n}, each host H i ,i∈{0,…,n−1}, has state

$$ \sigma_{i} = \bigcup_{p=0}^{q} \{b_{(i+p)}\} $$
(16)

Proof

We use induction on q to prove the lemma. The base case (q = 0) follows from Observation 1.(i).

Induction step: Assume the hypothesis to be true for the (q − 1)th iteration. Client H i , i ∈ {0,...,n − 2} receives block b (i + q) in the q th iteration, while client H n − 1 receives block b (q + n − 1) from the server. Thus, ∀i ∈ {0,...,n − 1}, the state of client H i after the q th iteration is

$$\sigma_{i}=\bigcup_{p=0}^{q-1} \{b_{(i+p)} \} \cup \{b_{(i+q)} \} = \bigcup_{p=0}^{q} \{b_{(i+p)}\}$$

Lemma 5

After the \(q^{\prime \text {th}}\) iteration of the loop at Lines 7-9, for \(q^{\prime }\in \{0,1,..,n-1\}\) , each host H i ,i∈{0,1,..,n−1}, has state

$$ \sigma_{i} = \bigcup_{p=0}^{q^{\prime}+\beta-n} \{b_{(i+p)\bmod{\beta}}\} $$
(17)

Proof

We use induction on \(q^{\prime }\) to prove the claim. The base case (\(q^{\prime }=0\)) follows from Lemma 4 with q = βn. Let the claim (induction hypothesis) be true for the \((q^{\prime }-1)^{\text {th}}\) iteration. In the \(q^{\prime \text {th}}\) iteration, the value of j is \(j=q^{\prime }+\beta -1\). Hence, H i receives block \(b_{(i+q^{\prime }+\beta -n)}\). Thus, the state of client H i after the \(q^{\prime \text {th}}\) iteration is

$$\begin{array}{@{}rcl@{}} \sigma_{i} &=&\bigcup\limits_{p=0}^{q^{\prime}-1+\beta-n} \{b_{(i+p)\bmod{\beta}}\} \cup \{ b_{(i+q^{\prime}+\beta-n)\bmod{\beta}}\}\\ &=& \bigcup\limits_{p=0}^{q^{\prime}+\beta-n} \{b_{(i+p)\bmod{\beta}}\} \end{array} $$
(18)

Lemma 6

During the execution of Algorithm 2 each host H i ,i∈{0,...,n−1} serves a block that it has already downloaded.

Proof

Let us consider the loops at Lines 3-6 and Lines 7-9 in sequence. In the q th iteration of these loops, host H i serves block b (i + q − 1) mod β . From the previous lemmas, after the (q − 1)th iteration of these loops, host H i has state

$$\sigma_{i} = \bigcup\limits_{p=0}^{q-1} b_{(i+p)\bmod{\beta}} $$

which includes b (i + q − 1) mod β . Hence the claim follows. □

Theorem 9

After the termination of Algorithm 2 each host H i , i∈{0,...,n−1}, has received all the blocks \(b_{j} \in \mathcal {B}\) with optimal energy \(E(z_{2})=\beta ({\Delta }_{S} + {\sum }_{i=0}^{n-1} {\Delta }_{i} )\) . Additionally, host i consumes exactly βΔ i energy, and no host has been switched on (and off) more than twice.

Proof

It follows from Lemma 5 that each host has received all the blocks at the end of the loop at Lines 7-9. Then, the scheme is correct since each host serves a block that it has already downloaded (Lemma 6). Each host (including the server) is active exactly β slots. Then, the total energy consumed is \(E(z_{2})=\beta ({\Delta }_{S} + {\sum }_{i=0}^{n-1} {\Delta }_{i} )\), which is optimal since it matches the lower bound. Each host is on for exactly β slots. Hence, the total energy consumed by host i is βΔ i .

It follows from Lemma 4 that all the hosts, including the server, have been on during the execution of the loop at Lines 3-6. Similarly, Lemma 5 means that all the hosts but the server have been on during the execution of the loop at Lines 7-9. This, together with Observation 1.(ii), implies that the server and host H n − 1 have been switched on (and off) once, whereas the rest of the hosts were switched on/off twice. □

1.2 A. 2 Algorithm 3

For the correctness and optimality proofs of Algorithm 3 we define the state \(\zeta _{r,\tau }^{z}\) of a block b r at the end of τ as the set of clients H i , i ∈ {0,...,n − 1}, who have received b r . Thus, to start with, ∀r ∈ {0,...,β − 1}, initially the state of block b r is \(\zeta _{r,0}^{z} = \emptyset \). After the makespan \({\tau _{f}^{z}}\) of scheme z, the state should be, ∀r ∈ {0,...,β − 1}, \(\zeta _{r,{\tau _{f}^{z}}}^{z} = \bigcup _{i=0}^{n-1} \{ H_{i}\}\)

Let us denote the scheme described by Algorithm 3 as z 3. This scheme has the following properties.

Observation 2

After the for loop at Lines 1-2, ∀r∈{0,1,..,β−1}, the state of block b r is ζ r ={H r }.

Lemma 7

After the q th iteration of the for loop at Lines 3-6, for q∈{0,...,n−β}, the state of block b r is

$$ \zeta_{r} = \bigcup_{p=0}^{q} \{H_{r+p}\} $$
(19)

Proof

We prove the claim using induction on q. The base case (q = 0) is trivially true by the observation. Assume the statement to be true for the (q − 1)th iteration. In the q th iteration, q = j + 1−β. Then, block b r is served to H r + q . Thus, the state of block b r after the q th iteration is

$$\zeta_{r} = \bigcup_{p=0}^{q-1} \{H_{r+p}\} \cup \{H_{r+q}\}= \bigcup_{p=0}^{q} \{H_{r+p}\} $$

Lemma 8

After the \(q^{\prime \text {th}}\) iteration of the for loop at Lines 7-10, for \(q^{\prime }\in \{0,1,..,\beta -1\}\) , the state of block b r is

$$ \zeta_{r} = \bigcup\limits_{p=0}^{n-\beta} \{ H_{r+p}\} \bigcup\limits_{p=0}^{q^{\prime}} \{H_{(r-p)\bmod{n}}\} $$
(20)

Proof

The base case (\(q^{\prime }=0\)) is true from Lemma 7 after the loop at Lines 3-6 completes. In iteration \(q^{\prime }=j+1-n\), block b β − 1 is served to \(H_{\beta -q^{\prime }-1}\), hence,

$$\zeta_{\beta-1} = \bigcup_{p=0}^{n-\beta}\{H_{\beta+p-1}\} \bigcup_{p=0}^{q^{\prime}-1}\{H_{\beta-1-p}\} \cup \{H_{\beta-1-q^{\prime}}\} $$

and block b r , r ∈ {0,1,..,β − 2}, is served to \(H_{(r-q^{\prime })\bmod {n}}\). Then, the state of block b r , r ∈ {0,...,β − 1}, after the \(q^{\prime \text {th}}\) iteration is

$$\begin{array}{@{}rcl@{}} \zeta_{r} & = & \bigcup\limits_{p=0}^{n-\beta} \{ H_{r+p}\} \bigcup\limits_{p=0}^{q^{\prime}-1} \{H_{(r-p)\bmod{n}}\} \cup \{ H_{(r-q^{\prime})\bmod{n}}\}\\ &=& \bigcup\limits_{p=0}^{n-\beta} \{ H_{r+p}\} \bigcup\limits_{p=0}^{q^{\prime}} \{H_{(r-p)\bmod{n}}\} \end{array} $$

Lemma 9

During the execution of Algorithm 3, each host H i ,i∈{0,1,..,n−1}, serves a block that it has already downloaded.

Proof

In the for loop at Lines 3-6, during iteration q = j + 1−β, q ∈ {1,..,nβ}, block b r is served by H r + q − 1. It has it because after iteration q − 1,

$$\zeta_{r} = \bigcup_{p=0}^{q-1} \{H_{r+p}\}, $$

which includes H r + q − 1. H 0 always serves b 0, if any, which it has from the above observation.

In the for loop at Lines 7-10, during iteration \(q^{\prime }=j+1-n, q^{\prime }\in \{1,..,\beta -1\}\), block b β − 1 is served by \(H_{n-q^{\prime }}\). It has it because after iteration \(q^{\prime }-1\),

$$\zeta_{\beta-1} = \bigcup_{p=0}^{n-\beta}\{H_{\beta+p-1}\} \bigcup_{p=0}^{q^{\prime}-1}\{H_{\beta-1-p}\} \cup \{H_{\beta-1-q^{\prime}}\} $$

which includes \(H_{n-q^{\prime }}, \forall q^{\prime }\in \{1,2,..,\beta -1\}\).

Block b r , r ∈ {0,1,..,β − 2} is served by \(H_{(r-(q^{\prime }-1))\bmod {n}}\). It has it because after iteration \(q^{\prime }-1\)

$$\zeta_{r} = \bigcup_{p=0}^{n-\beta} \{ H_{r+p}\} \bigcup_{p=0}^{q^{\prime}-1} \{H_{(r-p)\bmod{n}}\} $$

which includes \(H_{(r-(q^{\prime }-1))\bmod {n}}\). Hence, the claim follows. □

Lemma 10

During the execution of Algorithm 3, a host is switched on (and off) at most thrice.

Proof

In each of the for loops at Lines 1-2, 3, 6, 7-10, a host is not switched on (resp. off) more than once, since indices i and j only increase in the loop. There are three such for loops, so a host can be switched on/off at most thrice in Algorithm 3. □

Theorem 10

After the termination of Algorithm 3 each host H i , i∈{0,...,n−1} has received all the blocks \(b_{r} \in \mathcal {B}\) with optimal energy \(E(z_{3}) = \beta \left ({\Delta }_{S} + {\sum }_{i=0}^{n-1} {\Delta }_{i} \right ) + (n-\beta ) \min \{{\Delta }_{S},{\Delta }_{0}\}\) . Additionally, host i consumes exactly βΔ i energy, except \(H_{\min }\) that consumes nΔ min energy, and no host has been switched on (and off) more than thrice.

Proof

It follows from Lemma 8 that each host has received all the blocks. Then, the scheme is correct since each host serves blocks it has already downloaded (Lemma 9).

We need to bound now the energy consumed. Let us denote \({\Delta }_{\min } = \min \{{\Delta }_{S} ,{\Delta }_{0} \}\). The energy consumed in the loop at Lines 1-2 is easily observed to be

$$ E_{1} = \beta{\Delta}_{S} + \sum\limits_{i=0}^{\beta-1} {\Delta}_{i} $$
(21)

The energy consumed in the loop at Lines 3-6 is

$$\begin{array}{@{}rcl@{}} E_{2} &=& \sum\limits_{j=\beta}^{n-1}\left( {\Delta}_{\min} + {\Delta}_{j+1-\beta} + \sum\limits_{i=1}^{\beta-1}{\Delta}_{i+j+1-\beta}\right)\\ &=&(n-\beta){\Delta}_{\min} + \sum\limits_{j=0}^{n-\beta-1}\sum\limits_{i=0}^{\beta-1}{\Delta}_{i+j+1} \end{array} $$
(22)

Finally, the energy consumed in the loop at Lines 7-10 is

$$\begin{array}{@{}rcl@{}} E_{3} & = & \sum\limits_{j=n}^{n+\beta-2} \left( {\Delta}_{n+\beta-j-2} + \sum\limits_{i=0}^{\beta-2}{\Delta}_{(n+i-j-1)\bmod{n}} \right) \\ &=& \sum\limits_{j=0}^{\beta-2}\sum\limits_{i=0}^{\beta-1}{\Delta}_{(i-j-1)\bmod{n}} \end{array} $$
(23)

Adding Eqs. 2122 and 23, we get,

$$\begin{array}{@{}rcl@{}} E(z_{3}) & = & E_{1} + E_{2} + E_{3} \\ & = & \beta{\Delta}_{S} + (n-\beta){\Delta}_{\min} + \sum\limits_{i=0}^{\beta-1} \left( \sum\limits_{j=0}^{i} {\Delta}_{j} + \sum\limits_{j=i+1}^{i+n-\beta} {\Delta}_{j}\right.\\ &&\qquad\qquad\qquad\qquad\qquad\qquad\left.+\sum\limits_{j=i+n-\beta+1}^{n-1} {\Delta}_{j} \right)\\ & = & \beta \left( {\Delta}_{S} + \sum\limits_{j=0}^{n-1}{\Delta}_{j} \right) + (n-\beta){\Delta}_{\min}, \end{array} $$

which is optimal. This bound implies that all hosts are on exactly β slots, and hence consumes βΔ i energy except \(H_{\min }\) that is on for n slots consuming \(n{\Delta }_{\min }\) energy. Hence, Algorithm 3 is unfair to the host with minimum energy consumption. Finally, the bound of number of times a host is switched on/off is proven in Lemma 10. □

Appendix B: Proof of correctness and performance of algorithm 4

The proof of correctness of Algorithm 4 can be divided in essentially four parts. (We use the array abstraction for clarity.) The first claim is that, after the first loop (Lines 2-5), the diagonal of the first subarray has been filled. (I.e., A i i = 1,∀i ∈ {0,...,n − 1}.) This claim follows trivially by inspection. The second claim is that after the second loop (Lines 6-9), the top left corner position of each subarray has also been set to 1. (I.e., \(A_{0j}=1,\forall j\in \{0,n,2n,..,(\lfloor \frac {\beta }{n} \rfloor - 1)n\}\).) This claim also follows by inspection.

The third claim is that, after the q th iteration of the third loop (Lines 10-16), the whole q th subarray and the diagonal of the (q + 1)th subarray have been set to 1 (and the blocks served by a host were available at the host for being served). This can be shown by induction on q, where the base case is the first claim above. In the induction step, the proof that the whole q th subarray is set to 1 is similar to the proof of Algorithm 1. The proof that the diagonal of the (q + 1)th subarray is set follows from the second claim above and Line 13 of the algorithm.

Finally, the fourth claim is that the process described in Line 17 completes the array. The proof of this claim is very similar to the proof of Algorithm 2.

Let us now compute the energy consumed by the scheme described by the algorithm. The first loop consumes energy E 1 = 2nΔ, since the server is on n slots, while each client only one. The second loop consumes E 2 = 2(⌊β/n⌋−1)Δ, since in this loop both the server and the client H 0 are on ⌊β/n⌋−1 slots. The third loop uses energy

$$E_{3}= {\Delta} \sum\limits_{l=0}^{\lfloor \frac{\beta}{n} \rfloor - 2} \sum\limits_{j=0}^{n-2} (n+1)= {\Delta} (\lfloor \frac{\beta}{n} \rfloor - 1)(n^{2}-1), $$

since in this loop all the hosts are on (⌊β/n⌋−2)(n − 1) slots. Finally, the energy consumed by the process described in Line 17 is

$$E_{4}\,=\, {\Delta} \left( \sum\limits_{j=n}^{n+b-1} (n+1) + \sum\limits_{j=n+b}^{n+b+n-2} n \right) \,=\, {\Delta} (b (n+1) +n(n-1)). $$

In this process no host is on more than n + b slots. Adding up all these terms we compute the total energy as

$$E(z_{4})= {\Delta} \left( n(\beta+1) + \left\lfloor \frac{\beta}{n} \right\rfloor + b - 1\right). $$

Additionally, we bound the energy consumed by hosts as follows.

  • The server is on for exactly β slots, consuming βΔ S energy.

  • The client H 0 is on for exactly (⌊β/n⌋)n + b slots, consuming ((⌊β/n⌋)n + b)Δ energy.

  • And the rest of clients are on for exactly \(\lfloor \frac {\beta }{n}\rfloor (n-1)+b+1\) slots, consuming \((\lfloor \frac {\beta }{n}\rfloor (n-1)+b+1){\Delta }\) energy.

Thus, H 0 consumes \((\lfloor \frac {\beta }{n}\rfloor -1){\Delta }\) energy more than any other client. To prove that hosts switch on and off at most three times, the proof is analogous to that for previous algorithms. In the execution of Lines 2-9, all hosts switch on and off at most once except H 0, that switches on and off twice. In the rest of the algorithm, all clients are on until they finish downloading, and the server is switched off as soon as it serves all the blocks.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Verma, K., Rizzo, G., Fernández Anta, A. et al. Energy-optimal collaborative file distribution in wired networks. Peer-to-Peer Netw. Appl. 10, 925–944 (2017). https://doi.org/10.1007/s12083-016-0453-4

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s12083-016-0453-4

Keywords

Navigation