|
0 / 0 / 0
Регистрация: 24.03.2010
Сообщений: 4
|
||||||
Пропуск UDP-пакетов от железки24.03.2010, 14:13. Показов 2233. Ответов 4
Метки нет (Все метки)
Уважаемые знатоки! Есть проблема: посылаю пакет на некий черный ящик, умеющий сразу откликаться на команды (специальные UDP-пакеты). Отклик приходит быстро (минимальное время отклика - 30 мкс). Так вот полчаса (не всегда, бывает меньше, бывает больше) все работает нормально, а потом таки пакет подтверждения теряется. Параллельно запущенный сниффер CommView потерянный пакет отображает. Буффер сокета сделал большой (2MB) функцией setsockopt (параметр SO_RCVBUF). Вот функция, отправляющая команду и принимащая ответ:
0
|
||||||
| 24.03.2010, 14:13 | |
|
Ответы с готовыми решениями:
4
Прием UDP пакетов Перехват UDP пакетов Потери UDP пакетов |
|
Фрилансер
3709 / 2083 / 567
Регистрация: 31.05.2009
Сообщений: 6,683
|
|
| 24.03.2010, 14:37 | |
|
К сожалению, тут Вам ничем помочь нельзя. Протокол UDP не предусматривает гарантированной доставки датаграм. И при хорошей загрузке Вашей машины может теряться и больше пакетов. Вам нужно обязательно предусматривать механизмы повторного запроса непрошедших пакетов, либо какую-то избыточность, позволяющую обойти такие ограничения.
0
|
|
|
0 / 0 / 0
Регистрация: 24.03.2010
Сообщений: 4
|
|
| 24.03.2010, 14:45 [ТС] | |
|
Согласен, но снифер видит и командный пакет и ответный. Значит 1) UDP-пакет с командой на устройство дошел 2) устройство на него ответило и 3) ответный пакет таки пришел обратно, но программа его не увидела, а снифер увидел. Конкретизирую вопрос: по каким причинам я могу прозевать пакет в программе?
0
|
|
|
Фрилансер
3709 / 2083 / 567
Регистрация: 31.05.2009
Сообщений: 6,683
|
|
| 24.03.2010, 15:23 | |
|
Конкретную диагностику причин провести тяжело.
1) Попробуйте на соседней машине, может у Вас просто слегка поддает сетевая карта? 2) Попробуйте поэкспериментировать с загруженностью Вашей машины. Если при росте загрузки пакеты станут пропадать чаще, значит, в какие-то моменты драйвер карты не успевает ухватить пакет Но проблема в том, что даже если Вы проанализируете текущий источник этой систематической ошибки, никто не гарантирует, что Ваша программа не упадет через полгода от ошибки случайной. А если у Вас будет механизм обработки ошибок, то один пакет за полчаса - это совсем не критично
0
|
|
|
0 / 0 / 0
Регистрация: 24.03.2010
Сообщений: 4
|
|
| 24.03.2010, 15:55 [ТС] | |
|
Вас понял. Спасибо большое.
0
|
|
| 24.03.2010, 15:55 | |
|
Помогаю со студенческими работами здесь
5
Сниффер UDP пакетов Потери UDP пакетов Задержка пакетов UDP Прием пакетов по UDP Перехват широковещательных UDP пакетов Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20%
|
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
|
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
|
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора
Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2.
Задача: уведомлять пользователя, если. . .
|
|
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
|
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2.
Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
|
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
|
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
|