Distributed Computing Systems (CSCI 4780/6780) – Project 4

Distributed Computing Systems

Consistent Hashing-based Naming Service

Introduction

In this project, you are going to implement a consistent hashing (CH)-based flat naming system. As we studied in the class, consistent hashing provides a lookup service for key-value pairs. The CH system stores (key, value) pairs on a distributed set of servers. These servers collaboratively provide lookup service along with insertion and deletion. In this project, you will implement the CH name servers and a boot-strap CH server, which is a special CH server with certain extra functionalities. In order to simplify the implementation, several assumptions are made as follows.

  1. The keys are assumed to be numbers in the range [0, 1023] (both inclusive). This mitigates the need for an extra hash-function. You can use the key value itself as the hash-value.
  2. Values are assumed to be alphanumeric strings (no special characters).
  3. The CH name server IDs are also numbers in [0, 1023] range.
  4. The Bootstrap name server has the ID 0. This will be a permanent node in the system. In other words, the system starts up by having only this bootstrap name server in the system (i.e., starting up this Bootstrap name server starts up the system). The Boot strap name server does not exit the system (when it closes down the DHT system is assumed to have closed down).
  5. The lookup, insertion and deletion operations are executed only at the Bootstrap name server. It provides a thread to interact with users and accepts lookup, insertion and deletion commands (see below for more details).
  6. The name servers (including the bootstrap name server) interact with one another using sockets primitive.
  7. Please note that you are implementing consistent hashing, which means that each name server only knows about it predecessor and successor name servers.
  8. It is assumed that the bootstrap name server is known to all other name servers (i.e., it is provided at startup).
  9. The entry and exit processes of name servers always start at the bootstrap nameserver.
  10. Entry, lookup, insertion and deletion traverse the servers in clockwise direction (i.e., by following successors).
  11. You can assume that there will not be any race conditions in the system (i.e., simultaneous lookups, insertions, deletions, entries and exits).

Bootstrap Name Server

As mentioned above the bootstrap name server is a permanent name server. Its startup signals the creation of the CH system and its close-down brings the entire system down. It is assumed that the Bootstrap name server is the first node in the system. In other words, at startup it is responsible for the entire [0, 1023] range.

The Bootstrap name server (bnserver) takes a single command line parameter – the name of the bootstrap name server configuration file (bnConfigFile). The bnConfigFile has the following format:

ID of the server (which is 0, as it is the Bootstrap name server)

Port number on which the Bootstrap server will wait for connections from other servers.

A series of initial key value pairs. One pair per line (key and value delimited by blank space).

An example bnConfigFile is available here.

Upon startup the Bootstrap name server will manage the entire [0, 1023] range until other servers join the system. The Bootstrap name server will also provide a user interaction thread. The user interaction thread will support the following commands.

lookup key à retrieves the value corresponding to the given key (if the key is in the system). If the given key is not in the system, “Key not found” should be printed. In addition to the value, this commands should also printout the sequence of server IDs that were contacted and the ID of the server from which the final response was obtained.

Insert key value à should insert the key value pair into the system. The command should print out the ID of the server into which the key value pair was inserted and the sequence of server IDS that were contacted.

delete key à should delete the key value pair corresponding to the given key. If successfully deleted, “Successful deletion” should be printed. If key was not in the system “Key not found” should be printed. In addition, the sequence of server IDs that were contacted in the deletion process should be printed.

Name Server

These are non-permanent servers in the system. Each name server has an ID (specified in the configuration file). Each name server is responsible for maintaining the key, value pairs for a specific range of keys as specified in the consistent hashing algorithm. Each name server knows its predecessor and successor name servers (i.e., it maintains the IP address and port number of its predecessor and successor name servers).

The Name server (nameserver) takes a single command line parameter – the name of the name server configuration file (nsConfigFile). The nsConfigFile has the following format:

ID of this name server (number in [1, 1023] range)

Port number on which this server will wait for connections from other servers.

IP address and port number of the Bootstrap server (delimited by space).

