Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.48 MB
Время: 0.01 c
2-1207843572
Дмитрий
2008-04-10 20:06
2008.05.11
ActiveX vs. WinAPI (просто)


15-1206705138
Slider007
2008-03-28 14:52
2008.05.11
С днем рождения ! 28 марта 2008 пятница


2-1208175871
assassin8899
2008-04-14 16:24
2008.05.11
AQL запрос


15-1206198956
@!!ex
2008-03-22 18:15
2008.05.11
Откуда можно скачать дистр Windows Vista Home Basic?


2-1208237932
John_Korsh
2008-04-15 09:38
2008.05.11
Доступ к портам под XP.




   Наверх