[SR-Users] new module: number portability functionality

Henning Westerholt henning.westerholt at 1und1.de
Fri Sep 11 11:32:50 CEST 2009


Hi all,

i just commited several parts related to number portability functionality to 
the sr repository. This can be used as a source for routing informations 
related to the ownership of the number.


This functionality consists of several parts.

1. pdb server

This server loads serialized routing data from the disk and stores it in 
memory. It then listens on an UDP Port for requests containing a number and 
returns ID of the carrier which owns the number. This server uses the same 
datastructure as the carrierroute module and provides a really good 
performance. According our experience it usually consumes only a few percent
CPU, even you use only one server for your complete callrouting cluster.

2. pdb connector module

This module connects the sip-router server to the pdb server. It supports 
load-balancing and aggressive timeouts. Normally it not need more than a few 
ms to query the remote server and return the reply to the configuration 
script.

3. pdb tool (data compiler)

This tool provides the functionality to compile the carrier and number 
informations into the binary data format the pdb server expect. It supports 
optimizing the generated trie structure, so that for example the complete 
number to carrier mapping for germany (app. 150 million numbers) don't need 
more than a few hundred megabytes. You can also combine not interesting 
carriers in order to save even more space and get better performance.


You find the module in the modules/pdb directory, the server and tool is in 
utils/pdbt. This directory also contains documentation (README for module, 
utils/pdbt/docs/* for data format and network protocol).


We decided to develop a custom solution as none of the alternatives that were 
evaluated (like enum over DNS, databases e.g. berkeley DB, some commercial 
products) provides the wanted performance, failure tolerance and storage 
efficieny. This module has been in production use since some time, so if you 
find some bugs they are most probably introduced from me because of the sr 
adaption. The original implementation was done from Hardy Kahl.


Best regards,

Henning Westerholt


-- 
Henning Westerholt - Development Consumer Products / Consumer Core
1&1 Internet AG, Ernst-Frey-Str. 9, 76135 Karlsruhe, Germany

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sip-router.org/pipermail/sr-users/attachments/20090911/1abcdbea/attachment-0001.htm>


More information about the sr-users mailing list