[SR-Users] Intermittent delays relaying BYE (up to 1s)

Kaufman bkaufman at bcmone.com
Thu Aug 25 17:32:46 CEST 2022


The `benchmark` module allows you to create points can be used to generate comparative timestamps for desired parts of your code.  I'm not sure if using it on a production server adds much overhead or not, though.  Look to set points before and after things like database calls that are blocking operation.  As a possible reason, if you're doing accounting and the db is blocked you may have latency in processing the BYE.

Kaufman
Sr. VoIP Engineer - BCM One

From: sr-users <sr-users-bounces at lists.kamailio.org> On Behalf Of Lewis Hutchinson
Sent: Thursday, August 25, 2022 8:37 AM
To: sr-users at lists.kamailio.org
Subject: [SR-Users] Intermittent delays relaying BYE (up to 1s)

I have a situation where I am seeing intermittently Kamailio having delays when relaying the BYE received from an external party

This is only affecting the BYE

We have 6 Kamailios stood up

3 linked to the SIP Providers (SBC)
3 for Registration (REG)
Language KEMI | Python

version: kamailio 5.5.1 (x86_64/linux) 278772-dirty
flags: USE_TCP, USE_TLS, USE_SCTP, TLS_HOOKS, USE_RAW_SOCKS, DISABLE_NAGLE, USE_MCAST, DNS_IP_HACK, SHM_MMAP, PKG_MALLOC, Q_MALLOC, F_MALLOC, TLSF_MALLOC, DBG_SR_MEMORY, USE_FUTEX, FAST_LOCK-ADAPTIVE_WAIT, USE_DNS_CACHE, USE_DNS_FAILOVER, USE_NAPTR, USE_DST_BLOCKLIST, HAVE_RESOLV_RES, TLS_PTHREAD_MUTEX_SHARED
ADAPTIVE_WAIT_LOOPS 1024, MAX_RECV_BUFFER_SIZE 262144, MAX_URI_SIZE 1024, BUF_SIZE 65535, DEFAULT PKG_SIZE 8MB
poll method support: poll, epoll_lt, epoll_et, sigio_rt, select.
id: 278772 -dirty
compiled with gcc 9.3.0

Simplified Flow
PSTN >>>> Kamailio SBC >>>> FREESWITCH >>>> Kamailio REG >>>> SIP DEVICE

SIP DEVICE >>>> Kamailio REG >>>> FREESWITCH >>>> Kamailio SBC >>>> PSTN

This happens on all of them intermittently when receiving the BYE from either a SIP trunk or a SIP Device Publicly, it can take upto 1s to pass this onto the next hope (Freeswitch) on the local network. All BYEs passed between the local network relay  in fractions of a second. All BYEs passed out of the KAMAILIO SBC or KAMAILIO REG to their respective public enpoints relay  in fractions of a second but BYEs received from public on advertised address take upto 1s for Kamailio to process and relay.

i.e

PSTN >>> BYE >>>> KAMAILIO SBC (kamailio will sometimes take upto 1 second to relay this on to other kit on the internal solution. Freeswitch etc)
SIP DEVICE  >>> BYE >>>> KAMAILIO REG (kamailio will sometimes take upto 1 second to relay this on to other kit on the internal solution. Freeswitch etc)

I am basing these timings on SNgrep and PCAP traces from homer.

Does anyone have any hints and tips on how I can debug this issue. I have enabled debug logging and replicated the issue but it doesn't show anything from what I can see as to why there is delays.

Thanks in advance

lewis

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.kamailio.org/pipermail/sr-users/attachments/20220825/68df8b68/attachment.htm>


More information about the sr-users mailing list