DistOS 2023W 2023-03-06

From Soma-notes
Revision as of 16:48, 6 March 2023 by Soma (talk | contribs) (Created page with "==Notes== <pre> NASD & Tapestry --------------- What problem(s) is NASD designed to solve? What's the standard architecture for a file server? - you have a server with attached storage - that server reads storage then sends what it reads over the network to a client Limitations of this approach - bandwidth bottleneck on the server: reading lots of disks in parallel only to copy to memory then send over the network puts huge strain on server memory system - also l...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Notes

NASD & Tapestry
---------------

What problem(s) is NASD designed to solve?

What's the standard architecture for a file server?
 - you have a server with attached storage
 - that server reads storage then sends what it reads over the network to a client

Limitations of this approach
 - bandwidth bottleneck on the server: reading lots of disks in parallel only to copy to memory then send over the network puts huge strain on server memory system
 - also limits clients inherently, again because of bandwidth constraints

Idea: have clients talk directly to the disks, server just has to authorize access

Why aren't the disks just smaller servers?  Because they don't understand the concept of files
 - traditionally this abstraction is blocks, but NASD does something different, why?


What problem is Tapestry designed to solve?
 - routing when you don't want to retrieve information from fixed hosts
 - need to propagate messages to find who has what information
 - also, hosts will come and go, so need to deal with that

WHEN is this problem relevant?  When is it not?

How well does this kind of architecture deal with untrusted or even malicious nodes?

Big question: do you think we use these kinds of architectures so much nowadays?  Why or why not?