Kademlia has 4 RPC messages:
ping
store
find_node
find_value
How does a Kademlia node find the value for a given key? Given an id, it is clear that it will take only $log(n)$
steps for a node in a network of size $n$
to find the node with that id. But how can a node efficiently find another node that has stored a given key-value pair? It would have to be of the order of $n$
nodes to retrieve the value for a key if one knew nothing about the node holds it.