[Devel] Openser crash impact

Klaus Darilion klaus.mailinglists at pernau.at
Wed Jun 20 11:19:26 CEST 2007



lariny guy wrote:
> Hi,
> 
> Openser is a transactionnal server and the transactions are
> independantes. I would ask you some questions about that:
> 
> 1 - Can two transactions of the same dialog be handled with two
> independantes opensers, an example of that is one openser deal the
> session establishement (INVITE/Trying/Ringing/200OK/ACK)and the other
> openser close the session with BYE/200OK/ACK.

Yes (there is no ACK in BYE transaction)

> - Is there any impact for the dialog and for other modules,like the
> ACC wich has to determine the RTP session duration.

ACC is no problem: proxy1 writes the start record, proxy2 writes the 
stop record.

Regarding rtpproxy/mediaproxy you should make sure that both proxies use 
the same mediaproxy. If there are multiple RTP proxies maybe the SIP 
proxies should all use the same proxydispatcher. Or you just leave the 
session open on the RTP proxy and set short timeouts in the RTP proxy.

> 2- When the server crash at RINGING, i redirect the other following
> messages(200OK/ACK) to another server. I think that i have lose the
> atomicity of the transaction. Is there any impact of that especially
> for the ACC module

Yes. Probably you wont have a start record as ACC module uses tm 
callbacks - but there wont be a tm callback at proxy2 as there is no 
transaction at proxy2. Proxy2 will just forward the 200Ok reply 
statelessly. But you could workaround by manually forcing an ACC record 
from openser.cfg.

> 3 - Why the other modules, like ACC, use the TM module

e.g. ACC registers a callback for finished transactions at the tM 
module. If a transaction is finished (e.g. 200 Ok or 404 received), the 
TM module calls the callback function from ACC module, which generates 
the accounting record.

regards
klaus




More information about the Devel mailing list