Sirius TCP/UDP/IP protocol stack

When two computers need to exchange data and the application programmer does not want to worry about lost packets and jumbled data, it is obvious to choose the TCP protocol for data exchange. Most operating systems have built-in support for this protocol, and when transferring small amounts of data, using the TCP implementation of the OS is a good choice. However, when the number of concurrent sessions or the amount of data to transfer increases, things will grind to a halt. This is where Sirius comes in. Using the architecture of the Cavium OCTEON processor to its max, it can largely extend the TCP capabilities of your system.

The advantages of Sirius:

  • True multi core. Running your Sirius based application on more cores will increase the performance of your system almost linearly;
  • BSD-like socket API. To maintain simplicity, all API calls are non-blocking and events are transferred to the application layer via call-back functions;
  • Use of the TCP acceleration blocks of OCTEON will enable handling hundreds of thousands of connections on your system, instead of several dozen when running on Linux using the built-in TCP stack;
  • The Sirius based application can run as a Simple Executive or as a User Application on Linux;
  • Runs on OCTEON I, II and III;
  • Sirius is written in C++ so your code will be easier to read and maintain. You can find an application note that tells you how to change the OCTEON SDK, so it understands C++ in the white paper section;
  • C-wrapper is available for those programming in C;
  • Example source code for TCP/UDP echo server available;
  • Support for ‘zero-copy’ mode;
  • Hardware accelerated multiple transmission of identical UDP and RAW packets;
  • Support for IPV4, IPV6 and dual stack mode;
  • Support for wolfSSL protocol stack. With Sirius and wolfSSL, you can turn your OCTEON platform into a massive security engine handling hundreds of thousands SSL/TLS connections simultaneously.

Sirius has been developed according to the following RFC's: RFC793 {*}, RFC896 {*}, RFC1122 {*}, RFC2018 {*}, RFC1323 {*}, RFC2001 {*}, RFC2581, RFC2988, RFC5681. Asterisks between brackets ({*}) indicate the RFC has been tested for compliance with an IXIA-ANVL protocol tester.

Sirius is available as a library compiled for your OCTEON device and SDK or as a source code package. You can choose from several support options.

contact us

Request evaluation software for product

Why do we need your information? Because we want to send you a software package that fits your needs!

Name: *

Companyname: *

E-mail: *

Phonenumber: *

Message or comment: *