Re: MAXCONN

2008-10-06 Thread Schuh, Richard
Not multiple stacks, multiple sockets on one port, one stack. The
application is a driver of test systems that opens thousands of sockets,
one for each endpoint that it emulates. Since it is one IUCV connection,
my MAXCONN is not in danger of being exceeded. 

Regards, 
Richard Schuh 

 

> -Original Message-
> From: The IBM z/VM Operating System 
> [mailto:[EMAIL PROTECTED] On Behalf Of Rob van der Heij
> Sent: Sunday, October 05, 2008 1:55 AM
> To: IBMVM@LISTSERV.UARK.EDU
> Subject: Re: MAXCONN
> 
> On Sat, Oct 4, 2008 at 6:18 PM, Ivica Brodaric 
> <[EMAIL PROTECTED]> wrote:
> 
> > For applications, check IPGATE if you have it. It does only one
> > socket('INITIALIZE') in the top level routine, but creates 
> new sockets 
> > for each userid/APPC resource pair. According to previous post, it 
> > should use only one IUCV link to the stack.
> 
> It depends on the application. The fact that you can is no 
> guarantee the application will.
> 
> From what I see, IPGATE can only talk to one single stack, so 
> it makes sense to use a single connection. I have never used 
> RXSOCKET, but from what I see it does not support multiple 
> stacks either, so it is practical to have only one IUCV 
> connection. But if you write a server with CMS Pipelines to 
> listen to multiple sockets (on different stacks if you want) 
> then there will be one IUCV to the TCP/IP virtual machine for 
> each socket.
> 
> PS IPGATE does have one IUCV connection to CP for each 
> resource that it provides.
> 
> -Rob
> 


Re: MAXCONN

2008-10-05 Thread Alan Altmark
On Sunday, 10/05/2008 at 04:55 EDT, Rob van der Heij <[EMAIL PROTECTED]> 
wrote:

> From what I see, IPGATE can only talk to one single stack, so it makes
> sense to use a single connection. I have never used RXSOCKET, but from
> what I see it does not support multiple stacks either, so it is
> practical to have only one IUCV connection. But if you write a server
> with CMS Pipelines to listen to multiple sockets (on different stacks
> if you want) then there will be one IUCV to the TCP/IP virtual machine
> for each socket.

Multiple TCP/IP client (IUCV) connections to the stack is useful when you 
are acting as a proxy on behalf of your own clients.  E.g. a sniffer 
virtual machine.  Then, you SEVER your connection to the stack if a client 
severs his or her connection to you.  Other than that, I don't think 
there's any value in one IUCV connection per socket.  It's a convenient 
programming model, but it's a waste of resources.

> PS IPGATE does have one IUCV connection to CP for each resource that
> it provides.

The connection is an APPC/VM connection to the APPC *resource manager*, 
not a connection to CP, as would be the case for a "starsys" system 
service.

Alan Altmark
z/VM Development
IBM Endicott


Re: MAXCONN

2008-10-05 Thread Ivica Brodaric
>
> It depends on the application. The fact that you can is no guarantee
> the application will.
>

Understood.

I mentioned IPGATE only as a way to prove the idea in case if Richard is
still in the planning stage only and doesn't have his own application ready
for testing yet. As he said that he has the control of the EXEC that creates
the sockets, I presume that he would know how those sockets are opened.
IPGATE does open an IUCV connection for each local resource, but those
connections count towards IPGATE server machine's MAXCONN number, not the
TCPIP machine's MAXCONN, which is what Richard is concerned about. IPGATE
does only one socket initialize, and then uses one additional socket for
each active  pair and one additional socket for
every defined remote resource, if I understand it correctly. I just thought
that this could be used as a test case.

Ivica


Re: MAXCONN

2008-10-05 Thread Rob van der Heij
On Sat, Oct 4, 2008 at 6:18 PM, Ivica Brodaric <[EMAIL PROTECTED]> wrote:

> For applications, check IPGATE if you have it. It does only one
> socket('INITIALIZE') in the top level routine, but creates new sockets for
> each userid/APPC resource pair. According to previous post, it should use
> only one IUCV link to the stack.

It depends on the application. The fact that you can is no guarantee
the application will.

>From what I see, IPGATE can only talk to one single stack, so it makes
sense to use a single connection. I have never used RXSOCKET, but from
what I see it does not support multiple stacks either, so it is
practical to have only one IUCV connection. But if you write a server
with CMS Pipelines to listen to multiple sockets (on different stacks
if you want) then there will be one IUCV to the TCP/IP virtual machine
for each socket.

PS IPGATE does have one IUCV connection to CP for each resource that
it provides.

-Rob


Re: MAXCONN

2008-10-04 Thread Ivica Brodaric
If you are worried about MAXCONN in general, RSCS LPR links use one IUCV
link to the stack each.
For applications, check IPGATE if you have it. It does only one
socket('INITIALIZE') in the top level routine, but creates new sockets for
each userid/APPC resource pair. According to previous post, it should use
only one IUCV link to the stack.

Ivica

On Fri, Oct 3, 2008 at 2:08 AM, Schuh, Richard <[EMAIL PROTECTED]> wrote:

>  What consumes the connections specified in the MAXCONN option of the
> TCPIP machine's directory? Does each open socket consume 1 connection, or is
> it 1 connection for each guest that opens 1 or more sockets?
>
> Regards,
> Richard Schuh
>
>


Re: MAXCONN

2008-10-03 Thread Alan Altmark
On Friday, 10/03/2008 at 03:52 EDT, Rob van der Heij <[EMAIL PROTECTED]> 
wrote:
> On Fri, Oct 3, 2008 at 9:46 AM, Alan Altmark <[EMAIL PROTECTED]> 
wrote:
> 
> > A single IUCV connection handles multiple sockets.
> 
> But your average application may not do that and could also establish
> multiple connections to the same stack, right?

Your "average application" will establish a single IUCV connection. Anyone 
writing a C socket program will establish just one.  Rexx 
socket('INITIALIZE') creates the IUCV connection, and I haven't seen any 
normal prgram ever issue more than one INITIALIZE.

Alan Altmark
z/VM Development
IBM Endicott


Re: MAXCONN

2008-10-03 Thread Schuh, Richard
That is not a problem. We have control of the EXEC that creates the
sockets.

Regards, 
Richard Schuh 

 

> -Original Message-
> From: The IBM z/VM Operating System 
> [mailto:[EMAIL PROTECTED] On Behalf Of Rob van der Heij
> Sent: Friday, October 03, 2008 12:52 AM
> To: IBMVM@LISTSERV.UARK.EDU
> Subject: Re: MAXCONN
> 
> On Fri, Oct 3, 2008 at 9:46 AM, Alan Altmark 
> <[EMAIL PROTECTED]> wrote:
> 
> > A single IUCV connection handles multiple sockets.
> 
> But your average application may not do that and could also 
> establish multiple connections to the same stack, right?
> 
> From the VMDBK you follow the VMDIUCVB pointer to the IUCVB 
> of the virtual machine. There you find the count for the 
> number of active connections and the maximum from the 
> directory. If you can't explain the number you see, ook for 
> Chuckie's LSTIUCV (or write your own to walk the chain of blocks).
> 
> Rob
> 


Re: MAXCONN

2008-10-03 Thread Schuh, Richard
Thanks. That is what I thought, but wanted to verify.

Regards, 
Richard Schuh 

 

> -Original Message-
> From: The IBM z/VM Operating System 
> [mailto:[EMAIL PROTECTED] On Behalf Of Alan Altmark
> Sent: Friday, October 03, 2008 12:46 AM
> To: IBMVM@LISTSERV.UARK.EDU
> Subject: Re: MAXCONN
> 
> On Thursday, 10/02/2008 at 12:20 EDT, "Schuh, Richard" 
> <[EMAIL PROTECTED]>
> wrote:
> > What consumes the connections specified in the MAXCONN option of the
> TCPIP 
> > machine's directory? Does each open socket consume 1 
> connection, or is
> it 1 
> > connection for each guest that opens 1 or more sockets? 
> 
> A single IUCV connection handles multiple sockets.
> 
> Alan Altmark
> z/VM Development
> IBM Endicott
> 


Re: MAXCONN

2008-10-03 Thread Rob van der Heij
On Fri, Oct 3, 2008 at 9:46 AM, Alan Altmark <[EMAIL PROTECTED]> wrote:

> A single IUCV connection handles multiple sockets.

But your average application may not do that and could also establish
multiple connections to the same stack, right?

>From the VMDBK you follow the VMDIUCVB pointer to the IUCVB of the
virtual machine. There you find the count for the number of active
connections and the maximum from the directory. If you can't explain
the number you see, ook for Chuckie's LSTIUCV (or write your own to
walk the chain of blocks).

Rob


Re: MAXCONN

2008-10-03 Thread Alan Altmark
On Thursday, 10/02/2008 at 12:20 EDT, "Schuh, Richard" <[EMAIL PROTECTED]> 
wrote:
> What consumes the connections specified in the MAXCONN option of the 
TCPIP 
> machine's directory? Does each open socket consume 1 connection, or is 
it 1 
> connection for each guest that opens 1 or more sockets? 

A single IUCV connection handles multiple sockets.

Alan Altmark
z/VM Development
IBM Endicott


MAXCONN

2008-10-02 Thread Schuh, Richard
What consumes the connections specified in the MAXCONN option of the
TCPIP machine's directory? Does each open socket consume 1 connection,
or is it 1 connection for each guest that opens 1 or more sockets? 

Regards, 
Richard Schuh