(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
-- Henning Westerholt - https://skalatan.de/blog/ Kamailio services - https://gilawa.comhttps://gilawa.com/
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