Andreas, It make sense for B2BUA to stop retransmission as soon as 25 sec timer expires. I suppose your main concern is that sec 17.1.1 of RFC3261 does not provide any way for the TU to wrap-up INVITE Client transaction immediately if B does not respond (may be powered off). Two things can happen in this case.
1) If B is powered off then INVITE client transaction may encounter Transport Error. This shall wrap-up INVITE client transaction immediately. The B2BUA don't have to wait for 25 sec. 2)If there is no Transport Error then on 25 sec timer expiry, B2BUA should wrap-up the INVITE client transaction immediately. Remember that, CANCEL can not be sent in this case as no response is received for INVITE. My guess is that any B2BUA or UA shall have a trigger e.g., Terminate Txn between TU and Transaction layer(apart from Timer-B expiry and Transport Error) so that TU can terminate INVITE transaction immediately. The RFC3261 may have missed this trigger. Can anybody confirm the same? In summery, B2BUA should stop the retransmission. It should not wait for Timer-B to expire as it is not useful. -----Original Message----- From: Andreas Byström [mailto:andreas.bystrom at teligent.se] Sent: Monday, December 18, 2006 4:58 PM To: sip-implementors at cs.columbia.edu Subject: [Sip-implementors] Expires timer triggers before Timer B, what to do? Hi, my problem is about a scenario where A calls B using "application server/B2BUA" P1. A -> Invite B -> P1 -> Invite B at 1.2.3.4, Expires=25 -> B - P1 only want this call to be ringing for 25 seconds without final response so it includes a Expires header with value 25 in the outgoing invite to B - B is not powered so nothing will answer any provisional or final response to the invite - Invite is retransmitted several times 25 seconds after sending the first Invite to B, P1 will consider the call as "ring timeout" and will send a 408 to A. On the B side however, how should it do? Timer B has not fired yet on this side, and when reading the client invite transaction state in RFC3261 17.1.1.3 it looks to me as P1 needs to continue to retransmit the Invite to B until Timer B fires, to get to Terminated state. Is this correct? Or is it ok for P1 to stop the retransmit since it has taken down A side of the call there is no point of continue to retransmit (it will be bad if B now answers the reinivte that was sent after Expires timer has triggered on P1) Basicly, what to do when Expires timer triggers before Timer B? If the case was that P1 have got 100 trying from B, P1 would just have sent a Cancl but that is not allowed now when there has been no response at all Appreciate any help on this Regards, // Andreas Send free SMS to your Friends on Mobile from your Yahoo! Messenger. Download Now! http://messenger.yahoo.com/download.php _______________________________________________ Sip-implementors mailing list [email protected] https://lists.cs.columbia.edu/cucslists/listinfo/sip-implementors
