@baronexp

Как хранить UDP пакеты в буфере?

Исходные данные: сервер при принятии UDP-пакета начинает его обрабатывать (просто ставлю небольшую задержку), после чего отправляет пакет обратно клиенту.
Проблема: если в момент обработки пакета на сервер придет еще пакет, он просто не будет перехвачен программой. Каким образом сохранять его в буфере, чтобы можно было приступить к его обработки после того как программа закончит с текущим? Ну либо как обрабатывать их оба одновременно?
P.s. нужно использовать именно UDP, т.к. это raw-сокеты, и мне нужно изменять поля в заголовке. Задержка также должна быть (пакет не может быть мгновенно отправлен обратно).
Заранее благодарен
  • Вопрос задан
  • 129 просмотров
Пригласить эксперта
Ответы на вопрос 1
Griboks
@Griboks
Если вы не работаете с сетевым адаптером напрямую, то ваша сетевая карта должна по умолчанию сохранять все пакеты в буферы принятия и отправки и последовательно "отдавать" их на верхние уровни. Скорее всего, ваша программа просто неправильно читает этот буфер.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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