Hi Ovidiu,<div><br></div><div>Some of my subscribers use dialers which has an average cps of 100. In this case, does it still make sense to limit the rate of each subscriber? If it is, is there a way to implement it, considering there are limited number of pipes that can be used with opensips?</div>
<div><br></div><div>Thanks!</div><div><br></div><div>Regards,</div><div>Ronald<br><br><div class="gmail_quote">On Sat, Feb 26, 2011 at 1:09 AM, Ovidiu Sas <span dir="ltr"><<a href="mailto:osas@voipembedded.com">osas@voipembedded.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">Hello Bogdan,<br>
<br>
Just for the record, I am not against having more flexibility in<br>
building scripts and new features (like dynamic creation of pipes) are<br>
more then welcome. In my previous replies I was just pointing out<br>
that ratelimit-ing basic accounts and small trunks doesn't add more<br>
protection for the server itself or better subscriber management.<br>
Setting a ratelimit for a SIP account that has a channel limit of two<br>
is an overkill, IMHO.<br>
Ratelimit-ing really makes sense for large SIP trunks and whole SIP<br>
traffic (server protection).<br>
<br>
<br>
Regards,<br>
<font color="#888888">Ovidiu Sas<br>
</font><div><div></div><div class="h5"><br>
On Fri, Feb 25, 2011 at 11:59 AM, Bogdan-Andrei Iancu<br>
<<a href="mailto:bogdan@opensips.org">bogdan@opensips.org</a>> wrote:<br>
> Hi Ovidiu,<br>
><br>
> actually we were flirting for some time with extending the ratelimit module<br>
> to allow dynamic creation of pipes - this will give you more flexibility in<br>
> scripting and scenarios (like dynamic number of trunke, DB provisioning,<br>
> etc).....But this was a bit postponed as there are other more important<br>
> things to do and resources are limited ;)<br>
><br>
> Regards,<br>
> Bogdan<br>
><br>
> Ovidiu Sas wrote:<br>
>><br>
>> There are two different things:<br>
>> a. channel limitation or concurrent call limit;<br>
>> b. ratelimit or cps limitation (cps = cals per second).<br>
>><br>
>> With the dialog module, you limit _only_ the number of concurrent<br>
>> calls (a). How fast will a SIP trunk be saturated is up to the cps.<br>
>> If you have a limit of 30 calls and the calls are coming in at a rate<br>
>> of 1 cps, in 30s you will reach your limit. If the calls are coming<br>
>> in at a rate of 15 cps, you will reach the limit in 2s.<br>
>><br>
>> With the ratelimit module, you limit _only_ the number of calls per<br>
>> second that are processed.<br>
>> If you set a cps limit of 5 cps and your incoming traffic is 100cps,<br>
>> then every second the first 5 calls will go through and the next 95<br>
>> will be rejected (based on TAILDROP algorithm). If the traffic is<br>
>> steady for 10s, then you will have 10x5=50 active calls and 10x95=950<br>
>> rejected calls due to cps limitation.<br>
>><br>
>> Now, if you combine both (30 channels max and 5cps limit for incoming<br>
>> traffic at 100 cps), during the first 6s you will saturate the trunk<br>
>> (by accepting the first 5 calls and rejecting the other 95 every<br>
>> second) and all calls after that will be rejected.<br>
>><br>
>> Hope this helps.<br>
>><br>
>><br>
>> Regards,<br>
>> Ovidiu Sas<br>
>> On Wed, Feb 23, 2011 at 12:51 PM, Ronald Cepres <<a href="mailto:rbcepres@gmail.com">rbcepres@gmail.com</a>><br>
>> wrote:<br>
>><br>
>>><br>
>>> On Wed, Feb 23, 2011 at 6:10 AM, Ovidiu Sas <<a href="mailto:osas@voipembedded.com">osas@voipembedded.com</a>><br>
>>> wrote:<br>
>>><br>
>>>><br>
>>>> If a virtual PRI is set up (23 channels for NA or 30 channels for<br>
>>>> Europe), again the cps doesn't really count. As soon as the virtual<br>
>>>> PRI is maxed out (in terms of channels) all subsequent calls will be<br>
>>>> rejected (and the cps will be 0).<br>
>>>><br>
>>>><br>
>>><br>
>>> Hi Ovidiu,<br>
>>> Does that mean that if i have a concurrent call limit of 30 for a user<br>
>>> and<br>
>>> he bursts 500 cps, he still wouldn't exceed 30 cps?<br>
>>> By the way, I use a method similar to the one posted in the tutorials to<br>
>>> limit concurrent calls<br>
>>> (link: <a href="http://www.opensips.org/Resources/DocsTutConcurrentCalls" target="_blank">http://www.opensips.org/Resources/DocsTutConcurrentCalls</a>)<br>
>>> Thanks!<br>
>>> Regards,<br>
>>> Ronald<br>
>>> _______________________________________________<br>
>>> Users mailing list<br>
>>> <a href="mailto:Users@lists.opensips.org">Users@lists.opensips.org</a><br>
>>> <a href="http://lists.opensips.org/cgi-bin/mailman/listinfo/users" target="_blank">http://lists.opensips.org/cgi-bin/mailman/listinfo/users</a><br>
>>><br>
>>><br>
>>><br>
>><br>
>> _______________________________________________<br>
>> Users mailing list<br>
>> <a href="mailto:Users@lists.opensips.org">Users@lists.opensips.org</a><br>
>> <a href="http://lists.opensips.org/cgi-bin/mailman/listinfo/users" target="_blank">http://lists.opensips.org/cgi-bin/mailman/listinfo/users</a><br>
>><br>
>><br>
><br>
><br>
> --<br>
> Bogdan-Andrei Iancu<br>
> OpenSIPS eBootcamp - 28th February 2011<br>
> OpenSIPS solutions and "know-how"<br>
><br>
><br>
> _______________________________________________<br>
> Users mailing list<br>
> <a href="mailto:Users@lists.opensips.org">Users@lists.opensips.org</a><br>
> <a href="http://lists.opensips.org/cgi-bin/mailman/listinfo/users" target="_blank">http://lists.opensips.org/cgi-bin/mailman/listinfo/users</a><br>
><br>
<br>
_______________________________________________<br>
Users mailing list<br>
<a href="mailto:Users@lists.opensips.org">Users@lists.opensips.org</a><br>
<a href="http://lists.opensips.org/cgi-bin/mailman/listinfo/users" target="_blank">http://lists.opensips.org/cgi-bin/mailman/listinfo/users</a><br>
</div></div></blockquote></div><br></div>