gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[GNUnet-SVN] r27654 - msh/doc


From: gnunet
Subject: [GNUnet-SVN] r27654 - msh/doc
Date: Thu, 27 Jun 2013 16:46:46 +0200

Author: harsha
Date: 2013-06-27 16:46:46 +0200 (Thu, 27 Jun 2013)
New Revision: 27654

Modified:
   msh/doc/msh.tex
Log:
enumerate

Modified: msh/doc/msh.tex
===================================================================
--- msh/doc/msh.tex     2013-06-27 14:41:35 UTC (rev 27653)
+++ msh/doc/msh.tex     2013-06-27 14:46:46 UTC (rev 27654)
@@ -22,11 +22,11 @@
 
   The motivation for this project is that often in such systems \texttt{ssh} is
   either unavailable or restricted for users due to security reasons.  As a
-  result, hosts in these systems cannot be used for applications such as 
network
-  emulators or testbeds which rely on \texttt{ssh} to establish connections
-  among the hosts.  \texttt{msh} aims to solve this problem by providing an
-  alternative remote shell which can be used by these applications instead of
-  \texttt{ssh}.
+  result, hosts in these systems cannot be used for non MPI applications such 
as
+  network emulators or testbeds which rely on \texttt{ssh} to establish
+  connections among the hosts.  \texttt{msh} aims to solve this problem by
+  providing an alternative remote shell which can be used by these applications
+  instead of \texttt{ssh}.
 \end{abstract}
 
 \section{Architecture}
@@ -49,41 +49,48 @@
 \end{figure}
 
 An overview of the interactions involved in starting an application with MSH is
-shown in Figure~\ref{fig:job_startup}: 1. The job scheduler starts the 
execution
-wrapper which is used to start multiple instances of MPI programs.  Examples 
for
-execution wrappers are \texttt{mpiexec}, \texttt{mpirun}, \texttt{poe} and
-\texttt{srun}.  2. The execution wrapper starts an \texttt{mshd} instance on
-each of the allocated hosts.  We distinguish the instance having MPI id 0 as 
the
-master instance and all other instances as worker instances.  3. Each
-\texttt{mshd} instance opens a local socket with a random free port and binds 
it
-to all available IP addresses of its host.  4. The worker instances send their
-IP addresses and port numbers to which their local sockets were bound to the
-master instance using MPI messaging.  5. The master instance verifies the
-received group of IP addresses from each worker instance by opening a TCP
-connection to the socket with each of the received IP addresses in parallel and
-in non-blocking mode.  The IP address corresponding to the first successfully
-established TCP connection is deemed as the worker instance's IP.  6. After
-verifying the IP addresses of all worker instances, the master instance chooses
-a worker instance to verify its own IP addresses.  7.  The worker instance
-verifies the IP address of the master instance.  8. The worker instance 
notifies
-the master instance of its IP address.  9. the master instance broadcasts the
-instance--IP mapping to all worker instances through MPI.  10. All the 
instances
-open a local socket for IPC and set an environmental variable to refer to this
-socket.  The master instance then starts the given application which defaults 
to
-\texttt{bash} if it not specified as a parameter to \texttt{mshd} in the
-execution wrapper.  11. The application calls \texttt{msh} for executing a
-remote command on one of the allocated hosts.  12. The \texttt{msh} program
-inherits the environmental variable set by the master instance and communicates
-to the master instance the remote command to be executed through IPC.
-Additionally, it forwards its stdin and stderr as stdin and stderr respectively
-for the remote command to the master instance.  13. The master instance
-determines the worker instance responsible for executing the remote command 
from
-the instance--IP mapping and relays the remote command, its stdin and stderr to
-the worker instance through MPI.  14. The worker instance executes the remote
-command with the relayed stdin and stderr.  The remote command may also use
-\texttt{msh} to execute commands to other hosts.  In this case, the 
\texttt{msh}
-will connect to the local worker instance for relaying the command to the 
remote
-instance.
+shown in Figure~\ref{fig:job_startup}: 
+\begin{enumerate}
+\item The job scheduler starts the execution wrapper which is used to start
+  multiple instances of MPI programs.  Examples for execution wrappers are
+  \texttt{mpiexec}, \texttt{mpirun}, \texttt{poe} and \texttt{srun}.
+\item The execution wrapper starts an \texttt{mshd} instance on each of the
+  allocated hosts.  We distinguish the instance having MPI id 0 as the master
+  instance and all other instances as worker instances.
+\item Each \texttt{mshd} instance opens a local socket with a random free port
+  and binds it to all available IP addresses of its host.
+\item The worker instances send their IP addresses and port numbers to which
+  their local sockets were bound to the master instance using MPI messaging.
+\item The master instance verifies the received group of IP addresses from each
+  worker instance by opening a TCP connection to the socket with each of the
+  received IP addresses in parallel and in non-blocking mode.  The IP address
+  corresponding to the first successfully established TCP connection is deemed
+  as the worker instance's IP.
+\item After verifying the IP addresses of all worker instances, the master
+  instance chooses a worker instance to verify its own IP addresses.
+\item The worker instance verifies the IP address of the master instance
+\item The worker instance notifies the master instance of its IP address.
+\item The master instance broadcasts the instance--IP mapping to all worker
+  instances through MPI.
+\item All the instances open a local socket for IPC and set an environmental
+  variable to refer to this socket.  The master instance then starts the given
+  application which defaults to \texttt{bash} if it not specified as a 
parameter
+  to \texttt{mshd} in the execution wrapper.
+\item The application calls \texttt{msh} for executing a remote command on one
+  of the allocated hosts.
+\item The \texttt{msh} program inherits the environmental variable set by the
+  master instance and communicates to the master instance the remote command to
+  be executed through IPC.  Additionally, it forwards its stdin and stderr as
+  stdin and stderr respectively for the remote command to the master instance.
+\item The master instance determines the worker instance responsible for
+  executing the remote command from the instance--IP mapping and relays the
+  remote command, its stdin and stderr to the worker instance through MPI.
+\item The worker instance executes the remote command with the relayed stdin 
and
+  stderr.  The remote command may also use \texttt{msh} to execute commands to
+  other hosts.  In this case, the \texttt{msh} will connect to the local worker
+  instance for relaying the command to the remote instance.
+\end{enumerate}
 
 
+
 \end{document}




reply via email to

[Prev in Thread] Current Thread [Next in Thread]