Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.05.11;
Скачать: CL | DM;

Вниз

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;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.018 c
4-1188799846
Nikfel
2007-09-03 10:10
2008.05.11
Вызов меню проводника для файла, папки.


15-1206383615
VirEx
2008-03-24 21:33
2008.05.11
помогите найти TreeCheckListView


2-1207917404
Rhammer
2008-04-11 16:36
2008.05.11
Поиск файлов по нескольким маскам и подкаталогам


15-1206792445
Professor
2008-03-29 15:07
2008.05.11
Количество отрицтельных чисел


2-1207896329
Guriev
2008-04-11 10:45
2008.05.11
Как прописать "пробел" при нажатии на Enter?