|
Description | The statistics | Author / Advisor
Description
In a network using multicasts distribution, participating
peers organize themselves into an overlay topology for data delivery.
Each edge in the topology corresponds to a unicast path between two
peers in the underlying Internet. Once a message is ready to be sent,
it is splited to chunks and they can be distributed using different
algorithms.
As part of a simulation done at the Danss lab, you will find here the
results comparing BitTorrent
to Julia's algorithm.
Below is a short description on each of them.
BitTorrent:
Instead of downloading the entire file, the message is broke to chunks
and distributed among several participating users. When one downloads
a chunk of the message, he is also uploading it to another user. The
overlay topology is built as follow; each node picks a number of neighbors
out of the pool of nodes. Uploads and downloads are only done using
those neighbors only.
Once the topology is built, each node downloads from a small number
of nodes (4 by default) concurrently. The fifth connection is chosen
among the neighbors by its bandwidth.

Every certain time frame, the slower one out of the downloading
nodes (5th in the figure below) is replaced by the probing node if it
has a higher bandwidth..
The message part sent to the neighbors is the rarest in the overlay.

Julia
This algorithm distributes messages on a topology. Julia's main advantage
is related to its high resilience adeptness. There isn't a predefined
topology, therefore disconnection of nodes from the network doesn't
have an impact on its efficiency.
It also minimize some resources (linkstress) choosing the closest neighbors
to send and receive the file parts. Finally, Julia has a unique neighboring
selection algorithm which helps to recursively distribute the file parts
into smaller clusters.
Using Julia's algorithm, nodes of the topology are selected differently
from Bit-Torrent's algorithm. The algorithm decides which nodes to relay
next based on their proximity.
At the start of the download, nodes are picked at random. As the download
advances, closer and closer nodes are selected based on the file progress.
This is the first algorithm which takes the file progress into consideration.
Another variant is called 'Exponential Distribution'. It is also related
to the download
progress of the file though unlike the previous case, neighbors are
chosen basing on
the exponential function 'Spatial Distribution' variant is used to pick
nodes based on their distance using commutative spatial distribution
(as done in spatial gossip).

The message part sent to the neighbors is the rarest in the overlay.
Please see the metrics' page for further
details on Julia's variants.
Parameters measured:
Link Stress : The number of time the packet
used an edge to send the packet from one place to another.
Work : Link stress x
(Latency)
RDP : Relative Delay Penalty
Latency : The delay introduced from the
time a packet is sent to the time he is being received.
Bandwidth: The transfer capacity of an
edge of the graph which is representing the network.
The code was written in Java.
Simulation running on the Tue Sep 13 19:16:22
End Time: Sep 13 22:58:33
Number of runs: 10
Numbers of algorithms: 3 (BIT-TORRENT, JULIA –
STEP and JULIA E^(-x) )
Nodes of the graph: 600
Participating nodes: 80
Number of neighbors to each node: 15
Downloading neighbors: 5
More graphs are available comparing the RDP, the link stress, the end
time, and the fair share of the algorithms.
The author is Keren
Ouaknine. Thanks to Danny Bickson for his precious guidance.
For questions and support you are welcome to send mail to
Keren
Ouaknine or
Danny Bickson .
|