Array based zone database with improved performance.
HAT-trie zone database wasn't effective for small number of zones, because hashing presented a constant penalty. New zone database is represented by an array of zones, sorted by number of labels and then lexicographically. Zones are then grouped by the label count into stack, so obviously mismatching names are pruned when searching. Each labelcount group is then search either linearly or using binary search based on the array length.
parent
a432a6cf
No related branches found
No related tags found
Showing
- Knot.files 3 additions, 0 deletionsKnot.files
- src/Makefile.am 2 additions, 0 deletionssrc/Makefile.am
- src/knot/ctl/remote.c 0 additions, 2 deletionssrc/knot/ctl/remote.c
- src/knot/main.c 1 addition, 1 deletionsrc/knot/main.c
- src/knot/server/server.c 0 additions, 5 deletionssrc/knot/server/server.c
- src/knot/server/zones.c 72 additions, 138 deletionssrc/knot/server/zones.c
- src/libknot/nameserver/name-server.c 1 addition, 1 deletionsrc/libknot/nameserver/name-server.c
- src/libknot/zone/zonedb.c 175 additions, 115 deletionssrc/libknot/zone/zonedb.c
- src/libknot/zone/zonedb.h 49 additions, 25 deletionssrc/libknot/zone/zonedb.h
Loading
Please register or sign in to comment