3 ответов:
Если вы хотите увидеть размер буфера в терминале, вы можете взглянуть на:
/proc/sys/net/ipv4/tcp_rmem(для чтения)/proc/sys/net/ipv4/tcp_wmem(для записи)Они содержат три числа, которые являются минимальными, значениями по умолчанию и максимальными значениями объема памяти (в байтах) соответственно.
для получения размера буфера в программе c / c++ ниже приведен поток
int n; unsigned int m = sizeof(n); int fdsocket; fdsocket = socket(AF_INET,SOCK_DGRAM,IPPROTO_UDP); // example getsockopt(fdsocket,SOL_SOCKET,SO_RCVBUF,(void *)&n, &m); // now the variable n will have the socket size
атомарный размер 4096 байт, максимальный размер 65536 байт. Sendfile использует 16 каналов каждый размером 4096 байт. cmd: ioctl(fd, FIONREAD, &buff_size).
Comments