20-06-2012, 03:49 PM
WebOS
Introduction:
Services such as World Wide Web should be able to grow, shrink, and migrate geographically in response to offered load. Further, Internet services should deliver data to end applications as efficiently as possible. It is known that such Internet services require some common pieces of core functionality, including: Global Name Space: Naming in distributed systems has been a long standing problem. Clients must be able to name desired resources as well as service providers. Cache Coherence: The weak coherency guarantees available in the Internet is sufficient for Web surfing; if the most up to date information is needed, the user simply clicks the reload button. However, many Internet services (i.e. programs vs. people) require a strict coherency guarantees. Fault Tolerance: In the scale of the Internet, we expect individual host failures and network partitions to be the common case. Wide area services must provide techniques for identifying and masking such failures. Security and Authentication: For Internet services to remain viable they must be able to authenticate the identity of clients as well as the identity of peer servers.
Scope:
The project will occupy little space in the hard disk spaces and use small CPU resources. It shall be used at any operating system with a web browser. This wide area application can be used to access remote area systems. It will enable extensions of server functionality to be dynamically loaded onto the client machine. Java’s portability and availability in all major Internet browsers allow distributing these extensions as Java applets. Naming, load balancing, and fail over are performed from the perspective of the client.
Objectives:
Our goals for WFS are the following:
• Cache coherent access to the global name space for unmodified application,
• A fully functional file system interface supporting arbitrary file/directory operations, and
• Performance comparable to standard file systems for cached access.
Key challenges:
Unfortunately, the very simplicity of WFS presents a number of challenges in layering UNIX file semantics on top of HTTP:
1. On a client request for the contents of a directory containing a pre-determined filename (e.g. index.html), HTTP returns the contents of the file rather than the contents of the directory. In this case, WFS presents a single entry for the directory with the same predetermined filename.
2. A second challenge that WFS must address is the limited file statistics exported by HTTP when providing directory information.
Methodology:
The above requirements can be addressed in a consistent and natural way using the file system as the basic abstraction. To validate this claim, we are building WFS, a global cache coherent file system. Given the immense popularity of the Web, it is essential that this file system be compatible with the existing HTTP name space. WFS is implemented as a loadable kernel module and can be mounted just like a normal file system.
S/W & H/W requirements:
• Hardware requirements: 2 personal computers with internet facilities
• Software requirements: Java platform
Innovation / contribution to the field:
In addition to improving the basic file system functionality and performance, the project will simply the implementation of many new distributed applications. It will be a new global file system providing read/write access to the web name space to unmodified UNIX applications.