Перейти к содержимому
Калькуляторы

UDP на Windows Server Потери UDP пакетов в направлении от сервера к клиенту

Коллеги,

нарисовалась странная проблема, теряются UDP пакеты в одном направлении. При чем проблема только с Windows Server 2008 и 2012. С линуксовой машины проблем не видно. Так же тестили с WS 2003, тоже все хорошо.Есть идеи?

 

Report iperf

 

 

[ 4] 0.0- 1.0 sec 2.34 MBytes 19.6 Mbits/sec 0.264 ms 6154/ 7822 (79%)

[ 4] 1.0- 2.0 sec 2.55 MBytes 21.4 Mbits/sec 0.139 ms 5779/ 7596 (76%)

[ 4] 2.0- 3.0 sec 2.55 MBytes 21.4 Mbits/sec 0.319 ms 5968/ 7790 (77%)

[ 4] 3.0- 4.0 sec 2.67 MBytes 22.4 Mbits/sec 0.213 ms 5771/ 7678 (75%)

[ 4] 4.0- 5.0 sec 2.75 MBytes 23.0 Mbits/sec 1311.418 ms 5652/ 7611 (74%)

[ 4] 4.0- 5.0 sec 210 datagrams received out-of-order

[ 4] 5.0- 6.0 sec 2.65 MBytes 22.2 Mbits/sec 1102.742 ms 5793/ 7685 (75%)

[ 4] 5.0- 6.0 sec 285 datagrams received out-of-order

[ 4] 6.0- 7.0 sec 2.62 MBytes 22.0 Mbits/sec 1219.358 ms 5923/ 7791 (76%)

[ 4] 6.0- 7.0 sec 282 datagrams received out-of-order

[ 4] 7.0- 8.0 sec 2.54 MBytes 21.3 Mbits/sec 1428.192 ms 5881/ 7696 (76%)

[ 4] 7.0- 8.0 sec 278 datagrams received out-of-order

[ 4] 8.0- 9.0 sec 2.50 MBytes 21.0 Mbits/sec 2391.167 ms 5811/ 7597 (76%)

[ 4] 8.0- 9.0 sec 354 datagrams received out-of-order

[ 4] 0.0- 9.5 sec 23.9 MBytes 21.0 Mbits/sec 1859.797 ms 54280/71304 (76%)

[ 4] 0.0- 9.5 sec 1530 datagrams received out-of-order

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

флоу контрол на коммутаторе и сетевухе сравнить с линуксовыми, для начала.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Вспомнилось: на какой-то гигабитной встроенной (прошу прощения за такое предположение ;) ) сетевушке под виндой у меня была жуткая потеря пакетов при включенном flow control. Собственно, даже 20 Мбитс не прокачивалось. При выключеном все работало, как часы. На той же машине под линуксом проблем не было.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Может быть и обратная ситуация: флоу контроль в венде вырублен и она заливает коммутатор пакетами, когда у него буфер кончается он их дропает. Если управляемый то можно счётчики посмотреть.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

На винде нет Flowcontrol настроек.

Есть UDPv4/v6 checksum offload, TCPv4/v6 checksum offload, IPv4 checksum offload. Jumbo так же отключены.

На коммутаторе, отключено

Port-channel6 is up, line protocol is up (connected)

input flow-control is off, output flow-control is unsupported

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Что за сетевая плата?

Для Intel можно установить PROset.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Все настройки найдены, они на физ драйвере который на гипервизоре.. Поигрались с flowcontrol, результата нет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Все настройки найдены, они на физ драйвере который на гипервизоре..

Если это виртуальная машина, то настройки нужно и на хосте, и на госте изменять.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А на коммутаторе что? (в счётчиках)

Попробуйте включить, но для хоста виртуалки это не самая правильная настройка.

Может ещё дрова дропают, хз как и что там в венде.

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

На коммутаторе в счетчиках все чисто. В этом и проблема что не понятно где проблема, есть подозрения что что-то в винде не так работает, вот только я её не очень хорошо знаю.

Подняли новый сервер Windows 2008R2 стэндэлон, ситуация таже. Буферы в винде увиличили, все offload выключины, джумбы тоже.. стандартный mtu проходит без вопросов. Udp больше 50 Мbit/s не разгоняется, пакеты дропаются. Фаерволы вырублены. Чудеса. хотя их не бывает

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

На коммутаторе, отключено

Port-channel6 is up, line protocol is up (connected)

input flow-control is off, output flow-control is unsupported

Дак у вас две сетевухи аггрегированы?

