Rarest-First with Probabilistic-Mode-Suppression (RFwPMS)
Abstract
Recent studies suggested that the BitTorrent’s rarest-first protocol, owing to its work-conserving nature, can become unstable in the presence of non-persistent users. Consequently, for any provably stable protocol, many peers, at some point, would have to be endogenously forced to hold off their file-download activity. In this work, we propose a tunable piece-selection policy that minimizes this (undesirable) requisite by combining the (work-conserving but not stabilizing) rarest-first protocol with only an appropriate share of the (non-work conserving and stabilizing) mode-suppression protocol. We refer to this policy as “Rarest-First with Probabilistic Mode-Suppression” or simply RFwPMS. We study RFwPMS using a stochastic abstraction of the BitTorrent network that is general enough to capture a multiple swarm setting of non-persistent users – each swarm having its own altruistic preferences that may or may not overlap with those of other swarms. Using Lyapunov drift analysis, we show that for all kinds of inter-swarm behaviors and all arrival-rate configurations, RFwPMS is stable. Then, using the Kingman’s moment bound technique, we further show that the expected steady-state sojourn time of RFwPMS is independent of the arrival-rate in the single-swarm case (under a mild additional assumption). Finally, our simulation-based performance evaluation confirms our theoretical findings and shows that the steady-state expected sojourn time111The time a peer remains in the system collecting all the pieces of the file. is linear in the file-size (compared to our loose estimate of a polynomial with degree 6). Overall, an improved performance is observed in comparison to previously proposed stabilizing schemes like mode-suppression (MS).
Index Terms:
P2P File-Sharing, BitTorrent, Rarest-First, Mode-Suppression, Foster-Lyapunov Theorem, Kingman’s boundI Introduction
Consider the task of distributing a large file to peers in an unstructured peer-to-peer (P2P) network. The file is initially available with a distinguished peer (usually termed as the seed) and each peer can initiate a transfer connection with any other peer [1].
One efficient method to perform the above task is to chop the file into a large number of small and roughly equally-sized pieces/chunks, and to allow peers to share the pieces with each other. Chopping the file allows peers to distribute parts of it before possessing it completely – this is the key idea behind the popular “BitTorrent protocol” [2]. Such an upload-while-download scheme reduces the average file-download time and more importantly, enables the network to scale its throughput with the number of peers. As a result, the BitTorrent protocol has gained large popularity over the years. Even today, despite the growth of streaming services like Netflix, Hulu, and Youtube, BitTorrent sharing remains a significant source of internet traffic [3]. In the research literature also, the protocol has gained extensive interest. For instance, on the theoretical side, various mathematical models have been recently studied [1, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17], with each model providing a high-level abstraction of the detailed workings of the actual protocol.
Two key features of BitTorrent-like networks are the tit-for-tat and optimistic-unchoke interactions among the users. Tit-for-tat, as the name indicates, are interactions where both peers share the file-contents with each other based on mutual benefit; on the other hand, opportunistic-unchoking interactions are those in which a peer altruistically offers pieces to other peers. Both these interactions are important for BitTorrent’s performance; opportunistic-unchoking helps the incoming empty-peers to get some pieces of the file whereas the tit-for-tat interactions help ward off free-riders (users who download the file but do not contribute any of it back).
A common occurrence in BitTorrent-like networks is that a peer usually spends relatively more time downloading the last few pieces of the file. This phenomenon, known as the delay-in-endgame-mode, is because the last few pieces are often the rare ones in the network. Inspired by this, Hajek and Zhu [5] studied a stochastic abstraction and showed that an unstructured222Each peer contacts another peer uniformly at random. BitTorrent-like network that employs any work-conserving333A work-conserving piece-selection policy is one in which a piece transfer always happens if the uploading peer has a piece that the downloading peer needs. piece-selection policy (e.g., Random-Novel (RN), Rarest-First (RF)) becomes unstable if the arrival rate of peers exceeds the fixed seed’s upload rate and if each peer departs immediately upon completing their own file-download.
The cause behind instability is a phenomenon called the Missing-Piece Syndrome or Last-Piece Syndrome (LPS) [5], wherein the network converges to, and then cannot escape from, the one-club scenario. In this scenario, there are a large number of peers who possess all the pieces of the file except one (such peers are called one-club peers), a very small number of peers who possess that one piece (such peers are called infected peers), and a very small number of peers that are in neither of these two groups (they are called young peers). Since a vast majority of the peers are one-club peers, owing to random peer contacts and the work-conserving piece-selection policy, all the infected peers leave the network quickly and almost all young peers (including the new-comers) join the one-club peers. Inevitably, the fixed seed is tasked with uploading that one rare piece to the entire one-club whose growth rate is larger than its upload capacity. The network thus remains trapped in this configuration and the size of the one-club grows to infinity, causing instability. This result was later substantiated with experimental checks performed by Mendes, de Souza e Silva, Menasché, Leão and Towsley [18], where it was observed that when seeds have a small effective service capacity, or when seeds are intermittent, the throughput saturates as the population size grows. Importantly, the authors also demonstrated that the last piece syndrome unfolds in a closed BitTorrent network in which each departure causes an arrival of an empty peer.
Another typical phenomenon in BitTorrent-like networks is the low availability of chunks in the start-up phase when only one user (the seed) has the complete contents of the file and the rest are empty.444Flash-crowd is a start-up phase when a large number of users enter the network and there is only a few existing users with the complete file. Reference [18] calls this scenario the first block problem.555Indeed, [18] argues that the problem of last-piece-syndrome is overestimated whereas the first-block-problem is much more critical in practice. Understandably, the duration of this phase, for any choice of piece-selection algorithm, depends on the upload capacity of the seed. However, if the incoming peers choose to leave the network immediately upon download completion, then the choice of piece-selection policy is important – to the effect that it should enforce some form of lingering instead of a blind replication to all pieces.
Finally, multiple file downloads occurring simultaneously is commonly observed in practice. This is the multi-swarm setting [7, 8] for which there isn’t as yet a piece-selection policy that guarantees stability for all arrival rates, particularly when the swarms interact with each other.
In the above discussion, we have highlighted multiple design criteria for BitTorrent-like file-sharing networks. These are:
-
•
Stability guarantees for all arrival-rates in both single-swarm and multi-swarm settings.
-
•
Improved steady-state file-delivery times.
-
•
Improved transient responses (e.g. low flush-out times in flash-crowds).
Our goal in this paper is to propose a flexible piece-selection policy that can attain the aforementioned design criteria. To this end, in Section I-A, we will first go through the existing work and then in I-B, list the contributions of this manuscript.
I-A Related Work
A series of recent works have appeared of which the relevant papers are [6, 4, 5, 1, 9, 10, 11, 12, 13, 7, 8].
-
•
Zhu and Hajek [6], in a follow-up to [5], showed that if, after completing their file-download, each peer remains in the system long enough to upload one additional piece, then the network is stable under any positive seed uploading capacity and any peer arrival rate. This demands persistence of peers, which might not hold, especially with wireless users who are sensitive to their energy and bandwidth usages. Thus, recent works have also covered piece-selection policies that ensure stability when peers are strictly non-persistent.
-
•
Massoulié and Vojnović [4] considered a BitTorrent-like stochastic system where before entering the system, users obtain one piece (referred to as coupon in [4]) from a central bootstrap server. Under this assumption, they showed that the performance of the network does not depend critically on either persistence of users or on load balancing piece-selection policies like RF.
-
•
Norros, Reittu and Eirola [1] proposed the Enforced Friedman algorithm in which a peer makes three contacts simultaneously (with replacement) and if there are ‘minority pieces’ (pieces possessed by exactly one of the three peers), then the peer downloads one of them uniformly at random. If there are no minority pieces, then the peer waits for the next triple contact. The stability of the protocol was shown for a two-chunk file-sharing system whereas for the case of a multi-chunk system, it was left as a conjecture, with numerical simulations providing good evidence of stability. In a follow-up work, Oguz, Anantharam and Norros [9] proved the stability of the Enforcement Friedman protocol for multi-chunk systems and also proposed a provably stable improvement under the name of Common Chunk protocol. In this protocol, only new peers who arrive with no pieces follow the rules in [1], and the peers who lack only one piece contact three peers and are allowed to download the last piece only if every piece they have is present with at least two of the three contacted peers.
-
•
Bilgen and Wagner [10, 19] proposed the Group Suppression Protocol in which peers who share the same piece profile are defined as a group and the group with the largest population is defined as the largest club. The protocol states that a peer belonging to the largest club uploads only to those peers who hold greater number of pieces than it does, and refuses the upload to all other peers if it contacts them. The protocol was proved to be stable for a two-chunk file-sharing system and its stability for multi-chunk systems was left as a conjecture.
-
•
Reddyvari, Parag and Shakkottai [11] took a chunk-level viewpoint and proposed the Mode-Suppression (MS) protocol. Here, the transfer of pieces in the mode (present with the most number of peers) is prohibited, except when all pieces are in the mode, and a random-novel piece not in the mode (if any) is sent. In a follow-up [12, 13], Reddyvari, Parag and Shakkottai prove the stability and scalability of Threshold Mode-Suppression (TMS) wherein pieces in the mode are prohibited from transfer when the largest-mismatch (difference between chunk-counts of the most-abundant and the rarest chunks, see 3) crosses a certain fixed threshold. This line of work showed stability and scalability for all arrival rates in the single-swarm setting.
-
•
Previous works have also considered bundling different swarms together in the same network and then allowing content-sharing across them. This was proposed by Zhou, Ioannidis and Massoulié [7] with the claim that such “universal swarms” can increase the stability region of a BitTorrent network. Then Zhu, Ioannidis, Hegde and Massoulié [8] formally characterized the stability region of such networks when a work-conserving piece-selection policy is used. The stability region is indeed larger than in the single-swarm setting, however, yet again, it doesn’t hold for all arrival rate configurations.
I-B Contributions
The contributions of this paper are listed below:
- a)
-
b)
Demonstrating that instability occurs when a hard tit-for-tat rule is used without optimistic-unchoking. Here, instability occurs due to a first-piece syndrome (FPS) where newly arriving peers have to rely solely on the seed to get their first piece (Proposition 1);
-
c)
Showing that soft tit-for-tat or optimistic-unchoking mechanisms cannot ward off the last-piece-syndrome in the presence of a work-conserving piece-selection policy (Proposition 2);
-
d)
In a general multi-swarm setting, proposing the swarm-based RFwPMS piece-selection policy and proving its stability using a novel Lyapunov function (Theorem 1).
-
e)
Demonstrating the scalability of swarm-based RFwPMS in the single-swarm case, i.e., the expected steady-state sojourn time is upper-bounded by a constant which is independent of the arrival-rate of the incoming peers.666Establishing the scalability in the general multi-swarm case is left as an open problem. (Theorem 4).
-
f)
Showing improved performance of swarm-based RFwPMS in steady-state and flash-crowds via numerical simulations.
A preliminary version of this work was presented in [15] with a partial theoretical analysis and a sub-case of the general stochastic model studied here. The current work adds to the contributions of [15] – items a) through f) above – and provides the complete details associated with the stability analysis of swarm-based RFwPMS.
I-C Organization
Since the single-swarm model is a special case of the multi-swarm model, henceforth we only consider the multi-swarm model, except when we discuss our scalability results. The remainder of the paper is organized as follows. In Section II, we introduce the multi-swarm model which is built upon the model in [8]. Section III presents the main stability theorem along with the preliminary setup needed for the detailed proof (the detailed proof is provided in Appendix E). Section IV discusses the working of RFwPMS as well as a few types of swarm behaviors that can be relevant in specific P2P environments and follow naturally as a result of the general nature of our assumption on inter-swarm behaviors. Section VI presents few important snapshots of numerical results on stability, scalability and performance of RFwPMS. Finally, in Section VII, we give concluding remarks and few future-work directions.
I-D Notation
To aid the reading experience, we encourage the reader to refer to the relevant notation and definitions detailed in Appendix G.
II System Model
In this section, we introduce the stochastic model and describe our proposed piece-selection policy.
II-A Key Model Assumptions
A master-file, denoted by , is chopped into at least two equally-sized pieces, i.e., 777For and , we use the standard notation and for when . where . There is a distinguished peer, the seed, which holds this master-file and stays in the network indefinitely. The existence of the seed for indefinite period of time ensures that every piece is available in the network at all times, thus allowing us to study the long-term behavior of the network. We define file- as any non-empty subset of the master-file, thus, and . The number of pieces in file- is denoted by , i.e., . With this definition of file, swarm- is defined as the set of peers who are primarily interested in downloading (pieces of) file-. We note that peers entering the network can be interested in any file, i.e., the files need not be disjoint subsets of . Besides their primary interest in file-, swarm- peers may also have a secondary preference for some other pieces of the master-file. Thus, the set of pieces that a swarm- peer can download during its stay in the network is given by where . It is assumed that peers enter the network according to independent Poisson processes, i.e., a swarm- peer enters the network according to a Poisson process of rate , independent of other swarms. Let denote the set of all swarms that join the network and let denote the vector of their arrival-rates. We now list three important assumptions of the model.
-
a)
Empty Cache upon Arrival: Each peer maintains a cache to store the pieces it downloads. The cache is empty upon arrival and has a capacity of pieces. The part of the cache that is devoted for the pieces of secondary interest is called the excess-cache (where pieces from the set are stored). In the context of [4], empty cache assumption aligns with the case when the central bootstrap server is bottlenecked, for example, in the case of a high peer arrival-rate or during a flash-crowd888A situation in which the network suddenly encounters a very large number of empty peers; this is commonly seen with torrents of popular files..
-
b)
Ally Swarms: While peers interested in the same file (i.e., belonging to the same swarm) exchange pieces with each other, they may or may not prefer to collaborate with peers who are interested in other files (i.e. peers belonging to a different swarm). Thus, each swarm has an associated set of ally-swarms. Formally, the ally-set of swarm-, denoted by , is a non-empty subset of that consists of swarm- as well as any other swarms to which its peers can upload pieces (); and
-
c)
Strictly Non-persistent Peers: Once a peer finishes downloading their pieces of primary interest, they leave the network immediately.
II-B State Description
The notation used in this paper is a combination of related notations in [8] and [11]. We classify peers into types according to the swarm they belong to, and the set of pieces in their cache. Hence, a peer in swarm holding is said to be of type . We denote the number of -type peers at time by . Then the state of the network at time is given by the vector
(1) |
Note that as a result of aforementioned assumptions, the cache-profile of a swarm- peer always satisfies the conditions and , with the latter condition capturing strictly non-persistent peers. For the sake of brevity, from hereon, we will omit writing these two conditions. Also, since the fixed seed is always present in the network, we do not include it in . The population of swarm-, i.e., the number of swarm- peers at time is given by
(2) |
Similarly, the total number of peers at time is given by
(3) |
From hereon, for brevity, we will write as since the dependence on time will be clear from the context.
II-C Peer-Contact Policy
Consistent with the stochastic models of [1, 4, 5, 6, 10, 11, 12, 8, 7, 9], we assume that the network employs random peer-contacts. Specifically, it is assumed that each peer has a fixed number of contact-links, denoted by . In normal peers, the first of these links are reserved for tit-for-tat based piece exchanges whereas the link is used for optimistic-unchoking if and only if ; otherwise it is also used for tit-for-tat based piece exchanges. Here, is a binary parameter that is set to 1 if optimistic-unchoking is desired as part of the peer-contact policy. In contrast to normal peers, all the links of the fixed seed are used for optimistic-unchokes.
For normal peers, we assume that each tit-for-tat link is activated according to an independent Poisson process of rate and the optimistic-unchoke link is activated according to another independent Poisson process of rate . Upon activation of the link, the peer contacts, uniformly at random, some other (normal) peer from the network.999The motivation behind introducing a separate rate for the optimistic-unchoke link comes from how BitTorrent operates. In practice, by default, the number of links is 5, and which peer is optimistically-unchoked is rotated roughly every third tit-for-tat period (see [2]). By introducing and , this can be captured by our model by setting . For more details, see [2]. For the fixed seed, each of its (optimistic-unchoke) links is activated according to a Poisson process of rate . We assume that the transfer of piece/s occurs instantaneously with the contact (in reality, this will take more time than initiating a contact).
To define the tit-for-tat and optimistic-unchoking mechanisms, let us imagine a contact in which a peer, say peer-(1), which is of type , has contacted another peer, say peer-(2), which is of type . The interaction between the two peers depends on the type of contact that peer-(1) has made with peer-(2). Thus, there are two cases.
-
a)
Tit-for-Tat Contact: In this case, both peers first check the swarm-identity of each other following which they reveal their cache-profiles (based on how they view each other’s swarm). Specifically, for each , the following events happen sequentially.
-
i)
Peer- shares its swarm-identity with peer-().101010Here, denotes the element in .
-
ii)
If , Peer- reveals an empty cache-profile, 111111This ensures that no piece is transferred to a non-ally peer., otherwise it shows its true cache-profile, . We call the revealed cache-profile of peer-.
-
iii)
Peer- checks if the contact is potentially useful, i.e., if is non-empty. 121212Checking instead of matches with our assumption that extra pieces (in ) are given secondary preference. If is non-empty, peer- commits to transfer some piece to peer- from . If is empty, the network forces peer- to conduct a Bernoulli() trial, only upon the success of which, it must commit to transfer some piece to peer- from . Once peer- has committed to transfer a piece to peer- from , we say that “peer- has push-contacted peer- under revealed cache-profile ” or equivalently “peer- has pull-contacted peer- with revealed cache-profile ”. Here, importantly, we note that the probability of this push-contact is at least .
-
i)
-
b)
Optimistic Unchoke: In this case, peer- checks the swarm-identity and then push-contacts peer- with revealed cache-profile .
From a) and b), it is clear that no piece is transferred from peer- to peer- if (). Hence, we need not consider push-contacts from a peer to its non-ally peer. Once a push-contact has been made, which exact piece is chosen for transfer and whether the transfer is successful or not, is determined by the network’s piece-selection policy. This is described next.
II-D Piece-Selection Policy (Swarm-based RFwPMS)
Suppose that at time , a -peer has push-contacted its ally-peer, say a -peer (), with revealed cache-profile . To describe Swarm-based RFwPMS, some definitions (a’la [11, 12, 13]) are needed.
Definition 1
The frequency of piece in swarm-’s population is denoted by and is defined as follows:
(4) |
The chunk-count of piece in swarm- is then given by . The maximum and minimum chunk frequencies in swarm- are denoted by and respectively,
(5) |
Similar definitions hold for maximum and minimum chunk-counts of swarm-, denoted respectively by and , that is,
(6) |
Importantly, both are computed over the file of primary interest, , instead of the complete set of downloadable pieces, .
Definition 2
The total chunk-count in swarm- is given by
(7) |
Definition 3
The mismatch of piece in swarm- is given by
(8) |
Importantly, we shall be interested in the largest-mismatch
(9) |
and the total-mismatch
(10) |
Here, we note that
(11) |
Definition 4
For a swarm-, the complementary chunk-count of piece , denoted by , is its number of copies in the ally-swarms of swarm-. That is,
(12) |
Definition 5
The set of rare pieces in swarm-, denoted by , is defined as follows:
(13) |
Definition 6
The set of non-rare pieces in swarm- is given by .
Definition 7
The set of extra pieces for swarm- is given by .
Unless otherwise noted, we will refer to a rare-piece by , a non-rare piece by , and importantly many times, the rarest piece (one with the lowest chunk-count) by . We now list the rules of swarm-based RFwPMS for a possible piece transfer from the -peer to (its ally) -peer, when -peer reveals cache-profile :
-
a)
Download of a Rare Piece: If a rare-piece is available for transfer, i.e., , then the -peer uploads the rarest piece it can offer, i.e., a piece chosen uniformly at random from the set
(14) -
b)
Download of a Non-rare Piece: In the case that no rare piece is available for transfer but a non-rare piece is, i.e., and , then the -peer chooses some non-rare piece uniformly at random, and uploads it only if the result of a Bernoulli trial is a success. We refer to as the non-rares’ sharing factor and it is defined as follows.
(15) Here, are tuning parameters. (As an aside, note that complete mode-suppression is covered as we allow ).
Intuition: Let us develop some intuition about our specific choice of . As indicated earlier in Section I, the mode-suppression (MS) protocol [12] strictly forbids the replication of non-rare pieces. This does a good job of maintaining a uniform chunk-distribution throughout the network’s evolution. However, there is an accompanying undesirable effect – no piece is transferred in all those push-contacts wherein only the non-rare pieces are available for transfer. As shown in Section VI, this can incur a high penalty on the file-delivery time during a flash-crowd.131313A situation in which the network suddenly encounters a very large number of empty peers; this is commonly seen with torrents of popular files. Besides flash-crowds, even under normal operating conditions, completely suppressing non-rare pieces is unnecessary and, as indicated in [12], a trade-off exists between their suppression and sharing. Swarm-based RFwPMS allows for tuning this trade-off via .
Even though different swarms are coupled together in the same system, one can optimistically expect that if each swarm tries to uniformly maintain its own chunk-distribution, the stochastic system should hopefully converge to some form of equilibrium (after possibly some temporary transient behavior due to the effects of other swarms). Keeping this in mind, the first term of , i.e.,
is intended to increase the probabilistic-suppression of non-rare pieces as the total-mismatch becomes larger. (We use as a simple proxy for ).
Ideally, we would have liked to consist of the first term only. But showing stability of our multi-swarm model in that case is hard. The key technical difficulty behind this is the form of the Lyapunov function that we have engineered (see (26), (27)), and our analysis of the unit-transition drift (where we are effectively trying to decouple the inter-swarm effects). There, if we consider states with large and a large complementary chunk-count , then the suppression through turns out to be insufficient to satisfy the unit-transition drift conditions. (The term cannot shrink a polynomial term in ). All is not lost however, as we circumvent this technical issue, by introducing the second suppression term
where by choosing sufficiently small, effectively becomes a function of the ratio of swarm-’s total-mismatch to its file-size . The higher this ratio, the lesser the likelihood that the (non-rare) piece gets replicated. The choice of the ratio instead of just the total-mismatch matches the intuition that a file with large number of pieces should allow more sharing of non-rare pieces as opposed to a file with smaller number of pieces.
-
c)
Download of an Extra Piece: If, from rules (b) and (c), no piece of file- could be uploaded to the -peer, then the -peer uploads an extra piece chosen uniformly at random from the set .
With the above three rules, the transferable-set for swarm-based RFwPMS can be computed according to Algorithm 1. By transferable set, we mean the set of pieces chosen for transfer by the piece-selection policy – in our case, the transferable set will either be empty or a singleton set.
In order to extend our rules to the seed, we assume that the seed is a -type peer141414For example, can be . with the ally-set . Thus, the set of rare pieces when the seed push-contacts a normal peer is given by
Remark: Note that when there is no rare piece at offer, a non-rare piece is transferred only probabilistically, so swarm-based RFwPMS is not a work-conserving scheme.
Remark: With rules a), b) and c), we note that each swarm maintains its own chunk-table and also prioritizes its primary pieces over other pieces of the master-file. For these two reasons, we call our policy, “swarm-based” RFwPMS.
II-E Process Description / Suitable Bounds on Transition Rates
For the sake of notational simplicity, from hereon, we will write function as when the dependence on the argument is clear. At any given current state , the next state of the network depends solely on because the piece-selection policy solely depends on and the new arrivals (empty peers) are determined by an independent Poisson process. Hence, the evolution of the network described by the process is a continuous-time, time-homogeneous, and irreducible (easily shown) Markov chain with state space,
(16) |
Given a state , there are different events that can lead to state-transitions, namely, the arrival of a new empty peer, the download of a single-piece or a (two-sided) piece-exchange (download of two pieces simultaneously as a result of some tit-for-tat contact). Here, we do not list the transition rates of (two-sided) piece-exchanges: later in Section III, we will see that with our choice of Lyapunov function, such transitions can be viewed as two separate single-piece-download events. The result of each event is given below.
-
a)
Arrival of an Empty-peer: Recall that a swarm- peer with an empty cache enters the network according to a Poisson process of rate . This results in a unit increase in the number of swarm- peers with no pieces. Let us denote this transition by and its corresponding rate by . Then
(17) -
b)
Download of Piece of Primary Interest: Consider the event that a -peer missing piece downloads piece . The necessary condition for this event is that -peer gets push-contacted by a -peer such that and . There are three distinct ways in which this can happen.
-
i)
The -peer gets push-contacted by the peer as a result of a tit-for-tat contact initiated by the -peer. By the superposition and thinning properties of Poisson processes, the rate at which an ally peer of swarm with piece makes a tit-for-tat contact with a -peer is
-
ii)
The -peer gets push-contacted by the -peer as a result of an optimistic-unchoke (initiated by the -peer). The rate at which a -peer gets contacted in an optimistic-unchoke by an ally-peer having piece is given by
-
iii)
The -peer gets push-contacted by the -peer as a result of a tit-for-tat contact initiated by the -peer. The rate at which a -peer makes a tit-for-tat contact with an ally-peer that has piece is
Let us denote by the aggregate rate at which an ally peer of swarm- with piece push-contacts some other peer in the network. The exact form of is complicated, however, from i), ii), iii) and our descriptions of tit-for-tat and optimistic-unchoke, we can bound it both from above and below. Let
(18) and
(19) where, for brevity, we have introduced (for all ), and . It is clear that
(20) and
(21) Here, is a constant that depends on the model parameters.
After the -peer has downloaded piece , depending on , it will either remain in the network or leave it immediately. Therefore, we have two cases:
-
i)
if , the peer stays in the system. Let us denote this transition by and the corresponding rate by . Based on the description of swarm-based RFwPMS, depends on whether or . If is some rare piece in , then we have
(22) where the two indicator terms ensure that piece is transferred only if it is the rarest of all the available rare pieces. Importantly, when the chunk-distribution in swarm- is uniform i.e., , by definition, and the above expression assumes a more tractable form. Therefore, for each swarm-, we partition the state space into two regions, namely and , where , and .151515When , both the indicator terms in ( ‣ b)) evaluate to 1. If is some non-rare piece in , then
(23) where
(24) -
ii)
If , the only piece of file- that is missing with the -peer is piece . Consequently, for both and , piece is the rarest piece transferable to the -peer, which leaves the network immediately upon downloading it. Let us denote this transition by and its corresponding rate by . Then,
(25) where, for brevity, we introduced .
-
i)
-
c)
Download of Extra Piece: Recall that extra pieces are preferred only when no pieces from the file of primary interest are transferable. We shall see that the drift analysis of our Lyapunov function does not depend on the download of extra pieces. Consequently, we skip listing the associated rates.
II-F Last-Piece-Syndrome vs. Tit-for-Tat
While it is clear that a tit-for-tat mechanism helps combat the last-piece-syndrome, the issue of quantifying its efficacy via a suitable model was left as an open problem in [5]. Our stochastic model described above is partly motivated by this question. In this subsection, we show that introducing tit-for-tat does not prevent instability if a work-conserving piece-selection policy (like RF and RN) is used.
Proposition 1
Consider the multi-swarm network model as described in Section II, with a hard tit-for-tat mechanism () without optimistic-unchoking (). If , then the network is unstable under any piece-selection policy.
Proof:
We divide the network into two subsystems, where subsystem-1 consists of empty-peers and subsystem-2 consists of the rest of the peers. The two subsystems are connected in tandem as shown in Figure1.

The arrival rate of incoming peers in subsystem 1 is and the departure rate is upper-bounded by (at each tick of the fixed seed’s contact-link, at most empty peer can depart from subsystem-1 and there are such links). It is well-known that subsystem-1 is unstable if rendering the network unstable. Since this instability is manifested by the build-up of empty peers, we call this phenomenon, the first-piece syndrome (FPS). ∎
Figure2 shows the first-piece-syndrome manifested in a single-swarm network using a hard tit-for-tat mechanism without optimistic-unchoking.

Proposition 2
Consider the single-swarm network model, as presented in Section II, (a) with a soft tit-for-tat mechanism () or, (b) with a hard tit-for-tat mechanism () and optimistic-unchoking (). If a work-conserving piece-selection policy is used, then the network is unstable if .
Proof:
The method of the proof remains the same as in [5, Proposition 2.1 (i)]. In soft tit-for-tat mechanism, a young peer can get a piece from a one-club peer with probability at least whereas in a hard tit-for-tat mechanism with optimistic-unchoking, it can get a piece from a one-club peer via the optimistic-unchoke. In either case, by taking the initial size of the one-club peers suitably large, it can be shown that the last-piece-syndrome event has a positive probability, establishing the transience of the system. ∎
III Stability of swarm-based RFwPMS in the Multi-Swarm
In this section, we present our main result on the stability of swarm-based RFwPMS. The proof is established using the Foster-Lyapunov theorem [20, 21]; see Proposition 6 in Appendix F.
Theorem 1
For the multi-swarm model with non-persistent peers as described in Section II, swarm-based RFwPMS is stable over the parameter region
Remark: Here, includes
-
•
“Soft Tit-for-Tat”: and ( OR ),
-
•
“Hard Tit-for-Tat with optimistic-unchoking”: AND (), and
-
•
Stability result of our earlier work [15]: .
The proof of Theorem 1 uses a novel Lyapunov function that is based on the refinement of our earlier intuition in [15]. The key ideas of the proof are as follows:
- •
- •
The Lyapunov function we use is given by
(26) |
where
(27) |
Here, and are suitably large constants. Instead of presenting the relations satisfied by , , and in the onset, we will go through the analysis and present them naturally at places where they are needed.
Intuition: The exact details of the Lyapunov function given by (26) and (27) are complicated. However, the following lines of thought will prove to be of substantial value in following the proof of Theorem 1.
-
•
Given each swarm maintains its own chunk-counts, being the superposition of ’s, reflects the intuition that the network shall be stable if and only if each swarm is stable.
-
•
To develop some intuition behind the choice of , let us consider a multi-swarm network in which each swarm’s ally-set contains that swarm only (later in Section IV, we call this the setting of selfish swarms). In that case, the non-rares sharing factor (assuming ) takes the form .
-
–
Given that swarm-based RFwPMS would allow the download of non-rare pieces with high probability whenever the largest-mismatch is relatively small, it is reasonable, as a starting point, to guess a term of the form . Unfortunately, as it turns out, with the bounds that we have derived, working with fails in satisfying the unit-transition drift stability conditions. The primary reason behind this is the fact the rarity of the rarest piece and the abundance of the non-rare pieces are not related to each other, that is, knowing that is large does not necessarily imply that the largest-mismatch is large as well. We circumvent this issue by using (see (27)) as a “proxy” for . Specifically, by using instead of , we avoid any drift penalization (i.e., positive drift) whenever is less than . Therefore, in essence, whenever , as concerns , our Lyapunov function discards the distinction between rare and non-rare pieces. On the other hand, if , this implies that , and now, the abundance of non-rare pieces, i.e., large , also implies a high largest-mismatch . This will trigger our non-rares sharing factor which will ensure that the positive component of the drift from the non-rare pieces decays to zero with increasing .
-
–
In contrast to , the second term, , promotes the download of every piece of file-. The intuition behind including is to ensure a negative drift is generated from every piece download. This helps us generate sufficient negative drift in the case when is inactive, i.e., when . Furthermore, an important technical purpose that it serves is to ensure that has finite level-sets.
-
–
Finally, the last term handles all the states in which swarm- is seriously piece-deprived (states in which very few pieces of file- are present with swarm-).
-
–
Lemma 2 (Bounds on Chunk-Counts)
For all , the total chunk-count in swarm- is upper-bounded by . Consequently, the fraction of swarm- peers who have the rarest piece, i.e., , is upper-bounded by and the fraction of swarm- peers who are missing the rarest piece is lower-bounded by .
Proof:
For all , we can lower bound the total chunk-count in swarm- as follows,
Hence, and . The second inequality is true because . ∎
Lemma 3 (Finite Level-Sets of )
as .
Proof:
We have for every . So, as . Since only if for some , it follows that as . Consequently, for all , the set is finite. ∎
III-A Upper Bounds on Potential Changes
Having established the finite level-sets of , we evaluate the potential change for each possible transition. Note that, with our choice of , any transition that occurs in swarm-, affects the term only.
III-A1 Arrival of an Empty Peer
The arrival of a -peer results in a unit increase in but does not affect any chunk-count. Therefore, stay the same. The potential change as a result of this transition, denoted by , is component-wise given by
Overall,
(28) |
III-A2 Download of a Single Piece with Peer-Departure
Assume that a -peer with downloads piece and leaves the system. The departure causes a unit-decrease in ; a unit-decrease in chunk-count of every piece . The chunk-count of piece , i.e., , stays the same. Therefore, decreases by . The resulting potential change, denoted by , can be component-wise upper-bounded as
depends on whether is a rare or non-rare piece. When is some rare-piece, further depends on whether swarm-’s chunk-distribution is uniform or non-uniform, i.e., whether or . If , then , therefore the departure reduces both the total mismatch and the highest chunk-count by 1. This gives,
If , the download of piece makes it the only non-rare piece in the next state with its chunk-count equal to . The chunk-count of every other piece decreases to . The total mismatch changes from 0 to . Consequently,
Combining the two cases for , we have
When is some non-rare piece171717Non-rare pieces in swarm- exist if and only if ., then the highest chunk-count stays the same and the total mismatch increases by . Overall, this causes an increment of in . Therefore,
To utilize the negative drift from the download of swarm-’s rare pieces, we partition the state-space into regions and . (Note that and ). We can now write
(29) |
III-A3 Download of a Single Piece without Peer Departure
Here, a -type peer with downloads piece and remains in the system. The total number of swarm- peers remains the same and the chunk-count of piece (and thus ) gets incremented by 1. The resulting potential change, denoted by is component-wise upper-bounded as
Like , one can show that is upper-bounded by . Therefore,
(30) |
Looking at (III-A3) and (III-A2), we note that by choosing , say , we ensure that the term is non-positive. Intuitively, this means that over the region , as concerns the potential-change, our upper-bounds treat the non-rare and rare pieces in the same way.
III-A4 Download of a Single Extra Piece
It can be observed that for any swarm-, no potential change is induced in by the download of its extra pieces.
III-A5 Two-Sided Piece Exchanges
Now, we consider the state-transitions that involve two mutually-ally peers, each transferring a piece to the other, as a result of some tit-for-tat contact initiated by one of them. In 4), we noted that no potential change is induced by the download of extra pieces. Therefore, as concerns the potential changes, all those transitions that involve the transfer of two extra pieces can be ignored. Similarly, those transitions that involve the transfer of an extra-piece coupled with some rare/non-rare piece can be viewed as (single) download of the accompanying rare/non-rare piece, which we have covered in 1)-3). We therefore focus only on those transitions that involve the transfer of two non-extra pieces. For this, consider two mutually-ally peers, say a -peer missing piece (and holding piece ) and a -peer missing piece (and holding piece ), who download the respective missing pieces as a result of a tit-for-tat contact initiated by one of them. We denote this transition by where indicates departure of the peer and indicates otherwise. From 1)-3), we note that the potential change induced by this piece exchange will depend on
-
•
The type of piece ( or ),
-
•
The type of piece ( or ),
-
•
Whether -peer stays in or leaves the system, ( or ), and
-
•
Whether -peer stays in or leaves the system ( or ).
Table I summarizes the upper-bounds on the potential change associated with each of those cases. Importantly, in each case, the upper-bound has been decomposed as the sum of two upper-bounds for the corresponding single piece download events. The bounds are obvious for the case and with some work, are fairly easy to establish when . For completeness, they are derived in Appendix A.
Category | Transition | Potential Change |
---|---|---|
1 | ||
2 | ||
3 |
III-B Upper Bounds on Unit-Transition Drifts
Having established upper-bound estimates of the potential changes, we can now proceed to evaluate the unit-transition drift . We have established that for any swarm , the upper-bound on potential-change induced by the download of piece depends only on its type ( or ), whether or not the download is accompanied with the departure of the peer ( or ), and the current chunk-distribution in swarm- ( and depend on whether or ). Thus, for any state , we can write
(31) |
where
(32) |
III-B1 Empty Peer Arrivals
III-B2 Downloads of Primary Pieces without Peer Departure
The potential-change from the download of rare-pieces without accompanying peer-departure via the rarest-first (RF) mechanism is non-positive. ( is always non-positive). In Lemma 7 in Appendix B, we upper-bound the corresponding drift by what we would have obtained if we were to replace RF by random-novel (RN), i.e.,
(34) |
Remark: Since (III-B2) is also an upper-bound for the download of rare-pieces using the random-novel (RN) mechanism, the stability proof of RFwPMS also works for “RNwPMS” – a piece-selection policy same as RFwPMS except that rare-pieces are downloaded randomly.
III-B3 Downloads of Primary Pieces with Peer Departure
III-B4 Combining Everything
IV Discussion
IV-A Sharing vs Suppression Trade-off for Non-Rare Pieces
Note that with sufficiently small, if we take the limit , swarm-based RFwPMS converges to a swarm-based version of RF (which is unstable in high arrival-rate regime), whereas if we take the limit , swarm-based RFwPMS converges to a swarm-based version of MS [11]. Thus, our expectation is that by choosing sufficiently small, and appropriately, an appropriate trade-off between the sharing and suppression of the non-rare pieces can be found. Via numerical simulations, we found that the expected sojourn time reduces with decreasing , and choosing close to 1.5 appears to minimize it.
IV-B Inter-Swarm Collaboration
Our multi-swarm model in section II is general in terms of inter-swarm behavior of peers and their secondary download preferences. Here, we discuss three different behaviors that are covered:
-
a)
Altruistic Swarms: In most wired P2P environments (e.g., the Internet), peers are generally insensitive to the consumption of their download and upload bandwidths, and they may download extra pieces in order to help other swarms. Such behavior can be captured in our model by setting and for every . From [8], a network in which all swarms are altruistic is called a universal swarm network.
-
b)
Opportunistic Swarms: A different type of altruism is when peers do not download any extra pieces but share their pieces with those of other swarms who need them. We obtain this by setting and for every .
-
c)
Selfish Swarms: In wireless P2P networks, peers are generally sensitive to the consumption of their download and upload bandwidths. This holds by setting and . Thus, the peers do not download any extra pieces nor do they upload any piece to other swarms.
IV-C Piece-Selection Policies for Excess-Cache
In our original version of RFwPMS, random-selection was assumed for the download of extra pieces, but the stability result in Theorem 1 extends to any piece-selection policy one may use for the excess-cache. Without loss of generality, consider a piece-selection policy for the excess cache, whose transferable set is denoted by , i.e., satisfies
Recall that the Lyapunov function given by (26) and (27) is not affected by a piece download from the set . Consequently, all the bounds on including Lemma 15 still hold. The final step of combining Lemma 15 and Proposition 6 has to be modified, however, as under some policies, the Markov process may no longer be irreducible with the current definitions of the state-space (16) and state (1). For instance, take a single-swarm network in which , and the incoming swarm denoted by swarm- satisfies Then the set of all states in which some peer holds a piece from the set is not reachable from any state. In such cases, the set of all states that are reachable from the empty state is a closed irreducible set of states and should be defined as the state-space of the network. Stability then follows from combining Lemma 15 and Proposition 6. We summarize this discussion in the following proposition.
Proposition 3
For the multi-swarm network model with non-persistent peers as described in Section II, swarm-based RFwPMS with any piece-selection policy for the excess-cache, is stable over the parameter region
IV-D Autonomous Swarms
One more case to consider is when all the swarms in the network operate in isolation from each other. Specifically, a peer belonging to swarm- contacts and exchanges pieces with peers in the same swarm. The fixed seed, on the other hand, divides its uploading capacity across swarms, providing a static non-zero fraction of its total capacity to each swarm; optimal partition of the seed capacity is for future work. Such swarms are called autonomous swarms in [8]. The stability of swarm-based RFwPMS holds for such swarms as well.
Corollary 3.1
Consider a multi-swarm network where each swarm behaves autonomously and the seed has allocated a static non-zero fraction of its total capacity for each swarm- (say ). Then, the network is stable under swarm-based RFwPMS over the parameter region
Proof:
Each swarm- can be considered as an isolated single-swarm network with fixed seed of capacity . Stability then follows by applying Theorem 1 to each swarm. ∎
IV-E Optimistic-Unchoking and Tit-for-Tat
In our description of the Peer-Contact Policy in Section II-C, peer- makes a tit-for-tat contact with peer-, it is assumed that the probability of peer- committing to transfer a piece to peer-, in the event that it does not benefit from peer- is some fixed value, . However, from the stability analysis in Appendix E, one may note that this assumption can be relaxed in two ways. i) If the network enforces optimistic-unchoking on the incoming peers, i.e., , then the system is inherently stable regardless of what value is chosen by each peer in any of its tit-for-tat contacts – indeed it may depend on the history of peer-’s interactions with peer-. ( remains positive implying in (b)) remains finite). ii) In the case that , the stability of the network still holds with variable values as long as peers are forced to choose values larger than or equal to some positive threshold value . ( remains positive implying in (b)) remains finite). In particular, this means that our stability result holds for a history based tit-for-tat mechanism where each peer keeps track of its interactions with other peers. From i) and ii), we get the following proposition.
Proposition 4
Consider the multi-swarm network model with non-persistent peers (as described in Section II) with the change that now each peer, in any tit-for-tat contact, can choose a variable value in . Then, swarm-based RFwPMS is stable over the parameter region
IV-F Comparison with Work of [11, 12, 13]
As mentioned in Section I-A, [13] introduced a threshold based version of mode-suppression, where the non-rare pieces are (completely) suppressed only when the largest-mismatch crosses a fixed constant threshold. Compared with this, swarm-based RFwPMS inhibits the replication of non-rare pieces by smoothly decreasing the non-rares sharing factor in proportion with the largest-mismatch value. In Section VI-D2, we note that a smoother-suppression like this should be preferred compared to a strictly threshold-based suppression.
Another notable observation is that [11, 12, 13] perform random-selection on the set of available rare pieces. We assert that knowing the chunk distribution should allow for more advantage than just random-selection, and that a load-balancing scheme like rarest-first should do a better job in reducing the duration of transient phases. This gets manifested in Section VI-D2 and is also in line with the practical conclusions made in [22] (albeit without a theoretical analysis).
IV-G Effect of Policy Parameters :
An interesting question is whether or not the stability result for swarm-based RFwPMS can be extended to the case when for at least one of the swarms. From Lemma 9, we see that the positive component of can be upper-bounded by a fixed constant, namely
(41) |
If does not have any ally-swarm besides , i.e., , then is independent of . This immediately gives the below proposition.
Proposition 5
For the multi-swarm model with non-persistent peers as described in Section II, swarm-based RFwPMS is stable over the parameter region
where can be chosen to be zero for any swarm which does not have any other ally-swarms (besides itself).
When swarm- has other ally-swarms, the constant as . Based on this, one may speculate that the stability of swarm-based RFwPMS is tightly coupled with the choice of ’s in the sense that the state of the system can possibly spiral out into ever increasing loads if for swarms that have other ally-swarms also. However, this does not seem to be the case in the numerical simulations we have performed. Figure3 shows one such numerical snapshot for illustration.

