This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

QoS for VoIP via IPSec VPN

Hello,

I couldn't find an answer to the subject question. My company has two locations, both protected by Astaro ASG220 (with separate Internet access):
Site1: 3 mbit/s (symmetrical)
Site2: 1.5 mbit/s (symmetrical)

There are two parallel VPN channels for site-to-site (s2s):
1. SSL VPN, connecting two remote sites for user data exchange, etc.
2. IPSec VPN, connecting two remote networks with Avaya IP Office 500 phone system equipment (basically, only two control units facing each other over the VPN via their VoIP interfaces).

The Avaya Phone sytem configured with the following DiffServ settings:
DSCP (Hex): B8; DSCP: 46
DSCP Mask (Hex): FC; DSCP Mask: 63
SIG DSCP (Hex): 88; SIG DSCP: 34
It requires 8 channels by 64 kbit/s per channel for s2s connection bandwidth. I was suggested by the phone system supplier to use 8 x 80 = 640 kbit/s calculation.

Two VPNs and Internet traffic obviously compete with voice traffic at External interfaces of each Astaro.

Here is what I did with great help of Bob (BAlfson):

1. On External interfaces (Network/Quality of Service), I activated QoS on External:
Site1: Downlink kbit/s: 3072; Uplink kbit/s: 3072; Download Equalizer, Upload Optimizer (Limit Uplink unchecked)
Site2: Downlink kbit/s: 1536; Uplink kbit/s: 1536; Download Equalizer, Upload Optimizer (Limit Uplink unchecked)

2. Created the following traffic selectors (not too sure if this part is right):
 * VoIP over IPSec VPN 46: External --> IPSec --> [Public IP of the other Astaro]; DSCP-Bits value: 46
 * VoIP over IPSec VPN 26: External --> IPSec --> [Public IP of the other Astaro]; DSCP-Bits value: 26
 * VoIP over IPSec VPN 63: External --> IPSec --> [Public IP of the other Astaro]; DSCP-Bits value: 63
 * VoIP over IPSec VPN 34: External --> IPSec --> [Public IP of the other Astaro]; DSCP-Bits value: 34

3. On External interface (of each Astaro) created Bandwidth Pools:
 * VoIP over IPSec VPN. Bandwidth (kbit/s): 640 kbit/s, including all four traffic selectors above.

To test this, I started copying a large file across the sites, and phoned somebody on the other site. It was not very good, some packets were dropped (intermittent voice), some packets were disordered (pro-pa-gate would sound sometimes like pro-gate-pa). But overall, it was much better than without any QoS.

I guess, I need to define some additional traffic selectors, according to the DiffServ specs. It is also important not to add any non-VoIP traffic selectors to the Bandwidth Pools.

I know, the solution exists, we just have to find it, and it would be a great knowledge for everyone. I would greatly appreciate any help, in particular, how to configure DiffServ on Astaro.


This thread was automatically locked due to age.
Parents
  • I've just skimmed the thread, but the traffic selectors you initially set look like you were on the right track. Essentially you want to apply QoS rules to guarantee bandwidth for VOIP as it is leaving the external interface of each firewall (outbound voice stream), and again as it is leaving the internal interface of each firewall (inbound voice stream). 

    When VOIP traffic is leaving the external interface, it is within the encrypted IPSec tunnel, and can't be recognized as VOIP traffic, except by TOS or DSCP bits. Make sure that Site to Site VPN >> IPSec > Advanced > Copy TOS (Type of Service) value is enabled. By default it isn't. You can cheat if your tunnel only handles IPSec traffic, and just use the IPsec definitions in your traffic selector.

    When traffic is leaving the internal interface, the QoS maximum available bandwidth for the internal interface is probably set to the full link speed(100Mbps or 1Gbps). This won't work unless your internet speed matches your LAN speed. You will need to set the internal interface bandwidth speeds to reflect your internet available bandwidth speeds, so that the QoS engine will know when it needs to kick in, and guarantee bandwidth for VOIP traffic. If it thinks you have 100Mbps, but you only have 10 Mbps of internet speed, and you're using all of it, then the QoS engine will still think that you have 90 Mbps of capacity left, and never kick in.
Reply
  • I've just skimmed the thread, but the traffic selectors you initially set look like you were on the right track. Essentially you want to apply QoS rules to guarantee bandwidth for VOIP as it is leaving the external interface of each firewall (outbound voice stream), and again as it is leaving the internal interface of each firewall (inbound voice stream). 

    When VOIP traffic is leaving the external interface, it is within the encrypted IPSec tunnel, and can't be recognized as VOIP traffic, except by TOS or DSCP bits. Make sure that Site to Site VPN >> IPSec > Advanced > Copy TOS (Type of Service) value is enabled. By default it isn't. You can cheat if your tunnel only handles IPSec traffic, and just use the IPsec definitions in your traffic selector.

    When traffic is leaving the internal interface, the QoS maximum available bandwidth for the internal interface is probably set to the full link speed(100Mbps or 1Gbps). This won't work unless your internet speed matches your LAN speed. You will need to set the internal interface bandwidth speeds to reflect your internet available bandwidth speeds, so that the QoS engine will know when it needs to kick in, and guarantee bandwidth for VOIP traffic. If it thinks you have 100Mbps, but you only have 10 Mbps of internet speed, and you're using all of it, then the QoS engine will still think that you have 90 Mbps of capacity left, and never kick in.
Children
No Data