2007/10/26, Stefan Leuenberger <[EMAIL PROTECTED]>:
> Any hint where to implement blacklisting?

> I'd thougth that the following code does this job (take the next result
> and free the one that did not work...):

Well, the problem is that  it does not remember that which destination
did not work next time. The blacklisting would put the destination
that timed out into a container. The next transaction would look up
them and avoid blacklisted destination.

So what is needed to implement blacklisting? A hash table or a search
tree where to put bad destinations (a su_addrinfo_t or tp_name_t
perhaps) and a timestamp when they timed out last time. When a new
transaction would be resolved, the results would be checked against
the blacklisted destinations before using them in
outgoing_query_results() and outgoing_resolve_next(). Perhaps also a
setting to indicate how long time a blacklisted destination stay that
way and when they become graylisted (like, stack would use them as a
last resort even if they timed out.

--Pekka

> /** Resolve next destination. */
> static int
> outgoing_resolve_next(nta_outgoing_t *orq)
> {
>   struct sipdns_resolver *sr = orq->orq_resolver;
>
>   if (sr == NULL) {
>     outgoing_resolving_error(orq, SIP_500_INTERNAL_SERVER_ERROR);
>     return 0;
>   }
>
>   if (sr->sr_results) {
>     /* Use existing A/AAAA results */
>     su_free(msg_home(orq->orq_request), sr->sr_results[0]);
>     sr->sr_results++;
>     if (sr->sr_results[0]) {
>
>
> Kind regards
>         Stefan
>
>
> -----Original Message-----
> From: Pekka Pessi [mailto:[EMAIL PROTECTED]
> Sent: Thursday, October 25, 2007 6:34 PM
> To: Stefan Leuenberger
> Subject: Re: Problem with proxy switch'over based on DNS results
>
> 2007/10/25, Stefan Leuenberger <[EMAIL PROTECTED]>:
> > The above behavior prevents that the switch-over to another proxy
> works. Why
> > does the stack switch back to helios (the proxy that is down) after it
> > detected the outage and selected the next proxy (talos)?
>
> The helios should be blacklisted after the timeout, but the
> blacklisting has not been implemented in the stack.
>
> --
> Pekka.Pessi mail at nokia.com
>


-- 
Pekka.Pessi mail at nokia.com

-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
Sofia-sip-devel mailing list
Sofia-sip-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/sofia-sip-devel

Reply via email to