Потоковая передача данных в режиме реального времени нескольким клиентам - PullRequest
1 голос
/ 18 мая 2010

Я хотел бы написать приложение, которое будет передавать данные со скоростью 2400 бод по Интернету с сервера на несколько клиентов. Данные будут одинаковыми для каждого клиента, и, вероятно, было бы неплохо отправить их в виде потока UDP, поскольку точная точность данных не является 100% -ной необходимостью, поскольку в формат данных встроены контрольные суммы, и данные будут отправлять повторно в цикле.

Каков наилучший способ сделать это? Я хотел бы написать сервер на C, но я не знаю, как лучше передать эти данные различным клиентам, которые будут получать их по всей стране.

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

1 Ответ

1 голос
/ 18 мая 2010

Возможно, вы захотите взглянуть на одноадресную рассылку для этого, особенно если ваши клиенты находятся в нескольких каталогах. Вы должны иметь возможность отправлять TCP или UDP-трафик с вашими данными каждому из ваших клиентов, особенно если пропускная способность мала. Многоадресная IP-рассылка лучше всего работает с группами узлов в сетях, расположенных рядом.

Повторно зацикливайте адреса клиентов и отправляйте свои данные. Умеренная скорость зацикливания для ограничения скорости передачи данных.

Обратите внимание на проблему надежности: правильность не единственная проблема с UDP; у вас также нет подтверждения того, что ваши данные были получены, и нет гарантии на заказ.

Бод здесь на самом деле не применяется, так как данные сегментированы на более или менее дискретные порции.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...