The rest of the dispatcher "features", like failover should be supported based on what I remember from the way it was integrated and tested.
If it is not the case I can have a look. On Thu, Sep 1, 2022 at 9:21 AM Julien Chavanton <[email protected]> wrote: > On second thought, the documentation looks accurate to me. > > Do you have the latency stats enabled ? > > 3.26. ds_ping_latency_stats (int) > > If yes, the priority values you are using seem a bit low 1ms and 10ms. > If not, the algorithm should behave simply like that : > "The algorithm will load balance using round-robin prioritizing the > gateways with the highest priority. " > > > > > > On Thu, Sep 1, 2022 at 9:09 AM Julien Chavanton <[email protected]> > wrote: > >> Maybe the documentation should be improved, it seems the first bullet >> point should say. >> >> "The algorithm will load balance using round-robin prioritizing the >> gateways with the highest *adjusted* priority. " >> >> >> >> On Thu, Sep 1, 2022 at 9:06 AM Julien Chavanton <[email protected]> >> wrote: >> >>> Hi, did you look at the documentation of algorithm 13 ? >>> >>> The priority is used in combination with the latency to determine the >>> preferred gateway. >>> Once you confirm that this is what you want "latency latency optimized >>> dispatching", we can help to clarify why and how this may not work as >>> expected. >>> >>> >>> Regards >>> >>> >>> https://kamailio.org/docs/modules/devel/modules/dispatcher.html >>> >>> - >>> >>> “13” - latency optimized dispatching >>> >>> - The algorithm will load balance using round-robin prioritizing the >>> gateways with the highest priority. >>> >>> - If ds_ping_latency_stats is active the algorithm will adjust the >>> priority of the gateway automatically, the priority will be lowered by 1 >>> point every time the latency ms is as high as the priority. >>> >>> - If the attribute 'cc=1' is set, the latency used is congestion ms >>> : estimate (current latency ms) - average (normal condition latency ms). >>> >>> *Example 1.46. latency_optimized_dispatching usage* >>> >>> Using this simple formula : >>> ADJUSTED_PRIORITY = PRIORITY - (ESTIMATED_LATENCY_MS/PRIORITY) >>> >>> GATEWAY | PRIORITY | ESTIMATED | ADJUSTED | LOAD >>> # | | LATENCY | PRIORITY | DISTRIBUTION >>> 1 | 30 | 21 | 30 | 33% >>> 2 | 30 | 91 | 27 | 0% >>> 3 | 30 | 61 | 28 | 0% >>> 4 | 30 | 19 | 30 | 33% >>> 5 | 30 | 32 | 29 | 0% >>> 6 | 30 | 0 | 30 | 33% >>> 7 | 30 | 201 | 24 | 0% >>> >>> >>> With congestion control the formula becomes : >>> CONGESTION_MS = CURRENT_LATENCY_MS - NORMAL_CONDITION_LATENCY_MS >>> ADJUSTED_PRIORITY = PRIORITY - (CONGESTION_MS/PRIORITY) >>> >>> >>> - >>> >>> >>> >>> >>> On Thu, Sep 1, 2022 at 2:38 AM Pyry Aaltonen <[email protected]> >>> wrote: >>> >>>> Hello, >>>> >>>> >>>> >>>> I’m quite new user with kamailio (heard first time about it a year ago >>>> and joined the list yesterday) and now wondering how the xavp_dst should >>>> work. >>>> >>>> >>>> >>>> I had read from the documentation that >>>> >>>> ”The first XAVP is the current selected destination.” >>>> >>>> >>>> >>>> I use ds_select_dst with alg 13. And my kamailio version is kamailio >>>> 5.5.3 (x86_64/linux) >>>> >>>> >>>> >>>> So when my dispatcher list is like (I have also tried to differ the >>>> priority value like 10 and 1, but doesn’t make difference) >>>> >>>> 10 sip:1.2.3.4;transport=tcp 10 1 type=type1 >>>> >>>> 10 sip:4.3.2.1;transport=tcp 10 1 type=type2 >>>> >>>> >>>> >>>> If one of the destinations fails (dx/ip), and it happens to be the one >>>> with higher priority or the one that just gets higher position in the >>>> dispatcher list if the prio Is equal. >>>> >>>> My xavp_$xavp(dsdst=>attrs) get null value. And, if I try to seek >>>> $(xavp(dsdst[0]=>attrs) or $(xavp(dsdst[1]=>attrs) I also got nothing. >>>> >>>> >>>> >>>> If both destinations are up with equal priority, it selects them with >>>> round-robin, and the xavp_$xavp(dsdst=>attrs) has the type value of >>>> the selected destination as expected, also the $(xavp(dsdst[0]=>attrs) or >>>> $(xavp(dsdst[1]=>attrs) contains the destinations so that the selected >>>> is 0 and the other is at position 1. >>>> >>>> The $du is updated as I expect so if one fails the other one is >>>> selected always, why the xavp_dst isn’t working same way, or am I missing >>>> something? >>>> >>>> >>>> >>>> If needed I’ll try to provide more information, >>>> >>>> Thanks already in advance >>>> >>>> >>>> >>>> -Pyry >>>> >>>> >>>> >>>> >>>> >>>> >>>> >>>> >>>> >>>> >>>> >>>> >>>> >>>> >>>> >>>> >>>> __________________________________________________________ >>>> Kamailio - Users Mailing List - Non Commercial Discussions >>>> * [email protected] >>>> 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 >>>> >>>
__________________________________________________________ Kamailio - Users Mailing List - Non Commercial Discussions * [email protected] 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
