Hi,
We possess a code within Kamailio, which specifically handles malformed SIP responses. Below is the code snippet:
*reply_routeCopy code if(!sanity_check("17604", "6")) { xlog("Malformed SIP response from $si:$sp\n"); drop;*
Additionally, we have Kamailio drop request statistics as follows:
Command: *kamctl stats | grep core:drop_requests* Output of the command: *core:drop_requests = 5*
My queries are:
1. Is the aforementioned "reply_route" related to the drop requests we are experiencing? 2. If it is not related, what could be the cause of the drop requests?
I expect that it's not related, because the documentation is clear that the function relates to requests, not responses.
https://kamailio.org/docs/modules/5.5.x/modules/sanity.html#sanity.f.sanity_... - 4.1. sanity_check([msg_checks [, uri_checks]]) - This function makes a row of sanity checks over the given SIP request...
It seems simple: check the logs from the xlog command and see what you find. If it's not clear enough, add the Call-ID to the log message, and then also capture (tshark/tcpdump) traffic for subsequent analysis.
James
On Mon, 16 Oct 2023 at 16:52, satyaprakash ch via sr-users sr-users@lists.kamailio.org wrote:
Hello,
the sanity module can be used for request and reply checks, as e.g. visible in the default configuration. It might be a bit too short documented in the module readme.
Cheers,
Henning Westerholt
Hi,
Thanks for the reply,
When I was testing, I found the below log.
Log ==== *DEBUG: sl [sl_funcs.c:462]: sl_filter_ACK(): SL local ACK found -> dropping it!*
On Wed, Oct 25, 2023 at 12:44 PM Henning Westerholt hw@gilawa.com wrote:
That looks to me that an ACK was received at kamailio for a response that it generated (not relayed) to the UAC. It's normal for the SL module to absorb such an ACK. It's not an error condition. Your original message was about "core:drop_requests", so I doubt that it's related. My same advice applies: take traces and logs, and correlate them.
Also I have another query, For these drop requests, How do we acknowledge in kamailio?
What do you mean, exactly?
James
On Thu, 26 Oct 2023 at 13:11, satyaprakash ch chiramchetty.satyaprakash@gmail.com wrote:
Thanks for the reply,
I didn't find any suspicious logs in kamailio apart from the log which i shared with you in chain mail. Within a Pcap trace, we typically process INVITE, 300 Multiple Choice responses, and ACK messages pertaining to a specific server
Note: For these drop requests, How do we acknowledge in kamailio? -- Is it possible to manage these drop requests in the Kamailio configuration file without actually dropping the request?
Let me know if you need more information.
On Thu, Oct 26, 2023 at 8:18 PM James Browne james@frideo.com wrote:
I don't think it's possible. It's definitely not _always_ possible. For example, if a non-SIP message arrives to kamailio, then the request_route is never going to run, because the core will drop the message first. If I was to troubleshoot this further, then I'd get logs with (millisecond) timestamps, take pcap traces at the same time, and then later see what matches. That's how I'll know which SIP messages (or IP packets) are getting dropped (to make the core:drop_requests statistic). I don't know how else to do it, but I expect that this should certainly work.
James
On Thu, 26 Oct 2023 at 15:01, satyaprakash ch chiramchetty.satyaprakash@gmail.com wrote: