Например, в / proc / net / sockstat TCP-сокет в CLOSE_WAIT считается как 'inuse' или 'alloc'?
В исходном коде ядра net / ipv4 / proc.c я вижу, что sockstat_seq_show вызывается при получении информации из / proc / net / sockstat.
Однако я не вижу, что отличает сокет от распределения (alloc) и «inuse»
[me@myhostname ~]$ cat /proc/net/sockstat
sockets: used 481
TCP: inuse 52 orphan 1 tw 66 alloc 62 mem 12
UDP: inuse 11 mem 5
UDPLITE: inuse 0
RAW: inuse 0
FRAG: inuse 0 memory 0
В net / tcp_states.h перечисляются возможные состояния как таковые
enum {
TCP_ESTABLISHED = 1,
TCP_SYN_SENT,
TCP_SYN_RECV,
TCP_FIN_WAIT1,
TCP_FIN_WAIT2,
TCP_TIME_WAIT,
TCP_CLOSE,
TCP_CLOSE_WAIT,
TCP_LAST_ACK,
TCP_LISTEN,
TCP_CLOSING, /* Now a valid state */
TCP_NEW_SYN_RECV,
TCP_MAX_STATES /* Leave at the end! */
};
Что из перечисленного считается «inuse», а какое - «alloc»?