Newsgroups: comp.parallel.pvm
From: vernard@cc.gatech.edu (Vernard C. Martin)
Subject: Re: Connecting multiple users
Organization: Georgia Institute of Technology
Date: 7 Sep 1995 15:47:17 -0400
Message-ID: <42ni85$oi4@cleon.cc.gatech.edu>

>	What is required is that a user can contact another user, so that they
>can link their applications together, and also utilise any other hosts in the
>virtual machine, such as a supercomputer for parallel algorithms.
>	As the users may not be known at start up of the pvm master daemon, how
>can the master daemon add these remote hosts to the virtual machine, and how 
>do these remote sites start up a slave pvm daemon which connects to the 
> master, without the master having knowledge of user passwords on the remote 
>site?

PVM can dynamically add nodes to its virtual machine, provided that the
remote is already set up via .rhosts so that PVM can use rsh to start up the
daemon. Some account on the remote machine will need to be set up this way.

> I suspect that all users will connect to a known site which has a known
>pvm daemon running there. What sort of security problems could arise from 
>his?

I'm a little confused by what you are mean by "he users will connect to a
known site which has a known pvm daemon running there". If the user is using
a program that is compiled with the PVM libraries then there must already be
a pvm daemon running on the machine that the user is running the client on.
If that is true then  either

1) that pvmd is the master daemon that started up all the other pvm daemons
and it already knows about the other machines because it started up the
daemons on those machines. This is no possible from you stated earlier.

2) that pvmd is its own master daemon and the pvmd on the other machine is
either its own master daemon or a slave pvmd to another pvmd on yet another
machine that is the master daemon. If this is the case, then your pvmd is
considered a separate virtual machine and you cannot merge virtual machines.

Basically, I don't see how users can use PVM to connect to a PVM virtual
machine unless it is already running. Its the chicken-egg thingy all over
again. Now you could write some socket level code that does the initial
handshaking but that would defeat the purpose of using PVM to start with.

It would make the process much simpler if you defined what machines could
potentially be in the virtual machine before hand and created a uniform
account on all those machines (or designated a single account on those
machines as the virtual machine contact account). 

PVM doesn't handle multiple accounts very well and doesn't allow for merging
of seprate virtual machines as is. That's the crux of your problem.

hope this helps
V


-- 
Vernard Martin
(vernard.martin@cc.gatech.edu) http://www.cc.gatech.edu/people/home/vernard/
College of Computing, Georgia Institute of Technology, Atlanta, GA 30332
"Only the good die young. The bad prefer it that way." - goblin proverb

