4.2 SIP.INSTANCE Mechanism

This example first shows the generation of the +sip.instance parameter value for a user agent that uses both epid and +sip.instance parameters to identify its endpoint, as described in section 3.3.3.1.

Given an epid parameter value of 01010101, it is first converted to a canonical sequence of octets:

0x30 0x31 0x30 0x31 0x30 0x31 0x30 0x31

Next, the hash of the name-space identifier concatenated with the canonical representation of the epid value is computed:

sha1 (0x03 0xfb 0xac 0xfc 0x73 0x8a 0xef 0x46 0x91 0xb1 0xe5 0xeb 0xee 0xab 0xa4 0xfe 0x30 0x31 0x30 0x31 0x30 0x31 0x30 0x31) = 0xA8 0x82 0x16 0x4B 0x68 0xF9 0x01 0xE7 0x03 0xFC 0x7C 0x67 0x41 0xDC 0x66 0x97 0xB8 0xA1 0xA9 0x3E

Finally, the previous hash is used to obtain the following UUID:

4b1682a8-f968-5701-83fc-7c6741dc6697 

The following REGISTER request demonstrates the use of the +sip.instance parameter in the Contact header field and the epid parameter in the From header field.

REGISTER sip:contoso.com SIP/2.0
From: <sip:alice@contoso.com>;tag=33975904fc;epid=01010101
To: <sip:alice@contoso.com>
Call-ID: 21c7d6e384c249afac26e3f3016140a6
CSeq: 88 REGISTER
Contact: <sip:192.0.2.1:27221; transport=tls; ms-opaque=29c344caf9>; methods="INVITE, MESSAGE, INFO, OPTIONS, BYE, CANCEL, NOTIFY, ACK, REFER, BENOTIFY"; proxy=replace; +sip.instance="<urn:uuid:4b1682a8-f968-5701-83fc-7c6741dc6697>"

Note that other SIP headers in the SIP request are not included.