DistOS 2015W Session 10: Difference between revisions

From Soma-notes
Dwils098 (talk | contribs)
Line 51: Line 51:


* How is content divided?
* How is content divided?
Uses consistent hashing (SHA-1), upon node creation (join) creates optimal routing table.


* How is the network traversed?
* How is the network traversed?
You look at your neighbours, you see which neighbour is closest to your destination, and recurse.


* What trust assumptions does the system make?
* What trust assumptions does the system make?
It assumes the system is entirely trustworthy from adversaries. While network failures may happen and nodes may go down, no node will explicitly try to mess with the network.


* Performance constraints?
* Performance constraints?
O(log n) access times to any given node. Best effort publishing/unpublishing via decentralized object location routing.


* What non-DHT internet infrastructure would you replace with a DHT?  How suitable is Tapestry for this purpose?
* What non-DHT internet infrastructure would you replace with a DHT?  How suitable is Tapestry for this purpose?

Revision as of 19:11, 16 March 2015

Feel free to tweak the questions!

Kademlia

Members: Kirill, Deep, Jason, Hassan

  • Why are DHTs relevant to distributed OSs?
  • How is content divided?
  • How is the network traversed?
  • What trust assumptions does the system make?
  • Performance constraints?
  • What non-DHT internet infrastructure would you replace with a DHT? How suitable is Kademlia for this purpose?

Comet

Members: Mohamed Ahmed, Apoorv Sangal, Ambalica Sharma

  • Why are DHTs relevant to distributed OSs?

DHT is an infrastructure than enables many clients to share information, and scale to handle node arrival, departure and failure. DHT's serve many of the design goals of disbtributed operating systems. The paper states that "DHTs are increasingly used to support a variety of distributed applications, such as file-sharing, distributed resource tracking, end-system multicast, publish-subscribe systems, distributed search engines"

  • How is content divided?


One of the three main components of the comet system is a routing substrate which implements the value/node mapping. This allows a client to find the node htat stores a specific data item. Since Comet uses a DHT implementation, routing occurs by applying a hash function to the key to compute node ID's that store the associated value.

  • How is the network traversed?
  • What trust assumptions does the system make?

A client node running COmet should be protected from the execution of handlers e.g. an executing handler cannot corrupt the node or use unlimited resources. Handlers should not be able to mount messaging attacks on other nodes

  • Performance constraints?
  • What non-DHT internet infrastructure would you replace with a DHT? How suitable is Kademlia for this purpose?

Tapestry

Members:

  • Why are DHTs relevant to distributed OSs?

Because they provide a way to distribute information over large networks (distributed key/value store).

  • How is content divided?

Uses consistent hashing (SHA-1), upon node creation (join) creates optimal routing table.


  • How is the network traversed?

You look at your neighbours, you see which neighbour is closest to your destination, and recurse.

  • What trust assumptions does the system make?

It assumes the system is entirely trustworthy from adversaries. While network failures may happen and nodes may go down, no node will explicitly try to mess with the network.

  • Performance constraints?

O(log n) access times to any given node. Best effort publishing/unpublishing via decentralized object location routing.

  • What non-DHT internet infrastructure would you replace with a DHT? How suitable is Tapestry for this purpose?