OpenFAST is a 100% Java implementation of the FAST Protocol (FIX Adapted for STreaming). The FAST protocol is used to optimize communications in the electronic exchange of financial data. OpenFAST is flexible and extensible through high volume - low latency transmissions.
The FAST protocol uses a data compression algorithm to decrease the size of data by two processes.
First Process: Field Encoding - Data the is simliar or redundant is removed.
Second Process: Transfer Encoding - Serialize remaining data through binary encoded.
The FAST protocol also uses templates to enhance data compression and decompression. The only specification among the templates is that the creator and end-user must agree upon a template before data can be streamed. Any template guide may be used, such as XML or a basic text file.
One of the main goals of OpenFAST is to provide an open implementation of fast that is easy to understand.
Optimizations will be made where it does not compromise the readability or architecture of the API.
OpenFAST is implemented using a generic messaging model. There aren't any specific message protocols currently
built-in. There is a tentative plan to create an extensions module for OpenFAST that will support different
messaging protocols with at least support for FIX. Keep checking back for more information.
SCP 1.0 and SCP 1.1 have been implemented. There aren't any security mechanisms currently defined in either
session protocol. If you are having trouble integrating security with OpenFAST, feel free to contact us at
support@openfast.org.