Peer-to-peer networks are a common methodology used for content delivery and data sharing on the Internet. The duration of any particular download session is highly dependent on the capacity of the node servers selected as source peers. Recent investigations have shown that specific total download times may deviate significantly from average total download times. This work investigates a novel approach to selecting download server peers that is intended to reduce average total download times and minimize variance of those times from the overall average of download session durations.
Typical algorithms used in today's Peer-to-Peer (P2P) systems have improved from simply connecting to a single source peer for the entire download session to an approach where the download content is divided into chunks and a randomly selected source peer is chosen as the source for each chunk. This limits the possibility of an extremely long download session due to the selection of a low capacity download source peer. Prior work has demonstrated that it is better to divide the download session into time slices and download as much as possible from a randomly selected source peer within each time interval rather than staying connected to a poorly performing source peer for the entire time it takes to download a chunk of the source content. This approach minimizes the time spent with a poorly performing source peer and allows the client to move on to a potentially better performing source after a specific, limited interval. Other work has shown that by keeping a history of node performance, it is possible to recognize a poorly performing partner early in a time slice and depart to a new, and hopefully better performing partner, prior to the completion of a time slice (referred to as "choking" a poorly performing peer). These approaches have been shown to reduce average download times and minimize the variance in duration between download sessions.
Prior work has also shown that there is value in the use of parallel download streams. As long as the number of streams is kept small (i.e. 4 to 6), minimizing the overhead of maintaining numerous streams and saturation of the available incoming network bandwidth, average download time can be further reduced. The algorithm described in this investigation uses time-based source peer switching and maintains a small number of parallel download streams. At the end of each time interval, it does not randomly replace all source peers but keeps those source peers that are performing relatively better and replaces those performing relatively poorly with randomly selected new source partners. In this way, as the download progresses, parallel downloading typically progresses from a set of better and better performing source partners, therefore reducing average download times and reducing overall variance between download times. This approach has been shown in simulations to reduce average download times by nearly 20% over parallel versions of basic time-based downloads and 8.7% over time-based downloads with the addition of "choking" poorly performing partners. As file sizes increase and/or the heterogeneity of source node service capacities increase, the benefits of this approach to source peer replacement also increases. These improvements are gained while maintaining or further limiting the variance in performance between download sessions. The reduction in average download times and the decrease in variance between download sessions provided by this approach will improve the user experience for users of P2P content distribution systems. This approach should also be applicable to other data distribution systems such as distributed file systems.
Identifer | oai:union.ndltd.org:nova.edu/oai:nsuworks.nova.edu:gscis_etd-1335 |
Date | 01 January 2013 |
Creators | Wilkins, Richard S. |
Publisher | NSUWorks |
Source Sets | Nova Southeastern University |
Detected Language | English |
Type | text |
Format | application/pdf |
Source | CEC Theses and Dissertations |
Page generated in 0.0013 seconds