[SIPForum-discussion] Regarding Call-ID in REGISTER method

Paul Kyzivat pkyzivat at alum.mit.edu
Sat Jul 9 21:21:56 UTC 2016


Sam,

On 7/9/16 6:05 AM, Sam Kirubakaran L wrote:
> Hi,
>
>
> I have a doubt regarding call id in sip. In RFC 3261,
>
> "It SHOULD be the same
>    in each registration from a UA" call id should be same for each registration.

While it says this, with "vanilla" 3261 it doesn't make any difference. 
For dialogs, the callid is (part of) the key to the persistent state of 
the dialog. You can consider REGISTER as establishing a sort of 
pseudo-dialog, but there isn't any dialog-specific state. (The 
expiration of the registration doesn't cause the registered contact URI 
to be removed.)

But there are cases when it really does matter. Specifically, look at 
RFC5627. Temporary GRUUs are tied to a particular registration and 
depend on the Call-ID.

> But if the same UA is registering to diff Registrars, should the call id be same or different?

It *ought* to be different. (It ought to be assigned randomly, just as 
it is for a new dialog.)

But using the same call-id with different registrars will not normally 
cause any problem. You might have more trouble if you used the same 
call-id from two different UAs to register with the *same* registrar. In 
principle the registrar might mix up the temp gruu management between 
them. (Dialogs are keyed by dialog-id, which is a combination of call-id 
with from-tag and to-tag, so there would be no confusion with dialogs, 
but 5726 doesn't use dialog-id.)

So bottom line is be safe and generate a new unique call-id when you 
first register, and then keep reusing it every time you refresh that 
registration.

> If same, then how come the UA will differentiate the responses?

In all cases, responses are tied back to the corresponding request by 
the branch parameter in the Via.

	Thanks,
	Paul




More information about the discussion mailing list