timer B of INVITE transaction

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Dec 1, 2009 at 3:43 AM, Gang Liu <gangban.lau at gmail.com> wrote:
> Hi benny, nanang
> ? ? Is there any reason not follow RFC 3261 and cancel timer B after
> UAC invite transaction get provisional response at calling state?
>

I think we're doing the right thing here. For a start, 3261 is not
clear about whether timer B is active in Proceeding state or not, so
it's not clear which one to follow in the first place. And there's no
Timer B exit in the INVITE state diagram of the Proceeding state
either, implying that there's probably no Timer B in Proceeding state
(although the diagram is not normative).

But the clearer hint is in UAS processing, Section 13.3.1.1, which
says that INVITE transaction can go for extended period and that UAS
MUST retransmit the last non-100 provisional response every 1 minute,
which implies that the INVITE transaction is not limited to 32 seconds
by timer B.

Cheers
 Benny


> regards
> Gang
>
> static pj_status_t tsx_on_state_calling( pjsip_transaction *tsx,
> ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? pjsip_event *event )
>
> ...
>
> 2210 ? ? ? ? ? ? ? ?/* For provisional response, only cancel retransmit when this
> 2211 ? ? ? ? ? ? ? ? * is an INVITE transaction. For non-INVITE, section 17.1.2.1
> 2212 ? ? ? ? ? ? ? ? * of RFC 3261 says that:
> 2213 ? ? ? ? ? ? ? ? * ?- retransmit timer is set to T2
> 2214 ? ? ? ? ? ? ? ? * ?- timeout timer F is not deleted.
> 2215 ? ? ? ? ? ? ? ? */
> 2216 ? ? ? ? ? ? ? ?if (tsx->method.id == PJSIP_INVITE_METHOD) {
> 2217
> 2218 ? ? ? ? ? ? ? ? ? ?/* Cancel timeout timer */
> 2219 ? ? ? ? ? ? ? ? ? ?pjsip_endpt_cancel_timer(tsx->endpt, &tsx->timeout_timer);
> 2220
> 2221 ? ? ? ? ? ? ? ?} else {
> 2222 ? ? ? ? ? ? ? ? ? ?if (!tsx->is_reliable) {
> 2223 ? ? ? ? ? ? ? ? ? ? ? ?tsx->retransmit_timer.id = TIMER_ACTIVE;
> 2224 ? ? ? ? ? ? ? ? ? ? ? ?pjsip_endpt_schedule_timer(tsx->endpt,
> 2225 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? &tsx->retransmit_timer,
> 2226 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? &t2_timer_val);
> 2227 ? ? ? ? ? ? ? ? ? ?}
> 2228 ? ? ? ? ? ? ? ?}
>
> _______________________________________________
> Visit our blog: http://blog.pjsip.org
>
> pjsip mailing list
> pjsip at lists.pjsip.org
> http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org
>



-- 
Best regards,

 Benny



[Index of Archives]     [Asterisk Users]     [Asterisk App Development]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [Linux API]
  Powered by Linux