Re: TI-H: Demolition Calc
[Prev][Next][Index][Thread]
Re: TI-H: Demolition Calc
Well no, not exactly. They use UDP messages between the server and the
client, but this is because making several million TCP connections at
a time can be very stressful for a server. Chances are that these
connections could be better managed by some custom written code. Also,
it is significantly easier to check for data on one socket than to
check for it on several million. All data from every client comes into
the same socket on the same port, so they just keep reading the
packets in the order they're received and parsing them. It's really a
very good way of handling things, although ICQ is by no means perfect. So,
they use UDP, but their own clients send an ACK to every packet they
receive. That way, you know that your pakcet did indeed, get to the
server, or it did indeed get from the server to you. Connections
between users however, are managed using TCP connections because there
are a good deal fewer of them (in fact, unless they changed the limit
in the client, you can have a maximum of 255 of them). The details of
the file transfer protocol are not yet known, but i haven't gotten a
corrupted file from someone yet. Anyway, since this is all handled via
TCP, it's very reliable.
-- Jon Olson
--
'Twas the nocturnal segment of the diurnal period
preceding the annual Yuletide celebration, And
throughout our place of residence,
Kinetic activity was not in evidence among the
possessors of this potential, including that
species of domestic rodent known as Mus musculus.
On Mon, Dec 21, 1998 at 01:59:34PM -0700, Rosyna wrote:
>
> Ah, so the people that Make ICQ are stupid for using UDP? I car what
> packets are lost, and doesnt that mean Transfers have a better chance
> to be corrupted? I smell superglue.
>
> At approximately 12:09 PM -0500GMT on the day Earth People call
> 12/21/98, Jon Olson declared:
>
> > People use UDP because it doesn't require an ACK to each packet like
> > TCP. For example in action 3d games like quake, half-life, unreal,
> > etc. You don't care if you miss a packet or two for most things (and
> > the things that do have ACKs internal to the higher level protocol),
> > so sending back an ACK on every packet you get just to say "Yah, i got
> > it." is a waste of precious bandwidth. UDP headers are also
> > significantly smaller than TCP headers
>
> ---
> I pledge allegiance to the Mac of Apple Computer Incorporated, and to
> the developers for which it stands, one platform, under Jobs,
> indestructible, with creativity and multimedia for all.
Follow-Ups:
References: