[Devel] [ openser-Bugs-1592883 ] tm does not send cancel for INVITE if without reply message

SourceForge.net noreply at sourceforge.net
Wed Jan 17 18:09:24 CET 2007


Bugs item #1592883, was opened at 2006-11-08 14:59
Message generated for change (Comment added) made by di-shi
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=743020&aid=1592883&group_id=139143

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: modules
Group: ver devel
Status: Open
Resolution: None
Priority: 5
Private: No
Submitted By: Di-Shi Sun (di-shi)
Assigned to: Bogdan (bogdan_iancu)
Summary: tm does not send cancel for INVITE if without reply message

Initial Comment:
tm does not send a cancel message for an INVITE if 
OpenSER does not receive a 100<= and <200 reply 
message for the INVITE.

In our test case, the first destination sends a 183 
message back more than 30 sec after OpenSER sends the 
INVITE (without 100 Trying message). OpenSER has 
started sending an INVITE to the second destination. 
This causes a lot of useless messages are generated.

We suggest OpenSER send a cancel message even if it 
does not receive any reply from the destination.

----------------------------------------------------------------------

>Comment By: Di-Shi Sun (di-shi)
Date: 2007-01-17 12:09

Message:
Logged In: YES 
user_id=1470964
Originator: YES

Hi Bogdan,

I am on vacation. I will test the latest fix as soon as I am back to the
office.

Regards,

Di-Shi Sun.

----------------------------------------------------------------------

Comment By: Bogdan (bogdan_iancu)
Date: 2007-01-17 11:39

Message:
Logged In: YES 
user_id=1275325
Originator: NO

Hi Di-Shi,

could you check if the latest fix related to delayed cancel (post
cancelling of branches with no reply) also solves your problem?

thanks and regards,
bogdan

----------------------------------------------------------------------

Comment By: Bogdan (bogdan_iancu)
Date: 2006-11-13 11:51

Message:
Logged In: YES 
user_id=1275325

Hmmm....this is a bit tricky from RFC point of view. The RFC
states that if a 200 OK is received after a negative reply,
it should be also forwarded to the client. In your case, you
have a locally generated 408 Timeout and following the RFC
indications , the received 200 OK (from the same branch) is
forwarded to the UAC.

I will try to dig for more information on the topic.

regards,
bogdan

----------------------------------------------------------------------

Comment By: Di-Shi Sun (di-shi)
Date: 2006-11-13 10:58

Message:
Logged In: YES 
user_id=1470964

Hi Weiter,

Thank you for your reply. In rfc3261, "If no provisional
response has been received, the CANCEL request MUST NOT be
sent" and "If it was allowed to send the CANCEL before
receiving a response for the previous request, the server
could receive the CANCEL before the original request"

We agree that a CANCEL message should not be send explicitly
in out test case. But we also believe that OpenSER should
reject or ignore all messages from a destination if OpenSER
does not receive any message from this destination before
timeout.

In our test case,
1. src sends INVITE to openser
2. openser sends INVITE to the 1st dst several time without
any reply and timeout
3. openser sends INVITE to the 2nd dst
4. openser receives 100 from the 2nd dst
5. openser receives 183 from the 1st dst
6. openser receives 200 from the 2nd dst and forwards to src
7. openser receives 200 from the 1st dst and forwards to src
...
We believe openser should not forward the 200 message from
the 1st dst.

Thanks,

Di-Shi Sun.


----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=743020&aid=1592883&group_id=139143



More information about the Devel mailing list