Re: Transaction timeouts
"M. Rangnathan" <[email protected]> Mon, 26 Feb 2007 16:31:13 -0500
| Newsgroups | gmane.comp.voip.nist-sip |
|---|---|
| Message-ID | <[email protected]> |
Amos K wrote: > Hi Andrew, > > Pls let me know if you ever find solutions to these problems. I had > the same problems last year and searched for answers but was unable to > get one. Will try to address this. > I am presently using my application like this since the "destination > unreachable" rarely occur in my application. > > Thanks. > > > Hi Andrew, > > Pls let me know if you ever find solutions to these problems. I had > the same problems last year and searched for answers but was unable to > get one. I am presently using my application > > On 2/25/07, *Andrew T Gin* <[email protected] > <mailto:[email protected]>> wrote: > > Hi > This question may have been answered before, but I cant seem to be > able > to find a search function; "google site:" does not work as a > password is > required to access the archives! Is a search function available? > > I have two questions: > 1. When using UDP, is it possible for the application to be notified > when retransmissions are sent? I understand that there is a > Timeout.RETRANSMIT timeout type, however my > processTimeout(TimeoutEvent > You can be informed of retransmission alerts on the Server transaction. See ServerTransaction.enableRetransmissionAlerts. On the client side of the transaction, there is no retransmission alert. > timeOutEvent) method only ever receives Timeout.TRANSACTION timeout > events. How do I make it so my application is notified of retransmit > timeouts? Are they received at processTimeout? > > When the destination host is unreachable, the application gets ICMP > unreachable replies to each UDP retransmission. Is it possible to be > notified *immediately* when the destination is unreachable? > Let me think of this a bit. I could use the public void processIOException(IOExceptionEvent exceptionEvent) event notification mechansm for this. How does the UDP socket see this. I think I would have to use SOCTL to enable ICMP packets to be seen right ?. Is the feature available on J1.42 ? If not it becomes a J 5 only thing which I want to avoid if possible. I will take a look to see if I can hook this in but some hacking from you would speed the process. See if you can hack UDPMessageChannel to get notifications for ICMP packets. Call a dummy method when you get the necessary notificaiton. I'll take it from there. > ie Do I > *have* to wait the full t1*64 before being notified that something > is wrong? > > 2. When using TCP, processTimeout(TimeoutEvent timeOutEvent) is called > after 32 seconds (assuming T1 is 500ms). In RFC3261, it states (on > page > 125): > > "The value of 64*T1 is equal to the amount of time required to send > seven requests in the case of an unreliable transport." > > In the case of TCP, a reliable transport, is it necessary to wait the > full 32 seconds? Is there a way to be notified immediately that > the host > on the otherside is not responding instead of waiting 32 seconds? > That would be in violation of the SIP transaction state machine - something that I want to avoid. You can try implementing the setBaseTimer on SipProvider ( currently disabled -- throws UnsupportedOperation). > > Thanks for your help, I'm usually a bit sceptical of mailing lists, as > questions usually go unanswered, so even if I happen to find someone > else with the exact same problem, sometimes there are no replies! > Have faith. :-) Ranga > > Thanks > Andrew > _______________________________________________ > nist-sip mailing list > [email protected] <mailto:[email protected]> > http://www-x.antd.nist.gov/mailman/listinfo/nist-sip > > >------------------------------------------------------------------------ > >_______________________________________________ >nist-sip mailing list >[email protected] >http://www-x.antd.nist.gov/mailman/listinfo/nist-sip > > -- M. Ranganathan Advanced Networking Technologies Division, National Institute of Standards and Technology (NIST), 100 Bureau Drive, Stop 8920, Gaithersburg, MD 20899. tel:301 975 3664 , fax:301 590 0932 http://w3.antd.nist.gov/ Advanced Networking Technologies For the People!