Отображение статистики IP и TCP для интерфейса (netstat -s с интерфейсом)
В Linux есть возможность отображать статистику протокола с помощью netstat -s. Вывод выглядит примерно так:
Выдержка:
7487 times unabled to send RST due to no memory
TCPDSACKIgnoredOld: 817
TCPDSACKIgnoredNoUndo: 7246527
TCPSpuriousRTOs: 4583587
TCPSackShifted: 15825
TCPSackMerged: 455582
Но они накапливаются во всех сетевых интерфейсах. Есть ли способ увидеть эту статистику по каждому интерфейсу? Я знаю, что есть статистика уровня пакета в /sys/class/net/$INTERFACE/statistics
, но не смогли найти какие-либо связанные с протоколом.
2 ответа
Netstat -s - это более интуитивное отображение /proc/net/netstat
, Счетчики в нем глобальные, а не на интерфейс. Чтобы получить такую информацию, вам нужно использовать / написать инструмент мониторинга, использующий libpcap.
Код, который захватывает эту статистику, вызывается в различных связанных кодовых путях TCP/UDP/IP и увеличивает MIB SNMP.
Там не хранится информация об интерфейсе или каких-либо свойствах соединения, таких как порт или IP, это всего лишь основной счетчик времени, когда был введен код.
netstat -s
просто читает эти счетчики.