An example nsConfigFile is available here

Each name server will also provide a user interaction thread. The user interaction thread will support the following commands.

enter à the name server will enter into the system. This process is initiated by first contacting the Bootstrap server. It will figure out the range of the keys that it should maintain by following the consistent hashing protocol (i.e., traversing the existing name servers in clock- wise direction). It will acquire the key value pairs corresponding to its range from the name server that will become its successor name server. Once the entire entry procedure is complete, “successful entry” message is printed out. In addition, the following information is printed out:

  • The range of keys that will be managed by this server; (2) the ID of the predecessor and successor name servers; (3) the IDs of the servers that were traversed during the entry process.

exit à the name server will gracefully exit the system. The name server will inform its successor and predecessor name servers. It will hand over the key value pairs that it was maintaining to the successor. Upon successful exit, the server will print “Successful exit” message. It will also print out the ID of the successor and the key range that was handed over.

Points to Note:

  1. Several design decisions (such as messaging formats between name servers and data structures to be used in servers etc.) have been deliberately omitted. Coming up with a good design is a very important part of the project.
    1. You are allowed to make reasonable assumptions (if need be). However, those additional assumptions should not be contrary to the original CH protocol (for example, you should NOT assume that every name server knows about every other name server in the system). It is a good idea to talk to the instructor before making additional assumptions. The assumptions should also be mentioned in the readme file.
    1. Evaluation will be done through demos. What to submit:
  2. Your code for the entire system.
  3. A readme file containing (a) names of the students in the project group; (b) any additional assumptions, special compilation or execution instructions; and (c) the following statement – if it is true – “This project was done in its

entirety by <Project group member names>. We hereby state that we have not received unauthorized help of any form”. If this statement is not true, you should talk to the instructor before submission.

  • All submission will be done via ELC.
Order Now

Get expert help for Distributed Computing Systems and many more. 24X7 help, plag free solution. Order online now!

Universal Assignment (September 1, 2025) Distributed Computing Systems (CSCI 4780/6780) – Project 4. Retrieved from https://universalassignment.com/distributed-computing-systems-csci-4780-6780-project-4-2/.
"Distributed Computing Systems (CSCI 4780/6780) – Project 4." Universal Assignment - September 1, 2025, https://universalassignment.com/distributed-computing-systems-csci-4780-6780-project-4-2/
Universal Assignment May 6, 2023 Distributed Computing Systems (CSCI 4780/6780) – Project 4., viewed September 1, 2025,<https://universalassignment.com/distributed-computing-systems-csci-4780-6780-project-4-2/>
Universal Assignment - Distributed Computing Systems (CSCI 4780/6780) – Project 4. [Internet]. [Accessed September 1, 2025]. Available from: https://universalassignment.com/distributed-computing-systems-csci-4780-6780-project-4-2/
"Distributed Computing Systems (CSCI 4780/6780) – Project 4." Universal Assignment - Accessed September 1, 2025. https://universalassignment.com/distributed-computing-systems-csci-4780-6780-project-4-2/
"Distributed Computing Systems (CSCI 4780/6780) – Project 4." Universal Assignment [Online]. Available: https://universalassignment.com/distributed-computing-systems-csci-4780-6780-project-4-2/. [Accessed: September 1, 2025]

Please note along with our service, we will provide you with the following deliverables:

Please do not hesitate to put forward any queries regarding the service provision.

We look forward to having you on board with us.

Most Frequent Questions & Answers

Universal Assignment Services is the best place to get help in your all kind of assignment help. We have 172+ experts available, who can help you to get HD+ grades. We also provide Free Plag report, Free Revisions,Best Price in the industry guaranteed.

We provide all kinds of assignmednt help, Report writing, Essay Writing, Dissertations, Thesis writing, Research Proposal, Research Report, Home work help, Question Answers help, Case studies, mathematical and Statistical tasks, Website development, Android application, Resume/CV writing, SOP(Statement of Purpose) Writing, Blog/Article, Poster making and so on.

