Re: ACK sent too soon?
Becky McElroy <[email protected]>
| Newsgroups | gmane.comp.voip.nist-sip |
|---|---|
| Message-ID | <[email protected]> |
Jeroen, Ranga, Thanks for this info - I should be able to reproduce it myself now. I think SipUnit is working off the first dialog that didn't get the to-tag so let me modify and try this out. If it doesn't work out I'll do as you suggested Ranga. Thanks again- Becky Jeroen van Bemmel wrote: > Becky, > > Your problem is that the 180 response is missing a to-tag. The 200 has > one, so the caller UAC sees this as 2 distinct dialogs. > > The JAIN 1.1 TCK had a bug in Dialog testing that produced exactly the > same behavior. Basically you're trying to invoke createACK on the > dialog that only received 180, and that one is still in EARLY state > > Regards, > > Jeroen > > ----- Original Message ----- From: "M. Ranganathan" <[email protected]> > To: "Becky McElroy" <[email protected]> > Cc: <[email protected]> > Sent: Tuesday, September 05, 2006 5:41 PM > Subject: Re: [nist-sip] ACK sent too soon? > > >> Not immediately obvious why this is happening. May I request you to cvs >> update and try to reproduce this bug on the current source. Please send >> me a debug log so I can investigate (if you can reproduce the problem >> with debugging enabled). A small stand-alone example to illustrate the >> issue would be terrific. >> >> Thanks. >> >> Ranga >> >> >> On Tue, 2006-09-05 at 09:34 -0400, Becky McElroy wrote: >> >>> Hi - >>> >>> There seems to be an interesting behavior with the SIP stack where if >>> the application >>> sends an ACK too quickly (upon getting back 200-OK after sending >>> INVITE), it >>> seems the client side dialog state hasn't been updated yet from >>> EARLY to >>> CONFIRMED >>> as a result of the 200-OK, so the ACK sending attempt gets this error: >>> >>> javax.sip.SipException: Bad dialog state Early Dialog >>> >>> The application code that executes upon reception of the 200-OK looks >>> like this: >>> >>> Thread.sleep(100); >>> Request ack = dialog.createRequest(Request.ACK); >>> parent.addAuthorizations(callId.getCallId(), ack); >>> dialog.sendAck(ack); >>> >>> For the scenario where the error happens, the trace is below - if the >>> sleep timer is changed from 100 to 1000 the error didn't happen. >>> >>> Any hints appreciated! >>> Thanks, >>> Becky >>> >>> PS. The nist stack (latest 1.2) used here was a snapshot from early >>> June >>> timeframe. >>> >>> -------------------------------------------------------------------- >>> >>> <!-- Use the Trace Viewer in src/tools/tracesviewer to view this trace >>> Here are the stack configuration properties >>> javax.sip.IP_ADDRESS= 172.16.40.38 >>> javax.sip.STACK_NAME= testAgent >>> javax.sip.ROUTER_PATH= null >>> javax.sip.OUTBOUND_PROXY= null >>> javax.sip.RETRANSMISSION_FILTER= null >>> --> >>> <description >>> logDescription="testAgent" >>> name="172.16.40.38" /> >>> >>> <message >>> from="172.16.40.38:5060" >>> to="172.16.100.164:5060" >>> time="1157425082618" >>> isSender="true" >>> transactionId="z9hg4bke489cea93bff84317a12ef358d20c0dd" >>> callId="[email protected]" >>> <mailto:[email protected]%22>; >>> firstLine="INVITE sip:[email protected] <mailto:[email protected]> >>> SIP/2.0" >>> debugLine="42" >>> > >>> <![CDATA[INVITE sip:[email protected] <mailto:[email protected]> >>> SIP/2.0 >>> Call-ID: [email protected] >>> <mailto:[email protected]> >>> CSeq: 1 INVITE >>> From: <sip:[email protected]>;tag=1968514642 >>> <mailto:[email protected]%3E;tag=1968514642> >>> To: <sip:[email protected] <mailto:[email protected]>> >>> Via: SIP/2.0/UDP >>> 172.16.40.38:5060;branch=z9hG4bKe489cea93bff84317a12ef358d20c0dd >>> Max-Forwards: 70 >>> Contact: <sip:[email protected]:5060;transport=udp;lr >>> <mailto:[email protected]:5060;transport=udp;lr>> >>> Route: <sip:172.16.100.164:5060;transport=tcp;lr> >>> Content-Length: 0 >>> >>> ]]> >>> </message> >>> >>> <message >>> from="172.16.100.164:1314" >>> to="172.16.40.38:5060" >>> time="1157425082712" >>> isSender="false" >>> statusMessage="before processing" >>> transactionId="z9hg4bke489cea93bff84317a12ef358d20c0dd" >>> firstLine="SIP/2.0 100 Trying" >>> callId="[email protected]" >>> <mailto:[email protected]%22>; >>> debugLine="83" >>> > >>> <![CDATA[SIP/2.0 100 Trying >>> Via: SIP/2.0/UDP >>> 172.16.40.38:5060;branch=z9hG4bKe489cea93bff84317a12ef358d20c0dd >>> From: <sip:[email protected]>;tag=1968514642 >>> <mailto:[email protected]%3E;tag=1968514642> >>> To: <sip:[email protected] <mailto:[email protected]>> >>> Call-ID: [email protected] >>> <mailto:[email protected]> >>> CSeq: 1 INVITE >>> Contact: <sip:172.16.100.164;transport=udp> >>> Content-Length: 0 >>> >>> ]]> >>> </message> >>> >>> <message >>> from="172.16.100.164:1314" >>> to="172.16.40.38:5060" >>> time="1157425082727" >>> isSender="false" >>> statusMessage="before processing" >>> transactionId="z9hg4bke489cea93bff84317a12ef358d20c0dd" >>> firstLine="SIP/2.0 180 Ringing" >>> callId="[email protected]" >>> <mailto:[email protected]%22>; >>> debugLine="125" >>> > >>> <![CDATA[SIP/2.0 180 Ringing >>> Via: SIP/2.0/UDP >>> 172.16.40.38:5060;branch=z9hG4bKe489cea93bff84317a12ef358d20c0dd >>> From: <sip:[email protected]>;tag=1968514642 >>> <mailto:[email protected]%3E;tag=1968514642> >>> To: <sip:[email protected] <mailto:[email protected]>> >>> Call-ID: [email protected] >>> <mailto:[email protected]> >>> CSeq: 1 INVITE >>> Contact: <sip:172.16.100.164;transport=udp> >>> Content-Length: 0 >>> >>> ]]> >>> </message> >>> >>> <message >>> from="172.16.100.164:1314" >>> to="172.16.40.38:5060" >>> time="1157425083087" >>> isSender="false" >>> statusMessage="before processing" >>> transactionId="z9hg4bke489cea93bff84317a12ef358d20c0dd" >>> firstLine="SIP/2.0 200 Ok" >>> callId="[email protected]" >>> <mailto:[email protected]%22>; >>> debugLine="190" >>> > >>> <![CDATA[SIP/2.0 200 Ok >>> Via: SIP/2.0/UDP >>> 172.16.40.38:5060;branch=z9hG4bKe489cea93bff84317a12ef358d20c0dd >>> From: <sip:[email protected]>;tag=1968514642 >>> <mailto:[email protected]%3E;tag=1968514642> >>> To: <sip:[email protected]>;tag=ds-3106-2cb5 >>> <mailto:[email protected]%3E;tag=ds-3106-2cb5> >>> Call-ID: [email protected] >>> <mailto:[email protected]> >>> CSeq: 1 INVITE >>> Content-Type: application/sdp >>> Contact: <sip:[email protected]:5060;transport=udp >>> <mailto:[email protected]:5060;transport=udp>> >>> Allow: INVITE,ACK,BYE,CANCEL,NOTIFY,INFO,OPTIONS >>> Supported: >>> User-Agent: Nuance/-b058-win2k >>> Content-Length: 201 >>> >>> ]]> >>> </message> >>> _______________________________________________ >>> nist-sip mailing list >>> [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 > > >