• Join over 1.2 million students every month
  • Accelerate your learning by 29%
  • Unlimited access from just £6.99 per month

Distributed File System.

Extracts from this document...


Coursework 2         MiniProject Report                JS Swift

Distributed File System

A Distributed File System is an application based on client/server relationship. This application allows clients to access and process objects stored on the server, as if they were stored on their own local hard disk. Whenever a user requests for an object, the server send s a copy of that particular object. The user computer caches the object and sends it back to the server. DFS organizes file and directory services of standalone servers into a global directory. In this way, all servers are interconnected to each other and all files can become available to end-user, truly showing distributed file system. Server has a mechanism installed, whereby many clients may access same data simultaneously. This mechanism also updates files so that the following clients receive most updated version of files and also reduces data conflicts. To protect against data access failures, DFS uses file or database replication. Some of the examples of DFS include:

  • Novell Netware
  • Microsoft’s Distributed File System
  • IBM/Transarc’s Distributed File System
  • NFS (we will discuss this example later)

Distributed File System has many common concepts. We will now discuss some of the concepts of Distributed File System. They include Naming and Transparency, File Replication, Remote File Access, Caching, Fault Tolerance, Security and many more. We will briefly go through some of the main common concepts of Distributed File System before embarking on Network File System. Concepts are as follows:

  • File Replication

File replication is a useful idleness for improving accessibility of files on different machines. This feature also benefits performance as well.

...read more.


  • Portability: NFS is portable. This means that it is independent from machine and operating system. It can easily be ported onto several hardware and operating systems platforms including mainframes.
  • Network Protocol Independence: This is also a very important feature of NFS. It basically means that NFS is flexible to run on various transport protocols instead of residing or sticking to one know protocol. This feature also allows NFS to make maximum use of existing protocols and also open doors for new protocols in the future.
  • Performance: NFS aims to utilize the highest performance standards so that users are able to access remote files just like they access local files. Performance is a key feature of NFS.
  • Security: NFS supports multiple security mechanisms. It gives users or administrators to choose from various available security mechanisms. They have the flexibility to adopt security mechanisms that suits their environment. Again, this feature also opens doors to new security mechanisms that may be available in the near future.
  • All these features reduce costs as they share resources across the global enterprise.


NFS depends on two different protocols as a medium for communication between sender and receiver. They are known as RPC and XDR. Below is a description of these two protocols.

  • Remote Procedure Call (RPC)

NFS uses RPC to communicate between client and server. It is a session layer protocol. It implements a client/server link on the hosts that use it. RPC allows hosts to make calls as if they were local but actually they are on remote hosts.

  • External Data Representation (XDR)

XDR provides a facility to translate data between diverse computers and operating systems. It is a presentation layer protocol. XDR is used by RPC to host a reliable data exchange between clients and severs.  


NFS transparency is achieved through RPC and XDR protocols. As mentioned earlier, these protocols are used by NFS to communicate between clients and servers. Below is a diagram showing the client/server relationship.


From the figure above, we can see that the client and the server are communicating with each other using stubs. We can also see that client is accompanied with client stub and server is accompanied with server stub. The client just requests a service through service request and after that only the client and the server interact circuitously with each other. The client and the server stubs use the XDR protocol to make a connection and communicate by utilizing the XDR functions. The figure below gives even a better image of the whole process.


The interaction between the stubs is clearly shown in the above diagram. NFS uses proxy pattern which shows the remote objects as local objects.


The four main services or protocols driving NFS are nfs, mountd, nsm and nlm. All these protocols are explained below in detail.

  • Nfs

This protocol resides at the base of NFS and it allows manages files, searching, reading and writing, authentication and file statistics.

  • Mountd

This protocol is responsible for mounting exported files systems so that they can be accessed with nfs. Requests such as mount and unmount are received by servers. The server keeps all the information about the exported file systems.

  • Nsm – Network Status Monitor

The main job of this protocol is to monitor network status. It monitors nodes to find out the state of a machine. It also informs functions such as reboot and restart.

  • Nlm – Network Lock Manager
...read more.


