|
@@ -10,6 +10,12 @@ Richard Good
|
|
|
|
|
|
Smile Communications
|
|
|
|
|
|
+Edited by
|
|
|
+
|
|
|
+Carsten Bock
|
|
|
+
|
|
|
+ ng-voice GmbH
|
|
|
+
|
|
|
Copyright © 2012 Smile Communications
|
|
|
__________________________________________________________________
|
|
|
|
|
@@ -29,8 +35,7 @@ Richard Good
|
|
|
3.2. timer_interval (int)
|
|
|
3.3. db_url (int)
|
|
|
3.4. db_mode (int)
|
|
|
- 3.5. hashing_type (int)
|
|
|
- 3.6. match_contact_host_port (int)
|
|
|
+ 3.5. match_contact_host_port (int)
|
|
|
|
|
|
4. RPC Commands
|
|
|
|
|
@@ -50,8 +55,7 @@ Richard Good
|
|
|
1.2. Set timer_interval parameter
|
|
|
1.3. Set db_url parameter
|
|
|
1.4. Set db_mode parameter
|
|
|
- 1.5. Set hashing_type parameter
|
|
|
- 1.6. Set match_contact_host_port parameter
|
|
|
+ 1.5. Set match_contact_host_port parameter
|
|
|
|
|
|
Chapter 1. Admin Guide
|
|
|
|
|
@@ -69,8 +73,7 @@ Chapter 1. Admin Guide
|
|
|
3.2. timer_interval (int)
|
|
|
3.3. db_url (int)
|
|
|
3.4. db_mode (int)
|
|
|
- 3.5. hashing_type (int)
|
|
|
- 3.6. match_contact_host_port (int)
|
|
|
+ 3.5. match_contact_host_port (int)
|
|
|
|
|
|
4. RPC Commands
|
|
|
|
|
@@ -120,8 +123,7 @@ Chapter 1. Admin Guide
|
|
|
3.2. timer_interval (int)
|
|
|
3.3. db_url (int)
|
|
|
3.4. db_mode (int)
|
|
|
- 3.5. hashing_type (int)
|
|
|
- 3.6. match_contact_host_port (int)
|
|
|
+ 3.5. match_contact_host_port (int)
|
|
|
|
|
|
3.1. hash_size (int)
|
|
|
|
|
@@ -179,45 +181,7 @@ modparam("ims_usrloc_pcscf", "db_url",
|
|
|
modparam("ims_usrloc_pcscf", "db_mode", 1)
|
|
|
...
|
|
|
|
|
|
-3.5. hashing_type (int)
|
|
|
-
|
|
|
- This is used to specify how contacts are stored in the internal memory
|
|
|
- hashing structures. This is an important parameter, not only for
|
|
|
- efficiency, but also for functionality. IMS can get rather confusing
|
|
|
- when it comes to contacts, SIP URIs and Implicitly registered SIP URIs
|
|
|
- (IMPUs). Originally the hash for storage of contacts was performed over
|
|
|
- the full contact URI viz ([email protected]:12345;user=phone). This
|
|
|
- scheme is useful (from a performance perspective) in circumstances
|
|
|
- where you have many SIP URIs being registered from the same host/port.
|
|
|
- However, this causes problems in IMS environments where an implicit
|
|
|
- registration set of IMPU's is implicitly registered on behalf of a UA
|
|
|
- when it registers. This is because the implicit contact being used in
|
|
|
- subsequent requests could use a different SIP URI, for example
|
|
|
- [email protected]:12345. In this case the P-CSCF would not be able to
|
|
|
- retrieve the initial contact as the hash over the different contact
|
|
|
- would in most cases be different. It was therefore proposed to hash the
|
|
|
- contact by IP:PORT only, effectively identifying a "device" - assuming
|
|
|
- a 1-1 relationship between an IP:PORT pair. In our example, we would
|
|
|
- get to the same hash slot using the second SIP URI as we got using the
|
|
|
- initial registered SIP URI. Within this slot we can now search for the
|
|
|
- appropriate contact (remember there are still collision possibilities)
|
|
|
- and then traverse through the linked list if iumplcit IMPUs to find the
|
|
|
- contact currently being used. Of course if it is not found, then you
|
|
|
- can deny the request.
|
|
|
- * 0 - This uses the original hash over AOR method. By default we are
|
|
|
- backwards compatible...
|
|
|
- * 1 - Use the newer hash over the Host from Contact-Header.
|
|
|
- * 2 - Use the newer hash over the source-IP from where the request
|
|
|
- was received (useful for NAT-Scenarios)
|
|
|
-
|
|
|
- Default value is 0.
|
|
|
-
|
|
|
- Example 1.5. Set hashing_type parameter
|
|
|
-...
|
|
|
-modparam("ims_usrloc_pcscf", "hashing_type", 1)
|
|
|
-...
|
|
|
-
|
|
|
-3.6. match_contact_host_port (int)
|
|
|
+3.5. match_contact_host_port (int)
|
|
|
|
|
|
If set to 1 (default), the contact is matched using only host and port
|
|
|
in the contact URI.
|
|
@@ -227,7 +191,7 @@ modparam("ims_usrloc_pcscf", "hashing_type", 1)
|
|
|
|
|
|
Default value is 1.
|
|
|
|
|
|
- Example 1.6. Set match_contact_host_port parameter
|
|
|
+ Example 1.5. Set match_contact_host_port parameter
|
|
|
...
|
|
|
modparam("ims_usrloc_pcscf", "match_contact_host_port", 0)
|
|
|
...
|