Главная страница
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
15-1206806482
Denis__
2008-03-29 19:01
2008.05.11
KERNEL32.DLL


15-1206451876
Cj
2008-03-25 16:31
2008.05.11
FileMapping и два разных языка


15-1206709064
31512
2008-03-28 15:57
2008.05.11
До чего увлекательно слушать песни от Microsoft


15-1206382716
Новый пользователь
2008-03-24 21:18
2008.05.11
Имена MDIForm типа как в 1С


2-1207831691
dumka
2008-04-10 16:48
2008.05.11
Запросы