How it Works
Collanos Workplace is built on peer-to-peer technology, similar to Skype™ internet telephony and popular music sharing networks. The solution stores the data of shared workspaces securely on the computers of all participating team members. Members can even work from behind firewalls thanks to a special Relay service that helps routing traffic in these situations. All the communication between users is encrypted and transmitted securely.
Collanos' Transport Layer and Replication Engine are built atop the JXTA protocol stack. We implemented both basic P2P services such as Peer Discovery, Presence Awareness and Query/Response messaging protocol and application services such as Member Invitation, Content Replication, and Workspace Management using the JXTA Java SE libraries.
We chose JXTA for a number of reasons: Its clean conceptual design and implementation independence, a flexible open-source license, backing by industry leader Sun Microsystems, and its realistic vision to become an open standard for P2P services.
More information on JXTA can be found at http://www.jxta.org.
*JXTA is a trademark of Sun Microsystems, Inc. in the U.S. and other countries.
Professional P2P Network
A peer-to-peer (P2P) network (see Figure 1) relies primarily on the computing power and bandwidth of the participants in the network and not on a relatively small number of central servers. P2P networks are often used for connecting peers in an ad hoc manner, as in the case of those currently being used by a number of popular applications. Sharing content such as audio, video or any other binary data format is very common. Real-time data streams for telephony traffic also use P2P technology.
A pure P2P network does not differentiate between end-user clients and central servers, but is based on the notion of equal peers that interact with each other. Every peer acts both as “server” and “client”. This network topology differs from the hierarchical client-server model (see Figure 2), where all communication is is managed by a central server.
Replicated Team Workspaces
One of Collanos’ core concepts is the notion of shared workspaces. All the data is stored only on the computers of team members. There is no central file server or data repository. Furthermore, Collanos is not simply providing access to other team members, but replicating the entire content of a workspace with all the members. Every team member has everything. An algorithm running in the background is transparently keeping the workspaces of all team members synchronized, by automatically replicating every change with all other team members (Figure 3).
The main advantage of this “continuously controlled full redundancy” is the ability to work offline. At any time you can disconnect from the internet and continue your work (e.g. while being on a plane for several hours). All changes will be captured and stored locally on your computer (Figure 4). As soon as you get back online (e.g. when accessing the wireless hotspot at the airport), all changes will automatically be sent to the other team members.
Relaying Traffic around Firewalls
When a computer is located behind a firewall, it is normally not visible from the outside of that protected network segment, which is of course the very purpose of the firewall, in the first place. In a P2P network, this would normally block any TCP/IP communication from entering the network. Typically the user (or its administrator) would then configure the firewall to make an exception for specific applications, e.g. by allowing “Collanos Workplace” to access the Internet through the required ports.
Furthermore, Collanos can even work when you are behind firewalls that you don’t control directly! For instance, this could easily be the case for a consultant working from within the office network of a client he is visiting. In this particular example, Collanos Workplace is automatically changing its communication protocol from TCP/IP (using ports 9700/9701) to HTTP (using port 80). This protocol/port combination is open on most firewalls, because it is needed to access normal Web pages. With the help of an outside Relay Service, all traffic can now be routed to the other peers transparently (see Figure 5). Even though this mode of operation is much slower, it is actually the only way to work from behind fixed firewalls, when only HTTP and Port 80 are open.
All communication between team members and all workspace content that is replicated between all participating peers is encrypted using the secure 256-Bit Advanced Encryption Standard (AES). Whereas most common e-mail communications are not encrypted, therefore, not secure, Collanos’ security levels are very much in line with standards applied by banking software systems.