Как пассивно следить за потерей пакета tcp? (Linux)

Как я могу пассивно отслеживать потерю пакетов при подkeyении TCP к / с моей машины?

В принципе, мне нужен инструмент, который сидит в backgroundовом режиме и наблюдает за TCP ack / nak / re-transmits, чтобы генерировать отчет, в котором одноранговые IP-адреса «кажутся» очень тяжелыми.

Большинство таких вопросов, которые я нахожу в SF, предлагают использовать такие инструменты, как iperf. Но мне нужно отслеживать подkeyения к / из реального приложения на моей машине.

Являются ли эти данные просто сидящими в stackе Linux TCP?

5 Solutions collect form web for “Как пассивно следить за потерей пакета tcp? (Linux)”

Для общего смысла шкалы вашей проблемы netstat -s будет отслеживать общее количество повторных передач.

 # netstat -s | grep retransmitted 368644 segments retransmitted 

Вы можете использовать grep для segments чтобы get более подробный view:

 # netstat -s | grep segments 149840 segments received 150373 segments sent out 161 segments retransmitted 13 bad segments received 

Для более глубокого погружения вы, вероятно, захотите запустить Wireshark.

В Wireshark установите ваш filter на tcp.analysis.retransmission чтобы уviewеть повторные передачи по streamу.

Это лучший вариант, который я могу придумать.

Другие тупики исследованы:

  • Инструменты netfilter / conntrack, похоже, не поддерживают повторные передачи
  • stracing netstat -s показал, что это просто printing /proc/net/netstat
  • столбец 9 в / proc / net / tcp выглядит многообещающим, но, к сожалению, он, похоже, не используется.

Эти статистические данные находятся в / proc / net / netstat, и collectl будет отслеживать их для вас либо интерактивно, либо записывать на диск для последующего воспроизведения:

 [root@poker ~]# collectl -st waiting for 1 second sample... #<------------TCP-------------> #PureAcks HPAcks Loss FTrans 3 0 0 0 1 0 0 0 

Конечно, если вы хотите viewеть рядом с сетевым трафиком, просто вkeyите n с -s :

 [root@poker ~]# collectl -stn waiting for 1 second sample... #<----------Network----------><------------TCP-------------> # KBIn PktIn KBOut PktOut PureAcks HPAcks Loss FTrans 0 1 0 1 1 0 0 0 0 1 0 1 1 0 0 0 

Вы можете использовать инструмент ss для получения подробной статистики TCP:

 $ /sbin/ss -ti 

В Debian используйте apt-get install iproute для получения двоичного кода.

Похоже, что некоторые ребята из Университета Северной Каролины (UNC) создали утилиту для расследования именно этого:

методология

TCP – это classический пример устаревшего протокола, который может быть изменен. К сожалению, оценка чего-то фундаментального, как механизм обнаружения и восстановления потерь TCP, не является исчерпывающей. Наша цель – выполнить полную реалистичную оценку потерь TCP и ее влияние на performance TCP.

Я полагаюсь на пассивный анализ реальных TCP-соединений для достижения требуемого уровня детализации и реализма в моем анализе.

http://www.cs.unc.edu/~jasleen/Research-passivetcp.htm#Tool

Инструмент

objectiveю этого инструмента является предоставление более полных и точных результатов для идентификации и характеризации сегментов вне последовательности, чем те, которые предоставляются с помощью предыдущих инструментов, таких как tcpanaly, tcpflows, LEAST и Mystery. Наша методология classифицирует каждый сегмент, который отображается вне очереди (OOS) в трассировке пакетов, в одну из следующих категорий: переупорядочение сети или повторную передачу TCP, вызванную одним из тайм-аутов, дубликатов ACK, частичных ACK, выборочных ACK или неявного восстановления. Кроме того, каждая повторная передача также оценивается по необходимости или less.

Я не буду говорить, что это качество продукции. Раньше я создавал быстрые scripting perl для хранения кортежей ip / port / ack в памяти, а затем сообщал о дублированных данных при сканировании вывода pcap, похоже, что он обеспечивает более тщательный анализ.

Вы можете посмотреть утилиту dropwatch .

  • Ubuntu 14.04 TCP установил записи hash-таблицы
  • Поддерживает ли MSS TCP MSS несоответствующий MTU внутри LAN?
  • Устранение неполадок TCP-клиента от клиента OpenVPN к serverу; Но пинг, traceroute Work
  • Как настроить tcp wrapper
  • Iptables - Как сопоставить TCP-пакет в соответствии со значением параметра tcp?
  • Windows Server 2008 - невозможно связать любой TCP-порт
  • Как отkeyить «медленный старт» в Linux 2.6.18-164.2.1.el5
  • SNORT предупреждает только о inputящем трафике
  • Маршрутизация streamа Nginx TCP на основе IP-адреса источника
  • Поиск so_sndbuf текущего processа
  • Почему я получаю длинную задержку подkeyения TCP для подkeyения в локальной сети (через крест!)?
  • Interesting Posts

    Как установить ограничение вращения журнала для журналов CF8-out?

    Каков самый компактный способ хранения защищенного паролем keyа RSA?

    проблемы с зависимостями при выполнении yum update

    Win7 – регистрация домена в домене локального профиля

    Исходящий трафик маршрутизатора Cisco

    Пользователи не могут отправлять SMTP после обновления до Exchange 2013

    Автоматический вызов сценария при подkeyении нового пользователя и пропускной способности. Формирование соединения.

    Установка SQL Server на Win 7

    Как настроить удаленный input и разрешение DNS в среде малого бизнеса с централизованным serverом

    Установка Java Runtime для serverа: что-то лучше, чем стандартный пакет JRE?

    Можете ли вы использовать Powershell удаленно для сброса паролей AD для Server 2008

    Как просмотреть результаты тестов в Гудзоне?

    Автоматическое повторное выдача certificateа

    Jailkit не блокирует SFTP, работая в SSH

    Миграция части сервисов моего домена в Heroku, часть на моем VPS