Back to results

University of Mississippi

Implementation Of A Raptorq-Based Protocol For Peer To Peer Network

Abstract

dc:description.abstract

The object of this thesis is to develop and test a Ruby based implementation of the RaptorQP2P protocol. The RaptorQP2P protocol is a novel peer-to-peer protocol based on RaptorQ forward error correction. This protocol facilitates delivery of a single file to a large number of peers. It applies two levels of RaptorQ encoding to the source file before packet transmission. Download completion time using RaptorQP2P was found to be significantly improved comparing to BitTorrent. We developed a Ruby interface to the Qualcomm proprietary RaptorQ software development kit library. Then we achieved the two levels of RaptorQ encoding and decoding with the Ruby interface. Our implementation uses 5 threads to implement RaptorQP2P features. Thread 1 runs as a server to accept the connection requests from new peers. Thread 2 works as a client to connect to other peers. Thread 3 is used for sending data (pieces) and thread 4 is to receive data from neighboring peers. Thread 5 manages the piece map status, the peer list, and choking of a peer. We first tested communication modules of the implementation. Then we set up scheduled transmission tests to validate the intelligent symbol transmission scheduling design. Finally, we set up a multi-peer network for close to practical tests. We use 5 RaspberryvPi single-board computers to act as 1 seeder and 4 leechers. The seeder has the whole file and delivers the file to the 4 leechers simultaneously. The 4 leechers will also exchange part of the file with each other based on what they have received. Test results show that our implementation attains all the features of RaptorQP2P: the implementation uses two levels RaptorQ encoding; a peer is able to download a piece from multiple neighbors simultaneously; and a peer can send the received encoded symbols of a piece to other peers even if the peer does not have the full piece yet.

Degree

thesis:*
Name thesis:degree_name
M.S. in Engineering Science
Level thesis:degree_level
Thesis
Discipline thesis:degree_discipline
Electrical Engineering
Year dc:date.available
2015

Author and committee

dc:creator, dc:contributor.*
Author dc:creator
  • Bai, Yuzhu
Contributors dc:contributor
  • John N. Daigle
  • Ramanarayanan Viswanathan
  • Feng Wang

Subjects

dc:subject × 4

Identifiers

dc:identifier.*
Repository record dc:identifier
https://egrove.olemiss.edu/etd/520
OAI identifier oai:identifier
oai:egrove.olemiss.edu:etd-1519

Chain of custody

source
Harvested from
University of Mississippi
Base URL
egrove.olemiss.edu/do/oai/
Last updated
2026-07-24
Source record
OAI-PMH GetRecord
citation

Bai, Yuzhu. Implementation Of A Raptorq-Based Protocol For Peer To Peer Network. Thesis thesis, 2015. https://egrove.olemiss.edu/etd/520