Форум: "Начинающим";
Текущий архив: 2008.05.11;
Скачать: [xml.tar.bz2];
ВнизUDP Найти похожие ветки
← →
Footballer (2008-04-09 11:19) [0]Доброго времени суток.
Как можно с компьютера-клиента отослать TStream на сервер, а с него ко всем клиентам по протоколу UDP? Проблема в том, что у компонента TIdUDPClient нет метода ClientRead (или как его там?).
Спасибо.
← →
clickmaker © (2008-04-09 11:23) [1]значит, клиент должен стать сервером
а какая задача-то в общем?
← →
Footballer (2008-04-09 11:28) [2]Я пишу программу для голосового общения по сети. А нужно отправлять заполненные буферы. С использованием TClientSocket всё нормально, но иногда прога зависает. Может быть на всех клиентах поставить по IdUDPServer"у? Я правильно думаю?
← →
Сергей М. © (2008-04-09 11:30) [3]
> Footballer (09.04.08 11:19)
Ты в курсе, что UDP - протокол без гарантии доставки ?
← →
clickmaker © (2008-04-09 11:37) [4]
> [2] Footballer (09.04.08 11:28)
так может, поразбираться в причине зависания?
← →
Footballer (2008-04-09 11:40) [5]Ну. во-первых, все подобные проги пересылают по UDP. (это точно, т.к. в настройках спашивают UDP порт).
Во-вторых, UDP протокол не проверяет, дошли ли отправленные байты до получателя.
Получается, UDP работает быстрее. Именно для голосового общения, так как всё равно будет прекрасно слышно если "немного байтов не дойдет"...
← →
Footballer (2008-04-09 11:41) [6]>Сергей М. © (09.04.08 11:30) [3]
См. [5] =)
← →
Сергей М. © (2008-04-09 11:44) [7]
> все подобные проги пересылают по UDP
Не трынди, далеко не все.
> UDP протокол не проверяет, дошли ли отправленные байты до
> получателя ..UDP работает быстрее
Да.
> будет прекрасно слышно если "немного байтов не дойдет"
Они могут дойти и все, но в неоригинальном порядке следования.
Этот факт твой прикладной протокол учитывает ?
← →
Footballer (2008-04-09 11:49) [8]>Сергей М. © (09.04.08 11:44) [7]
Не учитывает, но всё равно вероятность неоригинального порядка, имхо, мала. Тем более в сети с хорошим качеством соединния.
← →
Сергей М. © (2008-04-09 11:52) [9]
> в сети с хорошим качеством соединния
Т.е. ты предполагаешь, что твоя программа будет работать в пределах высокопроизводительной односегментной ЛВС ?
← →
Сергей М. © (2008-04-09 11:54) [10]
> нет метода ClientRead (или как его там?)
Зато есть ReceiveBuffer и ReceiveString
← →
Footballer (2008-04-09 13:57) [11]Но как его отловить-то???=)
Ну ладно, всем спасибо. Особенно [clickmaker © (09.04.08 11:23) [1]]!
Я всё понял, тема закрыта.
← →
Сергей М. © (2008-04-09 14:01) [12]
> как его отловить-то?
Кого ?!
← →
Anatoly Podgoretsky © (2008-04-09 16:00) [13]> Footballer (09.04.2008 11:40:05) [5]
Раз для голосового общения, то надо смотреть не в сторону UDP, а multicast
← →
Anatoly Podgoretsky © (2008-04-09 16:01) [14]> Footballer (09.04.2008 11:49:08) [8]
Не понял, ты что сначала накапливаешь весь текст потом его передаешь, иначе вероятность очень высока.
← →
Anatoly Podgoretsky © (2008-04-09 16:02) [15]> Сергей М. (09.04.2008 11:52:09) [9]
А это тоже не спасение, если есть свичи.
← →
Сергей М. © (2008-04-10 09:10) [16]
> Anatoly Podgoretsky © (09.04.08 16:02) [15]
> это тоже не спасение, если есть свичи
Полностью согласен.
Вся надежда на "умный" прикладной протокол.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2008.05.11;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.006 c