This corroborates the assertion that the parameter is a technical artifact in our setting, put in place to circumvent the issue of the positive component of the drift from the download of non-rare pieces in the case of ever increasingly large states where is large. For the aforementioned reasons, we believe that swarm-based RFwPMS is stable in the setting when ’s can assume zero values. We state this as a conjecture below.
Conjecture 1
For the multi-swarm model with non-persistent peers as described in Section II, swarm-based RFwPMS is stable over the parameter region
where can be chosen to be zero for any .
IV-H Scalability of swarm-based RFwPMS
Scalability is also necessary for a P2P network, i.e., the system-wide throughput should scale with the number of peers. For the multi-swarm model presented in Section II, this means that the expected steady-state sojourn time in the network should be upper-bounded by a constant independent of . Unfortunately, analytically showing the scalability of stochastic models similar to the one we considered in this work is a hard endeavor and we leave this as an open problem. However, using an approach similar to that used in [12, 13], we are able to show (under a mild assumption) the scalability of RFwPMS in the single-swarm case. This result is formally stated below.
Theorem 4
For the single-swarm case of the multi-swarm model described in Section II (i.e., ), provided that the empty-peers are always push-contacted in all tit-for-tat contacts, swarm based RFwPMS is scalable over its stability region. That is, the steady-state expected sojourn-time, denoted by , is upper-bounded by a constant independent of the arrival-rate of empty-peers. In particular,
The proof is established using Kingman’s moment bound [20] which uses the well-known technique of designing a suitable non-negative function and setting the steady-state expectation of its unit-transition drift equal to zero. Provided that the Markov chain is positive-recurrent, one usually hopes to obtain some convenient bound on the queue-length. For reference, please see Proposition 6 in Appendix F.
In the next section, we provide the proof of Theorem 4.
V Scalability of swarm based RFwPMS in the Single-Swarm
Positive-recurrence of is guaranteed by Theorem 1. Thus, to establish scalability, the key novelty is to first partition the stability region into two distinct load-regimes based on the size of total arrival-rate in comparison to the seed’s aggregate upload capacity and then design a suitable non-negative function for each. The regimes are
-
i)
; and
-
ii)
.
Let us denote the stationary distribution of by , so that the expected number of peers in steady-state is given by , and by Little’s Law .
V-A Low Load Regime
For regime , we have the following Lemma.
Lemma 5
For the single-swarm case of the multi-swarm model described in Section II, with swarm-based RFwPMS as the piece-selection policy, if the network parameters belong to , then the steady-state expected sojourn time is independent of . In particular, .
Proof:
The intuition behind this upper-bound is as follows: In , the total arrival-rate is sufficiently small compared to the seed’s aggregate upload-rate ; therefore, we expect the seed to quickly flush the system without any contribution from the normal peers. Keeping this in mind, the -independent bound, , can be established by using Kingman’s moment bound on a suitable non-negative function. Let
It can be observed that heavily penalizes the states with large number of missing pieces.181818 is the number of pieces of missing in swarm-. The arrival of an empty-peer in swarm causes a unit-increase in . So, the potential change associated with the arrival of an empty-peer is given by
(42) |
The download of a piece by any peer causes a unit-decrease in the difference . Therefore,
(43) |
Upper-bounding by considering peer-arrivals and downloads of the rarest-pieces (from ) by the fixed seed only,
(44) |
Here, (V-A) uses (Lemma 2); (V-A) uses (42) and (43); (44) follows from and .
V-B High Load Regime
For regime , we have the following Lemma.
Lemma 6
For the single-swarm case of the multi-swarm model described in Section II, with swarm-based RFwPMS as the piece-selection policy, if the network parameters belong to and the empty-peers are always push-contacted in all tit-for-tat contacts, then the steady-state expected sojourn time is independent of . In particular, for .
Proof:
Let
The above function uses the terms and of given in (27). Therefore, by ignoring the terms associated with and noting that , (39), we get
Case 1 - : Here,
(45) |
Here, (V-B) uses the definition of (see (III-B4)); (V-B) uses and then upper-bounds the summation by considering only the rarest-piece, that is denoted by ; (V-B) uses (Lemma 2); (V-B) uses (see (18)); (V-B) uses because .
Case 2 - : Here,
Here, (V-B) uses the definition of (see (III-B4)); (V-B) uses ; (V-B) follows from Lemma 9; (V-B) follows from Lemma 13; (V-B) uses .
Applying Kingman’s moment bound to (46) with and , we get
Here, (V-B) uses the fact that each non-empty peer must possess at least one piece of the file.
Now, we divide the single-swarm system into two subsystems; one with empty-peers and the other with peers who hold some piece of . The two subsystems are connected in tandem as shown in Figure4.

