[SR-Users] Dispatcher alg:7 not working accordingly

Carsten Bock carsten at ng-voice.com
Mon Jun 4 12:05:31 CEST 2012


Hi,

this functionality uses a generic "hash" function to generate an
Integer-Value of the PVAR and then reduces this to the number hosts in
your destination set.
If you have only using two different values of the PVAR and only two
hosts in the dispatcher list, it can likely happen, that the same host
is choosen. You should try a wider range of values for your PVAR...
(e.g. try 1000 different values), then you should see a distribution.

Carsten

2012/6/4 SamyGo <govoiper at gmail.com>:
> Hi,
>
> No, nothing at all. I haven't went too deep into debug logs but no internal
> error was appearing. Everything was as calm as ever and I only get one
> destination uri.
>
> So maybe what I'm getting from your email is that , for this to work the way
> I expect is to have more unique and random values in my hash_pvar to get the
> required functionality.
>
> Thanks once again,
> BR
> SG
>
> On Mon, Jun 4, 2012 at 11:52 AM, Daniel-Constantin Mierla
> <miconda at gmail.com> wrote:
>>
>> Hello,
>>
>> do you get any errors in the log?
>>
>> Be aware that hash functions may return same code for different input
>> values. A hash function is guaranteed to return same code for same  input
>> value, but there can be collisions of codes for different values.
>>
>> Cheers,
>> Daniel
>>
>>
>> On 6/3/12 3:41 PM, SamyGo wrote:
>>
>> Hello,
>>
>> I'm having trouble using algorithm 7 in dispatcher module. Here is my
>> kamailio version. The problem is that despite multiple dispatcher entries
>> corresponding to one set all calls go only to only one destination.
>>
>>
>> [root at control1 ~]# kamailio -V
>> version: kamailio 3.2.3 (x86_64/linux) 59f87e
>> flags: STATS: Off, USE_IPV6, USE_TCP, USE_TLS, TLS_HOOKS, USE_RAW_SOCKS,
>> DISABLE_NAGLE, USE_MCAST, DNS_IP_HACK, SHM_MEM, SHM_MMAP, PKG_MALLOC,
>> DBG_QM_MALLOC, USE_FUTEX, FAST_LOCK-ADAPTIVE_WAIT, USE_DNS_CACHE,
>> USE_DNS_FAILOVER, USE_NAPTR, USE_DST_BLACKLIST, HAVE_RESOLV_RES
>> ADAPTIVE_WAIT_LOOPS=1024, MAX_RECV_BUFFER_SIZE 262144, MAX_LISTEN 16,
>> MAX_URI_SIZE 1024, BUF_SIZE 65535, DEFAULT PKG_SIZE 4MB
>> poll method support: poll, epoll_lt, epoll_et, sigio_rt, select.
>> id: 59f87e
>> compiled on 18:04:08 Apr 19 2012 with gcc 4.1.2
>> [root at control1 ~]#
>>
>> Here is the dipacther module params.
>>
>>
>>
>> # ------- Load-balancer params ------
>> modparam("dispatcher", "db_url", DBURL)
>> modparam("dispatcher", "table_name", "dispatcher")
>> modparam("dispatcher", "setid_col", "setid")
>> modparam("dispatcher", "destination_col", "destination")
>> modparam("dispatcher", "force_dst", 1)
>> modparam("dispatcher", "flags", 3)
>> modparam("dispatcher", "dst_avp", "$avp(i:271)")
>> modparam("dispatcher", "cnt_avp", "$avp(i:273)")
>> modparam("dispatcher", "ds_ping_from", "sip:proxy at 109.XXX.2XX.XX")
>> modparam("dispatcher", "ds_ping_interval",15)
>> modparam("dispatcher", "ds_probing_mode", 1)
>> modparam("dispatcher", "ds_ping_reply_codes",
>> "class=2;code=403;code=404;code=484;class=3")
>> modparam("dispatcher", "hash_pvar", "$avp(i:274)")
>> modparam("dispatcher", "ds_hash_size", 9)
>> modparam("dispatcher", "ds_hash_initexpire", 60)
>>
>>
>>
>> Below is the function call based on avp(i:274)
>>
>>
>>
>> avp_db_query("select uid from uid_did_map where accountcode =
>> '$fU'","$avp(i:274)");
>> xlog("L_INFO","$rm from $fu (IP:$si:$sp) ---------
>> UID:'$avp(i:274)-----------'\n");
>>         ds_load_update();
>>         if(!ds_select_dst("1","7")) {
>>                         sl_send_reply("500", "No destination available");
>>                         xlog("route[MAIN] : $rm : No destinations
>> available for $rd");
>>                         exit;
>>         }
>>
>>
>> I'm getting two different values for avp(i:274) {26,29} but the
>> destination are not hashed on its base.
>>
>> Please help.
>>
>> Regards,
>> Sammy G.
>>
>>
>>
>> _______________________________________________
>> SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
>> sr-users at lists.sip-router.org
>> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
>>
>>
>> --
>> Daniel-Constantin Mierla - http://www.asipto.com
>> http://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda
>> Kamailio Advanced Training, Seattle, USA, Sep 23-26, 2012 -
>> http://asipto.com/u/katu
>> Kamailio Practical Workshop, Netherlands, Sep 10-12, 2012 -
>> http://asipto.com/u/kpw
>>
>>
>>
>
>
> _______________________________________________
> SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
> sr-users at lists.sip-router.org
> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
>



-- 
Carsten Bock
CEO (Geschäftsführer)

ng-voice GmbH
Schomburgstr. 80
D-22767 Hamburg / Germany

http://www.ng-voice.com
mailto:carsten at ng-voice.com

Mobile +49 179 2021244
Office +49 40 34927219
Fax +49 40 34927220

Sitz der Gesellschaft: Hamburg
Registergericht: Amtsgericht Hamburg, HRB 120189
Geschäftsführer: Carsten Bock
Ust-ID: DE279344284

Hier finden Sie unsere handelsrechtlichen Pflichtangaben:
http://www.ng-voice.com/imprint/



More information about the sr-users mailing list