DSM Review, NFS, AFS: Difference between revisions

From Soma-notes
Jmahonin (talk | contribs)
Jmahonin (talk | contribs)
 
Line 41: Line 41:
# Files are up-to-date, can be inconsistent
# Files are up-to-date, can be inconsistent
# Trusted clients
# Trusted clients
# Stateless


==== AFS ====
==== AFS ====
Line 48: Line 49:
# Files may be stale, but data is consistent
# Files may be stale, but data is consistent
# Untrusted clients
# Untrusted clients
# Stateful
=== Contributions ===
==== NFS ====
* Kmalloc
* VFS
* (XDR, SunRPC)


=== Aside: Kerberos for Dummies ===
=== Aside: Kerberos for Dummies ===

Latest revision as of 20:34, 13 February 2008

Readings

Questions

For the Protic paper, consider the following:

  1. What were the major problems addressed in DSM research following Kai Li's dissertation?
  2. Did these advances change the scope of environments and problems appropriate for DSM?
  3. Why aren't DSM systems commonly in use today?


For the NFS and AFS papers, consider these questions:

  1. What were the key design goals of NFS and AFS?
  2. How well did they achieve their goals?
  3. What are their limitations?
  4. How suitable are NFS and AFS in modern small networks? Enterprise networks? Internet-scale applications? Why?

In Class Notes

Goals of NFS and AFS

NFS

  • Remote access like local access
  • Scale to ~50 clients
  • Portability
  • Lightweight

AFS

  • Remote access like local access
  • Scale to 5000 - 10000 hosts
  • Portability (POSIX)

Differences

NFS

  1. NFS does a system call for every read/write
  2. NFS can operate with diskless clients
  3. Lightweight clients
  4. Files are up-to-date, can be inconsistent
  5. Trusted clients
  6. Stateless

AFS

  1. AFS does a system call only on retrieving and storing a file
  2. AFS assumes clients have a hard disk
  3. Heavier-weight client
  4. Files may be stale, but data is consistent
  5. Untrusted clients
  6. Stateful

Contributions

NFS

  • Kmalloc
  • VFS
  • (XDR, SunRPC)

Aside: Kerberos for Dummies

1. Client Identification:    <client> ==> <kerberos> 
2. Client Request Ticket:    <client> <== <kerberos>
3. Authenticate with Ticket: <client> ==> <server>