datagram protocol design theory? (Re: [MUD-Dev] Question about multithreaded servers)

Ola Fosheim Grøstad <> Ola Fosheim Grøstad <>
Tue Feb 1 00:32:45 New Zealand Daylight Time 2000

J C Lawrence wrote:
> Essentially you're talking about locking strategies, which hit for
> multi-threading, multi-process, cluster, and parallel programming
> cases.  I don't know of a decent web site which discusses or coveres
> the area well (if you do, please add them to the Library at
> Kanga.Nu), but there are various techniques, from the lockless
> rollback system i use, to ordered lock handling, to various
> applications of graph theory for deadlock detection.  A good OS
> desing book should cover -- I've heard good comments on tanenbaum's
> books in particular.

I guess he got himself established in the university curriculum with
Minix. We used "operating systems: design and implementation" (1987). It
was pragmatic enough to be an easy read...

When looking for theory that might ease the design of protocols built on
unreliable datagram passing I went to the library and picked up
Ben-Ari's "Principles of Concurrent and Distributed Programming" (1990)
from the CAR Hoare series. I gather it is a decent read even though it
is the kind of book that provides proofs, but not particularly helpful
for what I am interested in as distributed in this context doesn't
target the kind of topology or problems that are relevant for a MUD with

Does anyone know of a book or books that provide a decent theoretical
foundation for designing the kinds of datagram protocols that would be
useful in a MUD? I am basically talking about application specific
protocols optimized for speed and bandwidth considerations. It is also
desirable to not have too much bookkeeping on the server side.

And, what kind of comp.sci./discrete math theory is useful for
designing/thinking about message based protocols (on a unreliable
datagram layer).


MUD-Dev maillist  -  MUD-Dev at

More information about the MUD-Dev mailing list