We are available round the clock, 24X7, 365 days. You can appach us to our Whatsapp number +1 (613)778 8542 or email to info@universalassignment.com . We provide Free revision policy, if you need and revisions to be done on the task, we will do the same for you as soon as possible.

We provide services mainly to all major institutes and Universities in Australia, Canada, China, Malaysia, India, South Africa, New Zealand, Singapore, the United Arab Emirates, the United Kingdom, and the United States.

We provide lucrative discounts from 28% to 70% as per the wordcount, Technicality, Deadline and the number of your previous assignments done with us.

After your assignment request our team will check and update you the best suitable service for you alongwith the charges for the task. After confirmation and payment team will start the work and provide the task as per the deadline.

Yes, we will provide Plagirism free task and a free turnitin report along with the task without any extra cost.

No, if the main requirement is same, you don’t have to pay any additional amount. But it there is a additional requirement, then you have to pay the balance amount in order to get the revised solution.

The Fees are as minimum as $10 per page(1 page=250 words) and in case of a big task, we provide huge discounts.

We accept all the major Credit and Debit Cards for the payment. We do accept Paypal also.

Popular Assignments

Assignment Help in St Albans, Melbourne

Introduction St Albans is a multicultural suburb located approximately 17 km north-west of Melbourne’s CBD. Known for its diverse community, vibrant shopping precincts, and residential charm, St Albans is a popular choice for students seeking affordable living with good access to educational institutions. Nearby universities and TAFE campuses include Victoria

Read More »

Assignment Help in Springvale South, Melbourne

