[asterisk-ss7] write buffer full on chan_ss7

marek cervenka cervajs at fpf.slu.cz
Wed Mar 24 12:19:37 CDT 2010


> I am using asterisk-1.6 with chan_ss7-1.3 on sangoma cards (a104de.)
> Everything is working fine but I notice many time the following
> message on the logs:
>
> 	NOTICE[22852] l4isup.c: Write buffer full on CIC=12 (wrote only 160
> of 240), audio lost (suppress 1).
> 	NOTICE[21785] l4isup.c: Write buffer full on CIC=12 (wrote only 0 of
> 240), audio lost (suppress 133).
>
> Anybody knows what can cause this ?
> I think that this impact very badly the sound quality (I have many
> customer complaints...)

i'm updated FAQ on http://www.voip-info.org/wiki/view/Asterisk+ss7+faq 
from some old source

try activate jitter buffer
http://www.voip-info.org/wiki/view/Asterisk+ss7+configuration
[jitter]
jbenable = yes
jbmaxsize = 1000
jbresyncthreshold = 1000
jbimpl = adaptive


--snip--
Write buffer full on CIC=4 (wrote only 0 of 160), audio lost.


Sep 19 18:41:08 NOTICE10930 l4isup.c: Write buffer full on CIC=4 (wrote 
only 0 of 160), audio lost.
Sep 19 18:41:08 NOTICE10930 l4isup.c: Write buffer full on CIC=4 (wrote 
only 0 of 160), audio lost.
Sep 19 18:41:08 NOTICE10930 l4isup.c: Write buffer full on CIC=4 (wrote 
only 0 of 160), audio lost.

Actually, the "Write buffer" is a kind of jitter-buffer. It is inside the 
zaptel driver and is initialized by chan_ss7 to 4 * 160 bytes (80ms). You 
can increase it to some other multiple of 160, but it requires a 
recompile, and will also increase the audio-delay.

The "write-buffer full" problem often occur because of jitter on the 
IP-net.

In IP-networks, there is allways a time-delay from the time a packet is 
sent to it get received at another host. This delay is unfortunately not 
allways the same. Sometimes, the packets will arrive too slow, and 
sometimes they will arrive too fast. When they arrive too fast, the 
send-buffer is filled, chan_ss7 writes the "Write buffer full" and then 
drop the packets.

This problem does not occur in the conventional circuit-switched telephone 
network, since it is completely synchronous and a dedicated (logical) 
circuit is reserved between the sender and receiver.

To get around this problem, you can setup trafic-shaping on the network, 
insert a bigger buffer in chan_ss7 (which will cause more delay), to 
even-out the difference in time-delay. Maybe it will helpl to configure 
the routers to "chop up" big packets in order to get the small RTP packets 
going smoothly.


---------------------------------------
Marek Cervenka
=======================================




More information about the asterisk-ss7 mailing list