Как диагностировать локальные сетевые (проводные) теряющие пакеты?

25823
Ian Boyd

Мой встроенный гигабитный Ethernet семейства Realtek RTL8168B / 8111B теряет пакеты (около 8% при проверке связи с любым другим устройством в локальной сети).

В журналах событий Windows нет событий, связанных с TCPIP / ICMP или ошибками кадров. Я использовал инструмент Windows Performance Monitor, чтобы наблюдать за событиями в категории «Сетевой интерфейс», надеясь увидеть какой-либо признак потери пакета. я не смог найти ни одного

Может ли кто-нибудь придумать способ «увидеть» потерю пакета как диагностическое состояние, а не пинговать и смотреть, как ответы не возвращаются? Если я могу найти что-нибудь в Windows, где потеря пакета возвращается к чему-то другому (ошибка crc, ошибка контрольной суммы, проблема фрагментации и т. Д.), Возможно, я смогу диагностировать это.


Это новая машина, и я предполагаю, что проблема в некоторых параметрах конфигурации в драйвере:

  • Скорость и дуплекс : автоматическое согласование
  • Управление потоком : отключено
  • Получите буферы : 512
  • Буферы передачи : 128

  • Прерывание модерации : включено

  • Масштабирование на стороне приема : включено
  • Приоритет и VLAN включены : Приоритет и VLAN включены

  • Автоотключение гигабит (энергосбережение) : отключено

  • Автоотключение PCIe (энергосбережение): отключено
  • Автоматическое отключение PHY (энергосбережение) : отключено
  • Зеленый Ethernet : отключен

  • Выключение Wake-On-Lan : включено

  • Sleep WOL Энергосбережение : отключено

  • Разгрузка контрольной суммы IPv4 : Rx и Tx включены

  • Разгрузка контрольной суммы TCP (IPv) : Rx и Tx включены
  • Разгрузка контрольной суммы TCP (IPv6) : Rx и Tx включены
  • Разгрузка контрольной суммы UDP (IPv) : Rx и Tx включены
  • Разгрузка контрольной суммы UDP (IPv6) : Rx и Tx включены
  • Jumbo Frame : отключено
  • Большая отправка разгрузки (IPv4) : включена
  • Большая отправка разгрузки v2 (IPv4) : отключена
  • Большая отправка разгрузки v2 (IPv6) : включена

я попытался заставить Speed ​​& Duplex на 100 Мбит / с Full Duplex (что и есть), но безуспешно.

2

5 ответов на вопрос

4
moonpoint

Realtek предлагает утилиту сетевой диагностики для сетевой карты. Найдите ссылку «Программа диагностики Windows» в разделе « Драйверы и утилиты программного обеспечения» . Есть несколько снимков экрана для программного обеспечения в Realtek Ethernet Diagnostic Software .

Команда netstat, входящая в состав Microsoft Windows, предоставляет ограниченную информацию. netstat -sКоманда предоставит дополнительную информацию об ошибках. Например, что касается возможности проблемы фрагментации, существует счетчик «Datagrams Failing Fragmentation».

