Introducing 

Prezi AI.

Your new presentation assistant.

Refine, enhance, and tailor your content, source relevant images, and edit visuals quicker than ever before.

Loading…
Transcript

File System Interface

Extensions to NFS4(cont'd)

Hard Issues(Cont'd)

NFS Version 4 (cont'd)

Hard Issues

Network File System (NFS)

Versions and variations

NFS Present and Future

Extensions to NFS4

NFS Version 4

Basic Design

Hard Issues(Cont'd)

References

RFS

VS

NFS

VFS structure & vnode structure

Parallel Network File System

Other changes

  • First revision, NFSv2, was published in 1985.

Added features

1) File System Naming

What is NFS

3) Concurrent access and file locking

The NFS Protocol

6) Performance

NFS in global Wide area networks(WANs)

QUESTIONS

  • First widely used distributed file system
  • NFS4.1 introduces a method of data access parallelism

File locking issue

  • Works only with System V.3 based Unix systems

It exports basic POSIX 32-bit filesystems

  • Statelessness: Each call is complete, helps Crash recovery
  • works with 5 OSes and 16 different vendor Hardwares

Multiple names for same filesystem by mounting several times

  • File system & node(Dir., file) related operations

Performance optimization in NFS

  • The Security Model
  • Key features over other file systems include
  • File locking a stateful service
  • Mount protocol & NLM protocol removed. NFS 4 is a single protocol
  • Separates metadata of a filesystem from the
  • NFS uses Read ahead and write behind buffer cache

=> Can read upto first 2GB of a file

  • Use of synchronous RPC makes transport independent

Main Concerns:

  • The Sun Network file system: Design, implementation and experience:

http://www.cse.buffalo.edu/faculty/tkosar/cse710/papers/nfs.pdf

  • NFS has RPC based file locking service called Status Monitor
  • Transparent access to remote filesystem
  • Portability

location of file data

  • cache for file attributes and directory names

Mandates the use of strong RPC security flavors

  • Currently uses UDP. Flexible to use others
  • One VFS/vnode structure per mounted filesystem/active node
  • Use of XDR standard gives machine and language independence
  • Lock server frees the locked resources by a crashed machine
  • OPEN and CLOSE operations included

Security, Latency , Error and loss recovery

  • NFS uses basic mounted filesystem on each machine.
  • User home directories are mounted on /usr/servername.
  • Tilde expansion supported (~username)
  • Uses special transport protocols. Not flexible to use others.
  • NFSV4.1 adds support for pNFS and NFS over wide area.
  • pNFS and NFS over WAN are still evolving.
  • UDP packet size increased to 9000

=>Provision of Data Striping, RAID

In-band security negotiation using client query

  • Separate Mount protocol
  • NFSv3, was published in 1994

Concurrent Access

Combines file lookup, creation and share semantics

  • NFS works over RPC package which uses XDR specification to achieve architecture and OS independent communication

Uses character strings instead of integer for user id and group id.

  • reduced data copy overhead by implementing new XDR type that translates directly to/from kernel buffers
  • Concurrency not guaranteed in NFS.

Support for 64-bit file sizes and offsets

WebNFS features

  • No crash recovery since costly.
  • No crash recovery required in NFS

The NFS Server

  • File locking is integrated to NFS 4

RPCSEC_GSS framework used to extend basic RPC security

  • www.cs.rice.edu/~gw4314/lectures/NFS.ppt
  • Two clients writing data to a file at same time may corrupt data on long writes
  • Each vnode contains a pointer to 1) parent VFS 2) Mount on VFS
  • The file system interface

=> Handle file larger than 2GB

2) Authentication and security

  • File accessing across the internet
  • Stateless=> Commit modified data before returning results

Other issues:

authentication + integrity checksum + encryption

Lease based model

  • Uses uid mapping table for user authentication
  • Assumes uniform uid across network and uses Yellow page service

4) Unix Open file semantics

  • VFS Interface
  • vnode Interface

Other mandated security frameworks:

  • NFSv4.2 is due for release

Improved write performance with asynchronous write

  • Enhanced download performance
  • write is slow because of synchronous call
  • each getattr makes one RPC(Not a local access issue with stat)
  • File migration and replication is supported in NFS4

Behaviour on deletion or permission change of an open file

Authentication requires mapping from uid and gid to user to be same in all the interacting machines.

  • Problem: What happens if the server deletes a file after returning its inode number to the client?

Kerberose V5 & LIPKEY

  • http://www.ietf.org/rfc/rfc3530.txt
  • Unix semantics not fully supported
  • Support 100% UNIX semantics
  • On delete rename the file and delete later
  • Error and Crash Recovery
  • VFS contains pointer to the mounted on vnode. Pathname containing ".." can be traversed.

Additional file attributes in replies

  • File locking and delegation makes NFS4 stateful

Design Goals

Soln: Add inode generation id and filesystem id in the superblock

  • yellow pages service used to provide flat uid space
  • store client credentials at the time of file opening.

=> saves time to re-fetch them

  • RFS has not been released
  • http://www.pnfs.com/
  • The COMPOUND procedure
  • Works through firewall
  • In operation for 1 year at the time of writing this paper
  • Future enhancement may include Proxy NFS file services

The NFS Client

5) Time skew

  • another solution is to provide network wide identity per user. Yet to implement.

Added READDIRPLUS operation

  • root operation: gets root vnode of the mounted filesystem. Allows deallocation of root vnode.
  • NFS interface transparent to applications
  • Optimized to use bandwidth efficiently

Some programs may not work properly because of the time skew between client and server

  • Machine and OS independence
  • Easy crash Recovery => Achieved by Stateless protocols in NFS
  • Transparent Access: File location transparent to client program
  • Unix Semantics maintained on Unix client
  • Reasonable performance: as fast as local disk on SCSI interface

=> returns file attributes and handles in Dir scan

  • Good for large heterogeneous networks
  • http://www.pnfs.com/

The COMPOUND procedure groups multiple related operations into a single RPC packet.

  • Mount remote file system to diretctory: Soft and Hard mount
  • Good for small network of machines running System V.3

Issue with super user access to remote files

  • Support for multi-realm security
  • Planned solution: Time synchronization protocol

Added support for TCP as transport protocol

  • File system interface to handle multiple file systems

Evaluation of operations stop on first error

=> NFS over WAN became more feasible

  • Server maps user root to user nobody before checking access permission
  • VFS interface + vnode interface

CSE710

Wide Area Distributed File System

The Sun Network Filesystem:

Design, implementation

and Experience

Russel Sandberg

Presented By:

Dev Ashis Negi

Learn more about creating dynamic, engaging presentations with Prezi