[asterisk-users] TCP port, VPN and resolving the cutting voice problem

Joel Maslak jmaslak at antelope.net
Tue Nov 30 12:17:27 CST 2010


On Tue, Nov 30, 2010 at 2:28 AM, bilal ghayyad <bilmar_gh at yahoo.com> wrote:

> If I ran IAX in TCP port, and in case my network was having a lot of users doing browse on the internet and downloading, so in that case and if the IAX used TCP port, so the voice will be better than using UDP (because in TCP the lost packets will be resend while in TCP it will not which will cause the voice to be cutting)?

Not necessarily.  See below.  Basically the problem is that you have a
congested link, and TCP is not the fix for congestion.

Are you sure you are getting packet loss, and not just delayed
packets, that might be arriving AFTER the jitter-buffer's max delay?
Either would create the same symptom.  But the solution to them is
slightly different.

> Same thing if we used the VPN, and in case of other users are using the Internet to do browsing and downloading then the voice quality will be better than without VPN as the VPN is using TCP?

TCP VPNs are bad for several reasons - namely that TCP inside TCP will
generate excessive and unnecessary retransmissions.  That's why most
VPNs use UDP or IPSEC.  TCP in TCP will increase delay and/or
congestion on your links.

> The internet bandwidth is not that small .. but the users are doing a big amount of work and we would like to overcome the packets losses in case of using the UDP as the packets are not resend.
>
> Any advise for this?

Yes.  If you are using DSL/cable/other-commodity-circuit, I'd suggest
a second DSL circuit to be used only for VoIP.  Nobody likes to pay
for that, I know, but that's really the solution.

If you are using an (expensive) enterprise-class circuit (metro
ethernet, DS3, OC3, etc) for internet, work with your provider.  At
the very least, have the provider does some form of fair queuing and
you do the same, you'll probably eliminate 95% of your problem.  If
they are willing to do QoS to your specs, even better (but I wouldn't
count on this).

But clearly the way the circuit is configured today, you are having
packet loss (the cutting out of voice) or excessive queing of packets.
 This is because queues in routers are getting too full, and something
has to be dropped or something is arriving too late for the jitter
buffers on the VoIP equipment to compensate.  In otherwords, you are
bandwidth constrained.  So you need to either increase your bandwidth
(expensive!) or implement QoS of some type.

There are some ways to implement QoS on your end if your ISP won't
cooperate, but it's not a 100% perfect solution.

> What could be a solution that I can apply it to resolve the voice cutting if the Asterisk was using the internet that is shared with the users in the office that are doing download and browsing?

QoS.

> One more thing, what about using the Buffering or any other technique that can help to overcome packet losses due to the internet download and browsing?

Certainly.

If your problem is lost packets, you need QoS or bandwidth, but that
aside, increased buffers in routers might help or hurt, depending on
how things are behaving.  You can try both (your ISP will need to do
the same, if you are getting cut-outs on inbound packets; if you can
get your ISP to adjust this, you can probably get him to just
implement QoS and be done with this; If he can't implement QoS, at
least get him to do some sort of fair queuing!).

If your problem is excessively delayed (due to queuing) packets, you
also need QoS or bandwidth.  But you can increase the jitter buffer on
both ends of the VoIP call.  If you use a VoIP provider, they will
need to increase the buffer size on their end.  Of course this will
increase the amount of talk-over and result in less user satisfaction.
 Delay is a bad thing on phone calls.



More information about the asterisk-users mailing list