Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Сети";
Текущий архив: 2002.10.28;
Скачать: [xml.tar.bz2];

Вниз

Sockets   Найти похожие ветки 

 
Akni   (2002-08-27 22:53) [0]

Привет всем!

У меня возникло несколько вопросов по компонентам TclientSocket, TserverSocket. Может, кто-то подскажет какие-то идеи.

Вопросы следующие:
1. приходят ли данные от клиента к серверу в такой же последовательности, как они ушли с клиента, т.е. если на клиенте сделать
ClientSocket1.SendBuf(Buf1, SizeOf(Buf1))
ClientSocket1.SendBuf(Buf2, SizeOf(Buf2)),


то получит ли сервер сначала Buf1, а потом Buf2, или может прийти сначала Buf2, а потом Buf1?

2. Как с помощью блокирующего сокета отправить данные какому-то опредеденному клиенту?
С неблок. сокетом это можно сделать приблизит. так:

procedure Form1.Button1Click(Sender: Tobject);
begin
ServerSocket1.Socket.Connections[i].SendBuf(Buf,SizeOf(Buf));
end;

А как это реализовать для блок. сокета?


 
Reindeer Moss Eater   (2002-08-28 07:59) [1]

1. Совсем не обязательно. Но задумываться над этим не стоит. Это не твои проблемы.
2. Точно так же


 
Reindeer Moss Eater   (2002-08-28 08:02) [2]

Точнее так: на уровне приложения сервер всегда примет сначала Buff1, а потом Buf2


 
Ketmar   (2002-08-28 09:35) [3]

скажем даже так: ПОРЯДОК байтов не перепутается (т.е. First In-First Out), но не обязательно прийдет сразе то же самое кол-во байтов, что было послано. TCP/IP - потоково-ориентированный протокол. т.е. байтики он не перепутает (в отличие от UDP, хотя и у UDP такое поведение маловероятно. однако возможно).

Satanas Nobiscum! 28-Aug-XXXVII A.S.


 
Malder   (2002-08-28 13:16) [4]

Ну UDP тоже байтики не перепутает между прочим...


 
Ketmar   (2002-08-28 14:26) [5]

хм. естественно. я неточно выразился. имелось в виду, что TCP пришлет все в том же порядке, в каком отправлялось. а UDP, в виду своей "непотоковости" и "бесконтрольности" :-) может и потерять пакетик по дороге. или же позже посланный пакет может прийти ранее посланного перед ним.

Satanas Nobiscum! 28-Aug-XXXVII A.S.



Страницы: 1 вся ветка

Форум: "Сети";
Текущий архив: 2002.10.28;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.56 MB
Время: 0.046 c
7-92753
Metallica
2002-08-21 12:21
2002.10.28
->>> Как можно приостановить Process.


3-92374
alenka
2002-10-06 00:49
2002.10.28
Как реализовать каскадное удаление?


14-92682
^Sanya
2002-09-05 14:57
2002.10.28
---|Ветка была без названия|---


3-92403
Эрик
2002-10-08 12:33
2002.10.28
Опять Навиготор :)


1-92583
boa
2002-10-16 05:53
2002.10.28
Помогите заблудшему





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский