Michael,

AstLinux's traffic shaper honors QoS values using DSCP matching.  Of course you 
have to enable this in Asterisk sip.conf:
--
; See https://wiki.asterisk.org/wiki/display/AST/IP+Quality+of+Service for a 
description of these parameters.
tos_sip=cs3                     ; Sets TOS for SIP packets.
tos_audio=ef                    ; Sets TOS for RTP audio packets.
tos_video=af41                  ; Sets TOS for RTP video packets.
tos_text=af41                   ; Sets TOS for RTP text packets.
--

The traffic shaper honors "htb" and "hfsc" methods, the very old "htb" works as 
I described and is what I use on my 28/4 Mbps connection.  The "hfsc" method is 
newer and works more like what you want by dynamically prioritizing, but in my 
tests (years ago) the dynamic slew was too slow for perfect voice in worst case 
conditions.  Feel free to try "hfsc".

Again, I suggest you disable downlink shaping.

Keep in mind the traffic shaper is implemented in the Linux kernel and the 'tc' 
command.  We can't make it any better than how it is implemented in Linux.

As for "the VoIP UDP Ports range in the traffic shaper config" it does not 
matter much anymore if you enable QoS marking in Asterisk, mostly a legacy 
setting. A DSCP match is the best way to go when possible, and automatic.

Lonnie



On Sep 4, 2013, at 4:10 PM, Michael Knill wrote:

