Out of nothing some users started to have random issues in the middle of a call, not hearing the external party on a landline. The recording shows that both channels are reaching PBX fine, as we can hear both speaking, but when the problem starts the inbound audio does not reach the internal SIP user correctly.
As the audio scrambles it seems that the packets get out of order on the user side, and start to fill up a buffer until the inbound buffer is exhausted and simply stops, so we do not get any audio in. The external continues hearing the user just fine. In the recording we hear the user saying “hello, hello, can you hear me” and the external party replying “yes, yes I can hear you fine”.
As in the server the recording does not present the problem, I thought that I would not see delayed packets when running “rtp set debug ip”. And I understood that the ordering problem was happening exclusively on the user’s side.
Anyways, I am going to check sngrep and RTFM! Thanks for the tip, very well appreciated!
I do not know if this is helpful but looking in linphone’s log, I see a bunch of these messages during the call were we had the problem.
2018-08-10 10:39:04:497 WARNING Not enough ref samples, using zeroes
2018-08-10 10:39:04:507 WARNING Too many samples to drop, dropping entire frame.
2018-08-10 10:39:04:528 MESSAGE Samples are back.
Since your call stats show 0.0% loss, I’d start with the Linphone itself. Is there any substitute (e.g. Zoiper, but I’m not recommending them) you can use instead, just for testing?
Thank you for the clarification on Linphone’s error message!
I made two changes and so far did not have problems yet.
1- Manually set Network Adapter to 100mbits Full Duplex instead of Auto-negotiate
2- In Linphone I disabled “Adaptive rate control”, as there should be plenty bandwidth in my LAN for it, specially with Diffserv enabled with Strict Priority.
I have the logs on to help debugging.
If the problem comes up again I will try Microsip as a softphone to continue the debugging process.
I might have had some network issues but if they were there they were gone with the enabling of Diffserv Strict Priority.
It seems that the root problem was being caused by Linphone itself. I noticed in the logs that although I was using only my SIP account of my own Freepbx server in my own LAN, it was registering itself to external Linphone’s SIP servers and establishing a STUN. Out of the blue it seemed to get lost.
After I’ve blocked Linphone’s addresses in my firewall the problem has never happened again.