Re: [PATCH] UCP/EMI keepalive/UCP31 bug.

Vincent CHAVANIS <[email protected]>
Newsgroups gmane.comp.mobile.kannel.devel
Message-ID <[email protected]>

Andreas Fink a écrit :
> 
> On 05.08.2008, at 12:57, Vincent CHAVANIS wrote:
> 
>>
>>>>               } else if (emimsg->ot == 31) {
>>>> +                    PRIVDATA(conn)->last_activity_time = time 
>>>> (NULL);                         /* XXX Process error codes here
>>>>                   if (octstr_get_char(emimsg->fields[0], 0) == 'N') {
>>>>                       long errorcode;
>>> not sure why this is needed. Would sound like it would have never 
>>> worked otherwise...
>>
>> This is absolutly needed!
>> Take this exemple
>> 00:00:00 you sent a UCP31
>> 00:00:30 you received an ack of your UCP31
>> (the SMSC is overloaded in this case)
>> Then if your keepalive is set to 31 you will send just after 1 sec an 
>> other UCP31. And will result to block the sender thread (can_write = 0)
> 
> This should never happen if you have window properly set. And while we 
> have traffic, last activity is counting up so keepalive will not be sent 
> out anyway as the activity keeps the link alive. Keepalive is ONLY sent 
> if there is NO activity. But counting keepalive as activity itself 
> doesnt sound wrong neither.

I got the issue.

2008-08-05 15:06:29.984 [22065] [6] DEBUG: EMI2[33030]: emi2 sending 
packet: <04/00027/O/31/33030/0539/F4>
2008-08-05 15:06:40.393 [22065] [6] DEBUG: EMI2[33030]: Got packet from 
the main socket
2008-08-05 15:06:40.393 [22065] [6] DEBUG: EMI2[33030]: emi2 parsing 
packet: <04/00019/R/31/A//6F>
2008-08-05 15:06:40.393 [22065] [6] DEBUG: EMI2[33030]: emi2 sending 
packet: <05/00027/O/31/33030/0539/F5>
2008-08-05 15:06:40.533 [22065] [6] DEBUG: EMI2[33030]: Got packet from 
the main socket
2008-08-05 15:06:40.533 [22065] [6] DEBUG: EMI2[33030]: emi2 parsing 
packet: <05/00019/R/31/A//70>


-> 10.409sec to ack my UCP31
If my keepalive is less or equal than 10sec, i will be on the explained 
case. While the SMSC will ack > 10sec we will not able to do anything.
We must find a workaround for this.

But i agree, this link has low traffic.

Vincent.


-- 
Telemaque - 06560 SOPHIA-ANTIPOLIS - (FR)
Service Technique/Reseau - NOC
Direction du Developpement xMS+
http://www.telemaque.fr/
[email protected]
Tel : +33 4 92 90 99 84 (fax 9142)
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.