Sigrid,
    The request within dialog, at the sender's UA, *becomes* a request outside 
dialog at the receiver i.e. your UA. RFC 3261 does suggest that it is up to the 
implementer to choose whether he/she wants such a feature (i.e dialog recovery 
after crashes, lock-ups, routing through constipated proxies etc). Only *a few* 
of the possible requirements for dialog recovery are *suggested* there. IMHO, 
it is perfectly *okay* for the receiving UA to reject the request with a 481.

As an simple example, let us suppose that your UA locks-up upon receiving a 
re-INVITE (which it shouldn't do in the first place), re-starts and thereafter 
receives an INVITE with both tags. AFAIK, most UAs will reject this request 
with a 481.

Also, you cannot just start a dialog on receiving any INVITE with both tags! 
You may need some form of database mechanism to cache the dialog information 
including state so that you can match the re-INVITE(s) and recover the failed 
dialog(s). Additionally, AFAIK, dialog recovery logic is usually implemented at 
call servers! :D

Regards,
Jerry

> ----- Original Message ----- 
> From: "Sigrid Thijs" <[EMAIL PROTECTED]>
> To: <[email protected]>
> Sent: Friday, November 18, 2005 10:10 PM
> Subject: Re: [Sip-implementors] To-Tag in INVITE request
> 
> 
> > Thanks for all your responses.
> > 
> > The problem is that our UA is being tested for etsi conformance, and one 
> > of the test-cases (SIP_CC_TE_CE_V_016) has the following purpose:
> > "Ensure that the IUT on receipt of an INVITE request with a TAG set on
> > the To header, sends a Success (200 OK) or a provisional (101-199)
> > response including the same URI and the same TAG for the To header."
> > 
> > In this case our UA responds with 481 response (with correct to-tag) as 
> > defined in section 12.2.2.
> > 
> >  From the etsi mailing list, I received the following answer:
> > "the test cases concerns an Invite request and thus is outside of a 
> > dialog! The clause 12.2.2 is only valid after completion of the INVITE 
> > request, and so having received the final answer. Being the initial 
> > request the Test is than outside of dialog and 12.2.2 does not apply."
> > 
> > Reading section 8.1.1.2 of RFC3261 I came across the following:
> > "A request outside of a dialog MUST NOT contain a To tag; the tag in the 
> > To field of a request identifies the peer of the dialog.  Since no 
> > dialog is established, no tag is present."
> > 
> > So I suppose the test-case is wrong.
> > 
> > kind regards,
> > Sigrid Thijs
> > 
> > Daniel-Constantin Mierla wrote:
> > > On 11/18/05 13:37, Sigrid Thijs wrote:
> > > 
> > >> Hi,
> > >>
> > >> when a UA receives an INVITE request with a to-tag it should check if 
> > >> there's a dialog that matches the request. But what if there's no 
> > >> matching dialog? Should the UA treat it as an in-dialog request and 
> > >> respond with an 481 (call leg/transaction does not exist) response.
> > > 
> > > if the To tag is not recognized by the UA, it must respond with 481. If 
> > > the To tag is recognized, the UA may try to restore the dialog. This can 
> > > be the case of a re-INVITE received after UA crashed (See section 12.2.2 
> > > from rfc3261).
> > > 
> > >> Or should the UA treat it as an out-of-dialog request, create a dialog 
> > >> and respond with 1xx reponses?
> > > 
> > > No.Presence of To-tag means that the request is within a dialog.
> > > 
> > > Daniel
> > > 
> > >>
> > >> Kind regards,
> > >> Sigrid Thijs
> > >> _______________________________________________
> > >> Sip-implementors mailing list
> > >> [email protected]
> > >> http://lists.cs.columbia.edu/mailman/listinfo/sip-implementors
> > >>
> > > 
> > > 
> > 
> > 
> >

_______________________________________________
Sip-implementors mailing list
[email protected]
http://lists.cs.columbia.edu/mailman/listinfo/sip-implementors

Reply via email to