А если одну лямку отключить?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Уже отключили, коммутатор так же поменяли c cisco на huawei... симптомы те же.. самое интересно что все тоже самое происходит если виртуалки находятся даже только в в виртуальном свитче... Ощущение что что-то не так с виндой и ее стеком, вот только что пока не ясно...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Уже отключили, коммутатор так же поменяли c cisco на huawei... симптомы те же.. самое интересно что все тоже самое происходит если виртуалки находятся даже только в в виртуальном свитче... Ощущение что что-то не так с виндой и ее стеком, вот только что пока не ясно...

А если не объединять сетевухи в гипервизоре а разным виртуалкам дать разные сетевухи/вланы(вроде с таким вариантом проблем не наблюдал) ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Сейчас провел тест между 2008R2 Server и Win7

Хосты в разных VLAN

bin/iperf.exe -c xxx.xxx.xxx.xxx -u -P 1 -i 1 -p 5001 -w 512.0K -l 1500.0B -f m -b 2000.0M -t 20 -T 1
------------------------------------------------------------
Client connecting to xxx.xxx.xxx.xxx, UDP port 5001
Sending 1500 byte datagrams
UDP buffer size: 0.50 MByte
------------------------------------------------------------
[ ID] Interval       Transfer     Bandwidth
[156]  0.0- 1.0 sec  24.0 MBytes   201 Mbits/sec
[156]  1.0- 2.0 sec  21.1 MBytes   177 Mbits/sec
[156]  2.0- 3.0 sec  25.4 MBytes   213 Mbits/sec
[156]  3.0- 4.0 sec  23.6 MBytes   198 Mbits/sec
[156]  4.0- 5.0 sec  26.4 MBytes   222 Mbits/sec
[156]  5.0- 6.0 sec  25.1 MBytes   210 Mbits/sec
[156]  6.0- 7.0 sec  27.2 MBytes   228 Mbits/sec
[156]  7.0- 8.0 sec  24.6 MBytes   207 Mbits/sec
[156]  8.0- 9.0 sec  23.9 MBytes   201 Mbits/sec
[156]  9.0-10.0 sec  27.0 MBytes   227 Mbits/sec
[156] 10.0-11.0 sec  24.6 MBytes   206 Mbits/sec
[156] 11.0-12.0 sec  19.1 MBytes   160 Mbits/sec
[156] 12.0-13.0 sec  27.3 MBytes   229 Mbits/sec
[156] 13.0-14.0 sec  20.1 MBytes   169 Mbits/sec
[156] 14.0-15.0 sec  17.7 MBytes   148 Mbits/sec
[156] 15.0-16.0 sec  13.2 MBytes   111 Mbits/sec
[156] 16.0-17.0 sec  25.9 MBytes   218 Mbits/sec
[156] 17.0-18.0 sec  21.2 MBytes   177 Mbits/sec
[156] 18.0-19.0 sec  26.9 MBytes   226 Mbits/sec
[156] 19.0-20.0 sec  25.5 MBytes   214 Mbits/sec
[ ID] Interval       Transfer     Bandwidth
[156]  0.0-20.0 sec   470 MBytes   197 Mbits/sec
[156] WARNING: did not receive ack of last datagram after 10 tries.
[156] Sent 328459 datagrams
Done.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Попробуйте на реальном железе.

Если на реальном ОК то дело в сетевой подсистеме/дровах виртуалки под венду.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Попробуйте на реальном железе.

На реальном железе проблема та же, сейчас интеловый сервер на тесте с голой виндой 2012 Р2 без апдейтов и других драйверов. Проблема та же, udp dowload с сервера потерь 0% upload потери до 50% скорость больше 50Mbit/s не разгоняется.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Софт ваш?

Исходники ковырять можете?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

у меня такое было. Копайте в сторону отключения в драйвере сетевой карты расчета чексумм пакетов.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

на тесте с голой виндой 2012 Р2 без апдейтов и других драйверов.

На прошлой неделе позвонил знакомый в панике со словами "пинги идут через один". Решилось накатыванием драйверов производителя...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Софт ваш?

Общий, iperf

Копайте в сторону отключения в драйвере сетевой карты расчета чексумм пакетов.

Отключено, не помогает.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Общий, iperf

В коде нужно добавить проверки на send() / sendto(), вероятно оно вызывает не обращая внимания на ошибки.

Ещё размер сокета натюнить самому, примерно так:

uint32_t buf_size = 2 * 1024 * 1024;

setsockopt(skt, SOL_SOCKET, SO_SNDBUF, &buf_size, sizeof(int));

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Есть альтернатива iperf?

как вариант:

http://www.tamos.ru/products/throughput-test/

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.