[SR-Users] Dispatcher round-robin problems in 5.2

Alex Balashov abalashov at evaristesys.com
Mon Aug 12 15:23:35 CEST 2019


I've got a proxy that does very basic round-robin distribution of calls
to an elastic pool of servers, defined in a simple SQLite database with
equal priorities. Nothing too complicated, just a vanilla
`ds_select_domain("1", "4")`. 

The only complication is that seldom are most of the gateways enabled.
Probing stuff was turned on, but didn't do quite what was desired, so it
was replaced with a system that manages activation and deactivation of
the gateways externally. Nevertheless, these are the left-over probing

   modparam("dispatcher", "ds_ping_method", "OPTIONS")
   modparam("dispatcher", "ds_ping_from", "sip:pinger at domain")
   modparam("dispatcher", "ds_ping_interval", 15)
   modparam("dispatcher", "ds_probing_threshold", 256)
   modparam("dispatcher", "ds_inactive_threshold", 1)
   modparam("dispatcher", "ds_probing_mode", 0)

After an upgrade from 5.1 to 5.2.3 (009f62), the round-robin has become
extremely "sticky" and tendentious. That is to say, it directs _almost_
all calls to a single gateway -- the first gateway in the table --
though not 100%. There is also a marked tendency to send lots of
consecutive calls to the same gateway, even if it's not the first one,
though most of the time it is.

Has anyone experienced similar upon upgrading to 5.2? 

Thanks much!

-- Alex

Alex Balashov | Principal | Evariste Systems LLC

Tel: +1-706-510-6800 / +1-800-250-5920 (toll-free) 
Web: http://www.evaristesys.com/, http://www.csrpswitch.com/

More information about the sr-users mailing list