April 26, 2019

Data Storage Technologies and Networks - Mid Sem Solution

Note: We have tried solving the question paper in a very short time span as per our understanding and the study material we had. Feel free to contact us through comment box or through email if you have some descriptive answer.

It is required to transfer a file of size 8000 bytes at a rate of 4MB/sec with a seek time of 12ms. The disk is rotating at 1000 RPM. Compute the time required for the transfer?
Transfer time (T = b/r*N)
  • b number of bytes to be transferred 
  • N number of bytes on a track
  • r is rotation speed in revolution per second
Question) How is the priority sequence established in a wide SCSI environment?
In a wide SCSI, the device IDs from 8 to 15 have the highest priority, but the entire sequence of wide SCSI-IDs has lower priority than narrow SCSI IDs.

Therefore, the overall priority sequence for a wide SCSI is 7, 6, 5, 4, 3, 2, 1, 0, 15, 14, 13, 12, 11, 10, 9, and 8.

Question) Firewall configuration is difficult for which NFS version? Justify.
NFS is a client server protocol that allows users to share files across a network. There are some problems with NFS as stated below:
● NFS relies on the inherently insecure UDP protocol
● Transactions between host and client are NOT encrypted
● Hosts and users cannot be easily authenticated, IP Spoofing is possible
● Persmissions are granted by normal access rules
● Firewall configuration is difficult because of the way NFS daemons work

NFSv3 requires dynamic ports between the NFS server and client which can cause problems getting through your firewall.

What are the three types of nodes maintained by JFFS2? Mention percentage hit by ‘Garbage Collector’ to reclaims space from various types of nodes.
JFFS is a log structured file system, Nodes containing data and metadata are stored on the flash chips sequentially. There are three types of nodes defined and implemented by JFFS2. These are as follows:

  1. JFFS2_NODETYPE_INODE - It contains all the inode metadata, as well as potentially a range of data belonging to the inode. However, it no longer contains a file name or the number of the parent inode.
  2. JFFS2_NODETYPE_DIRENT - this node represents a directory entry, or a link to an inode. It contains the inode number of the directory in which the link is found, the name of the link and the inode number of the inode to which the link refers. 
  3. JFFS2_NODETYPE_CLEANMARKER -- this node is written to a newly erased block to show that the erase operation has completed successfully and the block may safely be used for storage.
Garbage Collector (GC):
  • JFFS2 has a Garbage Collector (GC). The GC is calld directly from JFFS2 or from a background thread called GC thread.
  • If a user process tries to allocate space for a write and there is not enought free space then it calls the GC to produce the neccesery free space if it is possible.
Question) Can we install SAMBA on Windows? Justify. What is the name of the file to configure SAMBA?
Samba is an open-source software suite that runs on Unix/Linux based platforms but is able to communicate with Windows clients like a native application. So Samba is able to provide this service by employing the Common Internet File System (CIFS).

Can we install on windows ? - No we can not install it on Windows. Samba can be run on many different platforms including Linux, Unix, OpenVMS and operating systems other than Windows and allows the user to interact with a Windows client or server natively. It can basically be described as the Standard Windows interoperability suite of programs for Linux and Unix.

Name of file to configure SAMBA: smb.conf

Question )
In a SCSI based interface, a target has to support multiple initiators. Explain how a target will handle an incoming read request when it is busy, giving complete steps of read request between such initiator and a target components (handling multiple imitators) of a SCSI interface. Clearly indicate any assumptions made.

Assumptions :Let us assume we have one target T1 and three initiators I1, I2 and I3 with below SCSI IDs :

Initiator  SCSI ID
I1              6
I2              3
I3              5

The device with SCSI ID 7 has the highest priority on the SCSI bus and is usually assigned to the host adapter. The priority of other SCSI IDs is descending from 6 to 0.

Phases of SCSI bus :
There are basically 3 phases :
Bus Free Phase
–Bus is not being used by anyone

Arbitration Phase
–One or more initiators request use of the bus and
the one with the highest priority (SCSI ID order) is allowed to proceed

Selection / Re-selection phase
–Initiator asserts BUS BUSY signal and
•places target’s address on the bus thus establishing a connection/session
–Re-selection applies for a target resuming an interrupted operation:
•target asserts BUS BUSY signal and places initiator’s address on the bus.

Steps for Bus Phase Sequence Read Operation
  1. When bus is free, initiator enters into arbitration (with other possible initiators).
  2. Since we have multiple initiators on the same SCSI bus ,the selection phase allows arbitration for control of the bus.According to our assumptions I1 has the highest priority therefore I1 will be the first initiator to set  connection with target.
  3. On arbitration, initiator I1 selects the bus and places target address on bus.
  4. Target acknowledges selection by a message
  5. Initiator I1 sends command
  6. Target acknowledges command by a message
  7. The bus will be in free status after the target sends the status as FREE
  8. After the initiator I1 is successful,I3 will be able to place target address on the bus as I3 is on second priority and sends selection by a message.
  9. Same steps from 4 to 8 are performed for I3 and I2.
Question) Content of /etc/exports is as follows
Explain the meaning of the line. What is the significance of ‘rw’ in the above line? What is the other option can we use instead of ‘rw’? What does the word ‘sync’ signifies? We can use ‘async’ instead of ‘sync’. Which among ‘sync’ and ‘async’ is safe? Justify.

Meaning of line:
In the above statement can mount /anot/dir read/write and all transfers to disk are committed to the disk before the write request by the client is completed.

Significance of 'rw':
the exported file system is shared as read/write. If option is not specified, then the exported file system is shared as read-only.

Instead of ‘rw’:
we can use 'ro' option which is also a default choice in case you need to give exported file system read-only access.

‘sync’ signifies:
The NFS server will not reply to requests before changes made by previous requests are written to disk.

Yes, we can use 'async’ instead of 'sync' if you need to enable asynchronous writes instead, specify the option async.

which is safe:
The option sync means that all changes to the according file-systems are immediately flushed to disk. with sync the userland process has to wait for the operation to complete. In contrast, with async the system buffers the write operation and optimizes the actual writes. meanwhile, instead of being blocked the process in userland continues to run.

So sync is likely to give a performance penalty, hence async is safe.

Question )
CIFS is implemented on a server to serve files sharing among two clients namely client X and client Y. Client X wants the server to provide a file access with read ahead facility continuously in spite of client Y raising a read request for the same file as being accessed by client X. Answer the following with respect to the above scenario.
a.    What locking facility should client X request for a file? (1)
b.    What locking facility will be given to client Y when it request for a read request with read ahead option and why? (2)
c.    How does server maintain the access request of both clients with read ahead facility? (3)

The CIFS protocol allows for different types of file locking and concurrent access to be used by client and servers. Separately, the CIFS protocol allows servers to notify clients (when requested) when they are the only client accessing a file, or when all clients for a file are performing only reads.

a) OpLock (opportunistic lock)
b) Server would not provide any facility to client Y as the server sees that client X has the file open for Read and Read ahead option. So the server ignores Y's request and breaks the opportunistic lock.
c) Below is the diagram for Read/write operation both so pick your points accordingly as asked in the exam.

Another paper for your reference:


  1. Need the answer of the second question? RAID theory...

  2. Thank you for your valuable content , Easy to understand and follow. As said, the migration to cloud is very essential for the protection of the database.

    Cloud Migration services
    Aws Cloud Migration services
    Azure Cloud Migration services
    Vmware Cloud Migration services
    Database Migration services
    Lia Infraservices

  3. I am definitely enjoying your website. You definitely have some great insight and great stories.
    VPS Hosting