C2PC Gateway Accelerator (CGA)
The C2PC Gateway Accelerator (CGA) is designed to accelerate the C2PC Variable Data Exchange (VDX) Protocol over low bandwidth and/or high-latency networks. The goal of CGA is to help C2PC Clients and C2PC Gateway machines retain an up to date track picture even when deployed across slow network links. Although CGA can be used on any IP enabled network to reduce bandwidth congestion caused by C2PC data exchanges, it is especially useful at improve situation awareness by decreasing latencies across radio-linked networks or satellite networks.
CGA intercepts VDX messages and converts them to a highly efficient and compressed protocol named Differencing Variable Data Exchange (DVDX). The DVDX messages are then routed over the slow network to another machine running an instance of the CGA. This downstream CGA explodes the DVDX packets into their original VDX format and passes them along to any C2PC Gateways or C2PC Clients connected to the CGA.
Network Configuration Roles
CGA is hightly configurable and can be deployed in various roles. Each CGA instance can serve different types of connections. For example it can run in a pure VDX mode, a pure DVDX mode or it can serve clients requesting both DVDX and VDX messages. In any configuration, a CGA instance can serve C2PC Clients, C2PC Gateways, or both. This flexibility ensures that CGA can be deployed in various network topologies. In short, CGA is transparent to C2PC Clients and Gateways. A sample deployment topology illustrates the various roles CGA can assume.
Current performance metrics indicate that DVDX yields between a 6 to 1 to a 10 to 1 bandwidth compression ratio over VDX. The level of compression depends on the track type and the operation being performed. Performance graphs are available from the performance page.
CGA is deployed as a web application written in Java. It is currently deployed on the open-source Tomcat application server. Since CGA deploys as a standard web application, it could be deployed on other enterprise application servers running on both Windows and Linux. It also utilizes the open-soucre Apache Derby database server as an underlying data store. Both Tomcat and Derby were chosen to reduce deployment costs and simplify installations. Both are installed as a Windows service from a simple Windows installer. CGA comes bundled as a Windows MSI installer.
A plugin module allowing third party developers to access funcionality provided by the CGA will be available when it is officially released.
Requirements for the CGA project were identified by Lewis Gutman, program lead for the Office of Naval Research's HFIP program. Program specifics and contact information are available at the program information page.