Utenzi maintained a Research and Development department to develop advanced technologies in support of its Managed Service Provider business and customers. It was a privilege to work with the team, which consisted of six of the brightest software developers I have ever known.

The department was in charge of developing a cross-platform distributed file system, the Charon Filesystem (CXFS for short). CXFS was designed to make intelligent decisions about replication across a hierarchy of redundant network servers, to allow support for multiple realtime read/write servers.

CXFS design goals included:


CXFS includes a journaling component that tracks pending and completed operations. Journaling prevents volume rescans on system crashes. In addition, it is the mechanism used to replicate data across synchronized volumes. Journal entries are propagated across the network just as if they had come from the local volume. When writes are propagated throughout the network, CXFS performs intelligent write collision resolution based on server's current priority and availability. Transactions can then be rolled back as needed.

The replication was designed to be accomplished down at the block level, not file level, so that network traffic would be reduced to replicating data that actually changed. If a server experiences network connectivity problems, it is made inactive and read-only, until it can be later re-synchronized and re-inserted into the network.

A plug-in architecture was provided for encryption engines. The encryption was designed to use a key-exchange protocol similar to SRP, for establishment of secure sessions across a potentially untrusted network.

The initial implementation of CXFS was targeted toward Unix, with support for Solaris, Linux, BSD, HPUX, etc. I was involved in taking the filesystem to the Windows platform. The major design goal was to be able to host volumes on any supported platform, with complete binary compatibility, yet provide a volume management environment that was familiar to administrators of the target platform. For this reason, we chose to host CXFS volume management on the Windows platform within the Microsoft Management Console (MMC), where administrators typically perform a wide range of administrative tasks.

CXFS is still under development today.