[MPICH] Re: Using MPICH2 on different ports

Anthony Chan chan at mcs.anl.gov
Fri Apr 20 12:33:38 CDT 2007



On Fri, 20 Apr 2007, Matt Valerio wrote:

> Yeah, that may be what I end up doing -- just forcing everyone to run their
> stuff from the gateway computer.  Definitely not ideal, though.

Is your gateway machine a windows server that allows simultaneous RDP
sessions ?

>
> In my specific application the amount of message passing is pretty minimal
> -- send a task to a computer, wait 10-15 minutes, get the results back.  I
> think a single NAT could handle that.

Yes.
>
> Thanks,
> -Matt
>
>
> On 4/20/07, Anthony Chan <chan at mcs.anl.gov> wrote:
> >
> >
> > Wouldn't that be easier to use one (or couple) of the machines behind the
> > firewall as the frontend(s) of your cluster.  Anyone who wants to run
> > spmd/MPI job will need to login to the frontend(s) and run from there ?
> > I think there may be performance hit to have all messages route through
> > the NAT'ed machine (don't know how big though) even if what you are asking
> > can be done.
> >
> > A.Chan
> >
> > On Fri, 20 Apr 2007, Matt Valerio wrote:
> >
> > > Hi everyone,
> > >
> > > Thanks for your responses.  I think they've answered my question, and
> > the
> > > answer is that what I want to do is not possible.
> > >
> > > Yes, Matthew Chambers has it right.
> > >
> > > My current grid setup involves a number of computers (192.168.0.*), each
> > > running smpd on port 8676.  I have one of those computers as the
> > "gateway",
> > > that has 2 network cards, with one connected to the public network and
> > one
> > > connected to the private network.  I want to give any computer in the
> > public
> > > network access to the computers on the private network by opening up a
> > range
> > > of ports on the gateway computer.  This approach is exactly how I open
> > up
> > > Remote Desktop (RDP) currently.
> > >
> > > So for example, I want to set up the forwarding as:
> > > gateway:10101 --> slave01:8676
> > > gateway:10102 --> slave02:8676
> > > gateway:10103 --> slave03:8676
> > > etc.
> > >
> > > As you've said, this approach is currently not possible -- the machine
> > file
> > > doesn't allow it.  For various reasons, I cannot put all of the
> > computers on
> > > the private network onto the public network -- using NAT is my only
> > option.
> > >
> > > Sorry for the confusion of firewall vs. NAT.  The port forwarding rules
> > are
> > > firewall exceptions in the control panel, so I get confused.
> > >
> > > So.....does anyone know if there are plans to implement this kind of
> > > fine-grained control over the network connections?  I think it would
> > greatly
> > > enhance the ways that MPICH2 clusters can be deployed.
> > >
> > > Thanks for your help,
> > > -Matt
> > >
> > >
> > > On 4/20/07, Matthew Chambers <matthew.chambers at vanderbilt.edu> wrote:
> > > >
> > > >  I don't understand how that could solve his problem.  I think Matt
> > > > Valerio's initial description of the problem was misleading,
> > though.  It
> > > > seems to me that he is not trying to connect through a simple
> > firewall, he
> > > > is trying to connect through a NAT.  It seems he wants to use port
> > > > forwarding set up on the NAT in way that will enable him, from a
> > computer
> > > > outside the NAT, to create a machine config file that connects to the
> > same
> > > > host IP (e.g. the WAN IP of the NAT) with different ports, which will
> > > > logically connect to multiple machines inside of the NAT.  However, as
> > you
> > > > say, that is not possible with the current SMPD machine config
> > file.  I do
> > > > think that is bad design on the part of the config file though.  Would
> > it be
> > > > very difficult to extend the config file to support specification of
> > port as
> > > > well as host/IP?
> > > >
> > > >
> > > >   ------------------------------
> > > >
> > > > *From:* owner-mpich-discuss at mcs.anl.gov [mailto:owner-
> > > > mpich-discuss at mcs.anl.gov] *On Behalf Of *Jayesh Krishna
> > > > *Sent:* Friday, April 20, 2007 10:56 AM
> > > > *To:* 'Matt Valerio'
> > > > *Cc:* mpich-discuss at mcs.anl.gov
> > > > *Subject:* RE: [MPICH] Re: Using MPICH2 on different ports
> > > >
> > > >
> > > >
> > > > Hi,
> > > >
> > > >  SMPD, by default, runs on the same port (8676) on all computers.
> > However
> > > > you can specify the port that smpd needs to run using the "-port"
> > option
> > > > while starting smpd (You can also ask smpd to run on any port assigned
> > by OS
> > > > using the "-anyport" option). The machine config file does not support
> > > > specifying port names along with the machine name & number of procs.
> > > >
> > > >  Instead of mapping the port numbers to IP+port you could allow
> > > > connections from a certain list of client machines/IPs to certain port
> > (say
> > > > 8000) numbers on computer1/2/..
> > > >
> > > >  Let us know if you require any further information.
> > > >
> > > >
> > > >
> > > > Regards,
> > > >
> > > > Jayesh
> > > >
> > > >
> > > >  ------------------------------
> > > >
> > > > *From:* owner-mpich-discuss at mcs.anl.gov [mailto:owner-
> > > > mpich-discuss at mcs.anl.gov] *On Behalf Of *Matt Valerio
> > > > *Sent:* Wednesday, April 18, 2007 11:04 AM
> > > > *To:* mpich-discuss at mcs.anl.gov
> > > > *Subject:* [MPICH] Re: Using MPICH2 on different ports
> > > >
> > > > Ok, let me try to simplify the question.
> > > >
> > > > Does smpd need to run on the same port on all computers?
> > > > Can I tell mpiexec that it needs to connect to all of the smpd
> > computers
> > > > on different ports?
> > > >
> > > > I know that the machine config file can specify different computers,
> > but
> > > > the same port.  I am just curious if the machine config file can
> > specify
> > > > different computers as well as different ports.
> > > >
> > > > Any help would be greatly apppreciated.  Thanks!
> > > > -Matt
> > > >
> > > >
> > > >  On 4/16/07, *Matt Valerio* <matt.valerio at gmail.com > wrote:
> > > >
> > > > Hello MPICH2 users,
> > > >
> > > > I am wondering if there is a way to instruct mpiexec to use multiple
> > > > computers running smpd on different ports.
> > > >
> > > > For example, I have 10 computers behind a firewall.  Each of those 10
> > > > computers is running smpd on the same port (let's say 8000).
> > > > I want to put rules into a firewall computer that maps an
> > > > externally-available port to the specific computer
> > > >
> > > > firewall:8001 ----(maps to)----------> computer1:8000
> > > > firewall:8002 ----(maps to)----------> computer2:8000
> > > > ...
> > > > firewall:8010 ----(maps to)----------> computer10:8000
> > > >
> > > > Then in the machine configuration file, I need to be able to tell
> > mpiexec
> > > > that it can use the same computer but different ports (8000-8010),
> > like
> > > >
> > > > firewall:8001
> > > > firewall:8002
> > > > ...
> > > > firewall:8010
> > > >
> > > > etc.
> > > >
> > > > Is this currently possible?  I know the machine file format is wrong
> > > > because the number after the colon specifies the number of processes,
> > not
> > > > the port number.
> > > >
> > > > Does anyone have any ideas as to whether this kind of thing could
> > work?
> > > > Is there a better way?  Any help would be greatly appreciated.
> > > >
> > > > Thanks!
> > > > -Matt
> > > >
> > > >
> > > >
> > > >
> > >
> >
>




More information about the mpich-discuss mailing list