Re: client/server

William Gropp (gropp@mcs.anl.gov)
Tue, 04 Feb 1997 09:41:50 -0600

| A possible criticism of the above proposal is that MPI has tried
| to avoid mandating implementation details (such as requiring sockets).
| We should keep in mind, though, that:
| - no implementors have proposed using something other than sockets,
| and indeed the current spec may be so restrictive as to require them.

Actually, we had a long discussion earlier (last May/June) about non-socket
based implementations (e.g., fork and shared memory). The collective nature
of both the spawn and client/server calls was originally designed to allow
efficient networks to update routes and tables, and to avoid the usual race
conditions. Various proposals explaining how spawn and client/server might be
done were discussed then. As one concrete approach, an application on a
shared memory system could use a SYSV named segment as the named "port"; all
of the "socket" functions (listen, connect, etc) can be built on top of this.

Bill