netdemo echoServer issue [was: Re: listen/select and then accept pattern not working?]

Joel Sherrill <joel@OARcorp.com> joel.sherrill at OARcorp.com
Mon Jan 17 16:23:24 UTC 2005




Karel Gardas wrote:
> Hello,
> 
> finally I'm able to run MICO-based CORBA server on RTEMS. The only issue
> is that the server seems to be somewhat limited in a number of connection
> it can open/serve. Precisely, it is able to serve/use just one TCPIP
> connection. My listen/select issue was caused directly by this fact, since
> before running whole CORBA server logic, MICO tries to find the name of
> the computer which results in a remote connection going outside (DNS) --
> at least I see opened socket in my debug printf hacks done to the
> under-laying RTEMS. Then when server tries to do its thing it was not able
> since the only one available connection was already consumed. When I force
> MICO to not do any resolving and so not opening any connection outside
> before serving its client, I'm finally able to get hello world server on
> RTEMS running and even serving its client well, but as I said, the number
> of clients served is exactly one: the first client runs well and the
> second, third, etc, are not working since they are not able to connect
> server side. (clients are running on Linux and server on RTEMS)

RTEMS is full of configurable limits.  The first one which comes
to mind is:

CONFIGURE_LIBIO_MAXIMUM_FILE_DESCRIPTORS

Each socket consumes a file descriptor.  This parameter should
cover all the implied resources.

Since this is a connection issue, that would be my first guess.
I recall Gene Smith having problems with connections that he
opened/closed fairly quickly.  They didn't get reclaimed fast
enough for his tastes.

> 
> I hope that this has to do with some direct limit set in RTEMS, I would
> like to avoid this or make somewhat bigger and so I'm writing here. Is
> there any tunable number of socket like parameter/define for RTEMS? You
> can duplicate this issue yourself hopefully easily just by using plain
> RTEMS netdemo -- try to use echo server functionality more than once by
> opening, writing, closing telnet connection and see that the second and
> more connection will not get entered character echoed. If I'm wrong and
> your netdemo works well for you, please correct me here.
> 
> Thanks,
> Karel
> PS: RTEMS is 4-6-branch sources as of today compiled with 4.6.2
> recommended tool-chain configured for pc386 BSP running inside Qemu (qemu
> is not the culprit here, since it's networking is working well with
> OpenBSD OS inside Qemu used from my linux box)

I would like to get your RTEMS network configuration for qemu. I haven't
had a chance to play enough to get this working and am always willing
to take a handout :)

--joel

> On Fri, 14 Jan 2005, Karel Gardas wrote:
> 
> 
>>On Fri, 14 Jan 2005, Steve Holle wrote:
>>
>>
>>>We are using select on a telnet server.  If you would like to have the full
>>>source let me know.  This is how we use it
>>
>>Thanks for your kind offer, however I don't know if your telnet server
>>uses the same pattern like MICO does. Anyway, could you be so kind and
>>test my select on listening socket test which I'm just going to send to
>>this mailing list?
>>
>>Thanks,
>>Karel
>>--
>>Karel Gardas                  kgardas at objectsecurity.com
>>ObjectSecurity Ltd.           http://www.objectsecurity.com
>>
>>
> 
> 
> --
> Karel Gardas                  kgardas at objectsecurity.com
> ObjectSecurity Ltd.           http://www.objectsecurity.com
> 


-- 
Joel Sherrill, Ph.D.             Director of Research & Development
joel at OARcorp.com                 On-Line Applications Research
Ask me about RTEMS: a free RTOS  Huntsville AL 35805
    Support Available             (256) 722-9985




More information about the users mailing list