Laurent Demailly (Laurent.Demailly@Sun.COM)
Thu, 27 Aug 1998 19:04:28 -0700 (PDT)
Just a couple of corrections :
(I don't either pretend to know all the details
of current ircd's but I used to know them a couple
of years ago).
Daniel Pittman writes:
> Mok-Kong Shen wrote:
>
> [Multicast protocols]
> > Could someone give a short yet concrete summary of the techniques
> > currently employed by IRC?
>
> Sure. I cannot speak for the latest and greatest enhanced networks, but
> I know the basic network technology fairly well. I do not believe that
> this has changed in fundamental use, just in the overlayed extensions.
>
> The IRC network can be seen as an acyclic graph of servers, with clients
> hanging off each server as leaf nodes. For the purposes of the actual
> network itself, client software can be ignored, pretty much.
>
> The basic architecture of the network is a hand woven system with links
> between servers constructed and maintained by hand. Any loop in the
> system will bring the entire thing to it's knees, while a dropped
no,
because each server knows about the other servers and
trying to (re)introduce a link already existing
immediatly cause the introducing server to be rejected (squit'ed).
(though lag could cause bad side effects linked to that)
> connection between servers will break the network into two parts.
>
> Message propogation is through a flooding algorythm. Each server on
> reciept of a new message will flood it to every server it contacts, with
> the exception of the originating server. Thus a message will jump from
It's an "implementation detail" but I don't think it is entirely true:
each server actually routes messages to downlinks only if those servers
actually have users 'subscribed' in the channels (they know all
users, thus scalability problems)
> server to server in an expanding ring, crossing the entire graph.
>
> Private messages are passed from a server only to the targeted client,
> while the channel concept is simply a list of client connections that
> recieve input directed to the channel as a name.
>
> The DCC (Direct Client Connection) protocol uses the network propogation
> to establish the location of both participants, then opens a direct
> TCP/IP connection between them, I believe.
>
> Every byte of data from a client goes to every server, with no
> intelligence in the routing. The fact it works at all on the current
no, see above
[...]
There have been ideas and discussions (and even some implementations)
for years on how to improve Irc, do a search to find the infos
if you are interested.
Best regards
Laurent
The following archive was created by hippie-mail 7.98617-22 on Sat Apr 10 1999 - 01:11:01