$24
Instructions: You have to show the demo to the TA and submit the codes in a tgz le with name assign4.tgz. Reuse your previous codes to save coding efforts.
You have to implement the Chord protocol in the following way. Consider an ID space of 5 bits, so at most 32 computers can be accommodated in the ring. You can consider these devices as different virtual instances created using the virtual box. First write a script to generate around 100 blank les with random names. The objective would be to distribute these les in the instances using the Chord protocol so that searching is efficient. Follow the following steps:
For every instance, use its IP or MAC address and port number to map the same to a 5-bit ID space using SHA1 or SHA2 algorithm. Applying the same technique, map the les also in the same ID space using the le names.
You have to arrange the nodes in the form of logical Chord ring and also distribute the les to the appropriate nodes whenever they get booted up.
Stop an arbitrary instance. The system should automatically reorganize itself after some time.
In your code, there must be separate options to print the following for any node:
Its own IP address and ID
The IP address and ID of the successor and predecessor. The le key IDs it contains
Its own nger table
1