Hi Iulian,
Regarding your first issue, with the load:
1) I suppose you do the lb stuff only for the initial request right ?
2) you say you see the xlog() for all the received calls, so all
received calls pass the lb function...but you do not see all calls being
sent out, right ?
Related to the second issue (with 2 logs for a single call), I suspect
it may be a retransmission issue. To be sure, print in your xlog the
callid also (to be sure it is the same request) . Var for callid is $ci.
Regards,
Bogdan
Iulian Macare wrote:
Hello
I have installed OpenSips 1.6.4 on CentOS 5.5 32bit with load
balancing & mysql support ; I want to balance calls to 2 asterisk
servers . I am sending traffic to opensips from 1 x gnudialer & 1 x
vicidial ( so from predictive dialers ). Situation is like this:
+----+----------+--------------------------+-----------+------------+-------------+
| id | group_id | dst_uri | resources | probe_mode |
description |
+----+----------+--------------------------+-----------+------------+-------------+
| 1 | 1 | sip:192.168.254.241:5060
<http://192.168.254.241:5060> | pstn=300 | 0 | |
| 2 | 1 | sip:192.168.254.242:5060
<http://192.168.254.242:5060> | pstn=300 | 0 | |
+----+----------+--------------------------+-----------+------------+-------------+
600 channels in total , and I send around 500 channels ; OpenSips
drops a lot of calls; By drop I mean a call that is not sent to one of
those 2 asterisk servers that I have.
The code for balancing in this situation is:
if (uri=~"^sip:0[1-9][0-9]*@") {
load_balance("1","pstn");
xlog("sending call $ru to $du\n");
t_relay();
exit;
}
! An important thing to say is that in /var/log/messages I see the
specific number that is sent to 192.168.254.241 for example ; So the
parameter xlog("sending call $ru to $du\n"); works ; The problem is
that in logs on 192.168.254.241 that number never arrives in asterisk
logs ; In logs of vicidial & gnudialer I see it like congestion.
If I do something like this:
+----+----------+---------------------+-----------+------------+-------------+
| id | group_id | dst_uri | resources | probe_mode |
description |
+----+----------+---------------------+-----------+------------+-------------+
| 1 | 1 | sip:192.168.254.241 | pstn=150 | 0
| |
| 2 | 2 | sip:192.168.254.241 | pstn=150 | 0
| |
| 3 | 1 | sip:192.168.254.242 | pstn=150 | 0
| |
| 4 | 2 | sip:192.168.254.242 | pstn=150 | 0
| |
And I split opensips balancing in 2
if(src_ip==192.168.3.10 )
{
load_balance("1","pstn");
xlog("sending call to $du\n");
t_relay();
exit;
};
if(src_ip==192.168.3.11 )
{
load_balance("2","pstn");
xlog("sending call to $du\n");
t_relay();
exit;
};
and by doing this I get the same numbers of channels on opensips (
around 500 channels ) but I am splitting in 2 groups of load
balancing; It can process all the calls.
Another question that I saw is that when I make a single call to
opensips and I involve load balancing in /var/log/messages I get 2
times the same message .. just like it send 2 time to asterisk server
the call .. but on asterisk I receive only one time.
Mar 10 14:58:47 opensips /usr/local/sbin/opensips[27611]: sending call
to sip:192.168.254.241
Mar 10 14:58:47 opensips /usr/local/sbin/opensips[27611]: sending call
to sip:192.168.254.241
Isn't load balancing fast enough the process the calls made by
predictive dialers, when over 300 channels is sent .. ? Or I have
some mistakes made .
------------------------------------------------------------------------
_______________________________________________
Users mailing list
[email protected]
http://lists.opensips.org/cgi-bin/mailman/listinfo/users
--
Bogdan-Andrei Iancu
OpenSIPS eBootcamp - 28th February 2011
OpenSIPS solutions and "know-how"
_______________________________________________
Users mailing list
[email protected]
http://lists.opensips.org/cgi-bin/mailman/listinfo/users