85d3b34ed2
* It is a trie. The max depth of the trie is the length of the longest prefix. The lookup is O(lookuped_prefix), but as the prefix length is limited, the lookup time is constant. * Each node can hold the entire prefix, has place for the rewrite rule with up to three digits. * A trie with 20k entries will take about 3MB ram. * Filling the trie 100 times takes ~800ms on my i7 laptop * 10.000.000 lookups take 315ms.. (for the same prefix). * 93/99 lines are tested, 6/6 functions are tested, 49 of 54 branches are tested. Only memory allocation failures are not covered * A late addition is to handle the '+' sign and to increase the number of chars in the rewrite prefix. The timing/line coverage has not been updated after this change. |
||
---|---|---|
.. | ||
contrib | ||
doc | ||
include | ||
src | ||
tests | ||
tools | ||
.gitignore | ||
AUTHORS | ||
COPYING | ||
Makefile.am | ||
README | ||
configure.ac | ||
git-version-gen | ||
openbsc.pc.in | ||
osmoappdesc.py |
README
About OpenBSC ============= OpenBSC is a minimalistic implementation of the GSM Network, with particular emphasis on the functionality typically provided by the BSC, MSC, HLR, VLR and SMSC. Its currently supported interfaces towards the BTS are: * Classic A-bis over E1 using a mISDN based E1 interface. In other words, you can connect existing GSM Base Transceiver Station (BTS) through E1 to OpenBSC. So far, we have only tested the Siemens BS-11 Test reports with other BTS are much appreciated! * A-bis over IP as used by the ip.access nanoBTS product family You can find the project documentation at http://openbsc.gnumonks.org/ This project is still in its early days, and there are lots of areas where it doesn't behave as per GSM spec. Harald Welte <laforge@gnumonks.org> libosmocore =========== Please note that as of March 2010, OpenBSC has a dependency to a library called "libosmocore". You can obtain that library from git://git.osmocom.org/libosmocore.git