[OpenSIPS-Users] Retransmissions with broken UAs

Iñaki Baz Castillo ibc at aliax.net
Tue May 19 20:39:45 CEST 2009


El Martes, 19 de Mayo de 2009, Brett Nemeroff escribió:
> So my question is, what is opensips's behavior with these kinds of
> transactions.

> I don't understand when opensips decides to retransmit a
> 200OK (without re-relaying the BYE), versus a 481 Transaction Does not
> Exist, versus completely ignoring the packet.

This is the correct behaviour of a transaction stateful proxy:
- Opensips receives the BYE and relays it sucesfully (since it receives 200 
from downstream).
- Opensips forwards the 200 to the broken UA who "doesn't" understand it (why? 
no idea).
- So the broken UA re-sends the BYE.
- Opensips receives it again and it matches the previous transaction (which 
remains in memory for 32 seconds). It could occur that the first 200 from 
OpenSIPS to the UA is lost in the network so OpenSIPS MUST be ready to receive 
a BYE retransmission.
- After 32 seconds the transactions end so next BYE would be relayed by 
OpenSIPS and would get 481 from the other endpoint.


> I was guessing the
> transaction stays in memory after it's been destroyed just to absorb
> retransmissions. If that's the case, would i expect to see a 481 once that
> timer expires for the same retransmitted BYE?

Yes, but the 481 will be replied by the other endpoint.



-- 
Iñaki Baz Castillo <ibc at aliax.net>



More information about the Users mailing list