Only the empty peers arrive in subsystem-1, so the arrival rate in subsystem-1 is . Since both systems are stable in steady-state, the departure rate of subsystem-1 (which is also the arrival rate of subsystem 2) and the departure rate of subsystem-2 are . Let and denote the steady-state expected sojourn-times in subsystems 1 and 2 respectively, so that by Little’s Law, . Under swarm based RFwPMS, consider two situations – one in which a -peer contacts a peer where and the other in which it contacts a peer. Then under the assumption, that empty-peers are always push-contacted, peer will push-contact peer with probability 1. This combined with the fact that ensures that the probability of an empty-peer downloading a piece in the next state transition is always lower-bounded by that of a peer from subsystem-2. Thus, , which gives
Using , the fact that is from (41), and the choice of , we get
This establishes scalability. ∎
VI Simulation Based Performance Evaluation
Next, we investigate the stability, scalability and sojourn time performance of RFwPMS via numerical simulations. Since our stability result holds for any number of swarms, we will evaluate performance in both single-swarm and multi-swarm settings. Unless otherwise noted, in all cases, we set to and to . Furthermore, the tabulated steady-state sojourn times are based on samples taken after the simulated Markov-Chain hit stationarity (simulation run-times were chosen long enough to collect sufficiently large number of samples from the stationary distribution).
VI-A Stability Check
We illustrate the stability of RFwPMS by simulating four instances of a two-swarm network with the setting of “hard tit-for-tat () and opportunistic-unchoking ()” – the four instances correspond to altruistic, opportunistic, selfish, and autonomous inter-swarm behaviors. In each instance, the network consists of a master-file of 25 pieces, i.e., . The two swarms entering the network are denoted by and , each having a peer-arrival rate of 20. Peers from swarm- wish to download file whereas those from swarm- are interested in file . We initiate the network in a state where both swarms are in the one-club scenario: both have 500 peers with all in swarm- missing piece 1 and all in swarm- missing piece 6. For the autonomous case, the seed’s upload capacity is divided evenly among the two swarms, i.e., .
Figure5 shows the evolution of the swarm populations for the four inter-swarm behaviors. It is observed that each swarm is able to escape the one-club in finite time, after which a stable regime persists with minimal fluctuations. In the case of altruistic and opportunistic swarms, the population of swarm- suddenly drops in the beginning. This is because piece 6, which is missing in swarm-, is widely available in swarm-; due to altruism of swarm- peers, the one-club peers in swarm- quickly grab piece 6 and leave the network. In the opportunistic case, the population of swarm- increases almost linearly after the big initial drop. This is because once most of the one-club peers in swarm- have left, the network is dominated by swarm- peers. Therefore, most of the contacts of the new-comers in swarm- are with swarm- peers. Since the files are not identical, these new-comers cannot accumulate all pieces from swarm- peers and are forced to linger in the system – till swarm-’s population reduces enough and they get an opportunity for a useful contact.




