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 in ASL 5 - Limiting bandwidth to a single IP

Playing around with ASL5 and trying to get the same basic setup as ASL4, but running into a bit of confusion with QoS.

In ASL4 I had setup QoS so that one IP behind ASL & the 1Mb cable modem was limited to 256Kb transfer.

It looked like in the ASL4 webadmin in QoS:
eth0
    Class 1:
        Total link bandwidth.
        Min BW: 1Mbit
        Max BW: 1Mbit

    Class 10:
        Reserved bandwidth for unshaped traffic.
        Min BW: 768Kbit
        Max BW: 1Mbit

    Class 11:
        Min BW: 256Kbit
        Max BW: 256Kbit
        Filter:
        Source 82.x.x.x/255.255.255.255


All that I can find in ASL5 and in the PDF manual is that I can assign different priorities via rules - but not specify how much bandwidth a specific rule can have.

Is there any way that I can get the same functionality in ASL5 as I did in ASL4??



Cheers,

Lee.


This thread was automatically locked due to age.
Parents
  • Hi there all, 

    as i heard rumors that ASL V5 QoS functionality is not as good as in V4 
    i want to outline what we did and how this impoved the QoS functionality a lot.

    Quality of Service (QoS) describes the functionality of prioritzation of packets, this means reordering the queue of packets that need to be send to handle important packets faster the unimportant. Additionally you need to be able to shape the total bandwith to not overload the internet uplink.

    All this can be done in ASL V5.

    The first important change is, that QoS is always enabled in V5 and on top of that
    ASL automatically priotizes the following packets into the high important queue:
    - packets with the TOS flag 'Minimize-Delay 16 (0x10)' set
    - TCP packets with the 'ACK' flag set and packet length between 50 to 100 bytes
    - ICMP packets

    Additionallity you can use the packet filter ruleset to sort the traffic into the different queue, 
    using the 'Allow (high priority)' and 'Allow (low priority)'.

    ASL V5 uses 3 queue's to sort traffic in:
    1) high important: for VoIP, Interactive traffic (telnet, ssh) ...
    2) medium important: for standard traffic (http, email) ... (default)
    3) less important: for bulk traffic (ftp, backup) ...

    If you have a smaller internet uplink or WAN connection (T1 or DSL) 
    you can shape the traffic according to its bandwidth.

    To do so, go to WebAdmin > Network > Interfaces and enable QoS on that interface, 
    than you can specify the maximum Up and Downstream bandwidth.

    ASL than automatically calculates the bandwidth for each QoS queue.

    If you want to override the automaic settings of the upload queue, 
    this is possible by a hidden feature (pssst. don't tell anybody [;)]),
    Specify the desired bandwidth seperated by a colomn.

    :::
    i.e: '4096:1024:2048:1024'.

    You can verify those values under WebAdmin > Packet Filter > Advanced > Current System QoS Rules.

    Starting from ASL V5 QoS now also works inside the IPSec Tunnel.

    Now regarding your question.

    Specify your Custom Upload Bandwidth:
    '1024:1024:768:256'

    than create a packetfilter rule that looks like this:
    SRC: Single IP
    DST: Any
    Src: Any
    Action: ACCEPT low priority.

    this forces all traffic coming from 'Single IP' to be sorted into the less important queue which is limited to 256kbit/s.

    I hope this anwsers your, and hopefully many other QoS related questions.

    best regards
    Gert
  • [ QUOTE ]
    Hi there all, 

    as i heard rumors that ASL V5 QoS functionality is not as good as in V4 
    i want to outline what we did and how this impoved the QoS functionality a lot.

    Quality of Service (QoS) describes the functionality of prioritzation of packets, this means reordering the queue of packets that need to be send to handle important packets faster the unimportant. Additionally you need to be able to shape the total bandwith to not overload the internet uplink.

    All this can be done in ASL V5.

    The first important change is, that QoS is always enabled in V5 and on top of that
    ASL automatically priotizes the following packets into the high important queue:
    - packets with the TOS flag 'Minimize-Delay 16 (0x10)' set
    - TCP packets with the 'ACK' flag set and packet length between 50 to 100 bytes
    - ICMP packets

    Additionallity you can use the packet filter ruleset to sort the traffic into the different queue, 
    using the 'Allow (high priority)' and 'Allow (low priority)'.

    ASL V5 uses 3 queue's to sort traffic in:
    1) high important: for VoIP, Interactive traffic (telnet, ssh) ...
    2) medium important: for standard traffic (http, email) ... (default)
    3) less important: for bulk traffic (ftp, backup) ...

    If you have a smaller internet uplink or WAN connection (T1 or DSL) 
    you can shape the traffic according to its bandwidth.

    To do so, go to WebAdmin > Network > Interfaces and enable QoS on that interface, 
    than you can specify the maximum Up and Downstream bandwidth.

    ASL than automatically calculates the bandwidth for each QoS queue.

    If you want to override the automaic settings of the upload queue, 
    this is possible by a hidden feature (pssst. don't tell anybody [;)]),
    Specify the desired bandwidth seperated by a colomn.

    :::
    i.e: '4096:1024:2048:1024'.

    You can verify those values under WebAdmin > Packet Filter > Advanced > Current System QoS Rules.

    Starting from ASL V5 QoS now also works inside the IPSec Tunnel.

    Now regarding your question.

    Specify your Custom Upload Bandwidth:
    '1024:1024:768:256'

    than create a packetfilter rule that looks like this:
    SRC: Single IP
    DST: Any
    Src: Any
    Action: ACCEPT low priority.

    this forces all traffic coming from 'Single IP' to be sorted into the less important queue which is limited to 256kbit/s.

    I hope this anwsers your, and hopefully many other QoS related questions.

    best regards
    Gert 

    [/ QUOTE ]
    ANy ideas about why v5 QOS is not working for me Gert?  I have posted about this ad nauseum and even e-mailed support with no reponse.
  • I too have problems with QoS in V5.  I have a VOIP ATA, which is set to high priority for all traffic, and bittorrent, emule, etc... for low priority.  Everything else is set for medium priority.

    If my bitorrent upload traffic really gets going, say 43 kBps (I havea 384 Kbps cable uplink), everything goes to hell.  Web surfing becomes very slow, and it appears the acks are not getting prioritized over the bittorrent uploads.  VOIP becomes unreliable as well.  

    Why isn't bittorrent being shaped down to make room for high priority traffic?

    Thanks,
    Mike
  • I'm having similar problems with VOIP, although I haven't noticed any problems with surfing, ftp, etc.

    I have noticed that it's hard to make defs for eMule, as many clients aren't using standard ports, but nonetheless, it shouldn't be getting any more than medium priority.

    Barry
  • [ QUOTE ]
    I too have problems with QoS in V5.  I have a VOIP ATA, which is set to high priority for all traffic, and bittorrent, emule, etc... for low priority.  Everything else is set for medium priority.

    If my bitorrent upload traffic really gets going, say 43 kBps (I havea 384 Kbps cable uplink), everything goes to hell.  Web surfing becomes very slow, and it appears the acks are not getting prioritized over the bittorrent uploads.  VOIP becomes unreliable as well.  

    Why isn't bittorrent being shaped down to make room for high priority traffic?

    Thanks,
    Mike 

    [/ QUOTE ]
    That is my point in the multiple posts i have made.  They changed QOS philosophies quite drasitically with v5.  I have posted my configurations in v4 and v5 which match and the performance in v4 is stellar and v5 it is non-existant.  ASL is a great product but lack of functioning QOS is a showstopper for me.
  • I have the same setup and problem. I have both Bit Torrent traffic and IAX VoIP trunks running, plus all the common Internet stuff, mail, HTTP, VPN, etc., with a very functional set of QoS rules on my v4 box.

    I have been reading all of the  memos on the QoS issue, including William's frustrations with QoS, and they have so far discouraged me from upgrading. What I have configured on my v4 box has just kept working like a charm for me.
  • at this point again -> https://community.sophos.com/products/unified-threat-management/astaroorg/f/58/t/55754


    i too can't understand the reason why qos function has been changed.
  • [ QUOTE ]
    I have the same setup and problem. I have both Bit Torrent traffic and IAX VoIP trunks running.

    [/ QUOTE ]

    Hey VelvetFog, I've since gone back to v4 b/c of QOS and I had a question.  It's about QOS in v4 and how I've set up my rules.  I have VoIP, Xbox Live and the rest of the packets that come from one computer (email, surfing, etc...)

    I've set up QOS like this:

    Code:

    eth1

    Class 1
    Total link bandwidth.
    Min. BW: 768Kbit
    Max. BW: 768Kbit

    Class 10
    Reserved Bandwidth for unshaped traffic.
    Min. BW: 90Kbit
    Max. BW: 768Kbit

    Class 11
    Min. BW: 291Kbit
    Max. BW: 768Kbit

    Filter:
    Protocol udp
    Source 192.168.XX.205/255.255.255.255
    Destination Port 5060
    Destination Port 5061
    Destination Port 123
    Destination Port 69
    Destination Port 53

    Class 12
    Min. BW: 291Kbit
    Max. BW: 768Kbit

    Filter:
    Protocol tcp
    Protocol udp
    Source 192.168.XX.50/255.255.255.255
    Destination Port 3074
    Destination Port 88

    Class 13
    Min. BW: 97Kbit
    Max. BW: 768Kbit

    Filter:
    Source 192.168.XX.101/255.255.255.255



    Class 11 --> VoIP
    Class 12 --> Xbox Live
    Class 13 --> Other traffic that comes from 1 IP address

    One thing to note is that VoIP also uses ports 10000 to 20000 udp but could not get those to show up on here even though they are in the service group I set up for VoIP.  I set up reserved bandwidth for unshaped traffic as 90Kbit.  Needed/Take out?

    Also, the day after tomorrow I am getting FIOS installed here at the house.  Should I even worry about QOS with 2Mbit upload (past just setting the other traffic to low/borrow)?
  • [ QUOTE ]
    I set up reserved bandwidth for unshaped traffic as 90Kbit. Needed/Take out?

    [/ QUOTE ]You must always reserve bandwidth for unshaped traffic, since it is not practical to create a QoS rule for every possible packet type passing through the firewall. On my system, I have 36 kbits reserved for this, out of the 512 kbits I have available for outbound.

    Configuring QoS for voice connections using SIP gets messy, due to the fact that SIP uses so many ports. SIP is really a LAN protocol. In my view, it is too bad that it is becoming so popular for wide area networking use across the Internet. I don't think it was designed well enough for this. I personally prefer IAX (IAX2) for Internet voice circuits, since it is a clean, single port design. It is very simple to configure firewalls and QoS for it.

    The best solution for your SIP QoS problem, may be to go with ASL v6, which has a SIP proxy.

    Personally, I make remote SIP connections to my Asterisk PBX by using a PPTP tunnel back to my ASL box, and then running SIP inside the VPN tunnel. I have QoS settings for the PPTP traffic, but nothing configured for SIP. The voice quality I get is OK.
  • Since my VOIP ATA doesn't do anything else, I use a static DHCP mapping to fix it's IP address, and then make any traffic to/from that IP address operate at high priority.  

    Maybe this is my problem in V5?  I know with normal IP tables, you can't prioritize IP traffic from a specific IP address when behind a NAT due to the order that IP tables processes things in.  Pre-astaro, I used the MAC address to flag the traffic in a shorewall configuration. 

    While astaro lets me configure QoS to make all traffic from/to a IP address operate as high priority, I am wondering if it really doesn't do anything.  Can someone from  astaro verify that this form of QoS configuration would work?  How did you get around the rule processing order with itptables behind a NAT?

    Thanks,
    Mike
Reply
  • Since my VOIP ATA doesn't do anything else, I use a static DHCP mapping to fix it's IP address, and then make any traffic to/from that IP address operate at high priority.  

    Maybe this is my problem in V5?  I know with normal IP tables, you can't prioritize IP traffic from a specific IP address when behind a NAT due to the order that IP tables processes things in.  Pre-astaro, I used the MAC address to flag the traffic in a shorewall configuration. 

    While astaro lets me configure QoS to make all traffic from/to a IP address operate as high priority, I am wondering if it really doesn't do anything.  Can someone from  astaro verify that this form of QoS configuration would work?  How did you get around the rule processing order with itptables behind a NAT?

    Thanks,
    Mike
Children
  • I'm wondering how to use the ToS flag for prioritizing traffic.  I see the QoS rules use the 0x10 flag for high priority traffic, but none of the other flags.
  • I too thought that NAT'd traffic couldn't be natively QOS'd.  Someone on these forums (I think it was Gert) explained that the QOS was performed before the NAT, so that you could in fact QOS traffic based in IP.  

    For more info:
    I can't get the URL to work correctly.  Either search for message 47499 or Subject "QOS a VOIP adapter behind NAT "  or copy and paste this URL:
    https://community.sophos.com/products/unified-threat-management/astaroorg/f/68/t/61617,All_Forums,&Words=&Searchpage=1&Limit=25&Main=47499&Search=true&where=bodysub&Name=6898&daterange=1&newerval=2&newertype=y&olderval=&oldertype=&bodyprev=#Post47499
  • [ QUOTE ]
    I too thought that NAT'd traffic couldn't be natively QOS'd.  Someone on these forums (I think it was Gert) explained that the QOS was performed before the NAT, so that you could in fact QOS traffic based in IP.  

    For more info:
    I can't get the URL to work correctly.  Either search for message 47499 or Subject "QOS a VOIP adapter behind NAT "  or copy and paste this URL:
    https://community.sophos.com/products/unified-threat-management/astaroorg/f/68/t/61617,All_Forums,&Words=&Searchpage=1&Limit=25&Main=47499&Search=true&where=bodysub&Name=6898&daterange=1&newerval=2&newertype=y&olderval=&oldertype=&bodyprev=#Post47499 

    [/ QUOTE ]

    I tried and tried and couldn't get Astaro 6 to QoS my VOIP traffic acceptably.  Sadly, I converted over to ClarkConnect 3.1, and after a couple tweaks, it protects my VOIP stream very well.  It's nowhere as nice or as slick as Astaro, but at least the QoS works.

    Thanks,
    mike
  • Hi,

    no wonder it works, ClarkConnect is based on Debian and not on SUSE like Astaro [:)].

    Chris