boost::asio - UDP Server Что, как, с чего начать?, Множеству клиентов, раздавать один файл. |
Здравствуйте, гость ( Вход | Регистрация )
boost::asio - UDP Server Что, как, с чего начать?, Множеству клиентов, раздавать один файл. |
niXman |
24.6.2008, 20:36
Сообщение
#1
|
Участник Группа: Участник Сообщений: 169 Регистрация: 18.6.2008 Пользователь №: 204 Спасибо сказали: 1 раз(а) Репутация: 0 |
Есть задача: Множеству клиентов, раздавать один файл.
Предполагаю использовать boost::asio::ip::udp::socket. Рассылаемый файл больше объема пакета. Файл будет разбиваться на блоки. Клиенты помимо UDP, подключаются по TCP для получения информации о файле: кол-во пакетов, ID пакетов, запрос определенного пакета. Так же, нужно реализовать возможность, перехвата пакетов(которые являются частью одного и того же файла) передаваемыми для других программ клиентов, дабы снизить нагрузку на исходящий трафик программы Сервера. С протоколом UDP не работал. Толком не представляю с чего начать. По ходу общения буду задавать конкретные вопросы. |
|
|
ViGOur |
25.6.2008, 8:13
Сообщение
#2
|
Мастер Группа: Модератор Сообщений: 3296 Регистрация: 9.10.2007 Из: Москва Пользователь №: 4 Спасибо сказали: 231 раз(а) Репутация: 40 |
Не понятно зачем ты выбрал для передачи файла UDP протокол!?
Ведь, для того, что в конце концов быть уверенным в том, что ты получил весь файл тебе нужно будет писать свой протокол - обертку над UDP. Думаю, что лучше всего в данном случае подходит именно TCP, так как только он гарантирует доставку и целостность данных, UDP же этого не гарантирует, потому он и быстрей. Так же, нужно реализовать возможность, перехвата пакетов(которые являются частью одного и того же файла) передаваемыми для других программ клиентов, дабы снизить нагрузку на исходящий трафик программы Сервера. Может лучше сделать так, чтобы клиентские программы сами отправляли кому нужно эти даныые, например как в торенте?
|
|
|
Текстовая версия | Сейчас: 23.11.2024, 2:33 |