Dear James,Thank you for your response.
I have attached two packet capture (
.pcap
) files for reference:
- success.pcapng – A case where the call succeeds.
- failure.pcapng – A case where the call fails with a 408 timeout.
For context, the relevant IP addresses in the captures are:
- 172.16.6.204 – Kamailio
- 10.70.0.16 and 10.70.0.17 – The UEs
Regarding your question about the configuration file: To my knowledge, there is nothing in the reply route (such as sanity-checking) that would be dropping the replies. However, if you suspect something specific, I’d be happy to double-check.
Please let me know if you need any additional details.
Best regards,
Ping Kuan Kao
James Browne <james@frideo.com> 於 2025年2月24日 週一 下午9:21寫道:Hi
The header fields should not be the reason that the reply is not
processed. By default, kamailio should process the response even its
content is something that the endpoints won't like.
If you can provide that SIP request and response (a packet capture may
also be good), then it might be obvious to someone if something is
wrong with it. Does your config file have anything in a reply route
(sanity-checking, etc) that might be dropping the replies?
James
On Sun, 23 Feb 2025 at 07:15, 高秉寬 via sr-users
<sr-users@lists.kamailio.org> wrote:
>
> Dear Kamailio Developers,
>
> I am using Kamailio as a SIP server to facilitate a phone call, but I am encountering an issue where the call cannot be established due to Kamailio sending a 408 Request Timeout to the caller.
>
> Issue Details:
>
> A (Caller) sends an initial INVITE to Kamailio, which then forwards it to B (Callee). The INVITE contains the following Supported header:
>
> Supported: timer,100rel,replaces,precondition,from-change,histinfo,tdialog
>
> I suspect the precondition option may be relevant to the issue.
>
> B responds with a 183 Session Progress message, which includes:
>
> Require: 100rel,precondition
>
> Kamailio correctly forwards this response to A.
>
> A then sends a PRACK request to Kamailio. However, this request contains:
>
> Require: sec-agree
> Supported: timer
>
> Notably, precondition is absent from both the Require and Supported headers.
>
> Kamailio forwards this PRACK to B, and B responds with 200 OK, including:
>
> Supported: 100rel,from-change,tdialog
>
> However, Kamailio does not seem to acknowledge B's 200 OK and instead keeps retransmitting the PRACK to B. B responds with 200 OK again, but the cycle repeats.
>
> After three retransmissions of PRACK, Kamailio eventually sends 408 Request Timeout to A, leading A to send a CANCEL request.
>
>
> Device Used:
>
> Caller (A): Asus ROG Phone 5
> Callee (B): Asus ROG Phone 6
>
> Both are commercially available mobile phones.
>
> Possible Cause:
>
> According to 3GPP TS 24.229, Subclause 5.1.3.1,
>>
>> If the received response with an SDP body includes a Require header with the "precondition" option-tag, the originating UE shall include a Require header with the "precondition" option-tag in responses with an SDP body to subsequent requests that include an SDP body and include the "precondition" option-tag in either the Supported or Require header field received in-dialog.
>
>
> In this case:
>
> The 183 Session Progress from B contains Require: precondition.
> The subsequent PRACK from A does not include precondition in either Require or Supported.
>
> Could this mismatch be the reason Kamailio keeps retransmitting PRACK and ignoring B's 200 OK? Or could there be another factor causing Kamailio to behave this way?
>
> If additional details are needed, please let me know.
>
> Best regards,
> Ping Kuan Kao
>
> __________________________________________________________
> Kamailio - Users Mailing List - Non Commercial Discussions -- sr-users@lists.kamailio.org
> To unsubscribe send an email to sr-users-leave@lists.kamailio.org
> Important: keep the mailing list in the recipients, do not reply only to the sender!
--__________________________________________________________Stay safe,秉寬
Kamailio - Users Mailing List - Non Commercial Discussions -- sr-users@lists.kamailio.org
To unsubscribe send an email to sr-users-leave@lists.kamailio.org
Important: keep the mailing list in the recipients, do not reply only to the sender!