1) Yes , only for the initial request<br><br>Before load balancing I have <br><br> if (!mf_process_maxfwd_header("10")) {<br> sl_send_reply("483","Too Many Hops");<br> exit;<br>
}<br> if (has_totag()) {<br> if (loose_route()) {<br> if (is_method("BYE")) {<br> setflag(1); # do accounting ...<br> setflag(3); # ... even if the transaction fails<br>
} else if (is_method("INVITE")) {<br> record_route();<br> }<br> route(1);<br> } else {<br> if ( is_method("ACK") ) {<br>
if ( t_check_trans() ) {<br> t_relay();<br> exit;<br> } else {<br> exit;<br>
}<br> }<br> sl_send_reply("404","Not here");<br> }<br> exit;<br> }<br><br> #initial requests<br>
<br> # CANCEL processing<br> if (is_method("CANCEL"))<br> {<br> if (t_check_trans())<br> t_relay();<br> exit;<br> }<br><br> t_check_trans();<br>
<br> if (!is_method("INVITE")) {<br> send_reply("405","Method Not Allowed");<br> exit;<br> }<br><br>.....<br><br><br>if (uri=~"^sip:0[1-9][0-9]*@") {<br>
load_balance("1","pstn");<br> xlog("sending call with callid $ci and ruri $ru to $du\n");<br> t_relay();<br> exit;<br> }<br><br><br><br>2) Yes, exactly . I don't see it being sent out.... <br>
<br><br><br><div class="gmail_quote">On Tue, Mar 15, 2011 at 12:10 PM, Bogdan-Andrei Iancu <span dir="ltr"><<a href="mailto:bogdan@opensips.org">bogdan@opensips.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
Hi Iulian,<br>
<br>
Regarding your first issue, with the load:<br>
<br>
1) I suppose you do the lb stuff only for the initial request right ?<br>
<br>
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 ?<br>
<br>
<br>
<br>
<br>
Iulian Macare wrote:<br>
<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;"><div class="im">
Hello<br>
<br>
<br>
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:<br>
<br>
<br>
+----+----------+--------------------------+-----------+------------+-------------+<br>
| id | group_id | dst_uri | resources | probe_mode | description |<br>
+----+----------+--------------------------+-----------+------------+-------------+<br></div>
| 1 | 1 | sip:<a href="http://192.168.254.241:5060" target="_blank">192.168.254.241:5060</a> <<a href="http://192.168.254.241:5060" target="_blank">http://192.168.254.241:5060</a>> | pstn=300 | 0 | |<br>
| 2 | 1 | sip:<a href="http://192.168.254.242:5060" target="_blank">192.168.254.242:5060</a> <<a href="http://192.168.254.242:5060" target="_blank">http://192.168.254.242:5060</a>> | pstn=300 | 0 | |<div>
<div></div><div class="h5"><br>
+----+----------+--------------------------+-----------+------------+-------------+<br>
<br>
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.<br>
<br>
The code for balancing in this situation is:<br>
<br>
if (uri=~"^sip:0[1-9][0-9]*@") {<br>
load_balance("1","pstn");<br>
xlog("sending call $ru to $du\n");<br>
t_relay();<br>
exit;<br>
}<br>
<br>
! 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.<br>
<br>
If I do something like this:<br>
<br>
+----+----------+---------------------+-----------+------------+-------------+<br>
| id | group_id | dst_uri | resources | probe_mode | description |<br>
+----+----------+---------------------+-----------+------------+-------------+<br>
| 1 | 1 | sip:192.168.254.241 | pstn=150 | 0 | |<br>
| 2 | 2 | sip:192.168.254.241 | pstn=150 | 0 | |<br>
| 3 | 1 | sip:192.168.254.242 | pstn=150 | 0 | |<br>
| 4 | 2 | sip:192.168.254.242 | pstn=150 | 0 | |<br>
<br>
And I split opensips balancing in 2<br>
<br>
<br>
if(src_ip==192.168.3.10 )<br>
{<br>
load_balance("1","pstn");<br>
xlog("sending call to $du\n");<br>
t_relay();<br>
exit;<br>
};<br>
<br>
if(src_ip==192.168.3.11 )<br>
{<br>
load_balance("2","pstn");<br>
xlog("sending call to $du\n");<br>
t_relay();<br>
exit;<br>
};<br>
<br>
<br>
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.<br>
<br>
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.<br>
<br>
Mar 10 14:58:47 opensips /usr/local/sbin/opensips[27611]: sending call to sip:192.168.254.241<br>
Mar 10 14:58:47 opensips /usr/local/sbin/opensips[27611]: sending call to sip:192.168.254.241<br>
<br>
<br>
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 .<br>
<br>
<br></div></div>
------------------------------------------------------------------------<br>
<br>
_______________________________________________<br>
Users mailing list<br>
<a href="mailto:Users@lists.opensips.org" target="_blank">Users@lists.opensips.org</a><br>
<a href="http://lists.opensips.org/cgi-bin/mailman/listinfo/users" target="_blank">http://lists.opensips.org/cgi-bin/mailman/listinfo/users</a><br>
<br>
</blockquote>
<br>
<br>
-- <br>
Bogdan-Andrei Iancu<br>
OpenSIPS eBootcamp - 28th February 2011<br>
OpenSIPS solutions and "know-how"<br>
<br>
<br>
_______________________________________________<br>
Users mailing list<br>
<a href="mailto:Users@lists.opensips.org" target="_blank">Users@lists.opensips.org</a><br>
<a href="http://lists.opensips.org/cgi-bin/mailman/listinfo/users" target="_blank">http://lists.opensips.org/cgi-bin/mailman/listinfo/users</a><br>
</blockquote></div><br><div style="visibility: hidden; display: inline;" id="avg_ls_inline_popup"></div><style type="text/css">#avg_ls_inline_popup { position:absolute; z-index:9999; padding: 0px 0px; margin-left: 0px; margin-top: 0px; width: 240px; overflow: hidden; word-wrap: break-word; color: black; font-size: 10px; text-align: left; line-height: 13px;}</style>