[Users] provisional response management ( 100 Trying )
Evan Borgström
evan.borgstrom at ca.mci.com
Thu Jul 20 19:44:06 CEST 2006
Why would you want to prevent it? 1XX class messages are all
provisional, do not solicit a response and are never forwarded upstream
so only the previous hop will get multiple 100 messages which will
effectively limit any chance of the upstream hop re-transmitting the
original message.
Take the following example; A user sends their initial INVITE, you
sl_send_reply 100 and then check your proxy_authorize which returns a
407 and challenges the user. The user sends the second invite with
credentials you sl_send_reply 100 and then check your proxy_authorize
again and say, for instance, your DB server is now under heavy load (a
cronjob runs, etc) and takes longer then 1s to respond, since you
haven't called t_relay yet which generates the second 100 message your
initial 100 message would still stop the user from re-transmitting the
INVITE while proxy_authorize is waiting for the DB.
-Evan
T.R. Missner wrote:
> You have the question exactly correct
>
> Now - how can I do this?
>
> -----Original Message-----
> From: users-bounces at openser.org [mailto:users-bounces at openser.org] On
> Behalf Of Weiter Leiter
> Sent: Thursday, July 20, 2006 1:31 PM
> To: Norman Brandinger
> Cc: users
> Subject: Re: [Users] provisional response management ( 100 Trying )
>
> Hi,
>
> Norman Brandinger wrote:
>> At the top of our ROUTE_INVITE, we have:
>>
>>
>> #---------------------------------------------------------------------
>> - # Let the UA know we are working on their request - # they
>> shouldn't send retransmissions
>>
>> #---------------------------------------------------------------------
>> -
>> sl_send_reply("100", "Trying");
>>
>> This seems to work and it was adapted from code used during REGISTER
>> processing.
>
>
> If I got Missner's problem right, he wants to prevent sending multiple
> 100 replies back to the uac.
>
> The rfc says - Page 109, paragraph 5 - that "MUST be forwarded
> immediately [...] Any provisional response other than 100 (Trying)" and
> later, in same paragraph that "A stateful proxy MUST NOT immediately
> forward any other [= 101<=x<=299] responses". Now, it's true that in
> this case the proxy would not literally forward a 100 reply back, but
> the uac would still see 2x100.
>
> Now, if he does SL reply at the beginning, the tm module will, again,
> send a 100 on his own, before relaying.
>
> The question is how to prevent this, if I got it right...
>
>
> WL.
>
>> Regards,
>> Norm
>>
>> Klaus Darilion wrote:
>>> AFAI remember there was function t_relay_no_ack or similar. Take a
>>> lookat the README from TM module.
>>>
>>> regards
>>> klaus
>>>
>>> T.R. Missner wrote:
>>>> Hello,
>>>>
>>>>
>>>>
>>>> I want to send an immediate 100 trying message when an Invite is
>>>> received, then I do a DB lookup, then I rewrite the RURI and forward
>
>>>> the message using t_relay.
>>>>
>>>> Since I have already sent a 100 trying manually I'd like to short
>>>> circuit the 100 t_relay sends so multiple 100 trying messages aren't
>
>>>> sent.
>>>>
>>>> Does anyone know of a way to do this?
>>>>
>>>>
>>>>
>>>> Thanks,
>>>>
>>>>
>>>>
>>>> T.R.
>>>>
>>>>
>>>>
>>>>
>>>> --------------------------------------------------------------------
>>>> ----
>>>>
>>>>
>>>> _______________________________________________
>>>> Users mailing list
>>>> Users at openser.org
>>>> http://openser.org/cgi-bin/mailman/listinfo/users
>>>
>>> _______________________________________________
>>> Users mailing list
>>> Users at openser.org
>>> http://openser.org/cgi-bin/mailman/listinfo/users
>>>
>>>
>>>
>>
>> _______________________________________________
>> Users mailing list
>> Users at openser.org
>> http://openser.org/cgi-bin/mailman/listinfo/users
>>
>
>
> _______________________________________________
> Users mailing list
> Users at openser.org
> http://openser.org/cgi-bin/mailman/listinfo/users
>
> _______________________________________________
> Users mailing list
> Users at openser.org
> http://openser.org/cgi-bin/mailman/listinfo/users
More information about the Users
mailing list