VI-B Scalability Check
Here, we simulate twelve instances of a two-swarm network with the setting of “soft tit-for-tat (choice of ) and no optimistic-unchoking ()”. In each instance, the network’s master-file comprises of 18 pieces () and the two swarms entering the network are interested in files and . The twelve instances correspond to four inter-swarm behaviors (altruistic, opportunistic, selfish, and autonomous) and three arrival-rate configurations (, and ). For the autonomous case, the seed’s upload capacity is again split equally between the two swarms.
Table II lists the (steady-state) expected sojourn times for the twelve model instances. We note that the expected sojourn time practically stays constant in all the four inter-swarm behaviors and improves as swarms interact more altruistically. Another observation is that the autonomous setting has lower expected sojourn times than the altruistic setting. This is not unexpected though; in autonomous setting, every peer makes contacts within their own swarm (no inter-swarm interactions), thus the likelihood that the next contact is useless is lower.
Swarms’ | Arrival | ||
---|---|---|---|
Behavior | Ratesa | ||
Altruistic | |||
Opportunistic | |||
Selfish | |||
Autonomous | |||
. Simulation End-time: 1000 units |
VI-C Sojourn Time Performance in the presence of Multiple Swarms
How does the expected steady-state sojourn time scale with the file-size is another important performance measure. For this, we obtained an upper-bound estimate of in Section V. Here, in Figure6 we verify this for a two-swarm network in a soft tit-for-tat setting (choice of ) with optimistic-unchoke () – once again, under the four different inter-swarm behaviors.191919The error-bars for confidence intervals are not shown due to their negligible magnitude (even with a choice of 99.9 percent confidence level).
Fixing the arrival-rate vector to , increasing configurations of the two file-sizes were simulated such that for every choice of , we set to . (Again the seed’s upload capacity was split evenly in the autonomous case). The sojourn-times for each swarm are observed to scale linearly with the file-size. Additionally, we note that for each swarm, the altruistic and autonomous cases are Pareto better than opportunistic and selfish cases.


