Я использую Debian Wheezy на платформе ARMHF и осуществляю большую часть коммуникаций через довольно ненадежные сотовые сети. Есть ли способ прочитать количество повторных передач, которые стек TCP сделал с момента загрузки? Также было бы полезно отслеживать количество ошибок контрольной суммы TCP.
решение1
Если вам нужно регулярно проверять эти цифры (или даже регистрировать их где-то), возможно, netstat
вам поможет следующее:
https://serverfault.com/questions/318909/how-passively-monitor-for-tcp-packet-loss-linux
Вы можете зарегистрировать вывод и проанализировать его позже.
Если вам нужно что-то посмотреть в реальном времени, возможноtcptraceотвечает всем требованиям.
Альтернативой может быть использование простого старогоtcpdumpчтобы сбросить ваш трафик, а затем использовать более сложный аналитический инструмент на вашей рабочей станции для его анализа, напримерWireshark.
tcpdump
, netstat
и tcptrace
все они существуют для Debian wheezy на armhf.
решение2
Если вы установите и включите пакет "sysstat" и включите SNMP для sadc. Затем вы можете получить информацию о повторной передаче TCP с помощью следующей команды. И у вас также будет настраиваемый объем исторических данных (ниже приведен вывод из Ubuntu 13.10).
# sar -n ETCP
Linux 3.11.0-12-generic (hamilton) 2014-10-14 _x86_64_ (2 CPU)
16:05:01 atmptf/s estres/s retrans/s isegerr/s orsts/s
16:15:01 0,00 0,00 0,00 0,00 0,00
Average: 0,00 0,00 0,00 0,00 0,00