You may build any of Pastry, Chord, Tapestry, Viceroy, or Kademlia.
The interface should be three simple programs
"put
You may want to write additional scripts "startnode" and "killnode"
that can help bring up additional hosts into your system.
You will run into the problem of how to find a bootstrap node. For
this, you can use the closestnode.com
service, which runs the Meridian system to anycast the join message to the
closest node. You will need to link in with the Meridian library or run
the Meridian executable in parallel to hook into this infrastructure.
You are expected to run your system on PlanetLab. The grading will be
done via a demo. A key ingredient of the grading is the testing scripts
you developed along with your system. Many structured DHTs have some
corner cases, and you should write scripts that exercise them.