[Devel] [ openser-Bugs-1592883 ] tm does not send cancel for INVITE
if without reply message
SourceForge.net
noreply at sourceforge.net
Mon Nov 13 17:51:45 CET 2006
Bugs item #1592883, was opened at 2006-11-08 21:59
Message generated for change (Comment added) made by bogdan_iancu
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: None
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: Bogdan (bogdan_iancu)
Date: 2006-11-13 18: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 17: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