Subject: [Sip] Forking issue

From: "Sarit Galanos" <[email-masked]>
Date: Wed, 10 Mar 2004 10:42:05 +0200

Hi,
An Initial INVITE can be forked by a proxy and reach several user agent servers.
Now let say that the INVITE was forked and reached three UAS.

The first UAS returned 180. The proxy passed this 180 to the client and the client mapped it to the INVITE client transaction. An early dialog was created.

The second UAS also returned 180 with different tag. The proxy passed this 180 to the client and the UAC. This response caused the creation of a new early dialog.

The third server return 400 without a provisional response first with a new tag.

After a while when there was no better response the proxy forwarded the 400 to the client. 
 
My question is: How this 400 should be handled? It does not match any of the early dialogs that we have. 
Should the original Invite transaction send ACK for it? How will it effect the two early dialogs that I do have.

Thanks,
Sarit.

_______________________________________________
Sip mailing list  https://www1.ietf.org/mailman/listinfo/sip
This list is for NEW development of the core SIP Protocol
Use [email-masked] for questions on current sip
Use [email-masked] for new developments on the application of sip

---

From: [email-masked]
Date: Wed, 10 Mar 2004 14:28:42 +0530

Hi Sarit,
      Yes, the client should ACK the 400 and terminate
all its early dialogs. Ref: 13.2.2.3 of RFC: "All early
dialogs are considered terminated upon reception of the
non-2xx final response."

Regards,
Subhash Nayak
Hughes Software Systems
http://www.hssworld.com

             "Sarit Galanos"                                               
             <Sarit@radvision.                                             
             com>                                                       To 
             Sent by:                  <[email-masked]>                      
             [email-masked]                                          cc 
             g                                                             
                                                                   Subject 
                                       [Sip] Forking issue                 
             03/10/04 02:12 PM                                             

Hi,
An Initial INVITE can be forked by a proxy and reach several user agent
servers.
Now let say that the INVITE was forked and reached three UAS.

The first UAS returned 180. The proxy passed this 180 to the client and the
client mapped it to the INVITE client transaction. An early dialog was
created.

The second UAS also returned 180 with different tag. The proxy passed this
180 to the client and the UAC. This response caused the creation of a new
early dialog.

The third server return 400 without a provisional response first with a new
tag.

After a while when there was no better response the proxy forwarded the 400
to the client.

My question is: How this 400 should be handled? It does not match any of
the early dialogs that we have.
Should the original Invite transaction send ACK for it? How will it effect
the two early dialogs that I do have.

Thanks,
Sarit.

---

From: Alex Audu <[email-masked]>
Date: Wed, 10 Mar 2004 12:47:26 -0600

According to section 17.1.3 of rfc 3261,  the responses will have the 
same branch-parameter
in the topmost VIA, but vary in the To tag. The first response received 
that matches the branch
parameter (in the top Via header field), and the method parameter (in 
the CSeq header field)
of the request that created the transaction, will be used. The others 
will be viewed as re-transmits.

Alex.