Это зависит именно от того, что вам нужно.
Большая часть информации, содержащейся в struct sock (не в сокете struct), полезна только для отладки. Дамп таблицы сокетов TCP содержится в /proc/net/tcp, а также для UDP, IGMP, raw, arp, UNIX-домена. Это простая таблица ascii, содержание которой кратко суммируется заголовками в строке 1 этого вывода:
more /proc/net/tcp
sl local_address rem_address st tx_queue rx_queue tr tm->when retrnsmt uid timeout inode
0: 00000000:228B 00000000:0000 0A 00000000:00000000 00:00000000 00000000 0 0 15159 1 ffff8801a1ee2300 100 0 0 10 0
1: 00000000:CC4B 00000000:0000 0A 00000000:00000000 00:00000000 00000000 0 0 13835 1 ffff8801a1ee0700 100 0 0 10 0
и чуть более подробно описан на странице man proc(5) следующим образом:
/ Proc / нетто / ТСР
Содержит дамп таблицы сокетов TCP. Большая часть информации не используется кроме отладки. Значение "sl" - это хэш-слот ядра для сокета, "local_address" - пара локальных адресов и номеров портов. "Rem_address" - это пара удаленных адресов и номеров портов (если они подключены). "St" - это внутренний статус сокета. "Tx_queue" и "rx_queue" являются исходящей и входящей очередью данных с точки зрения использования памяти ядра. Поля "tr", «tm-> when» и "rexmits" содержат внутреннюю информацию о состоянии сокета ядра и полезны только для отладки. Поле "uid" содержит эффективный UID создателя сокета.
Эта информация читается и более удобно отображается такими командами, как lsof -i или netstat -4.