From: "Attila Sipos" <[EMAIL PROTECTED]>

   Now I have some people who believe that since there
   is no response, the UserAgent1 should then try
   ----BYE [EMAIL PROTECTED]>

   But I believe that they are wrong.

   Who is right?

You are right.

There are several aspects of the situation.

One is that 

         <----------302 with Contact: <sip:[EMAIL PROTECTED]>;<sip:[EMAIL 
PROTECTED]>

is incorrect; multiple contacts in that header are separated by COMMA,
not SEMI -- see the grammar in RFC 3261 section 25.1.  A header
"Contact: <sip:[EMAIL PROTECTED]>;<sip:[EMAIL PROTECTED]>" is syntactically 
incorrect.

In regard to the handling of the 302, its significance extends only to
the processing of the INVITE transaction.  The BYE that UserAgent1
sends is specific to a single dialog, which is created by a single 200
response to the INVITE, and the BYE is directed to the Contact
specified in that 200 response.  So as you have constructed the
example, there is no reason to send the BYE to 2.2.2.2, as 2.2.2.2 has
no relationship to the dialog that was created by the 200.

In regard to having one proxy be a backup if another proxy fails
during a dialog, that can be done by having a single DNS name (e.g.,
foo.example.com) which through the various DNS mechanisms translates
to more than one address (e.g., 1.1.1.1 and 2.2.2.2).  As long as the
DNS name (not an address) is placed in the Contact or Record-Route
header which puts that name into the route set of the dialog, an agent
attempting to send a request or response onward is required to attempt
to contact all addresses for that DNS name in order to deliver the
message.

Dale
_______________________________________________
Sip-implementors mailing list
[email protected]
https://lists.cs.columbia.edu/cucslists/listinfo/sip-implementors

Reply via email to