[Devel] NEW FEATURE: DNS-based failover

Bogdan-Andrei Iancu bogdan at voice-system.ro
Mon Jan 29 10:15:57 CET 2007


Hi Christian,

there is a typo, a missing "no" :)..It should be
    "There is no ICMP error report support"
I will update the docs!

regarding the second question - I'm jut working on a blacklist support 
(it hope it will be ready tomorrow) and you can set a temporary 
(expiring) list for the failed IPs (during DNS failover).

regards,
bogdan

Christian Schlatter wrote:

> 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
>
>
>
> _______________________________________________
> Devel mailing list
> Devel at openser.org
> http://openser.org/cgi-bin/mailman/listinfo/devel
>




More information about the Devel mailing list