[Devel] NEW FEATURE: DNS-based failover

Christian Schlatter cs at unc.edu
Fri Jan 26 23:05:05 CET 2007


All tests have been successful so far. I have two questions though:

The TM docs say "There is ICMP error report support", how is that 
supposed to work? Using UDP as transport, even when I get back an ICMP 
"Destination unreachable" immediately, openser waits for fr_timer to 
fire. I guess that only works for TCP connections.

The second question is about caching of reachability state. The 
dispatcher module exports the function ds_mark_dst() to mark a target as 
unreachable. I was planning to use this function together with a script 
that updates reachability state using the fifo interface. I'm wondering 
if something similar would be possible with the new DNS-based failover 
mechanism.

thanks,
Christian



Bogdan-Andrei Iancu wrote:
> Hi everybody,
> 
> 
> OpenSER 1.2.0 has now the capability to do DNS based failover, according 
> to RFC3263 (http://www.ietf.org/rfc/rfc3263.txt).
> 
> The SIP resolver was enhanced to to be able to save and resume later the 
> DNS queries in order to get all possible IP destinations. The resolving 
> process is step-by-step done (get next IP only on demand) to minimize 
> the total number of DNS queries. So having this support does not imply, 
> in normal processing, more load on the DNS server. Additional queries 
> are done only when needed (after failure detected).
> 
> The scanning for new IP destinations is done by the SIP resolver on all 
> DNS levels: NAPTR, SRV, A.
> 
> Both core and TM are using this new feature.
> 
> In core, the stateless forwarding can do only DNS-based failover at 
> transport level (if no egress interface found or send operation
> failed due whatever reason).
> 
> In TM, the DNS-based failover is extended to transaction level. If the 
> transaction completes with 503 or 408 with no reply, automatically, a 
> new branch will be fork if any destination IP can be found by the DNS 
> resolver.
> Read more here http://www.openser.org/docs/modules/1.2.x/tm.html#AEN103
> 
> 
> For controlling this feature use:
>     - newly added core parameter "disable_dns_failover" - use to 
> generally disable the DNS-based failover. By default is false.
>     - in TM, t_relay() take a new flag for turning off the DNS-based 
> failover. This setting is per transaction. By default, the failover is 
> done.
> 
> 
> Any feedback is appreciated.
> 
> regards,
> Bogdan
> 
> _______________________________________________
> Devel mailing list
> Devel at openser.org
> http://openser.org/cgi-bin/mailman/listinfo/devel




More information about the Devel mailing list