(adding sr-dev)
Hello,
I only had a quick look to the code, but at least the sl module stats seems to look fine:
int sl_filter_ACK(struct sip_msg *msg, unsigned int flags, void *bar)
[…]
if(memcmp(tag_str->s, sl_tag.s, sl_tag.len) == 0) {
LM_DBG("SL local ACK found -> dropping it!\n");
update_sl_filtered_acks();
void update_sl_filtered_acks(void)
{
(*sl_stats)[process_no].filtered_acks++;
}
unsigned long sl_stats_rcv_acks(void)
{
sl_stats_update();
return _sl_stats_total.filtered_acks;
}
Are you not seeing the increase in the received_ACKs statistics?
Cheers,
Henning
From: Kaufman <bkaufman@bcmone.com>
Sent: Mittwoch, 28. Juni 2023 01:52
To: Kamailio (SER) - Users Mailing List <sr-users@lists.kamailio.org>
Subject: [SR-Users] SL absorbed ACK is counted as dropped by core.drop_requests
Just checking to see if this is the designed behavior. The SL module will attempt to match ACKs for stateless replies and handle them (absorb them?).
The question I have is that it looks as though this ACK gets counted as dropped by the core.drop_requests from the KEX module. Tested using this config:
#!KAMAILIO
loadmodule "pv"
loadmodule "sl"
loadmodule "xlog"
loadmodule "kex"
loadmodule "corex"
loadmodule "ctl"
modparam("sl", "bind_tm", 0)
route {
xinfo("[$ci] $rm Request. Src:[$si:$sp] RURI:[$ru] To:[$tu] From:[$fu]\n");
sl_send_reply("404", "Not Found");
}
event_route[sl:filtered-ack] {
xnotice("sl:filtered-ack ACK [$ci] to local reply absorbed\n");
}
Then validate by kamcmd stats.fetch core:drop_requests
Is this the designed and “correct” behavior?
Kaufman