[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