Как узнать, сколько раз происходит повторная передача TCP?

Как узнать, сколько раз происходит повторная передача TCP?

Я использую 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

Связанный контент