No, it's TCP and a very uncomplicated protocol, everything is sent in clear
text. Major problem is the socket-multicasting to keep track of all clients
simultanly.

----- Original Message ----- 
From: "Raditha Dissanayake" <[EMAIL PROTECTED]>
To: "Thomas Weber" <[EMAIL PROTECTED]>; "PHP-List"
<[EMAIL PROTECTED]>
Sent: Sunday, September 14, 2003 2:59 AM
Subject: Re: [PHP] socket_write eats data - solved


> Is IRC UDP?
> Thomas Weber wrote:
>
> >Hi,
> >
> >i've checked a hundred things before posting this question, but i forgot
the
> >most important thing, the buffer.
> >The 'eaten' writes were buffered by the network-kernel and sent as bunch
of
> >data. If too much data for the buffer is sent, the write is broken up and
> >completed in the next bunch-of-data.
> >My receive-script hasn't diplayed the raw output, but an unserialized
array,
> >fetched out of the received string.
> >
> >Maybe this will will help someone in future.
> >
> >Thomas 'Neo' Weber
> >---
> >[EMAIL PROTECTED]
> >[EMAIL PROTECTED]
> >
> >----- Original Message ----- 
> >From: "Thomas Weber" <[EMAIL PROTECTED]>
> >To: "PHP-List" <[EMAIL PROTECTED]>
> >Sent: Saturday, September 13, 2003 9:15 PM
> >Subject: [PHP] socket_write eats data
> >
> >
> >
> >
> >>Hi,
> >>
> >>I am deveoping a chatserver in IRC-style in PHP. For communication it
uses
> >>socket-multiplexing aka socket_select. So long so good, works perfectly.
> >>The problem is, than when i make several socket_write's to the same
client
> >>without waiting about 0.1sec after each write, the written data gets
lost
> >>somewhere. socket_write does NOT throw any error, the data seams just
> >>sended, but the clients never receives it.
> >>
> >>Small example of the used code:
> >>-----
> >>var $clients // array of 'client'-objects, each object has it's own
> >>socket-descriptor in the object-variable $socket
> >>
> >>function write_to_clients ($text) {
> >>  for ($i = 0; $i < count ($this->clients); $i++) {
> >>    socket_write ($this->clients[$i]->socket, $text);
> >>  }
> >>  // usleep (10000); if this is uncommented, all write are received by
all
> >>clients
> >>}
> >>
> >>for ($i = 0; $i < 10; $i++) {
> >>    $this->write_to_clients ("test ".$i);
> >>}
> >>-----
> >>
> >>Okay, this doesn't check the client-sockets for readiness to write, but
> >>
> >>
> >even
> >
> >
> >>if I check (via socket_select), ALL clients are ready to write and
writes
> >>get lost too. It can't be the network-connection, because the tests run
> >>
> >>
> >with
> >
> >
> >>standalone PHP-clients on the same machine.
> >>
> >>Is there any possibility to make fast writes without waiting after each
> >>write? The wait limits the server to max. 10 writes per second, wich
isn't
> >>really enaugh for a good chatserver.
> >>
> >>Thanks for your help!
> >>
> >>Thomas 'Neo' Weber
> >>---
> >>[EMAIL PROTECTED]
> >>[EMAIL PROTECTED]
> >>
> >>-- 
> >>PHP General Mailing List (http://www.php.net/)
> >>To unsubscribe, visit: http://www.php.net/unsub.php
> >>
> >>
> >>
> >
> >
> >
>
>
> -- 
> http://www.radinks.com/upload
> Drag and Drop File Uploader.
>
> -- 
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
>

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to