I can't speak from a U2 stand point, regarding limits on socket handles. I
just don't have the experience. Thus my "off the wall" note. The O/S is
typically responsible for cleaning up client and server sockets. If U2 is
performing O/S level socket functions, then the O/S will be the deciding
factor in a lot of it. Many of the MV flavors I've studied or used have
wrapped the socket functions, to allow for cross-OS coding. Socket functions
on Win32 are not the same as Unix. That, by itself, can cause problems if
the wrapped code is performing blind operations from BASIC code calls. I
have never heard of O/S level client sockets being problematic after X
cycles. That's not the same as listening sockets, though. The SO_REUSEADDR
flag, which is available on most platforms, tells the socket subsystem to
reuse the same memory address for all incoming connections for a specific
port. An example bad situation would be, listen()->accept()->I/O
Error->crash->start->listen(). That kind of issue is known to cause address
stacking on Windows. When a listening server crashes upstream and doesn't
release the socket handle properly, the addresses that are in-use will stack
up until no more addresses are available. That's why a Windows reboot is
required every so often, when the startup of listening sockets begin to
return "in-use" errors. I've also read about shutdown() and close() being
misused interchangeably. Close() releases the file handle, but the socket
address may or may not be released in the network subsystem. That can also
lead to a pile-up of allocated, but unused socket addresses. The only fix
there is a system reboot, or to wait it out until the O/S forces all unused,
inactive, sockets to be cleaned up. That can take an hour or 3 days,
depending on the O/S and how it manages the network.

-------------------------------------------
Glen Batchelor
IT Director
All-Spec Industries
phone: (910) 332-0424
fax: (910) 763-5664
e-mail: [EMAIL PROTECTED]
-------------------------------------------
www.allspec.com
-------------------------------------------

> -----Original Message-----
> From: [EMAIL PROTECTED] [mailto:owner-u2-
> [EMAIL PROTECTED] On Behalf Of Baker Hughes
> Sent: Thursday, February 16, 2006 3:10 PM
> To: [email protected]
> Subject: RE: [U2] Pushing envelope on openSocket
> 
> Glen,
> 
> Thanks for these thoughts.  Tell me more though... what issues have you
> encountered? Did IBM attempt to resolve or steer you to some other
> solution (the local service)?
> 
> Tell us something about your local service that handles the socket I/O.
> I was told the issue was at the C level, so it didn't matter if you were
> in UV or not.
> 
> 
> -----Original Message-----
> From: [EMAIL PROTECTED]
> [mailto:[EMAIL PROTECTED] On Behalf Of Glen Batchelor
> Sent: Thursday, February 16, 2006 1:36 PM
> To: [email protected]
> Subject: RE: [U2] Pushing envelope on openSocket
> 
> 
>  Baker,
> 
>  Just off the wall, have your considered passing the requests to a local
> service and let it handle the socket I/O for you? I know it's out of the
> environment and a little tougher to protect, but it would solve the
> problem. I don't do any socket I/O inside MV any more. There are too
> many issues, across all flavors and OSes.
> 
> -------------------------------------------
> Glen Batchelor
> IT Director
> All-Spec Industries
> phone: (910) 332-0424
> fax: (910) 763-5664
> e-mail: [EMAIL PROTECTED]
> -------------------------------------------
> www.allspec.com
> -------
> u2-users mailing list
> [email protected]
> To unsubscribe please visit http://listserver.u2ug.org/
-------
u2-users mailing list
[email protected]
To unsubscribe please visit http://listserver.u2ug.org/

Reply via email to