[JDEV] im unified
Marty Saxton
msaxton at broadjump.com
Fri Sep 1 17:47:31 CDT 2000
The TCP / UDP debate raged on for quite a while on the IMPP mailing list.
The proponents of UDP in that debate were those interested in supporting
IMPP on WAP devices, but the conclusion completely applies to jabber.
Long-lived TCP connections for client<->server won. The two major arguments
that won it were 1) congestion control and 2) the needed error correction is
built in. It was best summed up by John Strake:
> Congestion control is not a per-protocol requirement, it's a per-Internet
> requirement. If any large amount of traffic is not using congestion
control,
> the entire Internet suffers. Read RFC-896 for a description of what
happens
> in a network with no congestion control.
[snip]
> Any IP-based reliable protocol which behaves as well as TCP [for error
correction] will necessarily
> be as complex as TCP.
> -----Original Message-----
> From: Thomas Charron [mailto:tcharron at ductape.net]
> Sent: Friday, September 01, 2000 9:58 AM
> To: jdev at jabber.org; Thomas Muldowney
> Subject: Re: [JDEV] im unified
>
>
> Quoting Thomas Muldowney <temas at box5.net>:
> > This disbelief in TCP/IP just doesn't make sense. I'm very
> aware of the
> > scaling issues surrounding TCP, but moving to UDP is almost
> a fundamental
> > flaw
> > for an IM system. IM needs the ability to gurantee
> delivery, and keep it
> > real
> > time. UDP can't intrinsically give this, and therefore, in
> my opinion, is
> > flawed.
>
> Technically, TCP doesn't provide this either. It *LOOKS*
> and *FEELS* like it
> is, but it doesn't. It merely serves as a buffer to put the
> data back in the
> right order, and rerequest packets when needed, and after a
> given timeout,
> closing the socket for one of several reasons. This is an IP
> limitation, *NOT*
> a TCP vs UDP limitation. ATM provides these capabilities.
> TCP looks and
> feels, but isn't. That's the basic counter. Basically, if
> you implement code
> the keep track of packets and delivery, or the TCP stack does
> it, the end
> result is the same. The catch is, if you can manage to
> handle the UDP packets
> better (with faster speed, and less memory) then the TCP
> stack can. In some
> cases, yes, you can, in others, well, let's not talk about
> them, they're
> scary. ;-P Doing so in an efficient manner also pretty much
> requires that you
> also have the capabilities of an SMP based machine. No
> arguments that on a
> single processor machine, TCP is a better way to go, becouse
> you *WILL* run out
> of resources before TCP connections. But on a Sun Enterprise
> 6500, the inverse
> is true.
>
> > Wehn you start writing this ability on to UDP your just creating
> > a slower system, and then start to mess with that real time
> nature. The
> > other
> > major item of interest is that we're not even limited by
> the socket count,
> > in general your going to find RAM and CPU issues before you
> find conn limits.
> > I'd be happy to discuss scaling further, as I'm working on
> scaling the
> > server to 10million users.
>
> See above. To serve up 10 million users, you'd have to
> anticipate in the
> internet world that perhaps 5-10% of your users will be on
> concurrently. This
> brings you between 500,000 - 1,000,000 simo connections. On
> a TCP, non SMP
> based platform, this would require 42-84 farmed machines,
> without even taking
> into consideration reduncy, and having 12,000 users per machine.
>
> Now, with a UDP based implementation, you could easily
> scale this to 3
> Enterprise 6500's. Base cost wise, more money will be spent
> on the E 6500's,
> hands down. Based equiped, that's gonna run 300,000 -
> 400,000 $$, which could
> easily buy you 150 Intel Linux boxes. The issue then becouse
> support costs,
> administration, repair, cool, electrical consuption, etc.
> Overall, the same
> cost is used for either solution. The only issue is, 150
> machines takes up
> alot more space then 3 E6500's.
>
> Basically, both sides are right. It just depends on the
> approach you take.
> Big boxes = UDP can handle more. Many small boxes = TCP.
>
> ---
> Thomas Charron
> << Wanted: One decent sig >>
> << Preferably litle used >>
> << and stored in garage. ?>>
>
> _______________________________________________
> jdev mailing list
> jdev at jabber.org
> http://mailman.jabber.org/listinfo/jdev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://www.jabber.org/jdev/attachments/20000901/fd70a2b4/attachment-0002.htm>
More information about the JDev
mailing list