Skip to content

Commit 8c0bf71

Browse files
author
James Stevens
committed
more edits
1 parent 0a26d66 commit 8c0bf71

File tree

3 files changed

+23
-30
lines changed

3 files changed

+23
-30
lines changed

gossip.tex

+1-1
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ \subsection{Gossip Results}
5656
To analyze the effectiveness of this gossip protocol we created a
5757
swarm like the ones we used to test the effectivenes of local, global
5858
and omniscient knowledge. The gossip swarm results are presented in
59-
Table X. From these results we can clearly see that the gossip
59+
Table \ref{tab:noseedresults}. From these results we can clearly see that the gossip
6060
protocol replicates the critically rare pieces much more efficiently
6161
than local and global knowledge do. This allows it significantly extend the
6262
lifetimes of three of the five test swarms. The gossip protocol does

intro.tex

+7-13
Original file line numberDiff line numberDiff line change
@@ -61,27 +61,21 @@ \section{Introduction}
6161
construct an improved global view of the swarm at each peer. We then
6262
modify the next piece selection routine to leverage the information
6363
about the globally rarest blocks to request the blocks most in need of
64-
replication from its neighbors. We verified the effectiveness of this approach
65-
by running a series of simulations that approximate a
66-
range of swarms. We also analyze the gossip protocol's overhead to show
67-
that gossip is practical in terms of network usage and node storage.
68-
69-
Additionally, we also propose an alternative gossip protocol to assist
64+
replication from its neighbors. We verified the effectiveness of this
65+
approach by running a series of simulations that approximate a unhealthy
66+
swarms. We also analyze the gossip protocol's overhead to show that gossip
67+
is practical in terms of network usage and node storage. Additionally,
68+
we also propose an alternative low-overhead gossip protocol to assist
7069
seeds that are altruistic enough to want the swarm to survive after they
71-
leave. This protocol uses gossip to let the seed know when it is safe
72-
to leave the swarm by ensuring that enough replicas of each pieces are
73-
available. We also show that the alternative gossip protocol uses even
74-
less network resources than the previous gossip protocol.
75-
70+
leave by letting these seeds know when it is safe to leave.
7671

7772
The primary insight of this work is that the lack of a global view is
7873
a contributing factor to the last block problem in unhealthy swarms
7974
and can be improved with a global picture of the swarm. Furthermore,
80-
the use of gossip to communicate information about the swarm as a whole
75+
the use of gossip to communicate global information about the swarm
8176
allowed us to do efficiently what had previously been considered too
8277
costly to implement \cite{cohen:1}.
8378

84-
8579
The remainder of this paper is organized as follows. Section II discusses
8680
the related work. Section III describes our simulation design. Section IV
8781
is a study of local knowledge vs. global knowledge in BitTorrent. Section

swarm.tex

+15-16
Original file line numberDiff line numberDiff line change
@@ -15,13 +15,13 @@ \subsection{Experimental Setup}
1515
node's peers. The goal of this section is to explore the potential for
1616
a gossip algorithm to improve BitTorrent. The first set of simulations
1717
use swarms that start with a single seed and a number of leechers.
18-
The seed is altruistic and therefore will stay the entire time. This
18+
The seed is altruistic and will stay the entire time. This
1919
simulates a ``healthy'' swarm that will not die, but may benefit from
2020
better replication of pieces. The second type is a swarm with no seeders,
2121
although a complete copy of the file exists within the swarm between a
2222
few nodes. This simulates a situation in which the seeders have left
2323
and a swarm is in an ``unhealthy'' state. None of the nodes are
24-
altruistic and therefore leave as soon as possible. For this swarm,
24+
altruistic and leave as soon as possible. For this swarm,
2525
there are two goals. The primary goal is to simply make sure the swarm
2626
survives, because it is possible for a node to leave with pieces that
2727
only it holds, which means no other node can complete. The second goal
@@ -52,9 +52,9 @@ \subsection{Swarms with Seeders}
5252
number of peers per node, and the initial seeder's upload rate will be varied.
5353
In the healthiest swarms with a seeder, there should be many nodes, many peers per node, and
5454
a high seeder upload rate. Likewise, the least healthy swarms have fewer nodes,
55-
fewer peers per node, and a lower upload rate for the seeder. However, if too fewer
55+
fewer peers per node, and a lower upload rate for the seeder. However, if too few
5656
nodes exist than the peers allowed per node, then each node will have perfect global
57-
knowledge by default, therefore, the number of nodes must always be kept above
57+
knowledge by default, so the number of nodes must always be kept above
5858
the number of peers per node.
5959

6060

@@ -94,7 +94,7 @@ \subsection{Swarms with Seeders}
9494
replicated. We also ran some even slower seeders such as an as uprate
9595
of 20 that were not finishing in any reasonable amount of time so we
9696
did not collect the run times. One interesting result was that even if
97-
the numer of nodes doubles, the performance penalty for node downloading
97+
the number of nodes doubles, the performance penalty for node downloading
9898
was essentially negligible. This shows that BitTorrent scales very well
9999
assuming the initial seeder can get the pieces replicated. We can also
100100
see that as the number of peers increases, performance improves somewhat
@@ -119,12 +119,9 @@ \subsection{Swarms with No Seeders}
119119
large number of nodes join, complete the file, and then leave. The
120120
four nodes that start this simulation would then be the remainder of
121121
that initial flash crowd while the new nodes joining would represent
122-
the steady stream of nodes that often join after a flash crowd. For
123-
more information on this behavior in torrents, please see
124-
``The Bittorrent P2P File-Sharing System: Measurements and Analysis''
125-
(**CITE HERE**).
122+
the steady stream of nodes that often join after a flash crowd.
126123

127-
Using this ``unheatly'' swarm simulation setup we then ran the
124+
Using this ``unheathly'' swarm simulation setup we then ran the
128125
simulation five times for the three levels of node knowledge discussed
129126
in section 4.1: local knowledge, global knowledge and
130127
omniscience. Five runs were performed for each level of knowledge
@@ -146,14 +143,16 @@ \subsection{Swarms with No Seeders}
146143
\multicolumn{11}{|c|}{Experiments}\\ \hline
147144
Runs & 1 & 2 & 3 & 4 & 5 & 1 & 2 & 3 & 4 & 5\\ \hline
148145
Knowledge Type & \multicolumn{5}{c|}{nodes stranded} & \multicolumn{5}{c|}{average times}\\ \hline
149-
local & 99& 2& 99& 99& 99&1387&2540&1710&2019&1433\\
150-
global & 99& 99& 99& 99& 46&1850&1464&1369&1535&2391\\
151-
omniscient & 1& 2& 2& 99& 2&1711&2370&1646&1465&2386\\ \hline \hline
146+
Local & 99& 2& 99& 99& 99&1387&2540&1710&2019&1433\\
147+
Global & 99& 99& 99& 99& 46&1850&1464&1369&1535&2391\\
148+
Omniscient & 1& 2& 2& 99& 2&1711&2370&1646&1465&2386\\
149+
Gossip & 11& 99& 1& 7& 99&1981&1254&2293&1901&2130\\ \hline \hline
152150
\multicolumn{11}{|c|}{Summary}\\ \hline
153151
Knowledge Type & \multicolumn{5}{c|}{Average Nodes Stranded} & \multicolumn{5}{c|}{Average Times}\\ \hline
154152
Local & \multicolumn{5}{c|}{80} & \multicolumn{5}{c|}{1818}\\
155153
Global & \multicolumn{5}{c|}{88} & \multicolumn{5}{c|}{1727}\\
156154
Omniscient & \multicolumn{5}{c|}{21} & \multicolumn{5}{c|}{1916}\\
155+
Gossip & \multicolumn{5}{c|}{43} & \multicolumn{5}{c|}{1912}\\
157156
\hline\end{tabular}
158157
\label{tab:noseedresults}
159158
\end{table*}
@@ -179,11 +178,11 @@ \subsection{Swarms with No Seeders}
179178
global view of the swarms causes the nodes with global knowledge to all
180179
download the same piece from the critical nodes so many copies are
181180
created of one critically rare piece while other critically rare
182-
pieces aren't copied at all. The local knowledge nodes were therefore
181+
pieces aren't copied at all. The local knowledge nodes were
183182
more efficient because their notion of the rarest piece was more
184-
diverse. This lead them to replicate different pieces and achieve more
183+
diverse. This led them to replicate different pieces and achieve more
185184
efficeint replication overall. The primary conclusion to be drawn from
186-
these results is, therefore, that while local knowledge can
185+
these results is while local knowledge can
187186
occaisionally save a swarm, a more intelligent piece replication scheme
188187
would be more effective. This opens the door for BitTorrent gossip to
189188
achieve real gains over the traditional implementation by extending

0 commit comments

Comments
 (0)