You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
39 lines
1.2 KiB
Groff
39 lines
1.2 KiB
Groff
.TH socket_quickack 3
|
|
.SH NAME
|
|
socket_quickack \- turn TCP Quick ACK mode on or off
|
|
.SH SYNTAX
|
|
.B #include <libowfat/socket.h>
|
|
|
|
int \fBsocket_quickack\fP(int \fIs\fR,int \fIvalue\fR);
|
|
.SH DESCRIPTION
|
|
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.
|
|
|
|
.SH EXAMPLE
|
|
#include <libowfat/socket.h>
|
|
|
|
int \fIs\fR;
|
|
char \fIip\fR[4];
|
|
uint16 \fIp\fR;
|
|
|
|
\fIs\fR = socket_tcp4b();
|
|
socket_quickack(s);
|
|
socket_bind4_reuse(s,ip,p);
|
|
socket_listen(16);
|
|
|
|
.SH "SEE ALSO"
|
|
socket_fastopen(3)
|