[OpenSIPS-Devel] ENUM lookups, q-value, and serialize_branches()
Klaus Darilion
klaus.mailinglists at pernau.at
Mon Oct 20 00:54:48 CEST 2008
Phil Vandry wrote:
> On Sat, 18 Oct 2008 15:18:59 +0200, Klaus Darilion wrote:
>> The difference is recognizable if you use multiple service types. The
> [...]
>> In this case the client must use SIP to setup the call.
>
> Good point.
>
>> Probably we can't tell of serial/parallel forking based on ENUM NAPTRs
>> is against the RFC. Nevertheless, as people use it, the proxy should
>> support both methods.
>
> Then I suggest the following:
>
> - Discard all NAPTR records with higher Order once we find one with
> matching flags & service (the RFC is pretty clear about that)
and matching regexp?
>
> - Add an optional parameter to control how to handle Preference:
>
> - (the default and the current behaviour) assign equal q-values to
> equal Preference, lower q-values to less preferred records.
I think if you discard higher order NAPTRs you can not have the current
behavior anymore.
klaus
>
> - assign lower q-values to all other records, even when the Preference
> is the same
>
> - consider only one result (no branches)
>
> Another possibility is a weighted randomizer. If p[x] is the Preference
> of record x then the probability that record x is selected is
> 1 / ( p[x] Σ(1/p[i]) ). I don't know if anyone really wants that :-)
>
> If you agree with this then I will implement it.
>
> -Phil
More information about the Devel
mailing list