Introduction Springvale South is a peaceful suburb located approximately 27 km south-east of Melbourne’s CBD. Known for its residential charm, green spaces, and family-friendly environment, Springvale South is ideal for students seeking a quieter lifestyle while remaining connected to educational hubs. Nearby universities and TAFE campuses include Monash University (Clayton

Read More »

Assignment Help in Springvale, Melbourne

Introduction Springvale is a bustling multicultural suburb located approximately 22 km south-east of Melbourne’s CBD. Known for its vibrant community, diverse cuisines, and commercial precincts, Springvale attracts students seeking both cultural experiences and proximity to educational institutions. Nearby universities and TAFE campuses include Monash University (Clayton Campus), Deakin University (Burwood

Read More »

Assignment Help in Spotswood, Melbourne

Introduction Spotswood is a peaceful suburb located approximately 8 km south-west of Melbourne’s CBD. Known for its residential charm, local parks, and family-friendly atmosphere, Spotswood offers students a quiet and supportive environment for studying. Its proximity to educational institutions such as Victoria University (Footscray Park Campus), RMIT University, and TAFE

Read More »

Assignment Help in South Yarra, Melbourne

Introduction South Yarra is a prestigious inner-city suburb located just 4 km south-east of Melbourne’s CBD. Known for its upscale shopping precincts, cafés, cultural attractions, and vibrant nightlife, South Yarra attracts students seeking a dynamic urban lifestyle with excellent access to universities and TAFE campuses. Nearby institutions include RMIT University,

Read More »

Assignment Help in Southbank, Melbourne

Introduction Southbank is a vibrant inner-city suburb located just across the Yarra River from Melbourne’s CBD. Known for its arts and entertainment precinct, high-rise apartments, and cultural hubs, Southbank is home to students seeking a dynamic lifestyle close to universities and TAFE campuses. Nearby institutions include RMIT University, University of

Read More »

Assignment Help in South Morang, Melbourne

Assignment Help in South Morang, Melbourne Introduction South Morang is a thriving suburb located approximately 21 km north-east of Melbourne’s CBD. Known for its family-friendly atmosphere, modern residential developments, and excellent amenities, South Morang has become a popular choice for students seeking a peaceful yet well-connected study environment. With convenient

Read More »

Assignment Help in South Melbourne, Melbourne

Introduction South Melbourne is a vibrant inner-city suburb located just 2 km south of Melbourne’s CBD. Known for its historic architecture, bustling markets, trendy cafés, and proximity to the Arts Precinct, South Melbourne attracts students who want a lively urban lifestyle with easy access to universities and TAFE campuses. Nearby

Read More »

Assignment Help in South Kingsville, Melbourne

Introduction South Kingsville is a charming inner-west suburb located approximately 7 km south-west of Melbourne’s CBD. Known for its tree-lined streets, historic homes, and a close-knit community, South Kingsville offers students a calm and welcoming environment while remaining close to major educational institutions. Students in this suburb have easy access

Read More »

Assignment Help in Somerton, Melbourne

Introduction Somerton is an industrial and semi-residential suburb located approximately 22 km north of Melbourne’s CBD. Known for its convenient access to the Hume Freeway and Melbourne Airport, Somerton is ideal for students who prefer a quieter environment while being well connected to educational institutions across the city. Nearby universities

Read More »

Assignment Help in Skye, Melbourne

Introduction Skye is a growing suburb located approximately 38 km south-east of Melbourne’s CBD. Known for its residential estates, open green spaces, and family-friendly atmosphere, Skye is ideal for students who prefer a quieter lifestyle while remaining connected to the city and educational institutions. The suburb is well-linked by major

Read More »

Assignment Help in Seaholme, Melbourne

Introduction Seaholme is a charming bayside suburb located approximately 14 km south-west of Melbourne’s CBD. Known for its quiet streets, coastal parks, and proximity to Altona Beach, Seaholme offers students a peaceful study environment while remaining connected to the city. With easy access via public transport and major roads, students

Read More »

Assignment Help in Seddon, Melbourne

Introduction Seddon is a vibrant inner-west suburb located approximately 7 km west of Melbourne’s CBD. Known for its lively café culture, boutique shops, and historic architecture, Seddon combines a charming village atmosphere with convenient access to the city. Its proximity to Victoria University (Footscray Campus), RMIT University, and other TAFE

Read More »

Assignment Help in Seabrook, Melbourne

Introduction Seabrook is a coastal suburb located about 23 km south-west of Melbourne’s CBD. Known for its serene beaches, family-friendly environment, and green spaces, Seabrook offers students a peaceful setting while remaining well connected to educational institutions across Melbourne. Public transport and road access via the Princes Highway and nearby

Read More »

Assignment Help in Scoresby, Melbourne

Introduction Scoresby is a well-established suburb located about 28 km east of Melbourne’s CBD. Known for its mix of residential and commercial areas, Scoresby offers a peaceful and convenient lifestyle for students. The suburb is in close proximity to educational institutions such as Monash University (Clayton Campus), Swinburne University, and

Read More »

Assignment Help in Sandringham, Melbourne

Introduction Sandringham is a picturesque bayside suburb located approximately 16 km south-east of Melbourne’s CBD. Famous for its beautiful beaches, Sandringham Yacht Club, and relaxed coastal lifestyle, Sandringham is ideal for students seeking a serene study environment while remaining close to the city. The suburb has convenient transport links via

Read More »

Assignment Help in Sandhurst, Melbourne

Introduction Sandhurst is an upscale suburb located approximately 38 km south-east of Melbourne’s CBD. Known for its leafy streets, modern housing estates, and peaceful environment, Sandhurst is ideal for students seeking a calm residential lifestyle while maintaining access to educational institutions in Melbourne’s south-eastern corridor. With nearby transport links and

Read More »

Assignment Help in Roxburgh Park, Melbourne

Introduction Roxburgh Park is a vibrant and fast-growing suburb located around 23 km north of Melbourne’s CBD. Known for its multicultural community, modern residential developments, and family-friendly environment, Roxburgh Park has become a popular choice for students and young professionals alike. With excellent transport connections via the Roxburgh Park Train

Read More »

Assignment Help in Rowville, Melbourne

Introduction Rowville is a well-established suburb located around 27 km south-east of Melbourne’s CBD. Known for its family-friendly vibe, spacious parks like Stud Park Reserve, and excellent community facilities, Rowville offers students a balanced mix of suburban comfort and easy access to education hubs. With major roads such as the

Read More »

Assignment Help in Rosanna, Melbourne

Introduction Rosanna is a leafy and family-friendly suburb located about 12 km north-east of Melbourne’s CBD. Known for its green streets, Rosanna Parklands, and strong community atmosphere, it provides students with a calm environment while staying close to the city. The suburb is well connected by Rosanna Station and major

Read More »

Assignment Help in Ripponlea, Melbourne

Introduction Ripponlea is a charming inner-city suburb located just 8 km south-east of Melbourne’s CBD. Famous for the heritage-listed Rippon Lea Estate and its leafy residential streets, Ripponlea offers students a mix of cultural richness and convenient city living. With easy tram and train connections, students can travel effortlessly to

Read More »

Assignment Help in Ringwood North, Melbourne

Introduction Ringwood North is a leafy and family-friendly suburb located about 28 km east of Melbourne’s CBD. Known for its green streets, parks, and welcoming community, Ringwood North offers a peaceful residential lifestyle while remaining close to Melbourne’s educational and business hubs. With strong transport connections via nearby Ringwood Station

Read More »

Assignment Help in Ringwood East, Melbourne

Introduction Ringwood East is a peaceful residential suburb located around 25 km east of Melbourne’s CBD. Known for its leafy streets, friendly community, and excellent access to parks and schools, Ringwood East is ideal for students seeking a quieter lifestyle while still being close to Melbourne’s educational hubs. With its

Read More »

Assignment Help in Ringwood, Melbourne

Introduction Ringwood is a bustling suburb located around 25 km east of Melbourne’s CBD. Known for its leafy residential streets, modern shopping centres like Eastland, and easy access to the scenic Dandenong Ranges, Ringwood offers a great lifestyle for students and professionals. The suburb is well connected via Ringwood Station

Read More »

Assignment Help in Richmond, Melbourne

Introduction Richmond is one of Melbourne’s most iconic inner-city suburbs, located just 3 km east of the CBD. Famous for its lively café culture, bustling shopping streets like Bridge Road, and its thriving arts and sports scene, Richmond blends lifestyle and convenience perfectly. With excellent tram and train connections, students

Read More »

Assignment Help in Reservoir, Melbourne

Assignment Help in Reservoir, MelbourneIntroductionReservoir is a thriving suburb located just 12 kilometres north of Melbourne’s CBD. Known for its multicultural community, leafy parks, and welcoming neighbourhoods, Reservoir strikes the perfect balance between suburban comfort and city convenience. It is well-connected through trains, buses, and trams, making travel easy for

Read More »

Assignment Help in Parkville – Universal Assignment

Parkville, located just 3 km north of Melbourne CBD, is one of Melbourne’s most prestigious academic hubs. It is home to The University of Melbourne, Monash University (Pharmacy campus), and major research institutes like the Walter and Eliza Hall Institute and the Royal Melbourne Hospital precinct. With such a concentration

Read More »

Assignment Help in Oakleigh East – Universal Assignment

Oakleigh East, located about 17 km south-east of Melbourne CBD, is a peaceful and residential suburb in the City of Monash, known for its family-friendly environment and convenient access to shopping and educational facilities. With nearby institutions like Monash University, Holmesglen Institute, and TAFE Victoria, many students living in Oakleigh

Read More »

Assignment Help in Preston – Universal Assignment

Preston, located about 9 km north of Melbourne’s CBD, is a thriving multicultural suburb that attracts many university and TAFE students. With the presence of Melbourne Polytechnic (Preston Campus) and close proximity to La Trobe University (Bundoora campus) and RMIT University, Preston has a large student population. While the suburb

Read More »

Assignment Help in Point Cook – Universal Assignment

Point Cook, located around 25 km southwest of Melbourne’s CBD, is a fast-growing residential suburb in the City of Wyndham. Known for its modern housing estates, coastal beauty, and cultural diversity, Point Cook is also home to many university and TAFE students. With Victoria University, RMIT, Deakin University, and the

Read More »

Can't Find Your Assignment?