[Cu-wireless] write a server-free chat application!

stephane at shimaore.net stephane at shimaore.net
Thu Oct 24 18:42:50 CDT 2002


> I don't have a clear concept of how IM works (i.e. does it use a central
> server, like Napster did?)

The discovery process is generally centralized; by "discovery" I mean the
process of:
 - registering a username
 - announcing your presence
 - finding other usernames (directory)
 - finding other usernames' presence
 [ probably others ]

After that there's generally one of two schemes:
 - centralized chat function: what almost everybody does today AFAIK
   (including IRC); has the nice advantage of bypassing NAT.
 - peer-to-peer; NetMeeting's chat allows for that (using H.323) -- but
   still the directory function is centralized (DNS or MS' ILS) (and no
   presence, accessorily).

Note that good old Un*x' "talk" also has most of the features Dave asked
for (peer-to-peer), but the "discovery" process again is the lacking

> As far as security goes, I'm in favor of using as strong an encryption
> scheme as we can get, and using it as often as possible.

Multicast (either IP or application-level) and encryption don't work well
together (key distribution issues), so the "discovery" part is going to be
a tough one if it has to be really distributed. Even peer-to-peer data
networks currently rely on a few "seed" servers; I'd be interested to find
out whether some research has been done in terms of distributed, rootless
directories. (One can turn the problem around using for example dynamic
DNS or a variation thereof, but this is just displacing the problem.) --
However the application's requirements may not be that strong.

OK, gotta leave for the CUW meeting now! :=)

More information about the CU-Wireless mailing list