Hi<br><br>We have a configuration with one dispatcher that load-balances traffic to two SIP registrars.<br><br>When I shutdown one registrar server, the failure is detected in 30 seconds approximately. Is that a normal response time ? Or should we expect shorter response times ? (I expect yes :-) ).<br>
<br>More precisely, having two target gateways named REG1 and REG2, if Is shutdown REG2 at t0:<br>- traffic (SIP REGISTER messages) will be still load-balanced to REG1 and REG2 during the first 7 seconds (t0+7seconds),<br>
- then untill t0+30seconds, traffic will be sent exclusively to REG2 (the failed gw),<br>- from t0+30s to t0+35, traffic will be sent to both gateways REG1 and REG2 again,<br>- from t0+35s traffic will be sent to REG1 exclusively.<br>
<br>During the test we see the SIP OPTIONS messages sent to both REG1 and REG2.<br><br>For the dispatcher we are using the following configuration:<br><br><div style="margin-left: 40px;">modparam(&quot;dispatcher&quot;, &quot;list_file&quot;, &quot;/usr/local/etc/kamailio/dispatcher.list&quot;)<br>
modparam(&quot;dispatcher&quot;, &quot;flags&quot;, 3)<br>modparam(&quot;dispatcher&quot;, &quot;dst_avp&quot;, &quot;$avp(i:271)&quot;)<br>modparam(&quot;dispatcher&quot;, &quot;grp_avp&quot;, &quot;$avp(i:272)&quot;)<br>
modparam(&quot;dispatcher&quot;, &quot;cnt_avp&quot;, &quot;$avp(i:273)&quot;)<br>modparam(&quot;dispatcher&quot;, &quot;ds_ping_method&quot;, &quot;OPTIONS&quot;)<br>modparam(&quot;dispatcher&quot;, &quot;ds_ping_interval&quot;, 3)<br>
modparam(&quot;dispatcher&quot;, &quot;ds_ping_from&quot;, &quot;<a href="mailto:sip%3Afend1@10.132.184.33">sip:fend1@10.132.184.33</a>&quot;)<br>modparam(&quot;dispatcher&quot;, &quot;ds_probing_threshhold&quot;, 1)<br>modparam(&quot;dispatcher&quot;, &quot;ds_probing_mode&quot;, 1)<br>
modparam(&quot;dispatcher&quot;, &quot;force_dst&quot;, 1)<br><br>route{<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ds_select_dst(&quot;1&quot;, &quot;0&quot;);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; xlog(&quot;L_INFO&quot;,&quot;---&gt; $avp(i:271) $avp(i:272) $avp(i:273)&quot;);<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; t_on_failure(&quot;1&quot;);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; t_relay();<br><br>}<br><br>failure_route[1] {<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; xlog(&quot;L_INFO&quot;, &quot;Marking GW as failed...\n&quot;);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ds_mark_dst(&quot;i&quot;);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ds_next_dst();<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; t_on_failure(&quot;1&quot;);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; t_relay();<br><br>}<br><br><br></div>Regards,<br>-pascal<br><br>