[SR-Users] Kamailio Load Balancing, problems ACK and BYE.

Nguyen Anh Tuan tuanna3 at vnpt-technology.vn
Thu Dec 6 03:17:44 CET 2012


Hi everyone,

 

I am a beginner in using Kamailio. I am currently building a load balancer
for multiple SIP Servers, all of them are Kamailio. The Load balancer can
help end-users REGISTER and INVITE normally, but has problems with ACK and
BYE.

 

Messages 180 Ringing and 200 OK sent successfully to the Caller, but the ACK
failed, is transmitted to the SIP Server then stop here, doesn't go back to
Load balancing. (Caller's BYE -> LB -> Proxy then stop here). Because
doesn't receive ACK, the Called continuously sent 200 call OK to Caller
(sent successfully) and wait for confirmation ACK (after arrival to the SIP
Server, ACK doesn't come back to Load Balancing). Because the Called party
doesn't receive ACK, the call will be automatically disconnected after 30
seconds.

 

With BYE have rather, if the Caller hangs up first, BYE is transferred over
SIP Server and returned to Load balancer, but Load Balancing can't sent it
to the Called (Caller's BYE -> LB -> Proxy -> LB then do not go to the side
of called). Caller had picked off the phone, but the Caller is not received
BYE and after 30 seconds the call will automatically disconnect (by ACK
errors). If the called party hangs up first, HUNG UP button of the called
even useless, and I don't see any packet of the Called party's BYE message
in Wireshark.

 

I use X-Lite and EyeBeam for two end users, the configuration of the SIP
Server is the default configuration of Kamailio.

 

DISPATHCHER.LIST:

I have 3 Kamailio SIP Proxies, all of them OK, share one DB located in Proxy
2. But for capturing packets more convenient, I turn off the Proxy 2 and 3.

 

# group  sip addresses of your * units

 

# Kamailio SIP Proxies/Registrars

1 sip:192.168.3.11:5060 

#1 sip:192.168.3.12:5060

#1 sip:192.168.3.13:5060  

 

Previously I used the Stateless Load Balancing configuration by default, but
could not INVITE:

 

# -- dispatcher params --

modparam("dispatcher", "list_file", "/etc/kamailio/dispatcher.list")

modparam("dispatcher", "force_dst", 1)

 

route{

                if ( !mf_process_maxfwd_header("10") )

                {

                               sl_send_reply("483","To Many Hops");

                               drop();

                };

                

                ds_select_dst("1", "0");

                record_route();

                forward();

                # t_relay();

                }

 

Then I changed the following, sent INVITE and setup call successfully, but
met ACK and BYE error above.

 

        if ( is_method("INVITE")) {

        # Not Dispatch INVITE from SIP Proxies

                   if ( ds_is_from_list("1") ) { 

                                t_relay();

                   } else if ( !ds_is_from_list("1") ) {  

                    route(DISPATCH);

                   }

          } else           {   

         # If not INVITE

                    route(DISPATCH);

                }              

      }

 

    route[DISPATCH] {

    # dispatch destinations 

       ds_select_dst("1", "0");

       record_route();

       t_relay();

       #forward();   

   }           

 

Please tell me How to modify in the configuration of Proxy and Load
Balancing?

Thank so much for helping!

 

Best Regard

Nguyen Anh Tuan,

 

 

--------------------------------------------------------------------

 

 

The latest 200 OK from Called after Ringing : LB->Caller

Via: SIP/2.0/UDP
172.24.104.159:9040;received=192.168.3.88;branch=z9hG4bK-d87543-a7349502ae55
cf46-1--d87543-;rport=9040

Record-Route: <sip:192.168.3.11;lr;nat=yes>

Record-Route: <sip:192.168.3.10;lr=on>

Contact: <sip:1004 at 192.168.3.10:5060;rinstance=040c24111dc72132>

To: "1004"<sip:1004 at registrar.sip.vn>;tag=8e782d60

From: "1001 registrar.sip.vn"<sip:1001 at registrar.sip.vn>;tag=7c72f24e

Call-ID: 1926bb7b58289f2fODg1OTZlZGE5MTAxN2JhOWJjNTZmOGQ1OTljOTJiNjc.

CSeq: 2 INVITE

Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE,
INFO

Content-Type: application/sdp

User-Agent: eyeBeam release 1102q stamp 51814

Content-Length: 435

 

Caller's  ACK (1001 at 192.168.3.88) to Load Balancer (192.168.3.10):

Via: SIP/2.0/UDP
172.24.104.159:9040;branch=z9hG4bK-d87543-6f1c8659392a0773-1--d87543-;rport

Max-Forwards: 70

Route: <sip:192.168.3.10;lr>

Route: <sip:192.168.3.11;lr;nat=yes>

Contact: <sip:1001 at 192.168.3.88:9040>

To: "1004"<sip:1004 at registrar.sip.vn>;tag=8e782d60

From: "1001 registrar.sip.vn"<sip:1001 at registrar.sip.vn>;tag=7c72f24e

Call-ID: 1926bb7b58289f2fODg1OTZlZGE5MTAxN2JhOWJjNTZmOGQ1OTljOTJiNjc.

CSeq: 2 ACK

Proxy-Authorization: Digest
username="1001",realm="registrar.sip.vn",nonce="T4uyKE+LsPwWJBt3JseE7OVdd58P
32lS",uri="sip:1004 at registrar.sip.vn",response="ec2a4c8832bc7bf7665811c26ec9
b292",algorithm=MD5

User-Agent: eyeBeam release 1003s stamp 31159

Content-Length: 0

 

ACK  192.168.3.10:5060  (Load Balance) to  192.168.3.11:5060 (Proxy) then
STOP HERE (Not transfer further)

Via: SIP/2.0/UDP 192.168.3.10;branch=z9hG4bKcydzigwkX

Via: SIP/2.0/UDP 192.168.3.10;branch=z9hG4bKcydzigwkX

Via: SIP/2.0/UDP
172.24.104.159:9040;received=192.168.3.88;branch=z9hG4bK-d87543-6f1c8659392a
0773-1--d87543-;rport=9040

Max-Forwards: 68

Contact: <sip:1001 at 192.168.3.88:9040>

To: "1004"<sip:1004 at registrar.sip.vn>;tag=8e782d60

From: "1001 registrar.sip.vn"<sip:1001 at registrar.sip.vn>;tag=7c72f24e

Call-ID: 1926bb7b58289f2fODg1OTZlZGE5MTAxN2JhOWJjNTZmOGQ1OTljOTJiNjc.

CSeq: 2 ACK

Proxy-Authorization: Digest
username="1001",realm="registrar.sip.vn",nonce="T4uyKE+LsPwWJBt3JseE7OVdd58P
32lS",uri="sip:1004 at registrar.sip.vn",response="ec2a4c8832bc7bf7665811c26ec9
b292",algorithm=MD5

User-Agent: eyeBeam release 1003s stamp 31159

Content-Length: 0

 

Caller's BYE (1001 at 192.168.3.88) to Load Balance (192.168.3.10)

Via: SIP/2.0/UDP
172.24.104.159:9040;branch=z9hG4bK-d87543-616e232f86191a37-1--d87543-;rport

Max-Forwards: 70

Route: <sip:192.168.3.10;lr>

Route: <sip:192.168.3.11;lr;nat=yes>

Contact: <sip:1001 at 192.168.3.88:9040>

To: "1004"<sip:1004 at registrar.sip.vn>;tag=8e782d60

From: "1001 registrar.sip.vn"<sip:1001 at registrar.sip.vn>;tag=7c72f24e

Call-ID: 1926bb7b58289f2fODg1OTZlZGE5MTAxN2JhOWJjNTZmOGQ1OTljOTJiNjc.

CSeq: 3 BYE

Proxy-Authorization: Digest
username="1001",realm="registrar.sip.vn",nonce="T4uyKE+LsPwWJBt3JseE7OVdd58P
32lS",uri="sip:1004 at 192.168.3.10:5060;rinstance=040c24111dc72132",response="
c738898739dc49c02676e04a28761971",algorithm=MD5

User-Agent: eyeBeam release 1003s stamp 31159

Reason: SIP;description="User Hung Up"

Content-Length: 0

 

BYE was transferred from Load Balance(192.168.3.10) to Proxy (192.168.3.11),
repeated THREE TIMES, possibly due to an error loop (Route(DISPATCH)?)

Record-Route: <sip:192.168.3.10;lr=on>

Via: SIP/2.0/UDP 192.168.3.10;branch=z9hG4bKc5be.03f49894.1

Via: SIP/2.0/UDP
172.24.104.159:9040;received=192.168.3.88;branch=z9hG4bK-d87543-616e232f8619
1a37-1--d87543-;rport=9040

Max-Forwards: 69

Route: <sip:192.168.3.10;lr>

Contact: <sip:1001 at 192.168.3.88:9040>

To: "1004"<sip:1004 at registrar.sip.vn>;tag=8e782d60

From: "1001 registrar.sip.vn"<sip:1001 at registrar.sip.vn>;tag=7c72f24e

Call-ID: 1926bb7b58289f2fODg1OTZlZGE5MTAxN2JhOWJjNTZmOGQ1OTljOTJiNjc.

CSeq: 3 BYE

Proxy-Authorization: Digest
username="1001",realm="registrar.sip.vn",nonce="T4uyKE+LsPwWJBt3JseE7OVdd58P
32lS",uri="sip:1004 at 192.168.3.10:5060;rinstance=040c24111dc72132",response="
c738898739dc49c02676e04a28761971",algorithm=MD5

User-Agent: eyeBeam release 1003s stamp 31159

Reason: SIP;description="User Hung Up"

Content-Length: 0

 

Via: SIP/2.0/UDP 192.168.3.10;branch=z9hG4bKc5be.13f49894.0

Via: SIP/2.0/UDP 192.168.3.10;branch=z9hG4bKc5be.03f49894.0

Via: SIP/2.0/UDP
172.24.104.159:9040;received=192.168.3.88;branch=z9hG4bK-d87543-616e232f8619
1a37-1--d87543-;rport=9040

Max-Forwards: 68

Contact: <sip:1001 at 192.168.3.88:9040>

To: "1004"<sip:1004 at registrar.sip.vn>;tag=8e782d60

From: "1001 registrar.sip.vn"<sip:1001 at registrar.sip.vn>;tag=7c72f24e

Call-ID: 1926bb7b58289f2fODg1OTZlZGE5MTAxN2JhOWJjNTZmOGQ1OTljOTJiNjc.

CSeq: 3 BYE

Proxy-Authorization: Digest
username="1001",realm="registrar.sip.vn",nonce="T4uyKE+LsPwWJBt3JseE7OVdd58P
32lS",uri="sip:1004 at 192.168.3.10:5060;rinstance=040c24111dc72132",response="
c738898739dc49c02676e04a28761971",algorithm=MD5

User-Agent: eyeBeam release 1003s stamp 31159

Reason: SIP;description="User Hung Up"

Content-Length: 0

 

Record-Route: <sip:192.168.3.10;lr=on>

Via: SIP/2.0/UDP 192.168.3.10;branch=z9hG4bKc5be.13f49894.1

Via: SIP/2.0/UDP 192.168.3.10;branch=z9hG4bKc5be.03f49894.0

Via: SIP/2.0/UDP
172.24.104.159:9040;received=192.168.3.88;branch=z9hG4bK-d87543-616e232f8619
1a37-1--d87543-;rport=9040

Max-Forwards: 68

Contact: <sip:1001 at 192.168.3.88:9040>

To: "1004"<sip:1004 at registrar.sip.vn>;tag=8e782d60

From: "1001 registrar.sip.vn"<sip:1001 at registrar.sip.vn>;tag=7c72f24e

Call-ID: 1926bb7b58289f2fODg1OTZlZGE5MTAxN2JhOWJjNTZmOGQ1OTljOTJiNjc.

CSeq: 3 BYE

Proxy-Authorization: Digest
username="1001",realm="registrar.sip.vn",nonce="T4uyKE+LsPwWJBt3JseE7OVdd58P
32lS",uri="sip:1004 at 192.168.3.10:5060;rinstance=040c24111dc72132",response="
c738898739dc49c02676e04a28761971",algorithm=MD5

User-Agent: eyeBeam release 1003s stamp 31159

Reason: SIP;description="User Hung Up"

Content-Length: 0

 

Send back BYE from SIP Proxy (192.168.3.11) to Load Balance (192.168.3.10)

Record-Route: <sip:192.168.3.10;lr=on>

Via: SIP/2.0/UDP 192.168.3.11;branch=z9hG4bKc5be.0070e643.0

Via: SIP/2.0/UDP 192.168.3.10;rport=5060;branch=z9hG4bKc5be.03f49894.1

Via: SIP/2.0/UDP
172.24.104.159:9040;received=192.168.3.88;branch=z9hG4bK-d87543-616e232f8619
1a37-1--d87543-;rport=9040

Max-Forwards: 68

Contact: <sip:1001 at 192.168.3.10:5060>

To: "1004"<sip:1004 at registrar.sip.vn>;tag=8e782d60

From: "1001 registrar.sip.vn"<sip:1001 at registrar.sip.vn>;tag=7c72f24e

Call-ID: 1926bb7b58289f2fODg1OTZlZGE5MTAxN2JhOWJjNTZmOGQ1OTljOTJiNjc.

CSeq: 3 BYE

Proxy-Authorization: Digest
username="1001",realm="registrar.sip.vn",nonce="T4uyKE+LsPwWJBt3JseE7OVdd58P
32lS",uri="sip:1004 at 192.168.3.10:5060;rinstance=040c24111dc72132",response="
c738898739dc49c02676e04a28761971",algorithm=MD5

User-Agent: eyeBeam release 1003s stamp 31159

Reason: SIP;description="User Hung Up"

Content-Length: 0

 

BYE LOOPs Back from Load Balance(192.168.3.10) to Proxy (192.168.3.11),
possibly due to an error loop (Route(DISPATCH)?)

Record-Route: <sip:192.168.3.10;lr=on>

Record-Route: <sip:192.168.3.10;lr=on>

Via: SIP/2.0/UDP 192.168.3.10;branch=z9hG4bKc5be.33f49894.0

Via: SIP/2.0/UDP 192.168.3.10;branch=z9hG4bKc5be.23f49894.0

Via: SIP/2.0/UDP 192.168.3.11;branch=z9hG4bKc5be.0070e643.0

Via: SIP/2.0/UDP 192.168.3.10;rport=5060;branch=z9hG4bKc5be.03f49894.1

Via: SIP/2.0/UDP
172.24.104.159:9040;received=192.168.3.88;branch=z9hG4bK-d87543-616e232f8619
1a37-1--d87543-;rport=9040

Max-Forwards: 66

Contact: <sip:1001 at 192.168.3.10:5060>

To: "1004"<sip:1004 at registrar.sip.vn>;tag=8e782d60

From: "1001 registrar.sip.vn"<sip:1001 at registrar.sip.vn>;tag=7c72f24e

Call-ID: 1926bb7b58289f2fODg1OTZlZGE5MTAxN2JhOWJjNTZmOGQ1OTljOTJiNjc.

CSeq: 3 BYE

Proxy-Authorization: Digest
username="1001",realm="registrar.sip.vn",nonce="T4uyKE+LsPwWJBt3JseE7OVdd58P
32lS",uri="sip:1004 at 192.168.3.10:5060;rinstance=040c24111dc72132",response="
c738898739dc49c02676e04a28761971",algorithm=MD5

User-Agent: eyeBeam release 1003s stamp 31159

Reason: SIP;description="User Hung Up"

Content-Length: 0

 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sip-router.org/pipermail/sr-users/attachments/20121206/39270e5b/attachment-0001.htm>


More information about the sr-users mailing list