subbukambala/CSCI5105ProgrammingAssignment1
Folders and files
| Name | Name | Last commit date | ||
|---|---|---|---|---|
Repository files navigation
Java Static DHT Dictionary. (https://github.com/chaosape/CSCI5105ProgrammingAssignment1) (https://github.com/subbukambala/CSCI5105ProgrammingAssignment1/network) Authors: Bala Subrahmanyam Kambala, Daniel William DaCosta ------- License: GPLv3 (http://www.gnu.org/copyleft/gpl.html), 2012 ------- Description: The following code was done as an assignment for CSCI5105 at the University of Minnesota. The code implements a simple DHT following the CHORD design. It is static because the join phase is assumed to occur up front before any lookup or inserts. These were the specifications of the assignment, operation in any other fashion will result in undefined behavior. Authors Details: -------- 1) Daniel William DaCosta Student ID:4433217 email: chaosape@gmail.com 2) Bala Subrahmanyam Kambala Student ID: 4451379 email: kamb0024@umn.edu TO BUILD: --------- cd src/ make TO RUN CLIENT: ( -h option displays help documentation on commands) ../scripts/RunCLI.sh [-hL] [-l word] [-f file] [superpeer address] [-P peer address] [-p peer ID] Example: >../scripts/RunCLI.sh -L localhost This command prints a list of peers which are registered to superpeer(binded on localhost) RUNING SUPER PEER: ------------------ #Run the Superpeer with default parameters of a bit size of 5 ../scripts/RunSuperPeer.sh #Run the Superpeer with a bit size of 41 ../scripts/RunSuperPeer.sh -m #Super Usage bash-3.2$ ../scripts/RunSuperPeer.sh -h usage: SuperPeer [-h] Run a DHT SuperPeer and attached to the specified superpeer. -h,--help Print this usage information. -m,--mbits <arg> The maximum number of unique keys in terms of 2^m (Default is 5). Bala Subrahmanyam Kambala, Daniel William DaCosta - GPLv3 (http://www.gnu.org/copyleft/gpl.html) TO RUN PEER: (To run several peers, run this script on different machines) ------------ #Run the Peer with default parameters assuming superpeer is on localhost ../scripts/RunPeer.sh #Run the Peer with a SuperPeer specified by ip/name ../scripts/RunPeer.sh 10.0.0.1 #Peer usage bash-3.2$ scripts/RunPeer.sh -h usage: Peer [-h] [superpeer address] Run a peer and attached to the specified superpeer. If none is provied localhost is assumed. -h,--help Print this usage information. Bala Subrahmanyam Kambala, Daniel William DaCosta - GPLv3 (http://www.gnu.org/copyleft/gpl.html) TO RUN CLIENT: ( -h option displays help documentation on commands) -------------- #List peers known by a superpeer ../scripts/RunCLI.sh -L localhost #List peers known by a superpeer ../scripts/RunCLI.sh -L 10.0.1.124 #List fingertable entry of a peer with id 11 and ip 10.0.1.124 ../scripts/RunCLI.sh -F -P 10.0.1.124 -p 11 localhost #Insert words with verbose output ../scripts/RunCLI.sh -v -f ../data/SampleWords.txt localhost #Lookup a work with verbose output at a peer with id 10 and ip of 10.0.1.24 ../scripts/RunCLI.sh -v -l Adverb -P localhost -p 10 localhost #List a peers data table ../scripts/RunCLI.sh -v -d -P localhost -p 10 localhost #CLI usage usage: CLI [-hLd] [-l word] [-f file] [superpeer address] [-P peer address] [ -p peer ID]) No Superpeer specified, no SuperPeer runnning, or bad SuperPeer address. CLI provides remote access to peers and superpeers within this CHORD implementation. -d,--data Output the data for a particular peer. Peer can be specified with the -P and -p options or will the first node will be chosen. -f,--filename <arg> Load all definitions from a file from a particular peer. -F,--fingertable Output the finger table, predecessor and success of a particular peer. Peer can be specified with the -P and -p options or will the first node will be chosen. -h,--help Print this usage information. -L,--listpeers Calls the RMI getPeer on the provided host. It will list all known peers. -l,--lookup <arg> Lookup a word from a particular peer. -P,--peerIP <arg> Specify the peer IP address. If none is provided, one will be choosen if required by the directive. -p,--peerId <arg> Specify the peer Id address. -v,--verbose When set insert and lookup will output log messages. Bala Subrahmanyam Kambala, Daniel William DaCosta - GPLv3 (http://www.gnu.org/copyleft/gpl.html)