Network Performance Enhanced Linux
- cloud/product/highlight1/2023/02/13/icon-3.svg Network Performance Enhanced
Get high-throughput network performance out of your Linux servers.
- cloud/product/highlight2/2023/02/13/icon-5.svg Reduced Costs
Get more performance out of your instance also reduces your costs as the machine isn't sitting idle.
- cloud/product/highlight3/2023/02/13/icon-21.svg Simple to Use
Our images are sold through the AWS and Azure Marketplaces making it easy to use the images without have to take any additional steps.
Ready to learn more?
AWS Machine Images
Machine Images on the AWS Marketplace
Download our machine images directly from the AWS Marketplace.
What distributions do you support?
Nixtune is configured for Ubuntu, Debian, RedHat, and Rocky Linux (RedHat clone). We also build images that contain additional software such as Redis and Nginx which benefit from Nixtune’s tuning.
What tuning does Nixtune contain?
- Reducing memory garbage collection. We minimize the amount of memory that Linux keeps free to reduce the time that Linux will spend reclaiming memory. Malloc calls will occur faster, and hot paths will be stored in memory longer.
- Increasing the write buffer, select backlog, and socket receive buffers. We increase the write buffer for TCP resulting in larger allocations per socket connection. By allocating larger minimums the kernel doesn’t have to go back and realloc memory to fit whatever data is being sent. This should reduce latency as malloc is reduced.
- Increase TCP wait pool size. This prevents DDoS attacks by increase the number of sockets in the wait bucket after a socket has been closed.
- Increasing the socket connection pool size. There are 64,511 ports for sockets to bind to, but the default installations set this to be much lower. If there are a lot of connections that are created on high throughput network services an individual machine handles much lower load. By increasing this size an individual machine can handle many, many more connections.
- Reduce time until TCP socket recycle. This configuration works with the increasing socket connection pool size. The default kernel socket timeout is 120 seconds. This means from the moment a socket is closed, the kernel waits 120 seconds to recycle the socket waiting for any lingering packets. The problem is that this blocks new connections from being created leading to servers that are overpowered and underperforming. By reducing this we are able to generate high throughput.
The combination of the configuration leads to highly optimal, high throughput Linux servers that can handle millions of connections without a sweat.