реклама на сайте
подробности

 
 
> Теряются UDP пакеты
maxics
сообщение Apr 30 2013, 06:41
Сообщение #1


Местный
***

Группа: Участник
Сообщений: 229
Регистрация: 16-11-09
Пользователь №: 53 649



Gigabit Ethernet. Есть источник UDP пакетов (внешнее устройство) , подключенный напрямую к сетевой карте. Это устройство по запросу программы-клиента, выдает необходимое количество UDP пакетов. Программа-клиент реализована на C# и использует функцию из библиотеки System.Net - UdpClient (Socket). Проблема заключается в том, что при запросе больше 100 - 200 пакетов бывают потери пакетов (иногда приходят все пакеты). Сниффер все пакеты видит. Скорость 10 Мб/с. Если кто сталкивался, прошу помочь.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
vetal
сообщение Apr 30 2013, 06:50
Сообщение #2


Гуру
******

Группа: Модераторы
Сообщений: 2 095
Регистрация: 27-08-04
Из: Россия, СПб
Пользователь №: 553



Сталкивался. Напишите прокси на c/c++ и обеспечите достаточную буферизацию пакетов.
Прокси(перехватчик) должен обеспечивать прием пакетов и их ретрансляцию в Вашу программу на С# для дальнейшей неспешной обработки.
Производительность C# недостаточна для решения таких задач даже на i7 sad.gif

Так же для уменьшения потери пакетов желательно перейти на 100 МБит соединение(по крайней мере выйти на трафик не более 50% от возможностей интерфейса, т.к. при работе на 100% скорости нужен особый подход) и поиграться с настройками режимов работы трансиверов.
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 24th July 2025 - 11:08
Рейтинг@Mail.ru


Страница сгенерированна за 0.0138 секунд с 7
ELECTRONIX ©2004-2016