Re: Transaction timeouts
"M. Rangnathan" <[email protected]> Mon, 26 Feb 2007 18:25:23 -0500
| Newsgroups | gmane.comp.voip.nist-sip |
|---|---|
| Message-ID | <[email protected]> |
Yes that is correct and that is a good observation. However, if we can come up with a stack config parameter to support this behavior that might be possible ( at the cost of scalability ). The default would work the way it currently does (i.e. single socket). Ranga Jeroen van Bemmel wrote: > IIRC you can only learn about ICMP errors if you use a connected UDP > socket (in Java at least). Unfortunately that means you would need to > create a socket for each peer, which scales poorly. > > Regards, > Jeroen > > M. Rangnathan wrote: > >> Andrew T Gin wrote: >> >>> Hi >>> >>>> 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. >>> >>> >>> I'm interested in the reasoning behind this :) >> >> >> >> We did not think it was necessary. What is the use case? On the server >> side, if you want to remain true to RFC 3216, the server retransmits >> till ACK >> >>>>> 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. >>> >>> >>> So it doesn't appear to be a current way to do it? I was more >>> interested in whether this was possible with the current >>> implementation. Ill just try work around it :D THanks for your >>> efforts! >> >> >> >> No there is not but there should be. Its an important feature that is >> missing. Figure out how to read ICMP messages from the UDP socket >> imbedded in UDPMessageChannel. If needed, we can make a 1.5 only >> feature that allows you to inform the application asynchronously when >> an ICMP notification comes along. If you find a work around , share >> it here and we can figure out how to make it work in the stack. >> >>> >>> Currently, TCP 'io exceptions' do not go through processIOException; >>> they are caught as a SIP exception in the try catch block of each >>> method. So if the UDP "io exception" implemented should they be >>> treated the same? >> >> >> >> Are you using JSIP 1.2 ? If so, IO Exceptions should be reported as >> IOExceptions. If not there is a bug. >> >> >>>> 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). >>> >>> >>> So this is a 'requirement' of SIP? I guess so from the RFC. Again >>> I'll work around this. THanks again! >>> >>>>> >>>>> 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. :-) >>> >>> >>> What I meant here was that this Jain-SIP project is practically a >>> model of how all projects should be! Active support, quick replies, a >>> working implementation, and most importantly, comprehensive >>> documentation! >> >> >> >> Ah! I should put this up on the user experiences page. :-) >> >>> >>> Thanks for all your help so far! I'll make sure to acknowledge you >>> all in my thesis :) >> >> >> >> Thanks. Keep hacking till you get there. :-) >> >> Ranga >> >>> Andrew >> > > -- 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!