[SR-Users] Loadbalancing proxy using DNS SRV instead of dispatcher

Daniel Tryba d.tryba at pocos.nl
Thu Apr 16 17:42:05 CEST 2015


The idea is to use SRV records instead of a dispatcher by setting $rd to a DNS 
SRV enabled host (with all hosts having the same prio and weight).

Problem is that when authentication is required the flow is as follows (with 2 
hosts):

1:
UAC INVITE/REGISTER -> LB -> SIP0
SIP0 401 with nonce1 challenge ->  LB -> UAC
UAC ACK -> LB -> SIP0

2:
UAC INVITE/REGISTER with nonce1 response -> LB -> SIP1
SIP1 401 with nonce2 challenge -> LB -> UAC
UACK ACK -> LB -> SIP1

3:
UAC INVITE/REGISTER with nonce2 response -> LB -> SIP0
SIP0 401 with nonce1 challenge -> LB -> UAC
UACK ACK -> LB -> SIP0

4: UAC either gives up or goes to 2

Using the dispatcher module this can be solved by using a hash over either 
from/to/request URI. I can't find any hints for forcing the dialog to 1 
backend.

BTW the idea is to keep the loadbalancing proxy as simple/stupid as possible 
(no db), the backends have a shared db.



More information about the sr-users mailing list