[sr-dev] CAC module idea

Guillaume tetram100 at hotmail.fr
Wed Oct 28 15:40:42 CET 2015


Thanks for your return and your advices. 

In fact the bandwidth criteria would have meaning only if kamailio is a media gateway (otherwise we could only have a rough estimation with the negotiated codec as you said) and in this case getting the bandwidth from the interface will make sense.

I was also thinking about using a limit for the number of call per user but it would be redundant with the dialog module, doesn't it?

At the end do you think it's a good idea to add such features to kamailio?


Guillaume


To: sr-dev at lists.sip-router.org
From: miconda at gmail.com
Date: Wed, 28 Oct 2015 14:04:25 +0100
Subject: Re: [sr-dev] CAC module idea


  
    
  
  
    Hello,

    

    perhaps piplelimit can be reused to some extent for call attempts.
    IIRC, it has also come code for getting some cpu metrics, don't
    recall by heart what exactly. But the point would be -- if you are
    going to write a cac module, code inside pipelimit can help.

    

    For available memory, there are some functions to get the available
    pkg/shm (used for statistics as well), so this should be easy to
    approach. System memory makes sense if there are external libraries
    linked by kamailio that potentially consume it, otherwise kamailio
    is mailing using pkg/shm for its internal needs. pkg/shm pool have
    fixed size.

    

    Bandwith will be the hardest to assert at SIP layer in my opinion,
    but you can take it from a network interface tool. In sip, you can
    eventually rely on per codec bandwidth estimation, but that might
    not be really accurate and new streams can be added or older removed
    via re-INVITE.

    

    Cheers,

    Daniel

    

    On 28/10/15 13:39, Guillaume wrote:

    
    
      
      Hi,

        

        I was thinking about doing a Call Admission Control module. It
        will allow the admin to setup limits in order to improve the
        global quality and to prevent overload of the service.

        It would have these criteria for admitting or not a call (you
        can propose other criteria):

        * Number of call attempt per second

        * Maximal number of concurrent sessions

        * CPU limit

        * RAM limit

        * Maximal bandwidth

        * Call priority header

        

        For now I haven't seen a module for that. And the dialog module
        could be useful for to implement the criteria that needs to know
        the number of call still active. It doesn't seem to be a too
        heavy task and it seems useful. 

        

        What do you think about it?

        

        

        Guillaume

      
      

      
      

      _______________________________________________
sr-dev mailing list
sr-dev at lists.sip-router.org
http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-dev

    
    

    -- 
Daniel-Constantin Mierla
http://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda
Book: SIP Routing With Kamailio - http://www.asipto.com
Kamailio Advanced Training, Nov 30-Dec 2, Berlin - http://asipto.com/kat
  


_______________________________________________
sr-dev mailing list
sr-dev at lists.sip-router.org
http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-dev 		 	   		  
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sip-router.org/pipermail/sr-dev/attachments/20151028/7f6f18c9/attachment.html>


More information about the sr-dev mailing list