Hardware Reference
In-Depth Information
10.1.2 PVFS2
Development of PVFS2 began in 1999 and was completed by a team from
Clemson University, ANL, and Ohio Supercomputer Center in 2003. The new
design featured object servers, distributed metadata, views based on MPI,
support for multiple network types, and a software architecture designed for
easy experimentation and extensibility.
10.1.3 OrangeFS
OrangeFS builds on the solid PVFS2 modular foundation and includes
advanced features like distributed directories and encryption-based security.
Enhancements such as self-healing, fault acceptance, and redundancy capabil-
ities will be part of v3. In 2011, Omnibond began offering commercial-grade
support for OrangeFS and collaborates continuously with the community on
work toward v3.
10.2 Design and Architecture
10.2.1 Overview
OrangeFS is designed around an object-based server. The server responds
to requests that operate on objects known as \data-spaces." Collections of
these objects are used to implement files, directories, and other file system
structures by storing the data and metadata and provide access to these com-
ponents. A client interface library works with the server to translate file system
operations into the corresponding object manipulations. User interfaces fur-
ther map these file system operations into familiar program APIs. A central
design principle of OrangeFS is its management of asynchronous operations.
The major internal interfaces are all non-blocking. For example, network inter-
action, rather than blocking send and receive operations, has non-blocking
postsend and postreceive operations and test or wait to complete the
posted operations. This structure is reflected throughout the code, particu-
larly in the servers low-level I/O layers (BMI and Trove). OrangeFS servers
do not share any state with each other or with clients. If a server crashes,
another can be easily restarted in its place. Updates are performed without
using locks. The common interface for all file system access is the system inter-
face, which is designed around the Linux virtual file system (VFS) and other
Unix-based operating systems and resembles the request protocol of NFS.
Figure 10.1 shows the architecture of the OrangeFS server and client library
(libpvfs2), mapping the system interface to the low-level storage calls (Trove
layer). The various layers, their function, responsibility, and interaction are
described below.
 
Search WWH ::




Custom Search