[OpenSIPS-Users] Not able to make Load Balancer work

Bogdan-Andrei Iancu bogdan at opensips.org
Tue Jan 16 05:37:50 EST 2018


Hi Mayur,

The simplest way to debug this is by using the script_trace() function - 
see:
http://www.opensips.org/Documentation/Script-CoreFunctions-2-3#toc43

Simply add in the very begging of your script:
script_trace( 1, "$rm from $si, ruri=$ru/$du", "LB");

and make a call - see the execution trace through the script for your INVITE.

Regards,

Bogdan-Andrei Iancu

OpenSIPS Founder and Developer
   http://www.opensips-solutions.com
OpenSIPS Summit 2018
   http://www.opensips.org/events/Summit-2018Amsterdam

On 01/15/2018 07:23 PM, Mayur Koshal wrote:
> Hi Bogdan,
>
> Thanks for your time and looking into this.
>
> I am using the Load balancer script which is generated from the 
> menuconfig as it is. The script was generated after I compiled and 
> build opensips . Did not made much changes to it.
>
> Need to find out the reason why it is looping inside LB and not 
> forwarding it to Proxy.
>
>
> Regards
> Mayur
>
>
>
> On Mon, Jan 15, 2018 at 10:43 PM, Bogdan-Andrei Iancu 
> <bogdan at opensips.org <mailto:bogdan at opensips.org>> wrote:
>
>     Hi MAyur,
>
>     Your trance does not show the INVITE being route outside the LB
>     (.19). Even more there is a "Too many hops reply" back, suggesting
>     that a loop is created on the LB and the INVITE is never sent to
>     the destination (but keep re-routed back to LB).
>
>     When you do t_relay() in your script, place before it an xlog to
>     see the destinations:
>     xlog("sending out request to $ru/$du\n");
>
>     Regards,
>
>     Bogdan-Andrei Iancu
>
>     OpenSIPS Founder and Developer
>     http://www.opensips-solutions.com <http://www.opensips-solutions.com>
>     OpenSIPS Summit 2018
>     http://www.opensips.org/events/Summit-2018Amsterdam
>     <http://www.opensips.org/events/Summit-2018Amsterdam>
>
>     On 01/12/2018 07:36 PM, Mayur Koshal wrote:
>
>         Hi Bogdan,
>
>         Thanks for the Reply.
>
>         Yes The opensips load balancer is able to reach destinations
>         which is
>         configured in the load balancer table as I can see in the
>         wireshark
>         logs and opensips logs of the SIP Proxy server.
>
>
>
>
>         I have removed one SIP proxy in the table and the load
>         distribution
>         table looks like :
>
>         mysql> select * from load_balancer;
>         | id | group_id | dst_uri                  | resources |
>         probe_mode |
>         description |
>         +----+----------+--------------------------+-----------+------------+-------------+
>         |  2 |        1 | sip:192.168.100.187:5060
>         <http://192.168.100.187:5060> | sip=50    |          0 |
>         serv1       |
>         +----+----------+--------------------------+-----------+------------+-------------+
>
>
>         Now I am using the setup with only one sip proxy to make it
>         simpler as :
>
>         UAC(192.168.100.19:5065).......>Load_Balancer(192.168.100.19:5060)......>Proxy(192.168.100.187:5060)..........>
>           UAS(192.168.187:5070)
>
>
>         I have added a user in Load Balancer:
>
>         sip:bharti at 192.168.100.187:5070
>         <http://sip:bharti@192.168.100.187:5070>
>
>
>
>         Database changed
>         mysql> select * from location;
>         +-----+----------+--------+---------------------------------+----------+------+---------------------+------+---------------------------------+------+---------------------+-------+--------+--------------------+--------+---------+--------------+
>         | id  | username | domain | contact      | received
>         | path | expires             | q    | callid
>         | cseq | last_modified       | flags | cflags | user_agent   
>              |
>         socket | methods | sip_instance |
>         +-----+----------+--------+---------------------------------+----------+------+---------------------+------+---------------------------------+------+---------------------+-------+--------+--------------------+--------+---------+--------------+
>         | 272 | bharti   |        | sip:bharti at 192.168.100.187:5070
>         <http://sip:bharti@192.168.100.187:5070> | NULL
>         | NULL | 1970-01-01 05:30:00 | 1.00 |
>         dfjrewr12386fd6-343 at opensips.mi
>         |    1 | 1970-01-01 05:30:00 |     0 |      0 | OpenSIPS MI
>         Server |
>         NULL   |    NULL | NULL         |
>         +-----+----------+--------+---------------------------------+----------+------+---------------------+------+---------------------------------+------+---------------------+-------+--------+--------------------+--------+---------+--------------+
>         1 row in set (0.01 sec)
>         ----------------------------------------------------------------------------------------------------
>
>
>         I am using commands in sipp:
>
>         UAC ---./sipp -sn uac 192.168.100.19:5060
>         <http://192.168.100.19:5060> -s bharti -i 192.168.100.19
>         -p 5065 -m 10 -r 1 -rp 1000
>
>         UAS -- ./sipp -sn uas 192.168.100.19:5060
>         <http://192.168.100.19:5060> -i 192.168.100.187 -p 5070
>
>
>         If I remove the load balancer and execute similar sipp
>         commands and
>         run a single call, it is successfull.
>
>
>
>         Logs at Load_Balancer:
>         -------------------------------------------------------------------------------------------------------------------
>         Jan 11 18:13:17 stack-VirtualBox
>         /usr/local/opensips_proxy/sbin/opensips[5375]: Inside main
>         route loop
>         LoadBalance
>         Jan 11 18:13:17 stack-VirtualBox
>         /usr/local/opensips_proxy/sbin/opensips[5376]: Inside
>         failure_route
>         GW_FAILOVER
>         Jan 11 18:13:17 stack-VirtualBox
>         /usr/local/opensips_proxy/sbin/opensips[5352]: message repeated 2
>         times: [ Inside main route loop LoadBalance]
>         Jan 11 18:13:17 stack-VirtualBox
>         /usr/local/opensips_proxy/sbin/opensips[5352]: Inside
>         failure_route
>         GW_FAILOVER
>         Jan 11 18:13:17 stack-VirtualBox
>         /usr/local/opensips_proxy/sbin/opensips[5352]: Inside main
>         route loop
>         LoadBalance
>         --------------------------------------------------------------------------------------------------------------------
>
>         Logs At OPensips Proxy :
>
>         Jan 11 18:13:18 stack-VirtualBox
>         /usr/local/opensips_proxy/sbin/opensips[16743]: incoming reply
>         Jan 11 18:13:18 stack-VirtualBox
>         /usr/local/opensips_proxy/sbin/opensips[16725]: incoming reply
>         Jan 11 18:13:18 stack-VirtualBox
>         /usr/local/opensips_proxy/sbin/opensips[16731]: new branch at
>         sip:bharti at 192.168.100.19:5060
>         <http://sip:bharti@192.168.100.19:5060>
>         Jan 11 18:13:18 stack-VirtualBox
>         /usr/local/opensips_proxy/sbin/opensips[16731]: incoming reply
>         Jan 11 18:13:18 stack-VirtualBox
>         /usr/local/opensips_proxy/sbin/opensips[16721]: new branch at
>         sip:bharti at 192.168.100.19:5060
>         <http://sip:bharti@192.168.100.19:5060>
>         Jan 11 18:13:18 stack-VirtualBox
>         /usr/local/opensips_proxy/sbin/opensips[16721]: incoming reply
>         Jan 11 18:13:18 stack-VirtualBox
>         /usr/local/opensips_proxy/sbin/opensips[16722]: new branch at
>         sip:bharti at 192.168.100.19:5060
>         <http://sip:bharti@192.168.100.19:5060>
>         Jan 11 18:13:18 stack-VirtualBox
>         /usr/local/opensips_proxy/sbin/opensips[16722]: incoming reply
>         Jan 11 18:13:18 stack-VirtualBox
>         /usr/local/opensips_proxy/sbin/opensips[16728]: incoming reply
>         Jan 11 18:13:18 stack-VirtualBox
>         /usr/local/opensips_proxy/sbin/opensips[16737]: new branch at
>         sip:bharti at 192.168.100.19:5060
>         <http://sip:bharti@192.168.100.19:5060>
>         Jan 11 18:13:18 stack-VirtualBox
>         /usr/local/opensips_proxy/sbin/opensips[16737]: incoming reply
>         --------------------------------------------------------------------------------------------------------
>
>         Regards
>         Mayur
>
>         On Tue, Jan 9, 2018 at 7:59 PM, Bogdan-Andrei Iancu
>         <bogdan at opensips.org <mailto:bogdan at opensips.org>> wrote:
>
>             Hi,
>
>             Are you sure the OpenSIPS LB is able to reach via SIP the
>             destinations you
>             configured in the LB table ? Run a single call (with sipp)
>             and make a
>             network capture to understand how the call is routed.
>
>             Regards,
>
>             Bogdan-Andrei Iancu
>
>             OpenSIPS Founder and Developer
>             http://www.opensips-solutions.com
>             <http://www.opensips-solutions.com>
>             OpenSIPS Summit 2018
>             http://www.opensips.org/events/Summit-2018Amsterdam
>             <http://www.opensips.org/events/Summit-2018Amsterdam>
>
>
>             On 01/08/2018 06:08 PM, Mayur Koshal wrote:
>
>                 Reposting the setup part  as was not visible clearly 
>                 in the previous
>                 mail.
>
>
>                 My setup is like :
>
>
>                     --------->
>                 Opensips Proxy 1 ---->  UAS 1
>
>                     UAC   -----> Load Balancer
>                     --------> Opensips
>                 Proxy 2 -----> UAS 2
>
>                 Regards
>                 Mayur
>
>                 On Mon, Jan 8, 2018 at 9:16 PM, Mayur Koshal
>                 <mayurkoshal at gmail.com <mailto:mayurkoshal at gmail.com>>
>                 wrote:
>
>                     Hi Everyone,
>
>
>
>                     I have configured and build opensips as a Load
>                     Balancer but am not
>                     able to make it work.
>
>                     Not able to figure out where the problem is ?
>
>                     Request your help in resolving the issue ..
>
>
>
>                     My setup is like :
>
>
>                           --------->
>                     Opensips Proxy 1 ---->  UAS 1
>
>                         UAC   -----> Load Balancer
>                           --------> Opensips
>                     Proxy 2 -----> UAS 2
>
>
>
>                         where  UAC             = 192.168.100.18
>                               Load Balancer    = 192.168.100.18:5060
>                     <http://192.168.100.18:5060>
>                               OPensips Proxy 1 = 192.168.100.194:5060
>                     <http://192.168.100.194:5060>
>                               Opensips Proxy 2 = 192.168.100.187:5060
>                     <http://192.168.100.187:5060>
>                             sipp UAS 1         = 192.168.100.194:5080
>                     <http://192.168.100.194:5080>
>                             sipp UAS 2         = 192.168.100.187:5080
>                     <http://192.168.100.187:5080>
>
>
>
>                     I use the below sipp command for
>
>                     Sipp UAC Command : ./sipp -sn uac -rsa
>                     192.168.100.18:5060 <http://192.168.100.18:5060>
>                     192.168.100.194:5080 <http://192.168.100.194:5080>
>                     Sipp UAS1  Command : ./sipp -sn uas
>
>                     When I bypass the load balancer and use sipp to
>                     test opensips proxy it
>                     works fine.
>
>                     When I run the Load Balancer I can see in the
>                     wireshark logs as: ICMP
>                     590 Destination unreachable (Port unreachable).
>
>                     In the opensips logs it goes to the failure route
>                     and displays message
>                     Failed trunk 192.168.100.194/
>                     <http://192.168.100.194/><null> detected.
>
>
>
>
>                     The load distribution table I am using is as below :
>
>                     mysql> select * from load_balancer;
>
>                     +----+----------+---------------------+-----------+------------+-------------+
>                     | id | group_id | dst_uri             | resources
>                     | probe_mode |
>                     description |
>
>                     +----+----------+---------------------+-----------+------------+-------------+
>                     |  1 |        1 | sip:192.168.100.194 | sip=64  
>                     |          0 | Server1
>                     |
>                     |  2 |        1 | sip:192.168.100.187 | sip=64  
>                     |          0 | Server2
>                     |
>
>                     +----+----------+---------------------+-----------+------------+-------------+
>                     2 rows in set (0.00 sec)
>
>
>                     The load balancer script, Proxy script, Load
>                     balancer logs are below.
>
>
>                     Load Balancer Script :
>
>
>
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.opensips.org/pipermail/users/attachments/20180116/28fad16d/attachment-0001.html>


More information about the Users mailing list