VI-D RFwPMS and Mode Suppression
Via simulations MS [11] has been shown to outperform other previously proposed piece-selection policies. Here, we do a base-line comparison of RFwPMS and MS in a single-swarm network.
VI-D1 Expected Steady-State Sojourn Times
Table III compares the expected steady-state sojourn times of RFwPMS, MS, and TMS202020Threshold Mode-Suppression with suppression-threshold set to . for different values of file-size with the arrival-rate fixed at . It is noted that using RFwPMS (with ), the expected sojourn time is indeed reduced compated to MS. This reduction is not expected to be significant when is large (roughly or more) as the increased chunk diversity in steady-state reduces the number of contacts in which only the non-rare pieces are offered. The steady-state sojourn-times of RFwPMS and TMS, on the other hand, are comparable for all values of .
Perc. Improv. | ||||
MS | TMS | RFwPMS | over MS | |
Simulation End-time: 5000 units |
VI-D2 Flash-Crowd Responses


Real torrents seldom experience steady-state behavior as the arrival-rates vary over time with intermittent bursts of empty peers. Fig. 7 compares the flash-crowd response of MS, TMS, RFwPMS, and RNwPMS (replacing RF by RN in our policy) for (“large") and an initial population of 500 empty peers (); RFwPMS flushes out the system in the least amount of time (about half the time as MS) whereas RNwPMS takes the most amount of time (see Figure7a). The reason behind such responses can be understood from Figure7b. Initially there are no pieces in the system and therefore the time till all pieces are introduced into the system depends solely on the seed’s uploading capacity which is set to 1. Thus, for every policy, if is sufficiently large, it will take on average time units till every piece has been introduced into the system (see Fig. 7b). MS forbids the download of non-rare pieces. Thus, there is exactly one copy of each piece when the seed has introduced the last piece into the system. After that, the number of copies of the non-rare piece and the rarest-piece go hand-in-hand with at most a difference of 1. TMS, on the other hand, allows the download of non-rare pieces till their chunk-count equals the threshold (twice the size of the file). After that, no peer is allowed to download those pieces. Therefore, by the time, the last piece is introduced into the system, there are many peers who have yet to download a large number of pieces to depart.
Comparing with MS and TMS, both RFwPMS and RNwPMS allow the (probabilistic) download of non-rare pieces and since is sufficiently large, by the time the last piece is introduced into the system, the largest mismatch has increased considerably coupled with proportional decrease in . At this point, the largest mismatch is very large, but owing to the rarest-first mechanism, RFwPMS quickly stabilizes the largest mismatch by giving preference to the rarest of all available rare pieces in all peer encounters. On the other hand, RNwPMS does not consider the frequency differences of the rare pieces. Thus, if is sufficiently large, the system is likely to get trapped in a one-club type state where almost all peers have all the pieces except the rarest one. Once this happens, only the seed can flush such peers from the system, which leads to a larger file-delivery time than that of MS.





It is worth noting that RFwPMS can also get trapped in such one-club like states. This is specially true when the file-size is much larger than the size of the flash-crowd (). As an example, Figure8a shows such a flash-crowd situation in which RFwPMS gets locked into the one-club like state, whereas MS, like before, avoids this (Figure8b). (Note that the flush-out time of MS is still larger than RFwPMS). The locking-in of RFwPMS in this one-club like state is because the non-rares’ sharing factor defined in (15) suppresses non-rare pieces via the ratio of the (largest) mismatch to the file-size. Since the mismatch is upper-bounded by the network-population (which in this case is much smaller than ), the suppression is simply not small enough to avoid the download of non-rare pieces.212121This locking-in of RFwPMS would still occur if we suppress each piece through the ratio . This observation while simple is worth noting as it is reflective of what should happen in practice. Usually files shared over such networks would have chunk-sizes much larger than the size of the flash-crowd. In such transient situations, to obtain a good trade-off between suppression and sharing, it would make sense to have a non-rares’ sharing factor that takes into account the flash-crowd size (besides network’s parameters and the file-size). One way we could choose a that can work for both types of flash-crowds would be to replace it by
(47) |
To this end, Figure9 shows the flash-crowd response of RFwPMS for the aforementioned choice of with different values of namely , , and . When is set to 0.4, it seems to replicate the response of RFwPMS in Figure7b and attains the least flush-out time.
VII Conclusions
In this work, we proposed and studied a piece-selection policy, (swarm-based) RFwPMS, for a BitTorrent-like P2P network with multiple swarms of non-persistent users. RFwPMS combines rarest-first (for rare pieces) with an adjustable sharing-versus-suppression choice for non-rare pieces. Using Lyapunov drift analysis, we proved the stability of RFwPMS in a multi-swarm setting, independent of how peers use their excess cache, and whether or not swarms collaborate with each other. By using the Kingman’s moment bound technique, we established the scalability of RFwPMS in the single-swarm case. Our numerical simulations also demonstrated evidence that RFwPMS can reduce the steady-state expected sojourn times as well as file-delivery times during a flash-crowd. From our numerical experiments, we note the following: In the setting of non-persistent peers, the question of complete vs partial suppression makes sense for both steady-state and flash-crowd performance. In high arrival rate regime, the difference between the two in terms of average file-download times diminishes due to wide variety of chunk-profiles. On the other hand, in low arrival-rate regime, a fine choice of partial suppression that keeps into account the network population would lead to better file-download times.
Lastly, since RFwPMS uses rarest-first with a minor modification (use of the non-rares’ sharing factor), it is amenable to be incorporated into BitTorrent-like protocols.
In regards to future-work, proving (or disproving) Conjecture 1 and establishing the scalability of RFwPMS in the multi-swarm case are interesting directions to explore.
Appendix A Two-sided Piece Exchanges in the Same Swarm
Here, we consider the event that both and peers download pieces and respectively.
A-A Change in
Case 1: Both and are swarm-’s non-rare pieces: If both peers remain in the system, increase by 1; stays the same for all . If both peers depart, , , decrease by 1; decreases by 2 for all . If one peer departs and the other stays, stay the same; decreases by 1 for all . Overall, in all cases, the total mismatch increases by and the highest chunk-count reduces by at most 1. Overall, this causes an increment of at most in . Therefore,
Case 2A - and are swarm-’s rare-pieces and : If both peers remain in the system, stays the same; , increase by 1; stays the same for all . If both peers depart the system, decreases by 2; and each decrease by 1; also decreases by 2 for all . If one peer departs and the other stays, and () decrease by 1; and remain the same. Overall, in all cases, the total mismatch reduces by 2 and decreases by 2 at most. Therefore,
Case 2B - and are swarm-’s rare-pieces and : If both peers remain in the system, increase by 1; remains the same for all . If both peers depart the system, decrease by 1; decreases by 2 for all . If one peer departs and the other stays, stay the same; decreases by 1 for all . Overall, in all cases, the total mismatch increases from 0 to and decreases by at most 1. Therefore,
Case 3 - is a rare-piece and a non-rare piece: If both peers stay in the system, increase by 1; stays the same for all . If both peers depart, decrease by 1; decreases by 2 for all . If one peer departs and the other stays, stay the same; decreases by 1 for all . Overall, in all cases, the total mismatch increases by and decreases by at most 1. Therefore,
Here, step (A-A) uses ; (A-A) uses ; step (A-A) uses the inequality
The case when is a non-rare piece and is a rare piece is similar.
The above inequalities ensure that we can write
(A.48) |
A-B Change in
For , note that . If both peers stay in the system, stays the same; increase by 1; stays the same for all . If both peers depart, decreases by 2; decrease by 1; decrease by 2 for all . If one peer leaves and the other departs; decreases by 1; stay the same; decreases by 1 for all . In all cases, the deficit stays the same for all and decreases by 1 for . Thus, we can write
(A.49) |
A-C Change in
The change in depends on whether peers depart or not, and does not depend on the type of and . There are three cases. If both peers stay in the system, increases by 2. Therefore,
(A.50) |
If only one of the two peers depart, then decreases by . Therefore,
(A.51) |
If both peers depart the system, decreases by . Therefore,
(A.52) |
Appendix B Bounding Rarest-First For Rare Pieces Using Random-Novel For Rare Pieces
Lemma 7
For all ,
Proof:
Using ( ‣ b)), (III-A3) and the fact that for every ,
(B.53) |
Here, (B) uses the fact that is the same for all , which we have denoted by . Then, we can upper bound the first term as follows.
(B.54) |
In steps (B) and (B.54), we change the order of summation. Similarly, we can upper bound the second term as follows.
(B.55) |
Appendix C Combining and
Lemma 8
For all ,
Proof:
Let
Adding (III-B2) with the first term in (III-B2), and using the definitions of (see ( ‣ b))) and (see (III-A3)), we get
(C.56) |
Here,
(C.57) |
Steps (C) and (C) change the order of summation; step (C) uses , , and for all ; (C.57) uses . Similarly,
(C.58) |
Steps (C) and (C) change the order of summation; step (C) uses , , and for all ; step (C.58) uses . Adding (C.57) and (C.58) gives the below upper-bound on (C),
(C.59) |
Adding (C) with the second term in (III-B2), we get
where we recall that is the fraction of swarm- peers who have all the pieces of except . ∎
Appendix D Exponential Decay of Positive Drift from Non-Rare Pieces in
Lemma 9
For all ,
where
Appendix E Proof of Theorem 1
For each , let be sufficiently small number to be chosen appropriately, and recall that the two blocks and form a partition of the state-space . For each , we further divide the block into three regions, namely
Below we prove 1 through a series of lemmas, together which establish that the unit-transition drift conditions are satisfied by the candidate Lyapunov function given by (26) and (27).
Lemma 10
For all , , and , the highest frequency is lower-bounded by . Therefore, the total chunk-count is lower-bounded by .
Proof:
We can lower-bound by . Given in , the Lemma is obvious. ∎
Lemma 11
For all , , and , the fraction of peers missing piece , i.e., is lower-bounded by provided .
Proof:
In , we have . Since is at most , this implies that . Now, for any piece , we have . By choosing , we ensure that . ∎
Lemma 12
For all , , and , the fraction of peers who are missing only piece , i.e., is upper bounded by .
Proof:
A swarm- peer missing only piece of file- has all the other pieces of the file, therefore,
Given in , the inequality follows. ∎
Lemma 13
For all , , and , let be defined as
Then for all , is upper-bounded by
Consequently, for any and , there exists such that for all ,
if .
Proof:
Since , . Given , each term in the summation is negative. Let us denote the rarest-piece by , i.e., . By Lemma 2, is bounded from below by . Upper-bounding the summation in by considering only the rarest-piece , we get
where, (E) uses and the definition of (see (10)); and (E) uses (see (18)).
Since , we have , which implies that . It can be verified that is a quadratic and strictly convex function of . Therefore, it has a unique minimum and attains its maximum at the boundary points 0 and . This gives
∎
Lemma 14
For any and any , there exists a countable set and a finite constant such that
Proof:
We will show that is upper bounded by over the region for each , except possibly, for a finite and bounded population of swarm-.
Region : Here, (see Lemma 10). Therefore, for all large , are both zero. This gives
where is given by Lemma 9. From Lemma 13, it follows that if . Since , this is true for all large .
Region : Here, we use the bounds, , , and for every (Lemma 12). Then, for all large ,
Here, (E) uses for every (Lemma 11); (E) follows from choosing small enough so that ; (E) follows from Lemma 9. From Lemma 13, it follows that if . Since , choosing large enough so that ensures that for large enough .
Region : Here, . This implies that . Therefore, the total chunk-count is upper-bounded by . Consequently, and are both non-zero. We use the bounds and for every (Lemma 12). Then, for all large ,
Here, (E) uses for (Lemma 11); (E) follows from choosing small enough so that ; (E) follows from Lemma 9; (E) upper-bounds the summation by considering only the rarest piece and using (see (18)); (E) follows by choosing large enough so that .
Case 2 - : From (III-B4) and (III-B4), we can write
Region : Like in , are both zero for large . Since , . This implies that . Then, for all large ,
Here, (E) uses and then upper-bounds the summation by considering only the rarest-piece, that is denoted by ; (E) uses (Lemma 2); (E) uses (see (18)); (E) uses ; (E) uses the fact that is large enough.
Region : Like we use the bounds, , , and for every (Lemma 12). Then,
Here, (E) uses ; (E) uses for every (Lemma 11); (E) follows from choosing small enough so that ; (E) uses for every (Lemma 11); (E) upper-bounds the summation by considering only the rarest piece (denoted by ); (E) uses (see (18)); (E) uses and ; (E) follows by choosing large enough so that .
Region : Like , and are both non-zero. We use the bounds, , , for every (Lemma 12). Then,
Here, (E) uses for every (Lemma 11); (E) follows from choosing small enough so that ; (E) upper-bounds the summation by considering only the rarest piece and uses (see (18)); (E) follows by choosing large enough so that . ∎
Lemma 15
For any , there exists a finite set and a finite constant such that
Proof:
Fix . For any and any , it follows from Lemma 14 that , except possibly over where its population and corresponding term are bounded from above by and respectively. We can write the state-space as where
Case 1 - : Let . Since for all , from Lemma 14, it follows that for all . From (39), this gives . Choosing ensures .
Case 2 - : The set is finite. Therefore, for any , we can write .
Case 3 - : Let . We can upper-bound as follows.
Note that over the set , which implies
Therefore, for any , there exists such that for any with . Choosing and ensures .
For all such that , let us define
Then, for any state , we can write
establishing the result. ∎
Lemma 15 is the final stage. Combining Lemma 15 and Proposition 6, we conclude that Theorem 1 holds. As a final step, we now illustrate how the constants can be set consistently.
Setting : Set some , , and .
-
•
For all , individually set .
-
•
Set .
-
•
For all , individually set such that .
-
•
For all , individually set such that , , and .
-
•
For all , set so that and , where is specified in Lemma 13.
Appendix F Foster-Lyapunov Theorem
Proposition 6
Let be a continuous-time, time-homogeneous and irreducible Markov chain with state space and generator matrix . Suppose there exist a non-negative function , an , a finite set , and a finite constant such that is finite for all , and the unit-transition drift is upper bounded as
Then, the process is positive recurrent. The unit-transition drift is given by
(F.63) |
Now, suppose , , and are non-negative functions on , and suppose for all . In addition, suppose is positive-recurrent, so that the means, and are well-defined. Then . (In particular, if is bounded, then is finite, and therefore is finite).
Appendix G List of Important Symbols
-
•
: Master-file.
-
•
: .
-
•
: Denotes a file or the corresponding swarm.
-
•
: .
-
•
: Set of all pieces downloadable by swarm-.
-
•
: Set of all swarms entering the network.
-
•
: Arrival rate of an empty swarm- peer.
-
•
: .
-
•
: .
-
•
: Ally-set of swarm-.
-
•
: Number of -type peers.
-
•
: State of the network. See (1).
-
•
: Number of peers in swarm-. See (2).
-
•
: Number of peers in the network. See (3).
-
•
: Number of contact links with each peer.
-
•
: Binary parameter for optimistic-unchoke.
-
•
: Ticking rate of tit-for-tat link.
-
•
: Ticking rate of optimistic-unchoke link.
-
•
: Fixed seed’s upload rate.
-
•
: In a given tit-for-tat contact, is the lower-bound on the probability of a peer push-contacting the other peer.
-
•
RF: Rarest-First.
-
•
RN: Random-Novel.
-
•
MS: Mode-Suppression.
-
•
TMS: Threshold-Mode-Suppression.
-
•
RFwPMS: Rarest-First with Probabilistic-Mode-Suppression.
-
•
LPS: Last-Piece Syndrome.
-
•
FPS: First-Piece Syndrome.
-
•
RNwPMS: Random-Novel with Probabilistic-Mode-Suppression.
-
•
: Typically used to denotes a piece of some file.
-
•
/ : Frequency / chunk-count of piece . See (4)
-
•
/ : Maximum / Minimum chunk-frequency amongst pieces of in swarm-. See (5).
-
•
/ : Maximum / Minimum chunk-count amongst pieces of in swarm-. See (6).
-
•
: Total chunk-count in swarm-. See (7).
-
•
: Mismatch of piece in swarm-. See (8).
-
•
: Largest-mismatch in swarm-. See (9).
-
•
: Total-mismatch in swarm-. See (10).
-
•
: Swarm-’s complementary chunk-count of piece-. See (12).
-
•
: Set of rare pieces in swarm-. See (13).
-
•
: , set of non-rare pieces in swarm-.
-
•
: Index for a rare piece of some swarm.
-
•
: Index for a non-rare piece of some swarm.
-
•
: Index for a piece with the smallest chunk-count.
-
•
: Set of rarest-pieces transferable from revealed cache-profile to -type peer. See (14).
- •
-
•
: Transferable set. See Algorithm 1.
-
•
: State-space of . See (16).
-
•
: .
- •
-
•
: An upper-bound on the ratio for all and . See (b)).
-
•
: .
-
•
: Aggregate rate at which a -peer downloads piece without departing the system.
-
•
: Aggregate rate at which a -peer downloads piece and departs the system.
-
•
: .
-
•
: .
-
•
: Lower estimate for rate of -peer downloading non-rare piece . See (23).
-
•
: . That is, the fraction of swarm- peers who need only piece to depart the system.
-
•
: .
-
•
: . See (26).
-
•
: See (27).
-
•
: .
-
•
: .
-
•
:
-
•
:
-
•
: .
-
•
: .
-
•
: See (III-A2).
-
•
: See (III-A3).
- •
-
•
: See (III-B4).
- •
-
•
: Small number in used in Appendix E.
-
•
: Used in Lemma 13.
-
•
, , : Used in Lemma 14.
-
•
, , , , , : Used in Lemma 15.
Acknowledgment
This work was funded in part, by NSF via grants ECCS2038416, EPCN1608361, EARS1516075, CNS1955777, and CCF2008130 for V. Subramanian, grants EARS1516075, CNS1955777, and CCF2008130 for N. Khan, grant CCF1934986 for M. Moharrami, and by the University of Michigan via Rackham Predoctoral Fellowship for M. Moharrami.
References
- [1] I. Norros, H. Reittu, and T. Eirola, “On the stability of two-chunk file-sharing systems,” Queueing Systems, vol. 67, pp. 183–206, March 2011.
- [2] B. Cohen, “Incentives build robustness in BitTorrent,” Workshop on Economics of Peer-to-Peer systems, vol. 6, pp. 68–72, June 2003.
- [3] Sandvine, “The global internet phenomena report covid-19 spotlight,” 2020.
- [4] L. Massoulie and M. Vojnovic, “Coupon replication systems,” IEEE/ACM Transactions on Networking, vol. 16, pp. 603–616, June 2008.
- [5] B. Hajek and J. Zhu, “The missing piece syndrome in peer-to-peer communication,” Stochastic Systems, vol. 1, no. 2, pp. 246–273, 2011.
- [6] J. Zhu and B. Hajek, “Stability of a peer-to-peer communication system,” IEEE Transactions on Information Theory, vol. 58, pp. 4693–4713, July 2012.
- [7] X. Zhou, S. Ioannidis, and L. Massoulie, “On the stability and optimality of universal swarms,” in ACM SIGMETRICS, SIGMETRICS ’11, pp. 341–352, ACM, June 2011.
- [8] J. Zhu, I. Stratis, N. Hegde, and L. Massoulié, “Stable and scalable universal swarms,” Distributed Computing, vol. 28, pp. 391–406, December 2015.
- [9] B. Oğuz, V. Anantharam, and I. Norros, “Stable distributed p2p protocols based on random peer sampling,” IEEE/ACM Transactions on Networking, vol. 23, pp. 1444–1456, October 2015.
- [10] O. Bilgen and A. B. Wagner, “A new stable peer-to-peer protocol with non-persistent peers,” in IEEE INFOCOM, pp. 1–9, May 2017.
- [11] V. Reddyvari, P. Parag, and S. Shakkottai, “Mode-Suppression: A simple and provably stable chunk-sharing algorithm for p2p networks,” in IEEE INFOCOM, pp. 2573–2581, April 2018.
- [12] V. R. Raja, P. Parag, and S. Shakkottai, “Mode-Suppression: A simple, stable and scalable chunk-sharing algorithm for P2P networks,” CoRR, vol. abs/1904.04191, 2019.
- [13] V. Reddyvari, S. C. Bobbili, P. Parag, and S. Shakkottai, “Mode-Suppression: A simple, stable and scalable chunk-sharing algorithm for p2p networks,” IEEE/ACM Transactions on Networking, pp. 1–12, 2021.
- [14] D. Qiu and R. Srikant, “Modeling and performance analysis of BitTorrent-like peer-to-peer networks,” SIGCOMM Computer Communication Review, vol. 34, pp. 367–378, August 2004.
- [15] N. Khan, M. Moharrami, and V. Subramanian, “Stable and efficient piece-selection in multiple swarm BitTorrent-like peer-to-peer networks,” in IEEE INFOCOM 2020 - IEEE Conference on Computer Communications, pp. 1153–1162, 2020.
- [16] D. S. Menasche, A. A. d. A. Rocha, B. Li, D. Towsley, and A. Venkataramani, “Content availability and bundling in swarming systems,” IEEE/ACM Transactions on Networking, vol. 21, pp. 580–593, April 2013.
- [17] E. de Souza e Silva, R. M. Leão, D. S. Menasché, and D. Towsley, “On the scalability of p2p swarming systems,” Computer Networks, vol. 151, pp. 93–113, Mar 2019.
- [18] D. X. Mendes, E. de Souza e Silva, D. Menasché, R. Leão, and D. Towsley, “An experimental reality check on the scaling laws of swarming systems,” in IEEE INFOCOM 2017 - IEEE Conference on Computer Communications, pp. 1–9, 2017.
- [19] O. Bilgen and A. B. Wagner, “A new stable peer-to-peer protocol with non-persistent peers: The Group Suppression protocol,” IEEE Transactions on Information Theory, vol. 66, no. 1, pp. 614–632, 2020.
- [20] B. Hajek, Random Processes for Engineers. Cambridge University Press, 2015.
- [21] R. Srikant and L. Ying, Communication Networks: An Optimization, Control, and Stochastic Networks Perspective. Cambridge University Press, 2014.
- [22] A. Legout, G. Urvoy-Keller, and P. Michiardi, “Rarest first and choke algorithms are enough,” in ACM SIGCOMM, IMC ’06, pp. 203–216, ACM, 2006.
![]() |
Nouman Khan (Member, IEEE) is a Ph.D candidate in the department of Electrical Engineering and Computer Science (EECS) at the University of Michigan, Ann Arbor, MI, USA. He received the B.S. degree in Electronic Engineering from the GIK Institute of Engineering Sciences and Technology, Topi, KPK, Pakistan, in 2014 and the M.S. degree in Electrical and Computer Engineering from the University of Michigan, Ann Arbor, MI, USA in 2019. His research interests include stochastic systems and their analysis and control. |
![]() |
Mehrdad Moharrami is a TRIPODS Postdoctoral Research Fellow at the University of Illinois at Urbana Champaign. He received his B.Sc. from the Sharif University of Technology, Iran, in Mathematics, as well as Electrical Engineering. He holds an M.Sc. in Electrical Engineering and an M.Sc. in Mathematics from the University of Michigan. He received his Ph.D. in Electrical Engineering in 2020. His research interests include Markov decision processes, reinforcement learning, and random graph models for economics, learning, and computation. |
![]() |
Vijay Subramanian (Senior Member, IEEE) received the Ph.D. degree in electrical engineering from the University of Illinois at Urbana-Champaign, Champaign, IL, USA, in 1999. He was a Researcher with Motorola Inc., and also with Hamilton Institute, Maynooth, Ireland, for a few years following which he was a Research Faculty with the Electrical Engineering and Computer Science (EECS) Department, Northwestern University, Evanston, IL, USA. In 2014, he joined the University of Michigan, Ann Arbor, MI, USA, where he is currently an Associate Professor with the EECS Department. His research interests are in stochastic analysis, random graphs, game theory, and mechanism design with applications to social, as well as economic and technological networks. |