The Network File System (NFS) Version 4 is a distributed file system similar to previous versions of NFS in its straightforward design, simplified error recovery, and independence of transport protocols and operating systems for file access in a heterogeneous network.
NFS, was developed by Sun Microsystems to provide distributed transparent file access in a heterogeneous network. It achieves this by being relatively simple in design and not relying too heavily on any particular file system model.
This presentation is based on the paper of “The NFS Version 4 Protocol” written by Brian Pawlowski, Spencer Shepler, Carl Beame, Brent Callaghan, Michael Eisler, David Noveck, David Robinson and Robert Thurlow.
What is Linux?
Command-line Interface, Shell & BASH
Popular commands
File Permissions and Owners
Installing programs
Piping and Scripting
Variables
Common applications in bioinformatics
Conclusion
What is Linux?
Command-line Interface, Shell & BASH
Popular commands
File Permissions and Owners
Installing programs
Piping and Scripting
Variables
Common applications in bioinformatics
Conclusion
The Network File System (NFS) is the most widely used network-based file system. NFS’s initial simple design and Sun Microsystems’ willingness to publicize the protocol and code samples to the community contributed to making NFS the most successful remote access file system. NFS implementations are available for numerous Unix systems, several Windows-based systems, and others.
When you are new to Linux in 2020, go for the latest Mint or Fedora. If you only want to practice the Linux command line then install one Debian server and/or one CentOS server
(without graphical interface).
Video: http://joyent.com/blog/linux-performance-analysis-and-tools-brendan-gregg-s-talk-at-scale-11x ; This talk for SCaLE11x covers system performance analysis methodologies and the Linux tools to support them, so that you can get the most out of your systems and solve performance issues quickly. This includes a wide variety of tools, including basics like top(1), advanced tools like perf, and new tools like the DTrace for Linux prototypes.
Overview of the Domain Name System (DNS).
In the early days of the Internet, hosts had a fixed IP address.
Reaching a host required to know its numeric IP address.
With the growing number of hosts this scheme became quickly awkward and difficult to use.
DNS was introduced to give hosts human readable names that would be translated into a numeric IP addresses on the fly when a requesting host tried to reach another host.
To facilitate a distributed administration of the domain names, a hierarchic scheme was introduced where responsibility to manage domain names is delegated to organizations which can further delegate management of sub-domains.
Due to its importance in the operation of the Internet, domain name servers are usually operated redundantly. The databases of both servers are periodically synchronized.
Red Hat Linux Certified Professional step by step guide Tech ArkitRavi Kumar
Introduction to course outline and certification
Managing files & directories
Basic Commands ls, cp, mkdir, cat, rm and rmdir
Getting help from using command line (whatis, whereis, man, help, info, –help and pinfo)
Editing Viewing of text files (nano, vi and vim)
User Administration Creating, Modifying and Deleting
Controlling services & daemons
Listing process
Prioritize process
Analyze & storing logs
Syslog Server & Client configuration
Compressing files & directories (tar and zip)
Copying files & directories to remote servers
Yum & RPM
Search files and directories
File & Directory links (Soft Links and Hard Links)
Managing of physical storage
Logical Volume Manager
Access Control List (ACL)
Scheduling of future Linux tasks
SELinux
NFS Server and Client configuration
Firewall
Securing the NFS using kerberos
LDAP client configuration
Setting UP ldap users home directory
Accessing the network storage using (CIFS) samba
Samba Multiuser Access
Using Virtualized systems
Creating virtual Machines
Automated installation of Redhat Linux
Automated Installation using Kickstart
Linux Booting Process
Root password Recovery
Fixing Partition Errors – Using Enter into Emergency Mode
Using Regular Expressions with grep
Understand and use essential tools for handling files, directories, command-line environments, and documentation
Operate running systems, including booting into different run levels, identifying processes, starting and stopping virtual machines, and controlling services
Configure local storage using partitions and logical volumes
Create and configure file systems and file system attributes, such as permissions, encryption, access control lists, and network file systems
Deploy, configure, and maintain systems, including software installation, update, and core services
Manage users and groups, including use of a centralized directory for authentication
Manage security, including basic firewall and SELinux configuration
Configuring static routes, packet filtering, and network address translation
Setting kernel runtime parameters
Configuring an Internet Small Computer System Interface (iSCSI) initiator
Producing and delivering reports on system utilization
Using shell scripting to automate system maintenance tasks
Configuring system logging, including remote logging
Configuring a system to provide networking services, including HTTP/HTTPS, File Transfer Protocol (FTP), network file system (NFS), server message block (SMB), Simple Mail Transfer Protocol (SMTP), secure shell (SSH) and Network Time Protocol (NTP)
FTP or File Transfer Protocol is the mechanism used to transfer files over different networks. It is a standard network protocol, built on client-server architecture. It enables users to share their files over the network. Copy the link given below and paste it in new browser window to get more information on FTP Client and Server:- www.transtutors.com/homework-help/computer-science/ftp-client-and-server.aspx
The Network File System (NFS) is the most widely used network-based file system. NFS’s initial simple design and Sun Microsystems’ willingness to publicize the protocol and code samples to the community contributed to making NFS the most successful remote access file system. NFS implementations are available for numerous Unix systems, several Windows-based systems, and others.
When you are new to Linux in 2020, go for the latest Mint or Fedora. If you only want to practice the Linux command line then install one Debian server and/or one CentOS server
(without graphical interface).
Video: http://joyent.com/blog/linux-performance-analysis-and-tools-brendan-gregg-s-talk-at-scale-11x ; This talk for SCaLE11x covers system performance analysis methodologies and the Linux tools to support them, so that you can get the most out of your systems and solve performance issues quickly. This includes a wide variety of tools, including basics like top(1), advanced tools like perf, and new tools like the DTrace for Linux prototypes.
Overview of the Domain Name System (DNS).
In the early days of the Internet, hosts had a fixed IP address.
Reaching a host required to know its numeric IP address.
With the growing number of hosts this scheme became quickly awkward and difficult to use.
DNS was introduced to give hosts human readable names that would be translated into a numeric IP addresses on the fly when a requesting host tried to reach another host.
To facilitate a distributed administration of the domain names, a hierarchic scheme was introduced where responsibility to manage domain names is delegated to organizations which can further delegate management of sub-domains.
Due to its importance in the operation of the Internet, domain name servers are usually operated redundantly. The databases of both servers are periodically synchronized.
Red Hat Linux Certified Professional step by step guide Tech ArkitRavi Kumar
Introduction to course outline and certification
Managing files & directories
Basic Commands ls, cp, mkdir, cat, rm and rmdir
Getting help from using command line (whatis, whereis, man, help, info, –help and pinfo)
Editing Viewing of text files (nano, vi and vim)
User Administration Creating, Modifying and Deleting
Controlling services & daemons
Listing process
Prioritize process
Analyze & storing logs
Syslog Server & Client configuration
Compressing files & directories (tar and zip)
Copying files & directories to remote servers
Yum & RPM
Search files and directories
File & Directory links (Soft Links and Hard Links)
Managing of physical storage
Logical Volume Manager
Access Control List (ACL)
Scheduling of future Linux tasks
SELinux
NFS Server and Client configuration
Firewall
Securing the NFS using kerberos
LDAP client configuration
Setting UP ldap users home directory
Accessing the network storage using (CIFS) samba
Samba Multiuser Access
Using Virtualized systems
Creating virtual Machines
Automated installation of Redhat Linux
Automated Installation using Kickstart
Linux Booting Process
Root password Recovery
Fixing Partition Errors – Using Enter into Emergency Mode
Using Regular Expressions with grep
Understand and use essential tools for handling files, directories, command-line environments, and documentation
Operate running systems, including booting into different run levels, identifying processes, starting and stopping virtual machines, and controlling services
Configure local storage using partitions and logical volumes
Create and configure file systems and file system attributes, such as permissions, encryption, access control lists, and network file systems
Deploy, configure, and maintain systems, including software installation, update, and core services
Manage users and groups, including use of a centralized directory for authentication
Manage security, including basic firewall and SELinux configuration
Configuring static routes, packet filtering, and network address translation
Setting kernel runtime parameters
Configuring an Internet Small Computer System Interface (iSCSI) initiator
Producing and delivering reports on system utilization
Using shell scripting to automate system maintenance tasks
Configuring system logging, including remote logging
Configuring a system to provide networking services, including HTTP/HTTPS, File Transfer Protocol (FTP), network file system (NFS), server message block (SMB), Simple Mail Transfer Protocol (SMTP), secure shell (SSH) and Network Time Protocol (NTP)
FTP or File Transfer Protocol is the mechanism used to transfer files over different networks. It is a standard network protocol, built on client-server architecture. It enables users to share their files over the network. Copy the link given below and paste it in new browser window to get more information on FTP Client and Server:- www.transtutors.com/homework-help/computer-science/ftp-client-and-server.aspx
Node.js® is a platform built on Chrome's JavaScript runtime for easily building fast, scalable network applications. Node.js uses an event-driven, non-blocking I/O model that makes it lightweight and efficient, perfect for data-intensive real-time applications that run across distributed devices.
This presentation is primarily based on Oracle's "Java SE 6 HotSpot™ Virtual Machine Garbage Collection Tuning" document.
This introduces how Java manages memory using generations, available garbage collectors and how to tune them to achieve desired performance.
This presentation introduces a cryptographic scheme which enables searching on encrypted data without revealing to the server. The proposed scheme allows for a encrypted storage such as a secure cloud storage to be searchable in such a way that the service provider is unable to compromise the security of the system.
In 1982, a blind signature, as introduced by David Chaum. Blind Signature Scheme is a form of digital signature scheme which allows a person to get a message signed by another party without revealing any information about the message to the other party.
This presentation introduces the theory behind the blind signature scheme, how to implement it with RSA public cryptographic scheme and various practical aspects of the scheme.
Enterprise Java Beans (EJB) is a platform for building portable, reusable, and scalable business applications using the Java programming language.
EJB allows application developers to focus on building business logic without having to spend time on building infrastructure code for services such as transactions, security, automated persistence, and so on.
This presentation introduces EJB 3.0 concepts with code examples.
Skype proclaims that it provides a secure method of communication. Hundreds of millions of people have chosen to use Skype, often on the basis of this assurance.
This presentation discusses some security risk and vulnerabilities of Skype.
The Knight's Tour is a mathematical problem involving a knight on a chessboard. The knight is placed on the empty board and, moving according to the rules of chess, must visit each square exactly once. A tour is called closed, if ending square is same as the starting. Otherwise it is called an open tour. The exact number of open tours is still unknown. Variations of the knight's tour problem involve chessboards of different sizes than the usual 8 × 8, as well as irregular (non-rectangular) boards.
Graphics processing unit or GPU (also occasionally called visual processing unit or VPU) is a specialized microprocessor that offloads and accelerates graphics rendering from the central (micro) processor. Modern GPUs are very efficient at manipulating computer graphics, and their highly parallel structure makes them more effective than general-purpose CPUs for a range of complex algorithms. In CPU, only a fraction of the chip does computations where as the GPU devotes more transistors to data processing.
GPGPU is a programming methodology based on modifying algorithms to run on existing GPU hardware for increased performance. Unfortunately, GPGPU programming is significantly more complex than traditional programming for several reasons.
We rely on secrets such as safe combinations, PIN codes, computer passwords, etc. But so many things happen to lose secretes.
1. Secrets can be lost.
2. Documents get destroyed.
3. Hard disks fail
4. People forget
5. People leave companies,
6. people die...
One way to avoid such problems :-
Divide secret data (D) in to pieces (n)
* Knowledge of some pieces (k) enables to derive secret data (D)
* Knowledge of any pieces (k-1) makes secret data (D) completely undetermined.
Such a scheme is called a (k, n) threshold scheme.
This presentation provides a in depth view of Shamir's Secret Sharing Scheme.
Unit 8 - Information and Communication Technology (Paper I).pdfThiyagu K
This slides describes the basic concepts of ICT, basics of Email, Emerging Technology and Digital Initiatives in Education. This presentations aligns with the UGC Paper I syllabus.
A workshop hosted by the South African Journal of Science aimed at postgraduate students and early career researchers with little or no experience in writing and publishing journal articles.
Normal Labour/ Stages of Labour/ Mechanism of LabourWasim Ak
Normal labor is also termed spontaneous labor, defined as the natural physiological process through which the fetus, placenta, and membranes are expelled from the uterus through the birth canal at term (37 to 42 weeks
Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...Dr. Vinod Kumar Kanvaria
Exploiting Artificial Intelligence for Empowering Researchers and Faculty,
International FDP on Fundamentals of Research in Social Sciences
at Integral University, Lucknow, 06.06.2024
By Dr. Vinod Kumar Kanvaria
Introduction to AI for Nonprofits with Tapp NetworkTechSoup
Dive into the world of AI! Experts Jon Hill and Tareq Monaur will guide you through AI's role in enhancing nonprofit websites and basic marketing strategies, making it easy to understand and apply.
This slide is special for master students (MIBS & MIFB) in UUM. Also useful for readers who are interested in the topic of contemporary Islamic banking.
Synthetic Fiber Construction in lab .pptxPavel ( NSTU)
Synthetic fiber production is a fascinating and complex field that blends chemistry, engineering, and environmental science. By understanding these aspects, students can gain a comprehensive view of synthetic fiber production, its impact on society and the environment, and the potential for future innovations. Synthetic fibers play a crucial role in modern society, impacting various aspects of daily life, industry, and the environment. ynthetic fibers are integral to modern life, offering a range of benefits from cost-effectiveness and versatility to innovative applications and performance characteristics. While they pose environmental challenges, ongoing research and development aim to create more sustainable and eco-friendly alternatives. Understanding the importance of synthetic fibers helps in appreciating their role in the economy, industry, and daily life, while also emphasizing the need for sustainable practices and innovation.
1. The NFS Version 4 Protocol
By :-
Kelum Senanayake
[Based on the paper of “The NFS Version 4 Protocol”, Brian Pawlowski,
Spencer Shepler, Carl Beame, Brent Callaghan, Michael Eisler,
David Noveck, David Robinson, Robert Thurlow]
2. What is NFS 4
The Network File System (more commonly known as
NFS) is a distributed file system that may be accessed via
a network connection.
NFS Version 4 is similar to previous versions of NFS in its
straightforward design, simplified error recovery, and
independence of transport protocols and operating
systems for file access in a heterogeneous network.
NFS, was developed by Sun Microsystems together with
Internet Engineering Task Force (IETF).
IETF develops and promotes Internet standards,
cooperating closely with the W3C and ISO/IEC standards
bodies.
3. The IETF process and NFS
1998
Sun/IETF Agreement
BOF, working group forms
Strawman Proposal from Sun
Meetings, writing, e-mail
1999 Prototyping by 5 organizations
Working Group Draft
Additional prototyping
Six working group drafts
Working Group Last Call
2000 IETF Last Call
IESG Review
Assign RFC number
2001 Proposed Standard RFC 3010
2002 Proposed Standard RFC 3530
Two independent implementations
6+ months
Draft Standard
Internet Standard apotheosis
4. Requirements for NFS Version 4
Improved access and good performance on the Internet
Strong security, with security negotiation built into the
protocol
Enhanced cross-platform interoperability
Extensibility of the protocol
Improvements in locking and performance for narrow
data sharing applications
5. Overview
The NFS Version 4 protocol is stateful.
NFS is built on top of the ONC Remote
Procedure Protocol.
Also uses XDR.
◦ The External Data Representation (XDR) enables
heterogeneous operation by defining a canonical data
encoding over the wire.
7. Structural Changes
Elimination of ancillary protocols.
◦ Mount protocol, Network Lock Manager protocol.
◦ NFS 4 is a single protocol that uses a well-defined
port with the use of initialized filehandles and fully
integrated Locking in to the protocol.
The introduction of a COMPOUND RPC procedure
◦ Allows the client to group traditional file operations into a single
request to send to the server.
◦ Reduce network round trip latency for related operations, which
can be costly over a WAN
NFS 3 was designed to be easy to implement given an
NFS 2 implementation. NFS 4 did not have that
requirement.
8. Structural Changes… contd
Introduction of the stateful operations OPEN and
CLOSE
The regular file CREATE procedure is replaced by the
OPEN operation (with a create bit set) in NFS 4.
◦ The CREATE operation in NFS 4 is used only to create special
file objects such as symbolic links, directories, and special device
nodes.
◦ CREATE and REMOVE in NFS Version 4 subsumes the MKDIR
and RMDIR directory functionality of prior versions of NFS.
A LOOKUP is very simple.
◦ Only sets the current filehandle to point at the file object
resolved.
◦ Attributes can be obtained with a subsequent GETATTR
operation in the same COMPOUND procedure.
9. Structural Changes… contd
Does not assign special semantics to the directory
entries “.” and “..”
◦ Client should explicitly use the LOOKUPP operation.
The NFS 3 directory scanning operation READDIRPLUS
procedure was dropped.
◦ Now supported by the READDIR operation.
11. File system model
A file system is an implementation of a single file name
space containing files, and provides the basis for
administration and space allocation.
file system identifier, or fsid, which is a 128-bit per-server
unique identifier.
A file is a single named object consisting of data and
attributes, residing in a file system.
A regular file is a simple byte stream – not a directory,
symbolic link or special (device) file.
A filehandle uniquely identifies a file on a server.
12. Exporting file systems
The export operation makes available only those file
systems, or portions of file systems, desired to be
shared with clients.
In all versions of NFS, a server contains one or more
file systems that are exported to clients.
In NFS 4, a server presents a single seamless view of all
the exported file systems to a client.
The client can notice file system transitions on the
server by observing that the fsid changes.
The name space describes the set of available files
arranged in a hierarchy.
13. Pseudo-file systems
Server Local FS Pseudo FS
/
/
A C
A B C
D F
D E F
I
G H I
14. The COMPOUND procedure
RPC call defines a single request-response transaction
between the client and server.
But client may actually be required to transmit a series
of related requests.
The COMPOUND procedure groups multiple related
operations into a single RPC packet.
The RPC response to a COMPOUND procedure
contains the replies to all the operations.
Evaluation of the operations stops on first error.
It may be unwise to attempt grouping unrelated
operations into a single COMPOUND procedure.
15. Properties of the COMPOUND procedure
The set of operations in a COMPOUND procedure is
not atomic.
Error handling is simple on the server.
Most operations do not explicitly have a filehandle as an
argument or result.
◦ The server maintains a single filehandle, the current filehandle, as
the argument.
18. Filehandles
A filehandle, is a per server unique identifier for a file
system object.
Filehandles that are equal refer to the same file system
object.
◦ But no assumptions can be made by the client if the filehandles
differ.
The current filehandle is used by subsequent operations
in a single COMPOUND procedure.
◦ GETFH operation to fetch the current filehandle.
19. Client ID
A client first contacts the server using the
SETCLIENTID operation with a verifier.
A verifier is a unique, non-repeating 64-bit object.
◦ Generated by the client.
The server will return a 64-bit clientid.
◦ The clientid is unique.
◦ Will not conflict with those previously granted.
◦ Even across server reboots.
The clientid is used in client recovery of locking state
following a server reboot.
After a client reboot, the client will need to get a new
clientid
20. State ID
A stateid is a unique 64-bit object that defines the
locking state of a specific file.
Client requests a lock with clientID and a unique-per-
client lock owner identification.
Server returns a unique 64-bit object, the stateid.
Client uses this in subsequent operations as a
shorthand notation to the lock owner information.
21. Locking
NFS 4 locking is similar to the Network Lock Manager
(NLM) protocol.
NLM is used with NFS Versions 2 and 3.
Locking is tightly coupled to the NFS 4 protocol.
◦ Better support different operating system semantics
and error recovery.
22. Drawbacks of NLM
A major failing was the detection and recovery of error
conditions.
The design assumed that the underlying transport was
reliable and preserved order.
But an unreliable network easily resulted in orphan
locks on the server.
If a client crashed and never recovered,
◦ Locks could be permanently abandoned
◦ Prevents any other client from ever acquiring the lock.
23. Leases
The key change in NFS 4 locking is the introduction of
leases for lock management.
A lease is a time-bounded grant of control of the state
of a file, through a lock, from the server to the client.
A lock granted by the server will remain valid for a fixed
interval.
◦ Time interval can be renewal by the client.
Client is responsible for contacting the server to
refresh the lease to maintain the lock.
◦ Client failure vs Server failure.
A client exists in two states: either all the locks held
from a given server are correct or all are lost.
◦ Eliminates another drawback of a lease-based protocol
24. Mandatory locking & Share reservations
Mandatory locking - the ability to block I/O operations
by other applications on a file that contains a lock.
Share reservation - grants a client access to open a file
and the ability to deny other clients open access to the
same file.
25. Sequence IDs
The most problematic part of network locking is dealing
with lock requests that arrive out of order or are
replayed.
NFS 4 adds to every lock and unlock operation a
monotonically increasing sequence number.
Server maintains for each lock owner the last sequence
number and the response sent.
◦ Earlier sequence number.
◦ Last sequence number.
◦ Sequence number beyond the next sequence number.
26. Security Model
NFS relies on the underlying security model of RPC for
its security services.
In the area of security, NFS Version 4 improves over
NFS Versions 2 and 3 by
◦ Mandating the use of strong RPC security flavors that depend on
cryptography.
◦ Negotiating the security used via a system that is both secure
and in-band.
◦ Using character strings instead of integers to represent user and
group identifiers.
◦ Supporting access control that is compatible with UNIX and
Windows.
◦ Removing the Mount protocol.
27. GSS-API framework
Generic Security Services API
◦ Several security flavors
NFS is based on RPC and a security flavor based GSS-
API called RPCSEC_GSS.
RPCSEC_GSS differs from other traditional flavors in
two ways
◦ RPCSEC_GSS does more than authentication such as
performing integrity checksums and encryption of the entire
body of the RPC request and response.
◦ RPCSEC_GSS simply encapsulates the GSS-API messaging
tokens – Adding new security mechanisms (as long as they
conform to GSS-API) does not require significant re-writing.
28. Mandated strong security
All versions of NFS are capable of using RPCSEC_GSS.
NFS 4 implementations must implement security based
on Kerberos Version 5 and LIPKEY
29. Kerberos versus LIPKEY
Kerberos has been used on other distributed file
systems.
◦ Andrew File System
◦ Open Software Foundation's Distributed File System
◦ Microsoft's CIFS
Kerberos is an excellent choice for enterprises and
work groups operating within an Intranet.
◦ Provides centralized control.
◦ Single sign on to the network.
Kerberos does not work well on the Internet.
30. Kerberos versus LIPKEY… contd
NFS Version 4 is also designed to work outside of
intranets on the global Internet.
LIPKEY - Low Infrastructure Public Key
LIPKEY uses a symmetric key cipher and server-side
public key certificates.
The LIPKEY system provides an SSL-like model and
equivalent security for use on the Internet.
The LIPKEY user experience is similar to that of HTTP
over the Secure Sockets Layer (SSL).
31. Why not SSL?
NFS Version 4 does not use SSL.
SSL does not work over connectionless protocols like
UDP.
RPC has its own security architecture
◦ It is unclear how to cleanly merge SSL and RPC security.
33. Migration and replication
NFS Version 4 has added features to support file system
migration and replication.
A file system can migrate to a new server.
◦ Clients are notified of the change by means of a special error
code.
A client is informed of the new location by means of
the fs_locations file attribute.
34. Modifications for use on the Internet
Requiring TCP as a transport.
Defining COMPOUND operation to reduce roundtrip
latency
Defining a global user identifier name space
Mandating strong security based on a public key scheme
Enabling operation through firewalls
35. Firewall friendly
Port 111
PORTMAP
}
Dynamic
MOUNT
Port 2049 Port 2049
NFSv2/v3
Dynamic NFSv4
LOCK/NLM TCP
Dynamic
STATUS
Dynamic
ACL*
36. Future Works
Enhanced “Sessions” based NFS (correctness)
CCM - session-based security for IPsec
Migration/replication completion
◦ Core protocol defines client/server failover behaviour
◦ Definition of the server-server file system movement
◦ Transparent reconfiguration from client viewpoint
Proxy NFS file services (NFS caches)
Uniform global name space
◦ Features exist in the core protocol to support this
Support for multi-realm security
37. Reference
[1] B. Pawlowski, S. Shepler, C. Beame, B. Callaghan, M. Eisler, D. Noveck, D.
Robinson, and R. Thurlow. “The NFS Version 4 Protocol”. In Proceedings of
the 2nd International System Administration and Networking Conference
(SANE2000), page94, Maastricht, The Netherlands, May 2000.