_
Home
Features
News
Download
Roadmap
Management
Contributions
License
Links
Contact Us
Related
EVENTS
VoIP Events
Past Events
SUPPORT
Documentation
Wiki
Mailing lists
Install
Forum
VoIP Info
IRC Channel
DEVELOPMENT
SVN
Tracker
Project Page
Doxygen

Carrierroute Extensions In Kamailio 1.5 Print
Written by Daniel-Constantin Mierla   

2008-11-19
- a bunch of extensions introduced in carrierroute module...

Courtesy of Henning Westerholt and 1&1, carrierroute module got a bunch of new features that makes the module more flexible than ever and also fixed a few annoyances in the module usage:

1. Improved routing data loading

The module supports now the partioned loading of routing data during startup and reloads. In the past when one want to load big route set it was necessary to increase the private memory pool size, as the data was stored temporarily there. Now this is not necessary anymore, its possible to load route sets with e.g. 400.000 rules in the standard (private memory) configuration.

2. Efficient matching of domains and carriers

In the old implementation a simple linear list was used, this was replaced with a fast binary search function. The module can now look up carrier and domains in most cases with O(log n), which makes it more scalable when a big number of carriers and/ or domains are involved. Only when a dynamic string is used in the config script a full list search is needed.

3. Support for non-numerical prefix matching

Carrierroute now supports also the prefix matching with non-numerical characters. Its possible to use the entire standard ascii charset for route matching. This is configurable with a module parameter, the default implementation is still the know digit matching method. Please keep in mind that memory demands will increase somewhat when the extended matching is used. This additonal flexibility will probably bring a small overhead with it, as some additional logic is involved during the routing deciscion. But this will not be noticable on today standard servers.

4. Extensive refactoring and cleanups

Restructured and refactored the code in most areas, to make the module implementation and structure more understandable, maintainable and extensible. Replaced the usage of custom datatypes and fixup functions with the standard core implementation, switched to the autogenerated DB interface and use now standard glibc functions e.g. for the list search. Changed certain structures to not store the full name of carriers and domains in memory to save space and got finally rid of this mismatch between internal and external carrier ID.

More details about the new implementation can be found in the documentation at:

http://www.kamailio.org/docs/modules/devel/carrierroute.html


Porting hints, e.g. for the new database structure are provided at:

http://www.kamailio.org/dokuwiki/doku.php/install:1.4.x-to-1.5.0

FLASHNEWS

2010-03-03
- Present and Future of SIP Routing, London, UK, March 9, 2010 - dedicated event focused on Kamailio (OpenSER) and SIP Router projects

Read more...

2010-03-01
- meet Kamailio (OpenSER) and SIP Router representatives at VoIP events in March 2010 - Hannover, London and Berlin

Read more...

2010-02-23
- many new features made their way in development branch during last month, since Kamailio 3.0.0 release

Read more...

2010-02-02
- Kamailio v1.5.4 is out - a minor release of the branch 1.5, including fixes since v1.5.3 - configuration file and database compatibility is preserved...

Read more...

2010-02-02
- Kamailio v1.4.5 is out - a minor release of the branch 1.4, including fixes since v1.4.4 - configuration file and database compatibility is preserved...

Read more...

2010-01-29
- presentation and social networking meeting at Fosdem 2010, Feb 6-7, Brussels

Read more...

2010-01-18
- Siremis v1.0.0 is out - web management interface for Kamailio (OpenSER) 3.0.0

Read more...

 


© .::Kamailio Project::.