Я работаю над прокси для linux(C++), который, помимо прочих функций, отслеживает соединения tcp и связывает их с pid процесса. Для этого я получаю inode в /proc/net/tcp, а затем разбираю все proc в /proc/pid/fd, чтобы увидеть, какой процесс его содержит. Довольно просто.
Проблема в том, что иногда клиенты могут открывать и закрывать соединение быстрее, чем прокси-сервер может анализировать fds процессов. Я заметил это поле - "расположение сокета в памяти", которое присутствует в /proc/net/tcp https://www.kernel.org/doc/Documentation/networking/proc_net_tcp.txt
и мне интересно, может ли это как-то помочь, все это очень плохо документировано, и я не нашел в Интернете никаких ресурсов, связанных с этим.
У меня такие вопросы: что именно подразумевается под расположением памяти сокета, как к ней получить доступ и что там можно найти?
Спасибо.