Data requiring larger disk space can also be kept on one host. Again, clients wishing to access objects will mount the required files onto their local host. For example, programs and files relating to a specific department can be kept and maintained on one host. Likewise, acconting anf finance department can be kept on another host.


NTFS’s scalability is limited as it can support fewer processors as compared to NFS. A file in NTFS is not simple Byte stream as it is in the NFS. In NTFS, a file is a structured object consisting of attributes.        

In NTFS every file is stored in an array structure called Master File Table (MFT).

In NTFS, each directory uses B+ tree structure to store an index of the filename.


In my conclusion, I have to say that NFS is very simple to install and implement. It is a highly portable file system although sometimes it is inconsistent. The only drawback of NFS is the fact that it doesn’t scale to large number of clients.











Silberschatz , Abraham. Applied Operating System Concepts / Avi Silberschatz, Peter Galvin, Greg Gagne. New York; Chichester: Wiley , 2000.

        2024146                       -  -                

...read more.

This student written piece of work is one of many that can be found in our University Degree Computer Science section.

Found what you're looking for?

  • Start learning 29% faster today
  • 150,000+ documents available
  • Just £6.99 a month

Not the one? Search for your essay title...
  • Join over 1.2 million students every month
  • Accelerate your learning by 29%
  • Unlimited access from just £6.99 per month

See related essaysSee related essays

Related University Degree Computer Science essays

  1. Marked by a teacher

    UK Copyright and File Sharing

    5 star(s)

    criteria and initiate the transfer between the user and a remote Napster peer. The sharing was sustained by the requirement that every user of the software would be required to upload their music collection to other peers. This type of sharing is known as a centralised P2P network, that is,

  2. Design a web based online Appointment System for vehicle service centres in town to ...

    { // Reshow the form with the error $login_error = $result; include 'login_form.inc.php'; } else { //display hi, then firstname and lastname echo "hi , " echo $_SESSION['firstname']; echo "&nbsp"; echo $_SESSION['lastname']; echo "</br>And Customer Email:-"; echo $_SESSION['email']; //showing the welcome message and link to the appointment echo '</br>Thank you

  1. The project explains various algorithms that are exercised to recognize the characters present on ...

    Based on performance analysis measurements chart and summing up Image Acquisition, Segmentation and Classification functions yields execution time of 11 ms approximately to recognize all the characters once the plate has been detected [12]. However, Clemens, Florian and Horst made their analysis for a fixed plate size of 90 � 30 and no resizing was taken into consideration.

  2. A bucketing framework for Database security

    ASEE is defined before propose the Variance of the distri- bution of values within bucket B. If there are N values in domain B, formula of ASEE can be defined as: N N 3.3.3 Variance Indicator 3. As defined in [10], the variance of a random variable X taking n distinct values xi , i ?

  1. Methods and technology used in Computer Forensics

    Having identified this file as the correct one, I click recover, as highlighted in the following image, and Pandora attempts to recover the data. When recovering data, it is worthwhile remembering that deleted data's worst enemy is new data being written to the same drive.

  2. Network report for Middlesex University. The current network design is a star topology with ...

    * Ease of maintenance - Maintenance should be minimized as much as possible and tasks should be well defined. * Redundancy - To increase the reliability of the network, redundancy must be introduced by making use of additional hardware. This usually leads to an increase of ten to twenty percent of the overall costs.

  1. IP network design

    The accompanying Network Security document is intended to provide in-depth information on network security. In designing a network, the RBC or LA first needs to consider the geographical location of the sites which they need to serve, and work from this to produce a network topology (section 2.4).

  2. Windows Communication foundatio

    Figure 1: Service.vb code from the MathsHost project Imports System Imports System.Collections.Generic Imports System.Text Imports System.ServiceModel Imports System.Math Imports System.Web Imports System.Data Imports System.Data.SqlClient <ServiceContract()> _ Public Interface IMathsServiceContract <OperationContract()> _ Function CalcTanAngle(ByVal opp As Double, ByVal adj As Double)

  • Over 160,000 pieces
    of student written work
  • Annotated by
    experienced teachers
  • Ideas and feedback to
    improve your own work