> Ok well the traffic shaping does not work the way I thought then which is a 
> big problem as far as I am concerned. So Lonnie what you are saying is that 
> you essentially have to configure the traffic shaper to allow the headroom 
> for the maximum number of supported channels? This basically takes the system 
> back to the multiplexor days. The way that QoS and traffic shaping should 
> work is that the full shaped envelope has prioritised traffic with it so that 
> the full bandwidth can be used at all times by all traffic types and 
> bandwidth restrictions only apply during congestion. This is how a Cisco 
> router works and I thought this worked the same way. This is really 
> disappointing to find this out now as it was a significant decider in me 
> using Astlinux. I am going to need to use a separate broadband connection for 
> voice for most businesses as they will not tolerate the significant reduction 
> of upload speed or I will need to use a true QoS capable router which would 
> be really disappointing.
> 
>> From my perspective, the firewall, routing and QoS areas of Astlinux are the 
>> areas that I would like to have the most development as this is what 
>> differentiates Astlinux from nearly all other distributions, not the fact 
>> that it runs Asterisk.
> 
> Getting back to the RTP ports, I still dont know what the VoIP UDP Ports 
> range does in the traffic shaper config. Can someone please tell me?
> I have set 16384:16639 as recommended. Now after doing an RTP Debug from 
> making an outgoing external phone call, this is what I get:
> 
> Sent RTP P2P packet to 203.2.134.1:21294 (type 08, len 000160)
> Sent RTP P2P packet to 172.30.30.116:16458 (type 08, len 000160)
> Sent RTP P2P packet to 203.2.134.1:21294 (type 08, len 000160)
> Sent RTP P2P packet to 172.30.30.116:16458 (type 08, len 000160)
> Sent RTP P2P packet to 203.2.134.1:21294 (type 08, len 000160)
> Sent RTP P2P packet to 172.30.30.116:16458 (type 08, len 000160)
> 
> Yes the port is correct for the internal IP Phone (172.30.30.116) but the 
> external provider port is negotiated by them (203.2.134.1). So what is the 
> point of putting 16384:16639 in the shaper and the firewall rules. Its 
> doesn't even see these ports as they are sent back to the internal interface?
> 
> I would really like to get this sorted as it significantly affects my whole 
> system architecture and at this stage, for sites that share a single 
> broadband connection, I will have to use a separate QoS capable router.
> 
> Regards
> Michael Knill
> 
> 
> 
> 
> On 05/09/2013, at 1:05 AM, Lonnie Abelbeck <[email protected]> wrote:
> 
>> Hi Michael,
>> 
>> First, I would disable Downlink shaping, the latest version of AstLInux have 
>> a "Disabled" option, with your 1.0.4 version setting "Downlink Speed" to "0" 
>> should work IIRC, though official in AstLinux 1.1.0 .
>> 
>> The "Uplink Speed" reserves about 25% for VoIP traffic, so a value of 1000 
>> Kbps will limit low priority traffic to about 750 Kbps, leaving 250 Kbps for 
>> VoIP if the real limit is 1000 Kbps.  This would support 2 SIP calls using a 
>> ulaw codec.
>> 
>> Keep lowering "Uplink Speed" to provide more headroom for VoIP calls.
>> 
>> As far as the VoIP UDP port range, the range should match your Asterisk 
>> rtp.conf settings (reduce the default) and match a manual allowed UDP port 
>> range in your firewall (Pass EXT->Local).  Do not enable the sip-voip plugin.
>> 
>> In practice any *phone* that registers with your Asterisk should have the 
>> same VoIP UDP port range defined in their configs.  A range (rtpend - 
>> rtpstart) of 256 ports should be fine, don't make it too large.
>> 
>> Lonnie
>> 
>> 
>> On Sep 4, 2013, at 7:22 AM, Michael Knill wrote:
>> 
>>> I have been doing some more testing with iftop. My ADSL service is clocking 
>>> at 947K Up so I have set  900K as the upload speed.
>>> iftop is showing a constant 800K or so peak ppp0 interface transfer rate. I 
>>> assume this is not 900 due to overheads etc. This rate does not change much 
>>> when a call is included into the traffic. Although the data traffic 
>>> reduces, there is considerable voice packet loss.
>>> If I change the shape rate to 800, my ppp0 interface transfer rate reduces 
>>> to around 700K as expected. Now when I add a voice call, there is no packet 
>>> loss, however the interface traffic rate goes to about 780K which indicates 
>>> that it is not being included in the shaped envelope. When I add a second 
>>> call, I get packet loss again as it is taken past the maximum upload rate.
>>> 
>>> To me this indicates that the voice traffic is not being included in 
>>> traffic shaping or traffic shaping is not even working. I turned it off and 
>>> it really didn't make any difference.
>>> The box is using version 1.0.4. Any ideas?
>>> 
>>> Regards
>>> Michael Knill
>>> 
>>> 
>>> 
>>> 
>>> On 04/09/2013, at 5:34 PM, Michael Knill 
>>> <[email protected]> wrote:
>>> 
>>>> To the group
>>>> 
>>>> I am still very confused about what I should be setting the VoIP UDP port 
>>>> range to. I use different providers with different ranges. Do I just set 
>>>> it to 10000 - 65535? 
>>>> What does it actually do?
>>>> 
>>>> In the Astlinux Firewall Addins doco it says for sip-voip:
>>>> 
>>>> This plugin attempts to track the RTP ports used in a SIP dialog and 
>>>> automatically open the necessary RTP ports when needed.
>>>> In practice this plugin does not always yield the expected results. Feel 
>>>> free to experiment.
>>>> When this plugin is disabled (the default) the SIP RTP ports must be 
>>>> manually opened to match the Asterisk rtp.conf rtpstart/rtpend values.
>>>> 
>>>> The rtpstart and rtpend values I have in rtp.conf are not what my 
>>>> provider(s) use. Should I change it to match? How come I have no sip 
>>>> firewall rules as mentioned above but it still works fine?
>>>> How does the firewall know to open up the media ports? In all the tests I 
>>>> did, the port was the same so does it just set up a stateful translation?
>>>> 
>>>> This really started with one of my customers today whereby they were 
>>>> significantly congesting their broadband link (yes working on that) but 
>>>> their existing telco service was working fine (getting dropouts but the 
>>>> voice was fine, albeit delayed). I added another service from another 
>>>> Telco (before I realised it was congested) and they were having lots of 
>>>> upstream voice quality problems.
>>>> 
>>>> Is there anything that could cause one service to be matched in the 
>>>> traffic shaper and another not?
>>>> 
>>>> Regards
>>>> Michael Knill
>> 
>> 
>> ------------------------------------------------------------------------------
>> Learn the latest--Visual Studio 2012, SharePoint 2013, SQL 2012, more!
>> Discover the easy way to master current and previous Microsoft technologies
>> and advance your career. Get an incredible 1,500+ hours of step-by-step
>> tutorial videos with LearnDevNow. Subscribe today and save!
>> http://pubads.g.doubleclick.net/gampad/clk?id=58040911&iu=/4140/ostg.clktrk
>> _______________________________________________
>> Astlinux-users mailing list
>> [email protected]
>> https://lists.sourceforge.net/lists/listinfo/astlinux-users
>> 
>> Donations to support AstLinux are graciously accepted via PayPal to 
>> [email protected].
> 
> 
> ------------------------------------------------------------------------------
> Learn the latest--Visual Studio 2012, SharePoint 2013, SQL 2012, more!
> Discover the easy way to master current and previous Microsoft technologies
> and advance your career. Get an incredible 1,500+ hours of step-by-step
> tutorial videos with LearnDevNow. Subscribe today and save!
> http://pubads.g.doubleclick.net/gampad/clk?id=58041391&iu=/4140/ostg.clktrk
> _______________________________________________
> Astlinux-users mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/astlinux-users
> 
> Donations to support AstLinux are graciously accepted via PayPal to 
> [email protected].
> 
> 


------------------------------------------------------------------------------
Learn the latest--Visual Studio 2012, SharePoint 2013, SQL 2012, more!
Discover the easy way to master current and previous Microsoft technologies
and advance your career. Get an incredible 1,500+ hours of step-by-step
tutorial videos with LearnDevNow. Subscribe today and save!
http://pubads.g.doubleclick.net/gampad/clk?id=58041391&iu=/4140/ostg.clktrk
_______________________________________________
Astlinux-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/astlinux-users

Donations to support AstLinux are graciously accepted via PayPal to 
[email protected].

Reply via email to