Большие пакеты многоадресной рассылки содержат всю информацию для нескольких клиентов против отдельных пакетов для целевых клиентов

Я пишу C ++ приложение MyMasterApp, которое отправляет информацию (OSC через UDP) нескольким клиентам (около 5-10), которые являются мобильными устройствами (Android или iPhone) через Wi-Fi.

Каждое устройство должно получать уникальную информацию того же типа. Вероятно, около 100-200 байт на устройство, и я буду обновлять все устройства с частотой 30 Гц.

Я мог бы отправить уникальный пакет данных на каждое устройство, или я мог бы создать одну большую структуру, которая содержит каждый из уникальных битов данных для каждого устройства, с целевым идентификатором, многоадресно передать это всем устройствам, тогда каждое устройство только выбирает данные это нужно.

то есть

  • отправить DATA1 на устройство1
  • отправить DATA2 на устройство2
  • отправить DATA3 на устройство3
  • отправить DATA4 на устройство4

против

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

Прежде чем я попробую оба подхода, есть ли теоретические или зарегистрированные практические преимущества одного над другим (например, лучшая производительность, меньше коллизий, потерянные пакеты и т. Д.)? Или различия незначительны?

У меня есть связанный вопрос производительности сети о том же проекте в
Должен ли я прослушивать разные порты или один и тот же порт?

0

Решение

Одним из основных преимуществ многоадресной рассылки является масштабируемость, поэтому в будущем, если у вас будет больше устройств, многоадресная рассылка поможет. Лучше смотреть на производительность групповой и одноадресной рассылки для руководства

М. Эбрахими, М. Данешталаб, П. Лильеберг и Х. Тенхунен. Оценка производительности одноадресной и многоадресной связи в трехмерных сеточных архитектурах. В области компьютерной архитектуры и цифровых систем (CADS), 2010 15-й Международный симпозиум CSI, стр. 161-162, сент. 2010.

2

Другие решения

Даже если оставить в стороне будущий рост, ваши наихудшие случаи использования устройств размером 200 байт x 10 уже составляют 2000 байт, что уже слишком велико для отправки через UDP. Практическая максимальная датаграмма UDP обычно составляет 576 байтов или 534 числа такого рода. Так что у тебя нет выбора. Вы должны индивидуально.

2

По вопросам рекламы [email protected]