Multiple Sessions

Multiple Sessions SearchSearch
Author Message
Rhea
New member
Username: Rhea

Post Number: 2
Registered: 08-2006
Posted on Tuesday, August 22, 2006 - 08:15 am:   

Dear Bryce,

My understanding of multiple sessions/connections to an SMSC is that they are simultaneous not consecutie sessions, or am i wrong? I have a case where i am assigned 35 SMS/Sec and can open upto 3 Sessions, but i noticed in my Out Log that the sessions send after each other not during the same second itself, and therefore instead of achieving 35/sec i achieve 35 every 3 Sec. Is this normal? how can improve this? the operator's SMSC supposedly does not support SMPP Asynch, yet i tried enabling it, and some messages get through while others get the error : Message Queue Full.

Do you have any recommendations?
Bryce Norwood - NowSMS Support
Board Administrator
Username: Bryce

Post Number: 6413
Registered: 10-2002
Posted on Tuesday, August 22, 2006 - 08:37 pm:   

Hi Rhea,

It should depend only on how quickly your operator SMSC will accept messages. When you are not using SMPP async, NowSMS has to wait until it receives acknowledgement that the SMSC has received the previous message before it can submit another.

If you have 2 or more connections defined, they are all handled simultaneously. Activity on one connection does not effect activity on another connection.

When you have multiple connections to the same SMSC, that other SMSC might do some coordination between the multiple connections (for example to enforce a limit on your account).

Let me ask this ...

What performance difference do you see going from one connection, to two connections, to three connections?

How is the CPU load if you view CPU usage under Windows Task Manager during this time?

-bn
Rhea
New member
Username: Rhea

Post Number: 6
Registered: 08-2006
Posted on Wednesday, August 23, 2006 - 11:00 am:   

Dear Bryce,

It turned out that the Operator supports SMPP Asynch, and like i said i have 3 Sessions connected to their SMPP. The throughput limit for the total of the 3 Sessions is 35/Sec. I tried putting a window limit of 11 SMS per session and i even reduced it to 5 SMS per session, i still get the same result which is as follows: some messages pass through while MOST of them get the error : Retry Pending - ERROR: Message Queue Full -- SMPP - 213.131.69.45#3:4100,Sender=XYZ

I have discussed this with the operator, and they tell me they have no limitation set on the size of the windowing only the throughput itself. They also told me that there is limitation on the receiving but in this case i am not receiving anything and i do not request Delivery Receipts.

I do not know where could the problem be. Just for the record i am sending arabic sms, not that i think it makes any difference.
Bryce Norwood - NowSMS Support
Board Administrator
Username: Bryce

Post Number: 6417
Registered: 10-2002
Posted on Wednesday, August 23, 2006 - 08:47 pm:   

Hi Rhea,

As I mentioned in the other thread, "ERROR: Message Queue Full" means that the provider is returning an SMPP response with this error code corresponding to this text explanation. (SMPP error code 0x14 ... ESME_RMSGQFUL)

What this error actually means can vary with different SMS providers.

Usually this means that the provider is busy processing too many messages from your account, and cannot process any more at this time.

If you are talking directly to an operator SMSC, some operator SMSCs will return this error if there are too many messages currently pending for the specified recipient.

These limits will vary.

For these reasons, NowSMS treats this particular error code special, and will retry the message sending more times than with other error codes.

In your case, for testing purposes, I would suggest dropping down to a single connection to the SMSC.

Then experiment with different window sizes. If you see these errors start with a particular window size, then it is likely that the SMSC is returning an error for the first of the reasons that I listed (that they are busy processing too many messages from your account and cannot process any more).

If your provider can't figure out why this is happening (it might be a limitation of the software that they are using for their SMSC) ... then my suggestion would be to see if they will allow you to use 3 different accounts instead of 3 connections to the same account. Then hopefully you could set all 3 of those accounts to use the window size that worked for the single account ... without encountering errors.

This "Message Queue Full" error is definitely being generated by your provider's system ... and the issue now would seem to be figuring out why this is.

-bn

P.S. - Arabic SMS shouldn't have any effect here, but it may in one of the other threads that you have started ... so I'm glad you mentioned it.
Rhea
New member
Username: Rhea

Post Number: 10
Registered: 08-2006
Posted on Thursday, August 24, 2006 - 01:51 pm:   

Dear Bryce,

I tried what you recommended, i.e. using one connection and gradually increasing the Window Size. The strange thing is that when i started with 1 SMS as a limit, naturally there was no problem and no repetition of the above error. But once i increased to 2 SMS, i started getting the error, and the more increased the window size, the more the number of errors. Ofcourse i know that NowSMS will automatically retry those errors. But now i am clueless, is it not strange to start getting the error at 2 SMS?

Also should i adjust the number of retries and retry delay to somehow manage a higher windowing limit?
Bryce Norwood - NowSMS Support
Board Administrator
Username: Bryce

Post Number: 6436
Registered: 10-2002
Posted on Thursday, August 24, 2006 - 10:11 pm:   

Hi Rhea,

It is not strange to start getting the error at 2 SMS ... if the provider does not actually support async SMPP.

It might not happen consistently at a window size of 2, because sometimes it might not see the 2nd SMS until after it has processed the 1st.

But it definitely sounds like either the provider does not support SMPP async ... or they do, but they have limited your account or outbound message queue size so that you cannot use it.

You could adjust error retry settings in NowSMS to make it retry the messages quicker ... but I think performance would be better without async (or with a window size of 1) and no errors than with a larger window size and a lot of errors wasting bandwidth and processing time.

(I hadn't really thought of using an SMPP async window size of 1 before ... but that might perform marginally better than having async mode disabled.)

-bn

Rhea
New member
Username: Rhea

Post Number: 12
Registered: 08-2006
Posted on Wednesday, August 30, 2006 - 08:01 am:   

Dear Bryce,

Would it be possible that maybe the problem is that the receiving number has their own message queue full?

Is there a way to configure the NowSMS to skip those numbers and retry them only when its done with the rest of the queue?

Also, if you have 3 Simultaneous Sessions, shouldn't the output log file show those 3 Sessions sending at the same Second, not in 3 Consectuive Seconds? Because i want to be able to calculate my average throughput.
Bryce Norwood - NowSMS Support
Board Administrator
Username: Bryce

Post Number: 6472
Registered: 10-2002
Posted on Wednesday, August 30, 2006 - 02:39 pm:   

Hi Rhea,


quote:

Would it be possible that maybe the problem is that the receiving number has their own message queue full?




Yes.


quote:

Is there a way to configure the NowSMS to skip those numbers and retry them only when its done with the rest of the queue?




No. At least not in a way where effected numbers are skipped automatically.

NowSMS will apply an increasing retry delay for each consecutive failure.

And it will keep processing the queue.

However, each connection processes the queue independently. And what you could be seeing is that the default behaviour is that after the first failure, the message is available for immediate retry (retry delay only occurs after 2 failures). So it might fail on one connection, and then get retried shortly thereafter on another connection. Set RetryDelayAfterAttempts=1 to trigger retry delay after 1 failure.


quote:

Also, if you have 3 Simultaneous Sessions, shouldn't the output log file show those 3 Sessions sending at the same Second, not in 3 Consectuive Seconds? Because i want to be able to calculate my average throughput.




Yes, it should. Assuming that your NowSMS license will allow it. (If you are using a trial, it limits to 30 messages per minute, and no more than 1 per second.)

-bn