socket_quickack(3)

socket_quickack3

Turn tcp quick ack mode on or off

Usage

#include <libowfat/socket.h>

int socket_quickack(int s,int value);

Overview

socket_quickack switches TCP Quick ACK mode on (value=1) or off (value=0). If the platform does not support this functionality, returns -1 and sets errno to ENOPROTOOPT (or ENOSYS if the platform does not define ENOPROTOOPT).

TCP Quick ACK mode is on by default because the operating system has to assume it's an interactive connection. In that case, an ACK will be sent quickly after data came in. If your code handles non-interactive server connections, it may make sense to switch Quick ACK mode off, telling the kernel to delay sending ACKs because the server is going to respond to incoming requests anyway, so the ACK can be piggy-backed onto that response, saving useless network traffic.

Normally socket_quickack returns 0. If anything goes wrong, socket_quickack returns -1, setting errno appropriately.

Examples

#include <libowfat/socket.h>

int s;
char ip[4];
uint16 p;

s = socket_tcp4b();
socket_quickack(s);
socket_bind4_reuse(s,ip,p);
socket_listen(16);

Releases

5 releases since Debian 9 (Stretch); the text changed 1 time.

  1. 9–11
  2. 12–13

From libowfat-dev 0.32-5 in Debian 13 (Trixie). Parsed by carta from the page's man source.