Ηι Carsten,
I added in my failure route the following :
if (t_check_status("408")) {
ds_mark_dst("i");
}
and everything works fine.
Thank you very much for your help
Alex
Hi Alex,
you must have set this to ds_mark_dst("i") instead of "p", only "i"
will set the gateway to inactive.
Also you should add a "t_check_status()" before calling ds_mark_dst()
in order to define the codes, which should lead to the required state,
e.g.:
if (t_check_status("408|503")) {
ds_mark_dst("p");
}
So only in case the ds_mark_dst would only be called, if the status of
the transaction was 408 (Request timeout) or 503 (Service
unavailable).
Please be aware, that the new setting to probing does only apply to
new requests (retransmits to the disabled destination will still occur
until the transaction does timeout).
We have been using this functionality for several years now and we
never had problems....
--
Carsten
2010/11/16 alex pappas <rebel.pappas@gmail.com>:
> Hi Carsten,
>
> I tried that before but it's not what I really need. By saying that , when I
> added this function to my failure route then every call failure that
> happened (routing problem let's say) then immediately this GW was set to
> Inactive mode and I was not able to use it.
>
> What I'm asking is to understand why Dispatcher module is sending calls to a
> GW in P state?
>
> Thanks
>
> Alex
>
>
>
> On Tue, Nov 16, 2010 at 3:54 PM, Carsten Bock <lists@bock.info> wrote:
>>
>> Hi Alex,
>>
>> do you have a "ds_mark_dst("p")" in your failure route? This needs to
>> be called "threshhold" times in order to set the gateway to probing...
>> And please be aware of timeouts: If you have a Transaction-timeout of
>> e.g. 60 seconds, then the failure-route would be executed after 60
>> seconds and for this time the gateway would stay "active".
>>
>> Carsten
>>
>>
>> 2010/11/16 alex pappas <rebel.pappas@gmail.com>:
>> > Hi Daniel,
>> >
>> > I have configured that option before i send it the email.
>> > modparam("dispatcher", "ds_probing_threshhold", 2)
>> >
>> > I have gateways A,A,B,C. (A and A is the same gw. I want to send more
>> > calls
>> > that's why is added twice)
>> >
>> > C is the dead gateway. It never responds back to the options because is
>> > not
>> > a real IP.
>> >
>> > When Dispatcher is sending the Invites it always includes the dead gw C
>> > which by the way is in probing mode.
>> >
>> > Doing some test calls i have the following results in send it Invites:
>> >
>> > A, B, A, C
>> > B, A, C, A
>> > A, C, A, B
>> > A, B , A ,C
>> > B, A, C, A
>> > A, C, A, B
>> > A, B , A ,C
>> > B, A, C, A
>> > A, C, A, B
>> > A, B, A, C
>> > B, A, C, A
>> >
>> > As you can see the C dead gw is always included to the Invites send.
>> >
>> > Am i missing something in the configuration?
>> > I also tried to use “9” - use weight based load distribution but with no
>> > success. i got in the logs that this algorithm is not implemented. I'm
>> > doing
>> > something wrong here or is not implemented in this version of Kamailio.
>> > (
>> > 3.0.1)
>> >
>> > Thank you in advance for your help.
>> >
>> > Regards
>> > Alex
>> >
>> >
>> >
>> >
>> > On Fri, Nov 12, 2010 at 10:14 PM, Daniel-Constantin Mierla
>> > <miconda@gmail.com> wrote:
>> >>
>> >> Hi Alex,
>> >>
>> >> dispatcher module does not send new invites to inactive gateways. But
>> >> in
>> >> case a destination became inactive while some INVITEs were already
>> >> through
>> >> dispatcher, these recent inactive gateways may still be used for them.
>> >>
>> >> Regarding the probing mode, dispatcher will never select a probing
>> >> gateway
>> >> as first option to route the call, but they are kept as alternative.
>> >> This is
>> >> the current implementation, we may add a module parameter to skip
>> >> gateways
>> >> in probing mode even for secondary alternatives.
>> >>
>> >> Non-responsive gateways change the state after a while, see:
>> >>
>> >>
>> >> http://kamailio.org/docs/modules/stable/modules_k/dispatcher.html#id2567110
>> >>
>> >> Cheers,
>> >> Daniel
>> >>
>> >> On 11/12/10 12:58 PM, alex pappas wrote:
>> >>
>> >> Dear all,
>> >>
>> >> Does anyone can explain how Dispatcher module is sending calls to the
>> >> gateways in the different states?
>> >>
>> >> I mean if I have 3 gateways and the one of them is in Probing mode why
>> >> Dispatcher is continuing sending there calls? Why this gateway is not
>> >> changing from Probing to Inactive since is not replaying to OPTIONS
>> >> messages
>> >> send by Kamailio?
>> >>
>> >> Configuration:
>> >>
>> >> modparam("dispatcher", "flags", 2)
>> >> modparam("dispatcher", "ds_ping_interval", 5)
>> >> modparam("dispatcher", "ds_probing_mode", 1)
>> >> modparam("dispatcher", "ds_probing_threshhold", 2)
>> >> modparam("dispatcher", "dst_avp", "$avp(s:dst_avp)")
>> >> modparam("dispatcher", "grp_avp", "$avp(dsgrp)")
>> >> modparam("dispatcher", "cnt_avp", "$avp(i:202)")
>> >> modparam("dispatcher", "ds_append_branch", 0)
>> >>
>> >> using db for gw:
>> >>
>> >> setid 123,destination sip:xxx.xxxx.xxx, flag 0 ...
>> >>
>> >> in ROUTE:
>> >> if(ds_select_domain("$avp(s:disp_dstgrp)", "4"))
>> >>
>> >> in Failure Route
>> >>
>> >> if(!ds_next_domain())
>> >>
>> >> I want Dispatcher when it sees a node gateway that is dead , to Not
>> >> send
>> >> any other calls.
>> >>
>> >> Thank you in advance
>> >>
>> >> Alex
>> >>
>> >>
>> >>
>> >> _______________________________________________
>> >> SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
>> >> sr-users@lists.sip-router.org
>> >> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
>> >>
>> >> --
>> >> Daniel-Constantin Mierla
>> >> http://www.asipto.com
>> >
>> > _______________________________________________
>> > SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
>> > sr-users@lists.sip-router.org
>> > http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
>> >
>> >
>>
>>
>>
>> --
>> Carsten Bock
>> Schomburgstr. 80
>> 22767 Hamburg
>> Germany
>>
>> Mobile +49 179 2021244
>> Home +49 40 34927217
>> Fax +49 40 34927218
>> mailto:carsten@bock.info
>
>
Carsten Bock
Schomburgstr. 80
22767 Hamburg
Germany
Mobile +49 179 2021244
Home +49 40 34927217
Fax +49 40 34927218
mailto:carsten@bock.info