Knot DNS merge requestshttps://gitlab.nic.cz/knot/knot-dns/-/merge_requests2022-12-05T15:42:18+01:00https://gitlab.nic.cz/knot/knot-dns/-/merge_requests/1499Reload changed catalog members only (reuse otherwise)2022-12-05T15:42:18+01:00Daniel SalzmanReload changed catalog members only (reuse otherwise)https://gitlab.nic.cz/knot/knot-dns/-/merge_requests/1427RRSIG: allow timestamps past year 21062022-03-04T14:42:15+01:00Libor PeltanRRSIG: allow timestamps past year 21063.2Daniel SalzmanDaniel Salzmanhttps://gitlab.nic.cz/knot/knot-dns/-/merge_requests/1412journal: compute serialized changeset directly from bi-nodes...2022-01-06T19:43:25+01:00Libor Peltanjournal: compute serialized changeset directly from bi-nodes......for DDNS, DNSSEC and IXFR...for DDNS, DNSSEC and IXFR3.2Daniel SalzmanDaniel Salzmanhttps://gitlab.nic.cz/knot/knot-dns/-/merge_requests/1250libknot: optimize knot_dname_lf for many short labels2021-05-20T13:15:29+02:00Libor Peltanlibknot: optimize knot_dname_lf for many short labelsThe goal is to improve answering performance when the query name has many short labels (e.g. reverse IPv6 queries).
Test gcc 10, 8 cores, 15M QPS, example.com.:
- 1 x 7 label qname: RPS change 75% -> 75%
- 7 x 19 label qname: RPS chang...The goal is to improve answering performance when the query name has many short labels (e.g. reverse IPv6 queries).
Test gcc 10, 8 cores, 15M QPS, example.com.:
- 1 x 7 label qname: RPS change 75% -> 75%
- 7 x 19 label qname: RPS change 52% -> 55%
- 12 x 4 label qname: RPS change 42% -> 49%
- 25 x 2 label qname: RPS change 25% -> 27%
- 50 x 1 label qname: RPS change 10% -> 19%3.1Daniel SalzmanDaniel Salzmanhttps://gitlab.nic.cz/knot/knot-dns/-/merge_requests/1236XDP refactoring2021-01-29T09:55:00+01:00Libor PeltanXDP refactoring3.1Daniel SalzmanDaniel Salzmanhttps://gitlab.nic.cz/knot/knot-dns/-/merge_requests/1138stats/performance: per-thread counters2020-05-15T15:42:15+02:00Libor Peltanstats/performance: per-thread counters3.0Daniel SalzmanDaniel Salzmanhttps://gitlab.nic.cz/knot/knot-dns/-/merge_requests/1072Optimize adjust resign2019-09-23T21:29:00+02:00Libor PeltanOptimize adjust resign2.9Daniel SalzmanDaniel Salzmanhttps://gitlab.nic.cz/knot/knot-dns/-/merge_requests/1043Don't verify signatures created by Knot2019-08-16T15:27:05+02:00Libor PeltanDon't verify signatures created by KnotThis should speed up signing process e.g. during key rollovers.
When safe, only RRSIG expiration is checked.This should speed up signing process e.g. during key rollovers.
When safe, only RRSIG expiration is checked.2.9Daniel SalzmanDaniel Salzmanhttps://gitlab.nic.cz/knot/knot-dns/-/merge_requests/1028Optimize tree apply2019-07-03T20:21:16+02:00Libor PeltanOptimize tree applyOptimize zone tree apply and iteration by avoiding `fix_get()`.
This can be avioded, because all bi-nodes are added to the tree as their first nodes.Optimize zone tree apply and iteration by avoiding `fix_get()`.
This can be avioded, because all bi-nodes are added to the tree as their first nodes.2.9Daniel SalzmanDaniel Salzmanhttps://gitlab.nic.cz/knot/knot-dns/-/merge_requests/1027Unify only modified22019-07-11T10:34:56+02:00Libor PeltanUnify only modified2To further speedup incremental updates, mostly the cleanup phase,
keep track of affected nodes (both by update and by adjusting) and unify only those.
...includes some refactoringTo further speedup incremental updates, mostly the cleanup phase,
keep track of affected nodes (both by update and by adjusting) and unify only those.
...includes some refactoring2.9Daniel SalzmanDaniel Salzmanhttps://gitlab.nic.cz/knot/knot-dns/-/merge_requests/1022WIP: Unify only modified2019-07-01T15:57:06+02:00Libor PeltanWIP: Unify only modifiedTo further speedup incremental updates, mostly the cleanup phase,
keep track of affected nodes (both by update and by adjusting) and unify only those.To further speedup incremental updates, mostly the cleanup phase,
keep track of affected nodes (both by update and by adjusting) and unify only those.2.9Daniel SalzmanDaniel Salzmanhttps://gitlab.nic.cz/knot/knot-dns/-/merge_requests/1019adjust nsec3 ptr: pointing either at node or owner if no node2019-06-12T14:47:54+02:00Libor Peltanadjust nsec3 ptr: pointing either at node or owner if no nodethis shall speed-up adjusting with nsec3-opt-out
because the dead nsec3 pointers are not recalculated every timethis shall speed-up adjusting with nsec3-opt-out
because the dead nsec3 pointers are not recalculated every time2.9Daniel SalzmanDaniel Salzmanhttps://gitlab.nic.cz/knot/knot-dns/-/merge_requests/1017adjust: using additionals_tree for adjusting point_to_nsec32019-06-14T10:50:41+02:00Libor Peltanadjust: using additionals_tree for adjusting point_to_nsec3this improves speed of updates to zone with NSEC3 opt-out
this improves speed of updates to zone with NSEC3 opt-out
2.9Daniel SalzmanDaniel Salzmanhttps://gitlab.nic.cz/knot/knot-dns/-/merge_requests/1014adjust: refactored measurement of zone size and max TTL2019-05-24T14:16:12+02:00Libor Peltanadjust: refactored measurement of zone size and max TTL2.9Daniel SalzmanDaniel Salzmanhttps://gitlab.nic.cz/knot/knot-dns/-/merge_requests/1012nsec/nsec3: refactor of incremental updates2019-05-23T10:49:57+02:00Libor Peltannsec/nsec3: refactor of incremental updates2.9Daniel SalzmanDaniel Salzmanhttps://gitlab.nic.cz/knot/knot-dns/-/merge_requests/1005optimization: adjusting: mesure zone size incrementally for updates2019-05-16T13:04:05+02:00Libor Peltanoptimization: adjusting: mesure zone size incrementally for updates2.9Daniel SalzmanDaniel Salzmanhttps://gitlab.nic.cz/knot/knot-dns/-/merge_requests/1004Additionals reverse tree2019-05-14T20:55:56+02:00Libor PeltanAdditionals reverse treethe tree is like a key-value database, with the key being a domain name
of a record which is an additional for a record in the zone
while the name might be not in the zone; the value is a deduplicated dynarray
of pointers to zone nodes, ...the tree is like a key-value database, with the key being a domain name
of a record which is an additional for a record in the zone
while the name might be not in the zone; the value is a deduplicated dynarray
of pointers to zone nodes, for which it actually is an additional
whenever in an incremental update a record is changed/added
with the name of an additional, all the listed nodes
must be re-adjusted (re-discovered additionals
previously, we always re-discovered additionals for whole zone2.9Daniel SalzmanDaniel Salzmanhttps://gitlab.nic.cz/knot/knot-dns/-/merge_requests/1003dnssec/nsec_update: trivial optimization2019-05-05T21:03:59+02:00Libor Peltandnssec/nsec_update: trivial optimization2.9Daniel SalzmanDaniel Salzmanhttps://gitlab.nic.cz/knot/knot-dns/-/merge_requests/1001Resign optimi2019-05-05T20:53:32+02:00Libor PeltanResign optimisee commits' messagessee commits' messages2.9Daniel SalzmanDaniel Salzmanhttps://gitlab.nic.cz/knot/knot-dns/-/merge_requests/988Implementation of COW trie for zone updates2019-04-26T15:58:28+02:00Libor PeltanImplementation of COW trie for zone updates2.9Daniel SalzmanDaniel Salzman