Milestone 3
Kademlia's purpose is storage, and this is the next task. You must extend your Kademlia system by implementing the operations STORE and FIND_VALUE. As always, these operations must be transformed into a RESTful API.
To ensure resilience, you should ensure that a value is stored across the k peers closest to its key in the network.
You should update your UI, so that key/values can be stored, found, and inspected.
Bonus: Implement the periodic republication and reclaiming of key/values (for testing purposes, make the periods configurable).
Milestone presentation
You should be able to launch a number of peers, and demonstrate that key/value pairs can be stored and retrieved. If you wish to demonstrate on your Raspberry Pi, I have monitor/keyboard/mouse/network/power available.
Requirements
All communication between peers must be RESTful. The individual peer shall to a Web browser present a simple page, where the peer’s state can be inspected, and where actions, such as searching for an id, or inserting a key/value, can be performed.
You must document your REST API, and bring it to the milestone meeting.
Bonus: Have your peers check each other for liveness, and update routing information accordingly.