[SR-Users] Increase MAX_BRANCHES_LIMIT

Lars Jansson lars.jansson at solstiernan.nu
Mon Dec 12 16:31:38 CET 2022


Hi Daniel and Henning,

Thanks a lot for your answers, this will save me from wasting time on a 
dead end. 31x31 is plenty, so this is a way forward to workaround the 
current limitation in tm.

Just to see if I understand you correctly, Daniel, regarding the 
record-routing bit: At first record routing is applied as usual, but 
when a looped request is received and forked to targets no record 
routing shall be applied?

As a side note I tried setting max_branches=31, but that was not 
accepted, so I changed to max_branches=30. Perhaps this simply implies 
that the first branch is enumerated as branch #0 ?

Cheers,
Lars

Den 2022-12-12 kl. 09:04, skrev Daniel-Constantin Mierla:
>
> Hello,
>
> the value 32 forMAX_BRANCHES_LIMIT is a constraint of tm internals 
> which uses a 32 bitmap for some operations, going higher will require 
> coding in tm module.
>
> The variant now is to loop one more through kamailio and you can get 
> to 32x32 branches. By doing record route only on one step of looping, 
> then you have this looping only for initial INVITE transaction, the 
> re-INVITE, BYE, etc. will go straight.
>
> One more note, I am not sure and no time to check the code, one bit 
> might be reserved in the bitmap, so it can be 31x31 branches after one 
> local loop.
>
> Cheers,
> Daniel
>
> On 10.12.22 13:02, Lars Jansson wrote:
>>
>> Hi,
>>
>> I am building a configuration script where for some traffic flows 
>> parallel forking will be needed, and in this case I need to go beyond 
>> the default max limit of the max amount of branches.
>>
>> Apart from this specific case the traffic load that kamailio will 
>> need to handle is very low, let's say just one second here and there 
>> with up to 5 concurrent calls at most.
>>
>> This limit is as far as I understand set here: 
>> usr/local/src/kamailio-5.6/kamailio/src/core/config.h
>>
>> And the default limit is:
>> #define MAX_BRANCHES_LIMIT              32      /*!< limit of maximum 
>> number of branches per transaction */
>>
>> Here are the questions I have related to this:
>>
>> 1) If I increase the value of this constant in config.h, how high is 
>> it reasonable to set this value and still have a stable system?
>>
>> 2) If I increase MAX_BRANCHES_LIMIT beyond 32, are there also other 
>> parameters that needs to be changed for the system to be able to 
>> cope, and if so whichparameters?
>>
>> Regards,
>> Lars
>>
>>
>> __________________________________________________________
>> Kamailio - Users Mailing List - Non Commercial Discussions
>> sr-users at lists.kamailio.org
>> Important: keep the mailing list in the recipients, do not reply only to the sender!
>> Edit mailing list options or unsubscribe:
>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
> -- 
> Daniel-Constantin Mierla --www.asipto.com
> www.twitter.com/miconda  --www.linkedin.com/in/miconda
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.kamailio.org/pipermail/sr-users/attachments/20221212/6e8235a8/attachment.htm>


More information about the sr-users mailing list