Hi again,
Since I last posted on this topic I now have a working configuration
script, including the route blocks I use for the parallel forking flows.
* For the parallel forking flow I use the dispatcher module, pointing
directly at the targets with sip:IP:port - so no DNS lookups invoved here
* In the low latency network the solution is working in I also use the
function t_set_fr(0, 125);to quickly discard unreachable targets
* For the traffic flow in question I know there will only be one UAS
that will respond among all of the parallel targets
So now I'm thinking that an alternative solution would be to use in the
route block I use for the parallel forking one destination set in the
dispatcher config that points to "the first 31 targets" and as a
failure_route another destination set that points to "the next 31 targets".
- Is there any theoretical objection to this?
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(a)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