[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}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r27654 - msh/doc,
gnunet <=