EldoS | Feel safer!

Software components for data protection, secure storage and transfer

Does TElIndySSLIOHandlerSocket buffer internally?

Also by EldoS: CallbackProcess
A component to control process creation and termination in Windows and .NET applications.
#999
Posted: 08/10/2006 22:04:18
by John Yu (Basic support level)
Joined: 08/10/2006
Posts: 2

Hi,

I'm using TElIndySSLIOHandlerSocket with Indy 9 to implement a client. I have a strange problem:

Even if I reduced the TidTCPClient.RecvBufferSize to a very small size (e.g. 64 bytes), large amount of data was still buffered somewhere on my client (e.g. in the order of 10000 bytes) before reaching my application code. The server thought it had sent a message to my client at time X, but my application code didn't receive it much later. This causes serious problem in my application which is time sensitive.

I'm wondering if TElIndySSLIOHandlerSocket does internal buffering? If yes, could I configure it? If not, do you have any idea in which layer of the stack the buffering happens?

Thanks
--
John
#1000
Posted: 08/11/2006 11:58:30
by Eugene Mayevski (EldoS Corp.)

There's no place in IO handler that can cause a delay. Unfortunately I can say nothing about Indy itself


Sincerely yours
Eugene Mayevski
#1002
Posted: 08/14/2006 08:13:48
by Stephane Grobety (Priority Standard support level)
Joined: 04/18/2006
Posts: 170

The receive buffer size is used in exactly two calls in the Indy TCP connection object: ReadFromStack and ReadStream.

In the first case, it will be the largest amount of data that will be extracted from the TCP stack in a single read: if there is more data in the input buffer, the calling function will need a second call to get it.

In the second case, the size is just used to create a buffer of the proper size for the read druing the loop.

So, basically, it all boils down to what you're trying to do and what code path you use to reach the ReadFromStack call.

Reply

Statistics

Topic viewed 2892 times

Number of guests: 1, registered members: 0, in total hidden: 0




|

Back to top

As of July 15, 2016 EldoS Corporation will operate as a division of /n software inc. For more information, please read the announcement.

Got it!