Student Projects ("afstudeerprojecten")

There are lots of opportunities for students to participate in the Globe project. Rather than composing a detailed list of project descriptions (which is outdated in no time), here are descriptions of the main topics we are now working on. In all cases, if you need further info, either read the introductory papers, or contact Maarten van Steen.
 

Scalable Objects & Compositions (Arno Bakker)

Devising distributed shared objects on paper is easier than actually getting them to work. We are currently doing research on practical scalability issues for distributed objects, with a strong emphasis on replication techniques. For example, in order to let replicas communicate with each other, we may need scalable and reliable multicasting facilities. Building reliable multicasting facilities is hard enough, let alone constructing scalable solutions. Our current approach is to set up a generic framework that will allow us to construct hierarchical solutions in which different (new and existing) algorithms can be embedded. At the same time, we are taking a look at optimistic algorithms (i.e. algorithms that assume multicasting succeeded unless a receiver starts complaining). The main goal is merely to gain insight in scalability problems.

Scalable multicasting is related to having lots of replicas distributed worldwide. One particular problem that we are tackling is what happens when a replicated object invokes another replicated object. Clearly, the invocation cannot be executed once for each invoking replica (just imagine we are updating a bank account). Testing proposed solutions by implementing them on the DAS and evaluating performance is one way of getting an idea how distributed objects behave worldwide.

The Globe Location Service (Gerco Ballintijn)

Part of Globe deals with tracking objects worldwide. We are currently developing a worldwide location service that accepts a location-independent object identifier as input and returns one or more addresses where an object can be contacted. The service is constructed as a huge search tree consisting of millions of nodes distributed worldwide. Each node basically consists of three parts: So far, students have been prototyping the database and the communication layer. We have also made a transparent interface to existing Web browsers that lets you use what we call Globe URLs. We are now cooperating with Oce in building a "real" prototype system in Java. A first version is up and running, but there's still a lot of work to do.

A Distributed Web Service (Ihor Kuz)

To prove that our approach actually works, we are developing a wide-area distributed Web service in which pages are constructed as distributed shared objects. Pages can be replicated, cached, etc. The novel aspect of our approach is that how to replicate or cache pages can be decided per page. In contrast, existing Web services apply the same policy to all their pages. Our Web service will be implemented on the DAS, running across all four clusters. Of course, we'll experiment with other platforms as well, for example by running the system on a collection of existing Web servers.

Most of the current work concentrates on the question how to implement distributed shared objects in Java. We are already have a Globe Interface Definition Language (IDL) that allows us to specify interfaces, but there is no proper IDL-to-Java compiler yet available. Also, our IDL definition needs to be extended to support generation of stubs as in RPC systems.
 

Security (Bruno Crispo)

Finally, we are looking into the security aspects of Globe. No worldwide system can do without security. Research in this area has only recently started, but there are already lots of projects you can do. Get in touch with Bruno if this is what you want to do.