C:\>netstat -s  IPv4 Statistics  Packets Received = 265412964 Received Header Errors = 0 Received Address Errors = 5987902 Datagrams Forwarded = 0 Unknown Protocols Received = 2 Received Packets Discarded = 571613 Received Packets Delivered = 292690610 Output Requests = 144483584 Routing Discards = 0 Discarded Output Packets = 906 Output Packet No Route = 0 Reassembly Required = 205 Reassembly Successful = 95 Reassembly Failures = 0 Datagrams Successfully Fragmented = 0 Datagrams Failing Fragmentation = 0 Fragments Created = 0  IPv6 Statistics  Packets Received = 8484877 Received Header Errors = 0 Received Address Errors = 0 Datagrams Forwarded = 0 Unknown Protocols Received = 0 Received Packets Discarded = 373336 Received Packets Delivered = 10041013 Output Requests = 16704131 Routing Discards = 0 Discarded Output Packets = 1889 Output Packet No Route = 171 Reassembly Required = 0 Reassembly Successful = 0 Reassembly Failures = 0 Datagrams Successfully Fragmented = 0 Datagrams Failing Fragmentation = 0 Fragments Created = 0  ICMPv4 Statistics  Received Sent Messages 243917 46542 Errors 0 0 Destination Unreachable 19704 22407 Time Exceeded 177624 0 Parameter Problems 0 0 Source Quenches 0 0 Redirects 0 0 Echo Replies 445 23180 Echos 46144 955 Timestamps 0 0 Timestamp Replies 0 0 Address Masks 0 0 Address Mask Replies 0 0 Router Solicitations 0 0 Router Advertisements 0 0  ICMPv6 Statistics  Received Sent Messages 84300 75766 Errors 0 0 Destination Unreachable 16638 18334 Packet Too Big 0 0 Time Exceeded 0 0 Parameter Problems 0 0 Echos 0 4 Echo Replies 4 0 MLD Queries 0 0 MLD Reports 0 0 MLD Dones 0 0 Router Solicitations 0 15 Router Advertisements 0 0 Neighbor Solicitations 40386 27775 Neighbor Advertisements 27272 29638 Redirects 0 0 Router Renumberings 0 0  TCP Statistics for IPv4  Active Opens = 1900438 Passive Opens = 369225 Failed Connection Attempts = 10450 Reset Connections = 460797 Current Connections = 154 Segments Received = 273517454 Segments Sent = 110060297 Segments Retransmitted = 2182084  TCP Statistics for IPv6  Active Opens = 973341 Passive Opens = 973646 Failed Connection Attempts = 34 Reset Connections = 1735122 Current Connections = 40 Segments Received = 46840865 Segments Sent = 45024383 Segments Retransmitted = 1813578  UDP Statistics for IPv4  Datagrams Received = 51416164 No Ports = 314589 Receive Errors = 2135697 Datagrams Sent = 42118403  UDP Statistics for IPv6  Datagrams Received = 9841716 No Ports = 309860 Receive Errors = 42205 Datagrams Sent = 2040067 

Вы можете фильтровать отображение по протоколу с помощью -pопции. Ping полагается на ICMP для «эхо-запросов», которые он отправляет, поэтому вы можете посмотреть только статистику по ICMP netstat -s -p icmp, но это просто подсчитает количество ошибок.

c:\>netstat -s -p icmp  ICMPv4 Statistics  Received Sent Messages 243951 46546 Errors 0 0 Destination Unreachable 19710 22409 Time Exceeded 177648 0 Parameter Problems 0 0 Source Quenches 0 0 Redirects 0 0 Echo Replies 445 23182 Echos 46148 955 Timestamps 0 0 Timestamp Replies 0 0 Address Masks 0 0 Address Mask Replies 0 0 Router Solicitations 0 0 Router Advertisements 0 0 

Также есть netstat -eопция для просмотра статистики Ethernet, которая может быть объединена с опцией -s, но это также даст вам счетчик ошибок.

c:\>netstat -e Interface Statistics  Received Sent  Bytes 2205957284 1335899145 Unicast packets 1239501865 433229740 Non-unicast packets 143181375 167714415 Discards 0 0 Errors 0 55 Unknown protocols 0 

Если у вас есть другой сетевой кабель, вы можете заменить существующий кабель, чтобы исключить проблему с кабелями в качестве источника проблемы.

2
nik

Вы пробовали ping с какой-либо другой машины на этот интерфейс?
Вы получаете какие-либо ошибки ICMP?

Также было бы полезно проверить статистику интерфейса однорангового устройства, к которому подключен интерфейс.

  1. к какому сетевому устройству вы подключаетесь?
    • Есть ли у него статистика интерфейса?
    • Они показывают какие-либо конкретные ошибки, которые не показывают другие интерфейсы этого устройства?

Наконец, это может быть и слабый провод на пути.
Если в вашей сети более двух машин,
подключается ли эта конкретная машина каким-либо другим способом? (Wireless hop?)
Вы проверили, что разъемы надежно подключены?

Если вы видите потерю только с обычными пакетами ping (64 байта), IP Fragmentation исключается.
Если ваши интерфейсы не показывают количества ошибок, ошибки CRC также исключаются.

2
manuel

Попробуйте эти 2 команды, чтобы получить статистику NIC:

netsh interface ipv4 show ipstats  netsh interface ipv4 show tcpstats 

Если в «In Header Errors», «Fragments Failed», «In Errors» есть число больше 0, значит, проблема с проводом.

1

Используйте Wireshark, чтобы увидеть, какие пакеты потеряны / неправильно сформированы. К сожалению, это также зависит от драйверов.

Сначала я подумал, что это звучит как хорошая идея. Но чем больше я думал об этом, тем больше осознавал, что это поможет подтвердить, что я случайно теряю пакеты. Ian Boyd 15 лет назад 0
0

включить настройку контроля потока. попробуй это.

Похожие вопросы