[Spread-users] Spread mailboxes

Jonathan Stanton jonathan at cnds.jhu.edu
Wed Sep 5 22:42:13 EDT 2001

The mailbox is used as the local identifier for all the API calls for
several reasons:

*) It is unique within the client process
*) We need the file descriptor for all the calls anyway, this way we always
have it without needing more lookups and more state.
*) It is similar to other Unix-style API's that work with file descriptors.

When an application makes multiple connections to spread either the
username given by the application must be different for each connection or
the connections must be to daemons running on different machines. So each
connection is a uniquely named connection from the point of view of the
system (and daemons). For the application itself, each connection will have
both a unique private name and a unique mailbox number. The mailbox numbers
are only unique locally (within the application process) the daemon may
also have a connection with file descriptor 3 and it has nothing to do with
the client who has a mailbox numbered 3.

If I understand the question correctly, the daemon does NOT know that
several connections happen to come from the same application. To the daemon
each conection is a separate and equal client. The daemon does not know
what the mailbox number on the client is and does not care. The maillbox
number is purely a local number for the application.

Hope this helps,


On Wed, Sep 05, 2001 at 04:22:20PM -0700, Roy Tromble wrote:
> The only thing that doesn't make sense, then, is why all the other Spread
> calls take just the mailbox, and not the private group name.  Is it the case
> that when a single application makes multiple connections to Spread, the
> mailboxes (and also private names) will have unique numbers, but that Spread
> determines which application is making the call, to associate with the
> mailbox?
> Roy

Jonathan R. Stanton         jonathan at cs.jhu.edu
Dept. of Computer Science   
Johns Hopkins University    

More information about the Spread-users mailing list