paper

Partial-Match Queries with Random Wildcards: In Tries and Distributed Hash Tables

arXiv:1601.04213

Abstract

Consider an -bit query to a bitwise trie . A wildcard is an unspecified bit in for which the query asks the membership for both cases and . It is common that such partial-match queries with wildcards are issued in tries. With uniformly random occurrences of wildcards in assumed, the obvious upper bound on the average number of traversal steps in is . We show that the average does not exceed \[ \frac{m+1}{w+1} \left( 2^{w+2} - 2 w - 4 \right) + m = O \left( \frac{2^w m}{w} \right), \] and equals the value exactly when includes all the -bit keys as the worst case. Here the query performs with the naive backtracking algorithm in . It is similarly shown that the average is in a general trie of maximum out-degree . Our analysis for tries is extended to a distributed hash table (DHT), which is among the most frequently used decentralized data structures in networking. We show, under a natural probabilistic assumption for the largest class of DHTs, that the average number of hops required by an -bit query to a DHT with random wildcards meets the same asymptotic bound. As a result, is answered with average hops rather than in the four major DHTs Chord, Pastry, Tapestry and Kademlia. In addition, with a uniform key distribution for sufficiently many entries, we prove that a lookup request to the DHT Chord is answered correctly with hops and probability . To the author's knowledge, the probability of correct lookup in Chord has not been identified so far.