NASDAQ transport protocols on the JVM
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
.github
applications
libraries
scripts
tests
.gitignore
.travis.yml
CHANGELOG.md
LICENSE.txt
README.md
pom.xml

README.md

Nassau

Nassau implements NASDAQ transport protocols on the JVM.

You can use Nassau to connect to Nasdaq, EBS, SIX Swiss Exchange, and other network endpoints that use NASDAQ transport protocols. You can also use it to provide your own services using these protocols.

Nassau is designed to exhibit low and predictable latency. To achieve this, it supports non-blocking, zero-copy networking and does not allocate any memory on message reception or transmission. The SoupBinTCP implementation can achieve 4.8 µs round-trip time (RTT) over the loopback interface.

Nassau requires Java Runtime Environment (JRE) 8 or newer.

Protocols

Nassau implements the following protocols:

  • NASDAQ SoupBinTCP 3.00: a reliable transport protocol for applications requiring delivery of delimited, sequenced messages between two endpoints.

  • NASDAQ MoldUDP64 1.00: a reliable transport protocol for applications requiring delivery of delimited, sequenced messages from one sender to many receivers.

  • NASDAQ BinaryFILE 1.00: a file format for storing delimited messages.

See the Wiki for links to the protocol specifications.

Download

See the latest release on GitHub.

Modules

Nassau contains the following libraries:

  • Core implements the NASDAQ transport protocols.

  • Utilities contains utility methods for working with NASDAQ transport protocols.

Nassau contains the following applications:

Nassau contains the following test applications:

Build

Build Nassau with Maven:

mvn package

Links

For more information on Nassau:

License

Copyright 2014 Jussi Virtanen.

Released under the Apache License, Version 2.0. See LICENSE.txt for details.