>-----Original Message----- >From: [EMAIL PROTECTED] >[mailto:[EMAIL PROTECTED] On Behalf Of >John Williams >Sent: Monday, February 26, 2007 7:32 PM >To: [email protected] >Subject: [Sip-implementors] ACK retrans in UAC > >Hello, > >I have several questions about retransmissions in a UAC, >especially ACK retransmission : > >1. When an ACK request must be retransmitted ? and how ? > >I've been looking in RFC 3261 in 17.1.1.3 for 3xx/6xx ACK and in >13.2.2.4 for 2xx ACK. ACK construction is detailed but I did >not found the retransmission process. In 13.2.2.4 : > > The ACK MUST be passed to the client transport every time a > retransmission of the 2xx final response that triggered the ACK > arrives. > >Ok, but this is not really an ACK retransmission as it is >triggered by the arrival of another 2xx response. Yes, ACK is sent when UAC gets a retransmitted successful (2xx) or an error response (4xx/5xx/6xx), since there is no response to ACK.
> > The UAC core considers the INVITE transaction completed >64*T1 seconds > after the reception of the first 2xx response. At this >point all the > early dialogs that have not transitioned to established dialogs are > terminated. Once the INVITE transaction is considered completed by > the UAC core, no more new 2xx responses are expected to arrive. > >Ok, that says when ACK retransmissions must be stopped, but >not when (and how) retransmissions are triggered. I think they >can be triggered like regular requests (exponential T1 timer), >but there is no response to stop ACK retransmission... There >must be something I misunderstood. > >2. Is it necessary to retransmit an ACK if a transport error >occured while sending the first ACK ? No, I think UAC should disconnect the call. I think the standard mentions about sending a Bye to the UAS to disconnect the dialog, but if there was a transport error while sending ACK, BYE may also fail. > >That would be the trigger I am looking for. > >3. More generally, is it necessary to retransmit a request if >a transport error occured (creating a new transport) ? > >I think it is not necessary, but I am not sure. I do not think trying an alternate transport type will help if initial one fails. The UAC should alternate alternate addresses if available, for example by doing a dns lookup if server address is a hostname and cycling through the resolved addresses till it gets a successful response or list is exhausted. Sanjay > > >Thanks, > >john > >_______________________________________________ >Sip-implementors mailing list >[email protected] >https://lists.cs.columbia.edu/cucslists/listinfo/sip-implementors > _______________________________________________ Sip-implementors mailing list [email protected] https://lists.cs.columbia.edu/cucslists/listinfo/sip-implementors
