UbiquityProject.com
Ubiquitous Computing (20)
Technologies (14)
Research (44)
Products
UbiqDB (3)
UFS
Steps
Problems
Competition
Web MetaServer (2)
/ UbiquityProject.com / Products / UFS
Ubiquitous File System: Global File Sharing, Version Control
The Ubiquitous File System (UFS) is simply a globally shared file system for spontaneously created user groups and arbitrary document types. Specifically, UFS offers the following major features:

>

Global File Sharing: Files stored on UFS volumes are made available around the world, subject to Ubiquity's extensive decentralized security model.

>

Version Control: All documents within UFS are inherently versioned, providing cutting-edge concurrency control to all documents, of all types.

>

Peer-to-Peer (P2P) Redistribution: Like all data in Ubiquity, UFS documents are redundantly cached and hosted in a globally load-balanced manner. Thus, popular files are naturally more widely cached such that no single UFS client is overloaded by demand spikes.
Steps
In short, UFS aims to be the simplest possible implementation of a globally-accessible file system. Using UFS consists of the following general steps for all participants:

>

Install wherever access to the global UFS network is needed.

>

Specify version control preferences and a synchronization schedule.

>

Mount remote directories into the local UFS directory tree.

>

Work with shared files using traditional tools and techniques.
Once configured, UFS will transparently synchronize local and remote directories such that all users see the same versions of the same files. In the event simultaneous changes occur to shared files, UFS will employ Ubiquity's advanced multi-master replication technology to detect and resolve any conflicts that may arise.
Problems
Although UFS is general-purpose enough to play a role in virtually any file-based workflow, there are several usage scenarios where UFS is particularly valuable:

>

Collaborative Authoring: As telecommuting, satellite offices, and loose partnerships become increasingly common, workers more often collaborate for document creation across the Internet. With UFS, workers simply publish documents to shared directories for distributed version control.

>

Secure Publishing: Documents published to UFS directories are subject to an extensive decentralized security model, complete with access logging and micropayment levying. Though Ubiquity's agent-based infrastructure, additional security technologies as watermarking and encryption can be employed to tightly constrain unauthorized use.

>

Content Sharing: As evidenced by the massive popularity of existing music and content sharing networks, there is great need for widespread multimedia sharing ability. UFS naturally provides this ability through its decentralized security and P2P distribution models. Additionally, new digital rights management (DRM) technologies can be easily deployed with Ubiquity's agent-based infrastructure in the tit-for-tat battle to combat illegal copyright infringement.
In the most general sense, UFS allows for any file to be shared with any user, anywhere in the world.
Competitive Landscape
The Ubiquitous File System is by no means the first product designed to tackle the complex problem of global data sharing. Some alternate mechanisms are discussed below:

>

Napster, Gnutella: The words "file sharing" naturally evoke the images of Napster and Gnutella, the two most popular music and global file sharing systems available today. While unseating either of these champions would be both difficult and of questionable value, UFS differs both in purpose and implementation from these applications. Both Napster and Gnutella make the general assumption that most users have basically the same files, and as such exposing access to a random subset of the total file base is "good enough" for its purposes. UFS, on the other hand, allows full access to the complete set of all user's files. However, it does so at the expense of global indexing, instead relying upon alternate mechanisms (such as email and the WWW) for users to advertise files.

>

Groove: Ray Ozzie's latest venture, Groove, is similar to UFS in design, but not in purpose. Both Groove and UFS have entirely decentralized architectures, but focus on either workspace collaboration or file sharing, respectively. Groove seeks to dominate the user's primary workflows, requiring the use of new tools and techniques by all participants in a "one stop shop" for all things collaboration. Alternatively, UFS focuses exclusively on the low-level problems of file sharing, emphasizing integration with rather than replacement of existing collaboration techniques. Additionally, through this more constrained focus on file sharing, UFS is able to provide a more robust and powerful solution than a general-purpose application like Groove can achieve.

>

Network File System (NFS): The original choice for network-based file sharing, NFS is designed for primarily academic and scientific Unix environments with expert administration and strong network infrastructures. Due to it's lack of any sort of multi-master replication ability, NFS performs poorly across slow and unreliable wide area networks (WANs), or in the event of simultaneous file access. Additionally, with its reliance upon traditional centralized security models, NFS is inappropriate for highly-decentralized, extra-enterprise environments.

>

Email Attachments: In practice, today's most widely used collaboration platform is through email attachments. Despite leading to a version control nightmare and forcing mail servers to act as file servers, email's simplicity and pervasiveness make it the only reasonable choice for non-expert users across disparate enterprises. UFS seeks to augment these existing practices, augmenting email's ease-of-use with the Ubiquitous File System's extensive security and version control technologies.

>

World Wide Web (WWW): No dicussion of global file sharing would be complete without mention of the WWW itself. Web technolgoies allow for instant content publication of arbitrary data types on a universally adopted platform. However, web architectures are essentially one-way. Bidirectional data sharing is virtually impossible with existing web technologies. As such, UFS intends to utilize the web for what it's designed to do: providing a simple mechanism to advertise hyperlinks to other documents. Yet, rather than hosting the documents themselves via the WWW, those hyperlinks instead lead to UFS. In this way, both the WWW and UFS work together in synnergistic fashion.

>

Visual Source Safe (VSS): The most popular version control system for the Windows platform, VSS provides the basic features of a version control system for many document types. However, at its core VSS inherits the limitations of the Windows networked file system, specifically a single-enterprise focus and a centralized security model. Just as the base Windows file system is inadequate for global file sharing, VSS is inadequate for global version control.

>

Concurrent Versions System (CVS): A staple for most all Unix-based software development, CVS provides effective version control both within and across enterprises. However, CVS is reliant upon a very centralized security model and document repository. That, and its arcane complexity puts it outside the reach of many intermediate programmers, not to mention most novice knowledge workers. for these reasons, CVS is not a sufficient platform for global document sharing.
Although there are many products and technologies with features similar to UFS, none approach the problem from quite the same angle. Indeed, creating a product from scratch to compete with UFS would be prohibitively expensive, as UFS relies upon the extensive technology provided by the Ubiquity platform. Without Ubiquity, UFS's solution to the shared document problem would be simply impossible.