diff --git a/src/modules/ims_usrloc_pcscf/doc/ims_usrloc_pcscf.xml b/src/modules/ims_usrloc_pcscf/doc/ims_usrloc_pcscf.xml index 1e71c904512..a018a955549 100644 --- a/src/modules/ims_usrloc_pcscf/doc/ims_usrloc_pcscf.xml +++ b/src/modules/ims_usrloc_pcscf/doc/ims_usrloc_pcscf.xml @@ -39,6 +39,20 @@ richard.good@smilecoms.com + + + Carsten + + Bock + + + ng-voice GmbH + + +
+ carsten@ng-voice.com +
+
diff --git a/src/modules/ims_usrloc_pcscf/doc/ims_usrloc_pcscf_admin.xml b/src/modules/ims_usrloc_pcscf/doc/ims_usrloc_pcscf_admin.xml index 1df3e4d19c3..e98bbaf506f 100644 --- a/src/modules/ims_usrloc_pcscf/doc/ims_usrloc_pcscf_admin.xml +++ b/src/modules/ims_usrloc_pcscf/doc/ims_usrloc_pcscf_admin.xml @@ -156,59 +156,6 @@ modparam("ims_usrloc_pcscf", "db_mode", 1) -
- 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 (27821234567@10.0.0.10: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 - john.doe@10.0.0.10: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. - - - Set hashing_type parameter - - ... -modparam("ims_usrloc_pcscf", "hashing_type", 1) -... - - -
-
match_contact_host_port (int) diff --git a/src/modules/ims_usrloc_pcscf/ims_usrloc_pcscf_mod.c b/src/modules/ims_usrloc_pcscf/ims_usrloc_pcscf_mod.c index 995417995a7..97c477e58e0 100644 --- a/src/modules/ims_usrloc_pcscf/ims_usrloc_pcscf_mod.c +++ b/src/modules/ims_usrloc_pcscf/ims_usrloc_pcscf_mod.c @@ -84,8 +84,6 @@ str db_url = str_init(DEFAULT_DB_URL); /*!< Database URL */ int timer_interval = 60; /*!< Timer interval in seconds */ int db_mode = 0; /*!< Database sync scheme: 0-no db, 1-write through, 2-write back, 3-only db */ int ul_fetch_rows = 2000; -int hashing_type = 0; /*!< has type for storing P-CSCF contacts - 0 - use full contact AOR, 1 - use IP:PORT only */ - int match_contact_host_port = 1; /*!< Should we match contact just based on rui host and port*/ db1_con_t* ul_dbh = 0; @@ -111,7 +109,6 @@ static param_export_t params[] = { {"db_url", PARAM_STR, &db_url }, {"timer_interval", INT_PARAM, &timer_interval }, {"db_mode", INT_PARAM, &db_mode }, - {"hashing_type", INT_PARAM, &hashing_type }, {"match_contact_host_port", INT_PARAM, &match_contact_host_port }, {"expires_grace", INT_PARAM, &expires_grace }, diff --git a/src/modules/ims_usrloc_pcscf/pcontact.c b/src/modules/ims_usrloc_pcscf/pcontact.c index fda79357f98..fec8be5f60d 100644 --- a/src/modules/ims_usrloc_pcscf/pcontact.c +++ b/src/modules/ims_usrloc_pcscf/pcontact.c @@ -59,7 +59,6 @@ #include "../../core/parser/parse_uri.h" extern int db_mode; -extern int hashing_type; extern int expires_grace; diff --git a/src/modules/ims_usrloc_pcscf/udomain.c b/src/modules/ims_usrloc_pcscf/udomain.c index 8b5c2d562ad..ae4aac4c42d 100644 --- a/src/modules/ims_usrloc_pcscf/udomain.c +++ b/src/modules/ims_usrloc_pcscf/udomain.c @@ -64,7 +64,6 @@ extern int db_mode; extern int db_mode_ext; -extern unsigned int hashing_type; extern int match_contact_host_port; #ifdef STATISTICS diff --git a/src/modules/ims_usrloc_pcscf/usrloc.c b/src/modules/ims_usrloc_pcscf/usrloc.c index a716438a73e..fb9cb38e1b8 100644 --- a/src/modules/ims_usrloc_pcscf/usrloc.c +++ b/src/modules/ims_usrloc_pcscf/usrloc.c @@ -52,7 +52,6 @@ #include "../../core/parser/parse_uri.h" extern unsigned int init_flag; -extern int hashing_type; int bind_usrloc(usrloc_api_t* api) { if (!api) {