2008/9/15, krishna kalluri <[EMAIL PROTECTED]>:
> Hi,
>
>  I have a question related to the usage of Call-Id and CSeq header fields.
>
>  I take the examples in section 2 of RFC 3665 (
>  http://tools.ietf.org/html/rfc3665) and I consider the examples as a
>  sequence of messages exchanged by a UE. So different messages in section 2.1
>  through 2.4 are exchanged one after the other (This may not be what RFC 3665
>  wants to show and thats fine with me)

I think that RFC 3665 shows a correct sequential SIP flow. Anyway it
could use different Call-ID/CSeq (but the flow is valid).


>  1) 2.2 Update of a contact List (RFC 3665) : The CSeq number is same as in
>  example 2.1. If I understand this is fine as UE is adding a new contact
>  binding.

I think so since:

  10.3 (7):

         Each binding record records the Call-ID and CSeq values from
         the request.

This is: Call-ID and CSeq are correlated for *each* binding. No matter
if same Call-ID/CSeq is used for a different binding.


>  If I make an example of refreshing contact list, does CSeq MUST be higher
>  than the previously used CSeq? I guess so from Step 7 of Section 10.3 of RFC
>  3261.

I think so:

         If they (Call-ID) are
         the same, the registrar compares the CSeq value.  If the value
         is higher than that of the existing binding, it MUST update or
         remove the binding as above.  If not, the update MUST be
         aborted and the request fails.



>  2) 2.4 Cancellation of Registration (RFC 3665): In this case CSeq number
>  MUST be  greater than the one used in previous messages. This is from my
>  interpretation from Step 6 of Section 10.3 of RFC 3261.

But that is needed just if "Contact" matches a binding, but note that
the "Contact" in 2.4 is:
  Contact: *


>  3) Does a UE use same Call-Id value in all Register messages? or is there
>  any case where it has to change Call-Id value?

I think a UAC has no reason to use a new Call-ID. But this can occur
due to UAC crash (for example) so it's needed an algorith to handle
this case. If a new REGISTER arrives to the registrar matching a
binding but with different Call-ID then the previous binding is
deleted (this can occurs because the client crashed).


Regards.





-- 
Iñaki Baz Castillo
<[EMAIL PROTECTED]>

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

Reply via email to