The random value is based on the Call-ID, use
debug=4 and add an XLOG as
follows before every call to cr_route:
xlog("L_ERR", "call-id for this call $ci");
Check the call-id is different every time and the CRC32 algorithm to
calculate the hash values gives a different answer.
On Thu, Jul 30, 2009 at 9:49 AM, michel freiha <michofr(a)gmail.com>wrote;wrote:
When restarting kamailio I found out that it
reads both routes
Jul 30 11:46:40 [9165] INFO:carrierroute:rule_fixup_recursor: hashless
rule with host Y.Y.Y.Y hash hash_index 1
Jul 30 11:46:40 [9165] INFO:carrierroute:rule_fixup_recursor: hashless
rule with host X.X.X.X hash hash_index 2
I jjst do not know why it's not reading the prob
On Thu, Jul 30, 2009 at 3:39 PM, michel freiha <michofr(a)gmail.com>wrote;wrote:
> Dear Sir,
>
> Please find below carrierroute table...
>
>
+----+---------+--------+-------------+-------+------+------+-------+--------------+----------------+----------------+-------------+
> | id | carrier | domain | scan_prefix | flags | mask | prob | strip |
> rewrite_host | rewrite_prefix | rewrite_suffix | description |
>
>
+----+---------+--------+-------------+-------+------+------+-------+--------------+----------------+----------------+-------------+
> | 1 | 5 | 0 | 00 | 0 | 0 | 0.1 | 0 |
> X.X.X.X | | | NULL |
> | 2 | 5 | 0 | 00 | 0 | 0 | 0.9 | 0 |
> Y.Y.Y.Y | | | NULL |
>
>
+----+---------+--------+-------------+-------+------+------+-------+--------------+----------------+----------------+-------------+
>
>
> on kamailio.conf:
>
> if(!cr_route("default", "0", "$rU", "$rU",
"call_id")){
>
> sl_send_reply("403", "Not allowed");
> } else {
> # In cas of failure, re-route the request
> t_on_failure("1");
> # Relay the request to the gateway
> t_relay();
> }
>
>
> When trying to call 00123456666 the call is forwarded all the time to
> X.X.X.X IP and never to Y.Y.Y.Y IP...why this happening? It's like Kamailio
> is not reading prob field
>
> Regards
>
>
>
>
>
> On Thu, Jul 30, 2009 at 3:13 PM, Uriel Rozenbaum <
> uriel.rozenbaum(a)gmail.com> wrote:
>
>> I'm really not sure how it works when you use a 0 prob.
>>
>> Try something like 50/50 and check if the requests go to both servers.
>>
>> Also, some extract from /var/log/messages will help.
>>
>>
>> On Thu, Jul 30, 2009 at 4:38 AM, michel freiha <michofr(a)gmail.com>wrote;wrote:
>>
>>> Dear Sir,
>>>
>>> My tables are defined as below:
>>>
>>> *carrierroute table:*
>>>
>>> id carrier domain scan_prefix flags mask
>>> prob strip rewrite_host
>>> 19 5 1 00 0
>>> 0 0 0 IP_address1
>>> 19 5 1 00 0
>>> 0 1 0 IP_Address1
>>>
>>> *route_tree table:*
>>>
>>> id carrier
>>> 5 default
>>>
>>> *In kamalio.cfg:*
>>>
>>> if(!cr_route("default", "1", "$rU",
"$rU", "call_id")){
>>>
>>>
>>> The issue is that kamailio is forwarding all calls to IP_Address1 and
>>> never to IP_Address2 even if prob is 1 for IP_Address2 and 0 for IP_Address1
>>>
>>>
>>> Any help please?
>>>
>>>
>>>
>>> On Wed, Jul 29, 2009 at 6:45 PM, Uriel Rozenbaum <
>>> uriel.rozenbaum(a)gmail.com> wrote:
>>>
>>>> Michel,
>>>>
>>>> The prob field is to set the proportion of a certain entry to be
>>>> taken when you are load balancing between carriers.
>>>>
>>>> To perform an overflow operation you have to use the domain field.
>>>>
>>>> Check the samples on the module documentation; it's preety clear
>>>> there; if you have further questions just post them here.
>>>>
>>>> Rgds,
>>>> Uriel
>>>>
>>>> On Wed, Jul 29, 2009 at 10:39 AM, michel freiha
<michofr(a)gmail.com>wrote;wrote:
>>>>
>>>>> Hi all,
>>>>>
>>>>> I'm using carrierroute module and ie seems that it's not
working
>>>>> well...Suppose I have 2 entries in carrierroute table...Entry 1 with
scan
>>>>> prefix 00 and prob 0 and a second entry with scan prefix 00 and
prob=1...As
>>>>> soon as i make a call, this call will be forwarded to the entry with
prob 0
>>>>> because i guess it appears before the one with prob 1 in the
table...
>>>>>
>>>>> When starting Kamailio I got the below:
>>>>>
>>>>> Jul 29 12:30:11 [23143] INFO:carrierroute:add_route: adding prefix
>>>>> 1, prob -14931260.000000
>>>>> Jul 29 12:30:11 [23143] INFO:carrierroute:get_route_tree: domain 0
>>>>> not found, add it
>>>>> Jul 29 12:30:11 [23143] INFO:carrierroute:add_route_tree: tree
>>>>> default has 1 trees
>>>>> Jul 29 12:30:11 [23143] DBG:carrierroute:add_route_tree: tree 0Jul
>>>>> 29 12:30:11 [23143] INFO:carrierroute:get_route_tree: created route
tree: 0,
>>>>> with id 0
>>>>> Jul 29 12:30:11 [23143] INFO:carrierroute:add_route: found route,
>>>>> now adding
>>>>> Jul 29 12:30:11 [23143] INFO:carrierroute:add_route_rule: no backed
>>>>> up rules
>>>>> Jul 29 12:30:11 [23143] INFO:carrierroute:add_route: adding prefix
>>>>> , prob -14931260.000000
>>>>> Jul 29 12:30:11 [23143] INFO:carrierroute:get_route_tree: found
>>>>> domain 0
>>>>> Jul 29 12:30:11 [23143] INFO:carrierroute:add_route: found route,
>>>>> now adding
>>>>> Jul 29 12:30:11 [23143] INFO:carrierroute:add_route_rule: no backed
>>>>> up rules
>>>>> Jul 29 12:30:11 [23143] INFO:carrierroute:add_route: adding prefix
>>>>> 011, prob -14931260.000000
>>>>> Jul 29 12:30:11 [23143] INFO:carrierroute:get_route_tree: found
>>>>> domain 0
>>>>> Jul 29 12:30:11 [23143] INFO:carrierroute:add_route: found route,
>>>>> now adding
>>>>> Jul 29 12:30:11 [23143] INFO:carrierroute:add_route_rule: no backed
>>>>> up rules
>>>>> Jul 29 12:30:11 [23143] INFO:carrierroute:add_route: adding prefix
>>>>> 00, prob -14931260.000000
>>>>> Jul 29 12:30:11 [23143] INFO:carrierroute:get_route_tree: found
>>>>> domain 0
>>>>> Jul 29 12:30:11 [23143] INFO:carrierroute:add_route: found route,
>>>>> now adding
>>>>> Jul 29 12:30:11 [23143] INFO:carrierroute:add_route_rule: no backed
>>>>> up rules
>>>>> Jul 29 12:30:11 [23143] INFO:carrierroute:add_route: adding prefix
>>>>> 111, prob -14931260.000000
>>>>> Jul 29 12:30:11 [23143] INFO:carrierroute:get_route_tree: found
>>>>> domain 0
>>>>> Jul 29 12:30:11 [23143] INFO:carrierroute:add_route: found route,
>>>>> now adding
>>>>> Jul 29 12:30:11 [23143] INFO:carrierroute:add_route_rule: no backed
>>>>> up rules
>>>>> Jul 29 12:30:11 [23143] INFO:carrierroute:add_route: adding prefix
>>>>> 00, prob -14931260.000000
>>>>> Jul 29 12:30:11 [23143] INFO:carrierroute:get_route_tree: found
>>>>> domain 0
>>>>> Jul 29 12:30:11 [23143] INFO:carrierroute:add_route: found route,
>>>>> now adding
>>>>> Jul 29 12:30:11 [23143] INFO:carrierroute:add_route_rule: no backed
>>>>> up rules
>>>>> Jul 29 12:30:11 [23143] INFO:carrierroute:add_route: adding prefix
>>>>> , prob -14931260.000000
>>>>> Jul 29 12:30:11 [23143] INFO:carrierroute:get_route_tree: found
>>>>> domain 0
>>>>> Jul 29 12:30:11 [23143] INFO:carrierroute:add_route: found route,
>>>>> now adding
>>>>> Jul 29 12:30:11 [23143] INFO:carrierroute:add_route_rule: no backed
>>>>> up rules
>>>>> Jul 29 12:30:11 [23143] INFO:carrierroute:add_route: adding prefix
>>>>> 011, prob -14931260.000000
>>>>> Jul 29 12:30:11 [23143] INFO:carrierroute:get_route_tree: found
>>>>> domain 0
>>>>> Jul 29 12:30:11 [23143] INFO:carrierroute:add_route: found route,
>>>>> now adding
>>>>> Jul 29 12:30:11 [23143] INFO:carrierroute:add_route_rule: no backed
>>>>> up rules
>>>>> Jul 29 12:30:11 [23143] INFO:carrierroute:add_route: adding prefix
>>>>> 011, prob -14931260.000000
>>>>> Jul 29 12:30:11 [23143] INFO:carrierroute:get_route_tree: found
>>>>> domain 0
>>>>> Jul 29 12:30:11 [23143] INFO:carrierroute:add_route: found route,
>>>>> now adding
>>>>> Jul 29 12:30:11 [23143] INFO:carrierroute:add_route_rule: no backed
>>>>> up rules
>>>>> Jul 29 12:30:11 [23143] INFO:carrierroute:add_route: adding prefix
>>>>> , prob -14931260.000000
>>>>> Jul 29 12:30:11 [23143] INFO:carrierroute:get_route_tree: found
>>>>> domain 0
>>>>> Jul 29 12:30:11 [23143] INFO:carrierroute:add_route: found route,
>>>>> now adding
>>>>> Jul 29 12:30:11 [23143] INFO:carrierroute:add_route_rule: no backed
>>>>> up rules
>>>>>
>>>>> It seems that kamailio is not reading probability entry in carrier
>>>>> route table
>>>>>
>>>>> Please find below carrierroute table structure:
>>>>>
>>>>> CREATE TABLE IF NOT EXISTS `carrierroute` (
>>>>> `id` int(10) unsigned NOT NULL auto_increment,
>>>>> `carrier` int(10) unsigned NOT NULL default '0',
>>>>> `domain` varchar(64) NOT NULL default '',
>>>>> `scan_prefix` varchar(64) NOT NULL default '',
>>>>> `flags` int(11) unsigned NOT NULL default '0',
>>>>> `mask` int(11) unsigned NOT NULL default '0',
>>>>> `prob` float NOT NULL default '0',
>>>>> `strip` int(11) unsigned NOT NULL default '0',
>>>>> `rewrite_host` varchar(128) NOT NULL default '',
>>>>> `rewrite_prefix` varchar(64) NOT NULL default '',
>>>>> `rewrite_suffix` varchar(64) NOT NULL default '',
>>>>> `description` varchar(255) default NULL,
>>>>> PRIMARY KEY (`id`)
>>>>> ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=23 ;
>>>>>
>>>>>
>>>>> Can someone help me to find this issue?
>>>>>
>>>>> Regards
>>>>>
>>>>> _______________________________________________
>>>>> Kamailio (OpenSER) - Users mailing list
>>>>> Users(a)lists.kamailio.org
>>>>>
http://lists.kamailio.org/cgi-bin/mailman/listinfo/users
>>>>>
http://lists.openser-project.org/cgi-bin/mailman/listinfo/users
>>>>>
>>>>
>>>>
>>>
>>
>