[Devel] non-invite server transactions are terminated too fast

Klaus Darilion klaus.mailinglists at pernau.at
Tue Apr 11 15:15:19 CEST 2006


Bogdan-Andrei Iancu wrote:
> Hi,
> 
> REGISTER retransmission is a little bit tricky.
> 
> If you have a stateless configuration, you will not be able to detect 
> retransmissions, so each request will be fully processed as a new one. 
> Since we added the cseq checking in register module (according to rfc), 
> the retransmissions will be reported as errors due invalid cseq no.
> Solution: relax the register checking to accept equal cseq. 
> Disadvantage: you still process each register even if it;s 
> retransmission - partial solution: try sending an 100 trying once you 
> received a REGISTER.

This means that the client will wait for the response, which may never 
arrive e.g. when it was dropped. How long will the client wait? will it 
use a new cseq when it tries again?

> Also you my go for a statefull approach: you will catch all 
> retransmissions, but it might have a negative impact on your memory 
> usage. Use t_newtran() before save in order to create transactions and 
> absorb retransmissions.

Does this really work? As far as I remember I tried this a year ago and 
there where some problems. This is why Maxim made the patch.

regards
klaus



More information about the Devel mailing list