TCP/IP Buffer overflow

TCP/IP Buffer overflow SearchSearch
Author Message
Alex Kaiser
Frequent Contributor
Username: Alex_k

Post Number: 60
Registered: 07-2006
Posted on Friday, December 18, 2009 - 12:07 pm:   

Hello,

We faced problem with collecting DRs from particular SMSC, outbound speed is ok but DRs are coming very slow. We made tcp dump and found "TCP ZeroWindow" error. We made all performance tune-ups. Our developers suspect that NowSMS doesn't read TCP IP buffer at necessary speed. Any ideas how to solve that? I can send tcp dumps.

Regards,
Alex K.
Des - NowSMS Support
Board Administrator
Username: Desosms

Post Number: 1578
Registered: 08-2008
Posted on Friday, December 18, 2009 - 09:06 pm:   

Hi Alex,

That's very odd.

I spoke at length earlier today with the engineer that has done the most tweaking in the SMPP async implementation. He tells me that there is a 32KB buffer, so delivery reports would have to be coming in extremely fast to exceed that buffer.

That said, we did talk about a few things.

Is your outbound queue for this SMSC extremely full at the same time? Is outbound performance ok at the same time?

I'm assuming that async mode is enabled for the connection. What is the window size? It may be a good idea to decrease this window size.

Is this a transceiver connection? Is it possible to split it into separate sender and receiver binds?

He explained that he could see a potential scenario where if NowSMS is receiving an extremely heavy load of messages on a connection, while it is also trying to saturate the outbound sending queue, the receive buffer could fill up. He's considering adding a tuning parameter to adjust sending vs. receiving priority on a transceiver connection ... but is also wondering if perhaps your async window size is too large.

--
Des
NowSMS Support
Alex Kaiser
Frequent Contributor
Username: Alex_k

Post Number: 61
Registered: 07-2006
Posted on Monday, December 21, 2009 - 02:47 pm:   

Hi Des,

Many thanks for your response! We found an error - our DRs database was corrupted.

Regards,
Alex K.