pa1 - CSCI 5105: Foundations of Modern Operating Systems...

Info iconThis preview shows pages 1–2. Sign up to view the full content.

View Full Document Right Arrow Icon
CSCI 5105: Foundations of Modern Operating Systems Spring 2010 Programming Assignment 1: Simplified BitTorrent Due: March 2 nd 2010 at 11:59 pm. 1. Overview In this programming project you will implement a simplified version of the BitTorrent protocol with its various components using RPC to communicate with each other. Using your system, a user will be able to add files to nodes, and subsequently find and download these files from the nodes. 2. Project Details The operations that your system should allow users to perform are: AddFile - This operation inserts a file into the BitTorrent distributed store QueryFile - This operation returns a list of nodes which store copies of the file which clients may want to download. DownloadFile - This operation is used to download the file from nodes which have copies of the file. In addition to this, your system should support file replication for files downloaded often. The entities you need to implement are: Client - This process is used by the user to add files, search for files and download them from the BitTorrent distributed store. You will need to implement a suitable user interface using which these operations can be performed. Torrent store - This process keeps track of the torrent file for each file stored in the system. Each torrent file is of the format: <TrackerNode IPAddress/ Hostname, Filename / FileID>, where: TrackerNode IPAddress/ Hostname - Consists of the Tracker node's IPAddress or host name which can be used to contact the tracker. Filename / FileID - The filename or file identifier of the file which is used to identify the file by the tracker. Tracker - This process keeps track of the list of nodes which store copies of a given file in the distributed store. It can keep track of multiple such files in the distributed store. Node
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Image of page 2
This is the end of the preview. Sign up to access the rest of the document.

Page1 / 4

pa1 - CSCI 5105: Foundations of Modern Operating Systems...

This preview shows document pages 1 - 2. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online